diff --git a/cis/private/profile/lva_liste.php b/cis/private/profile/lva_liste.php index 04889e6a5..ee30987a4 100644 --- a/cis/private/profile/lva_liste.php +++ b/cis/private/profile/lva_liste.php @@ -35,6 +35,7 @@ require_once('../../../include/studiensemester.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/lvangebot.class.php'); +require_once('../../../include/addon.class.php'); if (!$db = new basis_db()) @@ -57,6 +58,12 @@ require_once('../../../include/lvangebot.class.php'); $datum = new datum(); + $addon = new addon(); + if(in_array('lvinfo',$addon->aktive_addons)) + $lvinfo=true; + else + $lvinfo=false; + //Studiensemester abfragen. Letzten 5, aktuelles und naechstes. $sql_query='SELECT * FROM public.tbl_studiensemester WHERE (start<=(now()::date+240) AND ende>=(now()::date-900)) ORDER BY start'; $result_stdsem=$db->db_query($sql_query); @@ -161,6 +168,11 @@ require_once('../../../include/lvangebot.class.php'); '; if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN) echo ''.$p->t('lvaliste/gesamtnote').''; + + + if($lvinfo) + echo ''.$p->t('lvaliste/lvinfo').''; + echo ' '.$p->t('lvaliste/lehrfach').' '.$p->t('lvaliste/lehrform').' @@ -192,6 +204,10 @@ require_once('../../../include/lvangebot.class.php'); echo ''; if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN) echo ''.$p->t('lvaliste/gesamtnote').''; + + if($lvinfo) + echo ''.$p->t('lvaliste/lvinfo').''; + echo ''.$row->lehrfach.''; echo ''.$row->le_lehrform_kurzbz.''; if ($row->lehrfach_bez!=$row->lv_bezeichnung) @@ -228,6 +244,11 @@ require_once('../../../include/lvangebot.class.php'); echo ''.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_start, "d.m.Y").''; echo ''.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_ende, "d.m.Y").''; } + else + { + echo '  +  '; + } //echo ''.$row->le_anmerkung.''; Lektoren sollen die Anmerkung dzt. nicht sehen, da nur für intern gedacht echo ''; @@ -238,8 +259,12 @@ require_once('../../../include/lvangebot.class.php'); echo ''; if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN) echo ' '; + if($lvinfo) + echo ' '; + echo ' '; echo ' '; + echo ' '; echo ' '; echo ' '; diff --git a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php index df4da04ea..a9d11ccfd 100644 --- a/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php +++ b/cms/menu/menu_addon_lehrveranstaltungen_studienplan.inc.php @@ -131,7 +131,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon Studiensemester
- '; //Anzeigen des DropDown Menues mit Studiensemester $studiensemester = new studiensemester(); @@ -165,7 +165,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon Studiengang
- '; $stg_obj = new studiengang(); $stg_obj->loadStudiengangFromStudiensemester($studiensemester_kurzbz); @@ -201,7 +201,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon Semester
- '; $vorhandenesemester=array(); @@ -241,7 +241,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon Studienplan
- '; // Studienplan $studienplan_obj = new studienplan(); @@ -309,7 +309,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon if($lv_obj->loadLehrveranstaltungStudienplan($studienplan_id, $semester,'bezeichnung')) { $tree = $lv_obj->getLehrveranstaltungTree(); - $this->printTree($tree, $sprache); + $this->printTree($tree, $sprache, $studiensemester_kurzbz); } $this->output(); @@ -318,7 +318,7 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon /** * Stellt die Lehrveranstaltungen in einer Baumstruktur dar. */ - private function printTree($tree, $sprache) + private function printTree($tree, $sprache, $studiensemester_kurzbz) { $this->block.='"; } diff --git a/include/functions.inc.php b/include/functions.inc.php index fc465035b..fe9d3ee92 100755 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -366,7 +366,7 @@ function getStudiensemesterFromDatum($datum, $naechstes=true) $qry = "SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE"; if($naechstes) - $qry.= " ende>".$db->db_add_param($datum)." ORDER BY ende ASC "; + $qry.= " ende>=".$db->db_add_param($datum)." ORDER BY ende ASC "; else $qry.= " start<".$db->db_add_param($datum)." ORDER BY ende DESC "; diff --git a/include/studienplan.class.php b/include/studienplan.class.php index f71c37d2a..36227cc79 100644 --- a/include/studienplan.class.php +++ b/include/studienplan.class.php @@ -861,7 +861,7 @@ class studienplan extends basis_db WHERE tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)." AND EXISTS ( - SELECT 1 FROM lehre.tbl_studienordnung_semester + SELECT 1 FROM lehre.tbl_studienplan_semester WHERE studienordnung_id=tbl_studienplan.studienordnung_id AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)." AND semester = tbl_studienplan_lehrveranstaltung.semester) diff --git a/locale/de-AT/lvaliste.php b/locale/de-AT/lvaliste.php index 46b7e3750..aa4087528 100755 --- a/locale/de-AT/lvaliste.php +++ b/locale/de-AT/lvaliste.php @@ -30,3 +30,4 @@ $this->phrasen['lvaliste/koordination']='Koordination'; $this->phrasen['lvaliste/gesamtnote']='Noten eintragen'; $this->phrasen['lvaliste/anzahl']='Anzahl'; $this->phrasen['lvaliste/summe']='Summe'; +$this->phrasen['lvaliste/lvinfo']='LV-Info'; diff --git a/vilesci/personen/aliquote_reduktion.php b/vilesci/personen/aliquote_reduktion.php index b06069349..8aa9aa2a4 100644 --- a/vilesci/personen/aliquote_reduktion.php +++ b/vilesci/personen/aliquote_reduktion.php @@ -245,7 +245,7 @@ aqr.studenten.forEach(function(j) { - if((j.applicant || j.selected)) + if(j.rt_gesamtpunkte !== null && j.rt_gesamtpunkte > 0) allCountedStudents.push(j); }); @@ -253,33 +253,31 @@ if(applicantCount > allCountedStudents.length) applicantCount = allCountedStudents.length; - zgvs.forEach(function(i) { var applicantsFromZGV = []; aqr.studenten.forEach(function(j) { - if((j.applicant || j.selected) && j.bezeichnung === i) + if((j.rt_gesamtpunkte !== null && j.rt_gesamtpunkte > 0) && j.bezeichnung === i) applicantsFromZGV.push(j); }); // calculate the aliquote reduction for every ZGV var percent = applicantsFromZGV.length / allCountedStudents.length * 100; - var neededFromZGV = (applicantCount / 100 * percent); + var neededFromZGV = (applicantCount / 100 * percent) - aqr.getAcceptedCount(i); if(neededFromZGV < 0) neededFromZGV = 0; - zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), overallNeeded: (applicantCount / 100 * percent) + aqr.getAcceptedCount(i)}); + zgvElems.push({name:i, needed:neededFromZGV, percent:percent, accepted: aqr.getAcceptedCount(i), overallNeeded: neededFromZGV + aqr.getAcceptedCount(i)}); }); - aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems)); // calculate the already distributed students var residual = 0; zgvElems.forEach(function(i) { - residual += i.needed; + residual += parseInt(i.needed); }); // calculate the difference from needed to already distributed @@ -292,11 +290,13 @@ { if(resDiff > 0) { + i.overallNeeded ++; i.needed ++; resDiff --; } }); } + aqr.zgvElems = JSON.parse(JSON.stringify(zgvElems)); aqr.recursiveChoose(neededStudentsCount, zgvElems); } }