From bfb24320d75edd21567c60de6dccb57440519b0e Mon Sep 17 00:00:00 2001 From: ma0048 Date: Fri, 14 Oct 2022 11:11:25 +0200 Subject: [PATCH] - editieren der ZGV Master nur noch mit eigenen Recht moeglich --- content/student/studentDBDML.php | 11 ++++++++++- content/student/studentoverlay.js.php | 14 ++++++++++++++ system/checksystem.php | 1 + 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php index 68348adbf..97b40073f 100644 --- a/content/student/studentDBDML.php +++ b/content/student/studentDBDML.php @@ -821,7 +821,16 @@ if(!$error) $prestudent->zgvdatum = $_POST['zgvdatum']; $prestudent->zgvnation = $_POST['zgvnation']; $prestudent->zgv_erfuellt = $_POST['zgv_erfuellt']; - $prestudent->zgvmas_code = $_POST['zgvmas_code']; + // Die Master-ZGV darf nur mit einem eigenen Recht geändert werden + if($rechte->isBerechtigt('student/editMakkZgv',$_POST['studiengang_kz'],'suid')) + { + $prestudent->zgvmas_code = $_POST['zgvmas_code']; + } + elseif ($prestudent->zgvmas_code != $_POST['zgvmas_code']) + { + $errormsg = 'Keine Berechtigung zum Ändern der ZGV'; + $error = true; + } $prestudent->zgvmaort = $_POST['zgvmaort']; $prestudent->zgvmadatum = $_POST['zgvmadatum']; $prestudent->zgvmanation = $_POST['zgvmanation']; diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index 3401c03d5..02b59890e 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -1829,6 +1829,20 @@ function StudentPrestudentDisableFields(val) document.getElementById('student-prestudent-menulist-zgvcode').disabled=true; } + getStgKz('student/editMakkZgv'); + // Anlegen eines Arrays mit allen berechtigten Stg-Kz + echo ' var berechtigte_master_studiengaenge = ['.implode(',',$studiengaengeMaster).'];'; + ?> + if (berechtigte_master_studiengaenge.indexOf(studiengang_kz) >= 0) + { + document.getElementById('student-prestudent-menulist-zgvmastercode').disabled=val; + } + else + { + document.getElementById('student-prestudent-menulist-zgvmastercode').disabled=true; + } + //Status Tree leeren rollentree = document.getElementById('student-prestudent-tree-rolle'); diff --git a/system/checksystem.php b/system/checksystem.php index a52fb2a6d..ce343cdca 100644 --- a/system/checksystem.php +++ b/system/checksystem.php @@ -205,6 +205,7 @@ $berechtigungen = array( array('student/anwesenheit','Anwesenheiten im FAS'), array('student/dokumente','Wenn SUID dann dürfen Dokumente auch wieder entfernt werden'), array('student/editBakkZgv','Bearbeiten der Bachelor ZGV eines PreStudenten'), + array('student/editMakkZgv','Bearbeiten der Master ZGV eines PreStudenten'), array('student/noten','Notenverwaltung'), array('student/stammdaten','Stammdaten der Studenten'), array('student/vorrueckung','Studentenvorrückung'),