diff --git a/build.xml b/build.xml new file mode 100644 index 000000000..9d75a6436 --- /dev/null +++ b/build.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php index 9e6459271..9aa89fd81 100644 --- a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php +++ b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php @@ -837,6 +837,27 @@ echo " $moodle24_course_bezeichnung[$obj->mdl_course_id]=$moodle24course->mdl_shortname; } + + if(!isset($moodle24_course_gewicht[$obj->mdl_course_id])) + { + $mdl_obj = new moodle24_course(); + $mdl_lehreinheiten=$mdl_obj->getLeFromCourse($obj->mdl_course_id); + + foreach($mdl_lehreinheiten as $row_mdl_lehreinheit) + { + if($row_mdl_lehreinheit!='') + { + $lehreinheit_gewicht_obj = new lehreinheit(); + $lehreinheit_gewicht_obj->load($row_mdl_lehreinheit); + + if($lehreinheit_gewicht_obj->gewicht!='') + { + $moodle24_course_gewicht[$obj->mdl_course_id]=$lehreinheit_gewicht_obj->gewicht; + break; + } + } + } + } } } } @@ -870,6 +891,8 @@ echo " $note_les_str = ''; $le_anz = 0; $note_le = 0; + $note_le_gewichtet=0; + $gewichtsumme=0; $note=0; if($grade_from_moodle) { @@ -916,7 +939,9 @@ echo " if (is_numeric($note)) { $note_le += $note; - $le_anz += 1; + $note_le_gewichtet +=$note*$gewichtung; + $gewichtsumme+=$gewichtung; + $le_anz += 1; } if ($note == 5) $leneg = " style='color:red; font-weight:bold'"; @@ -966,7 +991,15 @@ echo " { if($moodle24_noten->uid==$row_stud->uid) { + $gewichtung=1; $note_le+=$moodle24_noten->note; + if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id])) + $gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id]; + + if($gewichtung=='') + $gewichtung=1; + $note_le_gewichtet+=$moodle24_noten->note*$gewichtung; + $gewichtsumme+=$gewichtung; $le_anz+=1; //if ($moodle24_noten->note == 5) // $leneg = " style='color:red; font-weight:bold'"; @@ -975,7 +1008,9 @@ echo " $title="Moodle KursID: ".$moodle24_noten->mdl_course_id. "\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id]. "\nUser: ".$moodle24_noten->uid. - "\nNote: $moodle24_noten->note"; + "\nNote: ".$moodle24_noten->note; + if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) + $title.="\nGewichtung: ".$gewichtung; $note_les_str .= "
".$moodle24_noten->note." (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].") "; } @@ -998,12 +1033,23 @@ echo " else { $note_le += $legesamtnote->note; - $le_anz += 1; + + $gewicht = $l->gewicht; + if($l->gewicht=='') + $gewicht = 1; + $note_le_gewichtet+=$legesamtnote->note*$gewicht; + $gewichtsumme+=$gewicht; + + $le_anz += 1; if ($legesamtnote->note == 5) $leneg = " style='color:red; font-weight:bold'"; else $leneg = ""; - $note_les_str .= "".$legesamtnote->note." (".$l->lehreinheit_id.") "; + if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) + $title='Gewichtung: '.$l->gewicht; + else + $title=''; + $note_les_str .= ''.$legesamtnote->note.' ('.$l->lehreinheit_id.') '; } } } @@ -1026,13 +1072,31 @@ echo " { if(CIS_GESAMTNOTE_PUNKTE) { - $punkte_vorschlag = round($note_le/$le_anz,2); - $notenschluessel = new notenschluessel(); - $note_vorschlag = $notenschluessel->getNote($punkte_vorschlag, $lvid, $stsem); + if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) + { + // Lehreinheitsgewichtung + $punkte_vorschlag = round($note_le_gewichtet/$gewichtsumme,2); + $notenschluessel = new notenschluessel(); + $note_vorschlag = $notenschluessel->getNote($punkte_vorschlag, $lvid, $stsem); + } + else + { + $punkte_vorschlag = round($note_le/$le_anz,2); + $notenschluessel = new notenschluessel(); + $note_vorschlag = $notenschluessel->getNote($punkte_vorschlag, $lvid, $stsem); + } } else { - $note_vorschlag = round($note_le/$le_anz); + if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG) + { + $note_vorschlag = round($note_le_gewichtet/$gewichtsumme); + } + else + { + $note_vorschlag = round($note_le/$le_anz); + } + } } else diff --git a/cis/private/lvplan/stpl_reserve_list.php b/cis/private/lvplan/stpl_reserve_list.php index c310d9b28..a882b8344 100644 --- a/cis/private/lvplan/stpl_reserve_list.php +++ b/cis/private/lvplan/stpl_reserve_list.php @@ -33,7 +33,6 @@ $sprache = getSprache(); $p=new phrasen($sprache); $uid = get_uid(); -$uid = 'pam'; if (isset($_GET['id'])) $id=$_GET['id']; diff --git a/cis/private/lvplan/stpl_week.php b/cis/private/lvplan/stpl_week.php index becc9e24f..35611a8fe 100644 --- a/cis/private/lvplan/stpl_week.php +++ b/cis/private/lvplan/stpl_week.php @@ -29,18 +29,15 @@ require_once('../../../include/benutzerberechtigung.class.php'); require_once('../../../include/ort.class.php'); require_once('../../../include/phrasen.class.php'); -$sprache = getSprache(); -$p=new phrasen($sprache); +$sprache = getSprache(); +$p=new phrasen($sprache); if (!$db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); - - $uid=get_uid(); -?> - +?> @@ -54,7 +51,7 @@ $uid=get_uid(); if (restore) selObj.selectedIndex=0; } - + function toggle_checkboxes(obj) { var f = obj.form; @@ -66,7 +63,7 @@ $uid=get_uid(); e.checked = f.check_all.checked; } } - + $(document).ready(function() { $("select[name='studiengang_kz']").change(function() { var studiengang_kz = $("select[name='studiengang_kz']").val(); @@ -77,7 +74,7 @@ $uid=get_uid(); }, type: "POST", dataType: "json", - success: function(data) + success: function(data) { $("select[name='semester']").empty(); $("select[name='semester']").append(''); @@ -85,13 +82,13 @@ $uid=get_uid(); $("select[name='semester']").append(''); }); }, - error: function(data) + error: function(data) { alert("Fehler beim Laden der Daten"); } }); }) - + $("select[name='semester']").change(function() { var studiengang_kz = $("select[name='studiengang_kz']").val(); var semester = $("select[name='semester']").val(); @@ -103,7 +100,7 @@ $uid=get_uid(); }, type: "POST", dataType: "json", - success: function(data) + success: function(data) { $("select[name='verband']").empty(); $("select[name='verband']").append(''); @@ -111,13 +108,13 @@ $uid=get_uid(); $("select[name='verband']").append(''); }); }, - error: function(data) + error: function(data) { alert("Fehler beim Laden der Daten"); } }); }) - + $("select[name='verband']").change(function() { var studiengang_kz = $("select[name='studiengang_kz']").val(); var semester = $("select[name='semester']").val(); @@ -131,7 +128,7 @@ $uid=get_uid(); }, type: "POST", dataType: "json", - success: function(data) + success: function(data) { $("select[name='gruppe']").empty(); $("select[name='gruppe']").append(''); @@ -139,7 +136,7 @@ $uid=get_uid(); $("select[name='gruppe']").append(''); }); }, - error: function(data) + error: function(data) { alert("Fehler beim Laden der Daten"); } @@ -152,7 +149,6 @@ $uid=get_uid(); -

t('lvplan/wochenplan');?>

@@ -298,14 +294,14 @@ if (!isset($pers_uid)) if (isset($_POST['reserve'])) $reserve=$_POST['reserve']; else if (isset($_GET['reserve'])) - $reserve=$_GET['reserve']; + $reserve=$_GET['reserve']; // Reservieren if (isset($reserve) && $raumres) { $ort_obj = new ort(); if(!$ort_obj->load($ort_kurzbz)) die($p->t('lvplan/raumExistiertNicht')); - + if(!$erg_std=$db->db_query("SELECT * FROM lehre.tbl_stunde ORDER BY stunde")) { die($db->db_last_error()); @@ -319,13 +315,13 @@ if (isset($reserve) && $raumres) { $stunde=$db->db_result($erg_std,$j,'"stunde"'); $var='reserve'.$t.'_'.$stunde; - + if (isset($_REQUEST[$var])) { $datum_res=$_REQUEST[$var]; $reservierung = new reservierung(); - + if(!$reservierung->isReserviert($ort_kurzbz, $datum_res, $stunde)) { if (empty($_REQUEST['titel']) && empty($_REQUEST['beschreibung'])) @@ -335,7 +331,7 @@ if (isset($reserve) && $raumres) else if ( empty($_REQUEST['beschreibung'])) echo "
".$p->t('lvplan/beschreibungFehlt')."!
"; else - { + { $reservierung = new reservierung(); $reservierung->datum = $datum_res; $reservierung->ort_kurzbz = $ort_kurzbz; @@ -344,7 +340,7 @@ if (isset($reserve) && $raumres) $reservierung->titel = $_REQUEST['titel']; $reservierung->insertamum=date('Y-m-d H:i:s'); $reservierung->insertvon=$uid; - + if(isset($_REQUEST['studiengang_kz'])) { $reservierung->studiengang_kz = $_REQUEST['studiengang_kz']; @@ -359,17 +355,17 @@ if (isset($reserve) && $raumres) $reservierung->studiengang_kz='0'; $reservierung->uid = $uid; } - + if(!$reservierung->save(true)) echo $reservierung->errormsg; else $count++; - } + } } else { echo "
$ort_kurzbz ".$p->t('lvplan/bereitsReserviert').": $datum_res - Stunde $stunde
"; - } + } } } } diff --git a/cms/admin.php b/cms/admin.php index caa445000..f2c2786f3 100644 --- a/cms/admin.php +++ b/cms/admin.php @@ -1114,7 +1114,7 @@ function print_prefs() - Aktiv + Content Aktiv aktiv?'checked':'').'> @@ -1126,7 +1126,7 @@ function print_prefs() - +

@@ -1135,7 +1135,7 @@ function print_prefs() - Sichtbar + Version Sichtbar sichtbar?'checked':'').'> diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php index 46af88f05..24494f054 100644 --- a/config/global.config-default.inc.php +++ b/config/global.config-default.inc.php @@ -56,6 +56,9 @@ define('CIS_GESAMTNOTE_PUNKTE',false); // Gibt an ob der Lektor erneut eine LVNote eintragen kann wenn bereits eine Zeugnisnote vorhanden ist (true | false) DEFAULT true define('CIS_GESAMTNOTE_UEBERSCHREIBEN',true); +// Gewichtung der Lehreinheiten bei Noteneintragung true|false +define('CIS_GESAMTNOTE_GEWICHTUNG', true); + // Gibt an ob im FAS bei den Lehrveranstaltungsnoten ein zusaetzliches Formular angezeigt wird um // Vertraege fuer Pruefungshonorare anzulegen define('FAS_GESAMTNOTE_PRUEFUNGSHONORAR',false); @@ -108,6 +111,9 @@ define('VORRUECKUNG_STATUS_MAX_SEMESTER',true); // Bei Statuswechsel auf Bewerber -> soll Reihungstest brücksichtigt werden define('REIHUNGSTEST_CHECK', true); +// Bei Statuswechsel auf Bewerber bzw. Student -> soll ZGV brücksichtigt werden +define('ZGV_CHECK', true); + /* Schema zur Erstellung der Kurs Kategorien im Moodle * Leer oder nicht gesetzt: STSEM -> STG -> Ausbsemester (WS2014 -> BEL -> 1) * DEP-STG-JG-STSEM: Department -> STG -> Jahrgang -> StSem (Informationstechnologie und Informationsmanagement -> BIMK -> Jahrgang 2014 -> WS2014) @@ -195,8 +201,4 @@ define('BEWERBERTOOL_GTM', ''); // Array mit Usern die nicht Kollidieren define('KOLLISIONSFREIE_USER',serialize(array('_DummyLektor'))); - -// Soll der Lageplan am Infoterminal angezeigt werden (true|false) -define('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN', true); - ?> diff --git a/content/fasDBDML.php b/content/fasDBDML.php index 93c3dea67..ca8cf5aef 100644 --- a/content/fasDBDML.php +++ b/content/fasDBDML.php @@ -40,6 +40,7 @@ require_once('../include/variable.class.php'); require_once('../include/benutzerfunktion.class.php'); require_once('../include/studiensemester.class.php'); require_once('../include/fotostatus.class.php'); +require_once('../include/anwesenheit.class.php'); $user = get_uid(); @@ -653,6 +654,41 @@ if(!$error) $errormsg = 'Fehlerhafte Parameteruebergabe'; } } + elseif(isset($_POST['type']) && $_POST['type']=='anwesenheittoggle') + { + if(!$rechte->isBerechtigt('student/anwesenheit')) + { + $return = false; + $errormsg = 'Sie haben keine Berechtigung fuer diese Aktion'; + $data = ''; + $error = true; + } + else + { + if(isset($_POST['student_uid']) && isset($_POST['lehreinheit_id']) && isset($_POST['datum'])) + { + $student_uid = $_POST['student_uid']; + $lehreinheit_id = $_POST['lehreinheit_id']; + $datum = $_POST['datum']; + $anwesenheit = new anwesenheit(); + if($anwesenheit->AnwesenheitToggle($lehreinheit_id, $datum, $student_uid)) + { + $return = true; + $errormsg = ""; + } + else + { + $return = false; + $errormsg = $anwesenheit->errormsg; + } + } + else + { + $return = false; + $errormsg = 'Fehlerhafte Parameteruebergabe'; + } + } + } else { $return = false; diff --git a/content/lvplanung/lehrveranstaltungDBDML.php b/content/lvplanung/lehrveranstaltungDBDML.php index 2650401d3..6b3394ae2 100644 --- a/content/lvplanung/lehrveranstaltungDBDML.php +++ b/content/lvplanung/lehrveranstaltungDBDML.php @@ -1251,6 +1251,7 @@ if(!$error) $leDAO->lehrform_kurzbz=$_POST['lehrform']; $leDAO->stundenblockung=$_POST['stundenblockung']; $leDAO->wochenrythmus=$_POST['wochenrythmus']; + $leDAO->gewicht = $_POST['gewicht']; if (isset($_POST['start_kw'])) $leDAO->start_kw=$_POST['start_kw']; diff --git a/content/lvplanung/lehrveranstaltungdetailoverlay.xul.php b/content/lvplanung/lehrveranstaltungdetailoverlay.xul.php index e77a5c86d..17c929b4b 100644 --- a/content/lvplanung/lehrveranstaltungdetailoverlay.xul.php +++ b/content/lvplanung/lehrveranstaltungdetailoverlay.xul.php @@ -26,6 +26,7 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT"); header("Pragma: no-cache"); header("Content-type: application/vnd.mozilla.xul+xml"); require_once('../../config/vilesci.config.inc.php'); +require_once('../../config/global.config.inc.php'); require_once('../../include/benutzerberechtigung.class.php'); $user = get_uid(); @@ -118,6 +119,9 @@ echo '';