diff --git a/vilesci/stammdaten/reihungstestverwaltung.php b/vilesci/stammdaten/reihungstestverwaltung.php index 5460e9a61..f6863a583 100644 --- a/vilesci/stammdaten/reihungstestverwaltung.php +++ b/vilesci/stammdaten/reihungstestverwaltung.php @@ -55,21 +55,36 @@ require_once('../../include/variable.class.php'); // @todo Allgemein: Beim kopieren auch die Studienplanzuordnungen übernehmen // "Teilgenommen" und "Punkte" werden immer mit false bzw. 0 gespeichert -define('REIHUNGSTEST_ARBEITSPLAETZE_SCHWUND', '5'); +define('REIHUNGSTEST_ARBEITSPLAETZE_SCHWUND', 5); if (!$db = new basis_db()) { die('Es konnte keine Verbindung zum Server aufgebaut werden.'); } -$stsem_akt = new studiensemester(); -$stsem_akt = $stsem_akt->getaktorNext(); +//Richtiges Studiensemester zum anzeigen ermitteln + //Mit getAktOrNext das aktuelle oder kommende WINTERsemester auslesen + $stsem_aktorNext = new studiensemester(); + $stsem_aktorNext = $stsem_aktorNext->getaktorNext(1); + //Ergebnis aus $stsem_aktorNext laden und den Timestamp der Semestermitte bestimmen. + $stsem_berechnet = new studiensemester(); + $stsem_berechnet->load($stsem_aktorNext); + $mitte = (strtotime($stsem_berechnet->ende) - strtotime($stsem_berechnet->start)) / 2; + // Wenn die Haelfte des Wintersemesters vorbei ist, das naechste Wintersemester ermitteln, sonst das Aktuelle nehmen + if (strtotime($stsem_berechnet->ende) - $mitte <= time()) + { + $stsem_dropdown = new studiensemester(); + $stsem_dropdown->getNextStudiensemester('WS'); + $stsem_dropdown = $stsem_dropdown->studiensemester_kurzbz; + } + else + $stsem_dropdown = $stsem_aktorNext; $user = get_uid(); $datum_obj = new datum(); $stg_kz = (isset($_GET['stg_kz']) ? $_GET['stg_kz'] : ''); $reihungstest_id = (isset($_GET['reihungstest_id']) ? $_GET['reihungstest_id'] : ''); -$studiensemester_kurzbz = (isset($_GET['studiensemester_kurzbz']) ? $_GET['studiensemester_kurzbz'] : $stsem_akt); +$studiensemester_kurzbz = (isset($_GET['studiensemester_kurzbz']) ? $_GET['studiensemester_kurzbz'] : $stsem_dropdown); $studienplan_id = (isset($_GET['studienplan_id']) ? $_GET['studienplan_id'] : ''); $prestudent_id = (isset($_GET['prestudent_id']) ? $_GET['prestudent_id'] : ''); $rtpunkte = (isset($_GET['rtpunkte']) ? $_GET['rtpunkte'] : ''); @@ -107,7 +122,7 @@ $studiengang = new studiengang(); $studiengang->getAll('typ, kurzbz', false); $studiensemester = new Studiensemester(); -$studiensemester->getAll('DESC'); +$studiensemester->getAll('desc'); $sprachen_obj = new sprache(); $sprachen_obj->getAll(); @@ -527,7 +542,10 @@ if(isset($_GET['excel'])) for(i in ui.content) { ui.content[i].value=ui.content[i].ort_kurzbz; - ui.content[i].label=ui.content[i].ort_kurzbz+" "+ui.content[i].bezeichnung; + if (ui.content[i].arbeitsplaetze != '') + ui.content[i].label=ui.content[i].ort_kurzbz+" "+ui.content[i].bezeichnung+" ("+ui.content[i].arbeitsplaetze+" Arbeitsplätze)"; + else + ui.content[i].label=ui.content[i].ort_kurzbz+" "+ui.content[i].bezeichnung; } }, select: function(event, ui) @@ -587,8 +605,8 @@ if(isset($_GET['excel'])) if (typeof(Storage) !== 'undefined') { - let arr = ['clm_prestudent_id','clm_person_id','clm_geschlecht','clm_studiengang','clm_studienplan','clm_orgform','clm_einstiegssemester','clm_geburtsdatum','clm_email','clm_absolviert','clm_ergebnis','clm_fas']; - for (let i of arr) + var arr = ['clm_prestudent_id','clm_person_id','clm_geschlecht','clm_studiengang','clm_studienplan','clm_orgform','clm_einstiegssemester','clm_geburtsdatum','clm_email','clm_absolviert','clm_ergebnis','clm_fas']; + for (var i of arr) { if (localStorage.getItem(i) != null) { @@ -617,15 +635,31 @@ if(isset($_GET['excel'])) $("#toggle_"+v.id).on('click', function(e) { $("#"+v.id).checkboxes('toggle'); e.preventDefault(); + if ($("input.chkbox:checked").size() > 0) + $("#mailSendButton").html('Mail an markierte Personen senden'); + else + $("#mailSendButton").html('Mail an alle senden'); }); $("#uncheck_"+v.id).on('click', function(e) { $("#"+v.id).checkboxes('uncheck'); e.preventDefault(); + if ($("input.chkbox:checked").size() > 0) + $("#mailSendButton").html('Mail an markierte Personen senden'); + else + $("#mailSendButton").html('Mail an alle senden'); }); $("#"+v.id).checkboxes('range', true); }); + + $('.chkbox').change(function() + { + if ($("input.chkbox:checked").size() > 0) + $("#mailSendButton").html('Mail an markierte Personen senden'); + else + $("#mailSendButton").html('Mail an alle senden'); + }); }); function hideColumn(column) @@ -683,6 +717,26 @@ if(isset($_GET['excel'])) } }); } + + function SendMail() + { + // Wenn Checkboxen markiert sind, an diese senden, sonst an alle + if ($("input.chkbox:checked").size() > 0) + var elements = $("input.chkbox:checked"); + else + var elements = $("input.chkbox"); + var mailadressen = ''; + var adresse = ''; + + // Schleife ueber die einzelnen Elemente + $.each(elements, function(index, item) + { + adresse = $(this).closest('tr').find('td.clm_email a:first').attr('href'); + adresse = adresse.replace(/^mailto?:/, '') + ';'; + mailadressen += adresse; + }); + window.location.href = "mailto:?bcc="+mailadressen; + }