From 2d4a322305e2f0f04cda32381a6aebc3a533a541 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Wed, 9 Apr 2014 14:49:07 +0000 Subject: [PATCH] --- cis/private/lehre/pruefung/pruefung.js | 55 ++++++++++++++++++- .../lehre/pruefung/pruefungstermin.json.php | 20 ++++++- .../pruefung/pruefungstermin_festlegen.php | 6 +- 3 files changed, 74 insertions(+), 7 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefung.js b/cis/private/lehre/pruefung/pruefung.js index 1cc02bb46..5b7ef8a65 100644 --- a/cis/private/lehre/pruefung/pruefung.js +++ b/cis/private/lehre/pruefung/pruefung.js @@ -976,6 +976,7 @@ function savePruefungstermin() var termine = []; var lehrveranstaltungen = []; var error = false; + var mitarbeiter_uid = $("#mitarbeiter_uid").val(); $("#prfTermin tr").each(function(i,v){ var termin = {}; $(v).find("input").each(function(j, w){ @@ -1002,6 +1003,13 @@ function savePruefungstermin() error = true; markMissingFormEntry($(v).attr("id")); } + if(!checkMinMaxTeilnehmer(termin.min, termin.max)) + { + error = true; + console.log("termin"+(i+1)+"min"); + markMissingFormEntry("termin"+(i+1)+"min"); + markMissingFormEntry("termin"+(i+1)+"max"); + } termine.push(termin); }); @@ -1069,7 +1077,8 @@ function savePruefungstermin() methode: methode, einzeln: einzeln, termine: termine, - lehrveranstaltungen: lehrveranstaltungen + lehrveranstaltungen: lehrveranstaltungen, + mitarbeiter_uid: mitarbeiter_uid }, error: loadError }).success(function(data){ @@ -1299,6 +1308,7 @@ function updatePruefung(prfId) var termine = []; var termineNeu = []; var lehrveranstaltungen = []; + var mitarbeiter_uid = $("#mitarbeiter_uid").val(); $('#prfTermin tr').has("span").each(function(i,v){ var termin = {}; @@ -1419,7 +1429,8 @@ function updatePruefung(prfId) einzeln: einzeln, termine: termine, termineNeu: termineNeu, - lehrveranstaltungen: lehrveranstaltungen + lehrveranstaltungen: lehrveranstaltungen, + mitarbeiter_uid: mitarbeiter_uid }, error: loadError }).success(function(data){ @@ -1609,4 +1620,44 @@ function resetPruefungsverwaltung() resetLehrveranstaltungen(); resetTermine(); $("#modalOverlay").removeClass("modalOverlay"); +} + +function checkMinMaxTeilnehmer(min, max) +{ +// console.log(isNum(min)); +// console.log(isNum(max)); + console.log(parseInt(min)); + min = parseInt(min); + max = parseInt(max); + console.log(min+max); + if(((min !== null) && (max !== null)) && ((min !== "") && (max !== ""))) + { + console.log(0); + if(max < min) + { + console.log(1); + return false; + } + if(max < 0) + { + console.log(2); + return false; + } + if(min < 0) + { + console.log(3); + return false; + } + if(isNaN(min)) + { + console.log(4); + return false; + } + if(isNaN(max)) + { + console.log(5); + return false; + } + } + return true; } \ No newline at end of file diff --git a/cis/private/lehre/pruefung/pruefungstermin.json.php b/cis/private/lehre/pruefung/pruefungstermin.json.php index 5f3aab721..23a6c27de 100644 --- a/cis/private/lehre/pruefung/pruefungstermin.json.php +++ b/cis/private/lehre/pruefung/pruefungstermin.json.php @@ -49,7 +49,15 @@ switch($method) $einzeln = (isset($_POST["einzeln"]) && $_POST["einzeln"] ==="true")?true:false; $lehrveranstaltungen = isset($_POST["lehrveranstaltungen"]) ? $_POST["lehrveranstaltungen"] : null; $termine = isset($_POST["termine"])?$_POST["termine"]:null; - $data = savePruefungstermin($uid, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine); + if($rechte->isBerechtigt('lehre/pruefungsterminAll')) + { + $mitarbeiter_uid = $_REQUEST["mitarbeiter_uid"]; + } + else + { + $mitarbeiter_uid = $uid; + } + $data = savePruefungstermin($mitarbeiter_uid, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine); break; case 'getLehrveranstaltungenByMitarbeiter': $mitarbeiter_uid = $_POST["mitarbeiter_uid"]; @@ -68,7 +76,15 @@ switch($method) $lehrveranstaltungen = isset($_POST["lehrveranstaltungen"]) ? $_POST["lehrveranstaltungen"] : null; $termine = isset($_POST["termine"])?$_POST["termine"]:null; $termineNeu = isset($_POST["termineNeu"])?$_POST["termineNeu"]:null; - $data = updatePruefungstermin($uid, $pruefung_id, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $termineNeu); + if($rechte->isBerechtigt('lehre/pruefungsterminAll')) + { + $mitarbeiter_uid = $_REQUEST["mitarbeiter_uid"]; + } + else + { + $mitarbeiter_uid = $uid; + } + $data = updatePruefungstermin($mitarbeiter_uid, $pruefung_id, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $termineNeu); break; case 'deleteLehrveranstaltungFromPruefung': $lvId = $_POST["lehrveranstaltung_id"]; diff --git a/cis/private/lehre/pruefung/pruefungstermin_festlegen.php b/cis/private/lehre/pruefung/pruefungstermin_festlegen.php index b6848ca8a..69e6572ed 100644 --- a/cis/private/lehre/pruefung/pruefungstermin_festlegen.php +++ b/cis/private/lehre/pruefung/pruefungstermin_festlegen.php @@ -89,9 +89,6 @@ if(!$rechte->isBerechtigt('lehre/pruefungstermin'))