diff --git a/application/controllers/Studentenverwaltung.php b/application/controllers/Studentenverwaltung.php index 75faf2cba..5a400d969 100644 --- a/application/controllers/Studentenverwaltung.php +++ b/application/controllers/Studentenverwaltung.php @@ -23,6 +23,7 @@ class Studentenverwaltung extends FHC_Controller 'student/bpk' => $this->permissionlib->isBerechtigt('student/bpk'), 'student/alias' => $this->permissionlib->isBerechtigt('student/alias'), 'basis/prestudent' => $this->permissionlib->isBerechtigt('basis/prestudent'), + 'basis/prestudentstatus' => $this->permissionlib->isBerechtigt('basis/prestudentstatus'), 'assistenz_stgs' => $this->permissionlib->getSTG_isEntitledFor('assistenz'), 'admin' => $this->permissionlib->isBerechtigt('admin'), 'assistenz_schreibrechte' => $this->permissionlib->isBerechtigt('assistenz','suid'), diff --git a/application/controllers/api/frontend/v1/stv/Status.php b/application/controllers/api/frontend/v1/stv/Status.php index af9effa99..bfac248d1 100644 --- a/application/controllers/api/frontend/v1/stv/Status.php +++ b/application/controllers/api/frontend/v1/stv/Status.php @@ -1369,6 +1369,7 @@ class Status extends FHCAPI_Controller public function insertStatus($prestudent_id) { $isBerechtigtNoStudstatusCheck = $this->permissionlib->isBerechtigt('student/keine_studstatuspruefung'); + $isBerechtigtBasisPrestudentstatus = $this->permissionlib->isBerechtigt('basis/prestudentstatus'); $authUID = getAuthUID(); @@ -1387,6 +1388,16 @@ class Status extends FHCAPI_Controller $this->load->library('form_validation'); + if (!$isBerechtigtBasisPrestudentstatus) + $this->form_validation->set_rules( + 'bewerbung_abgeschicktamum', + $this->p->t('lehre', 'bewerbung_abgeschickt_am'), + 'is_null', + [ + 'is_null' => $this->p->t('ui', 'error_fieldWriteAccess') + ] + ); + $this->form_validation->set_rules( 'datum', $this->p->t('global', 'datum'), @@ -1649,7 +1660,8 @@ class Status extends FHCAPI_Controller $isBerechtigtNoStudstatusCheck = $this->permissionlib->isBerechtigt('student/keine_studstatuspruefung'); - + $isBerechtigtBasisPrestudentstatus = $this->permissionlib->isBerechtigt('basis/prestudentstatus'); + $authUID = getAuthUID(); $studiensemester_kurzbz = $this->input->post('studiensemester_kurzbz') ?: $oldstatus->studiensemester_kurzbz; @@ -1660,6 +1672,16 @@ class Status extends FHCAPI_Controller //Form Validation $this->load->library('form_validation'); + if (!$isBerechtigtBasisPrestudentstatus) + $this->form_validation->set_rules( + 'bewerbung_abgeschicktamum', + $this->p->t('lehre', 'bewerbung_abgeschickt_am'), + 'is_null', + [ + 'is_null' => $this->p->t('ui', 'error_fieldWriteAccess') + ] + ); + $this->form_validation->set_rules( 'datum', $this->p->t('global', 'datum'), diff --git a/public/js/components/Stv/Studentenverwaltung.js b/public/js/components/Stv/Studentenverwaltung.js index dc1efbb34..e2ca8e349 100644 --- a/public/js/components/Stv/Studentenverwaltung.js +++ b/public/js/components/Stv/Studentenverwaltung.js @@ -50,6 +50,7 @@ export default { hasBpkPermission: this.permissions['student/bpk'], hasAliasPermission: this.permissions['student/alias'], hasPrestudentPermission: this.permissions['basis/prestudent'], + hasPrestudentstatusPermission: this.permissions['basis/prestudentstatus'], hasAssistenzPermissionForStgs: this.permissions['assistenz_stgs'], hasSchreibrechtAss: this.permissions['assistenz_schreibrechte'], hasAdminPermission: this.permissions['admin'], diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Prestudent/MultiStatus.js b/public/js/components/Stv/Studentenverwaltung/Details/Prestudent/MultiStatus.js index 306c940c6..a816af46e 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Prestudent/MultiStatus.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Prestudent/MultiStatus.js @@ -24,6 +24,10 @@ export default{ from: 'hasPrestudentPermission', default: false }, + hasPrestudentstatusPermission: { + from: 'hasPrestudentstatusPermission', + default: false + }, hasAssistenzPermission: { from: 'hasAssistenzPermission', default: false @@ -1108,7 +1112,7 @@ export default{ 'core', + 'category' => 'ui', + 'phrase' => 'error_fieldWriteAccess', + 'insertvon' => 'system', + 'phrases' => array( + array( + 'sprache' => 'German', + 'text' => 'Sie haben keine Schreibrechte für dieses Feld', + 'description' => '', + 'insertvon' => 'system' + ), + array( + 'sprache' => 'English', + 'text' => 'You do not have writing rights for this field', + 'description' => '', + 'insertvon' => 'system' + ) + ) + ), array( 'app' => 'core', 'category' => 'anrechnung',