diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php index 4a13fe2f2..d2a3801f0 100644 --- a/config/global.config-default.inc.php +++ b/config/global.config-default.inc.php @@ -259,8 +259,4 @@ define('STATUSGRUND_ID_EINSTIEG_SOMMERSEMESTER', null); // Studiengangs_kz des Studiengangs "Qualifikationskurse". Der Studiengang hat eine Sonderstellung zB für das Bewerbungstool. define('STUDIENGANG_KZ_QUALIFIKATIONKURSE', null); - -// EinsteigerInnen ins Sommersemester werden mit einem Statusgrund versehen. -// Die ID dieses Statusgrundes kann hier eingegeben werden. Es wird zB vom Infocenter-Tool gesetzt und im Bewerbungstool abgefragt -define('STATUSGRUND_ID_EINSTIEG_SOMMERSEMESTER', null); ?> diff --git a/include/dokument.class.php b/include/dokument.class.php index 2d7f66563..a2eab0e68 100644 --- a/include/dokument.class.php +++ b/include/dokument.class.php @@ -36,6 +36,7 @@ class dokument extends basis_db public $bezeichnung_mehrsprachig; public $dokumentbeschreibung_mehrsprachig; public $ausstellungsdetails = false; + public $stufe; public $prestudent_id; public $mitarbeiter_uid; @@ -428,6 +429,7 @@ class dokument extends basis_db $dok->nachreichbar = $this->db_parse_bool($row->nachreichbar); $dok->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung); $dok->ausstellungsdetails = $this->db_parse_bool($row->ausstellungsdetails); + $dok->stufe = $row->stufe; $this->result[] = $dok; } return true; @@ -467,6 +469,7 @@ class dokument extends basis_db $dok->nachreichbar = $this->db_parse_bool($row->nachreichbar); $dok->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung); $dok->ausstellungsdetails = $this->db_parse_bool($row->ausstellungsdetails); + $dok->stufe = $row->stufe; $this->result[] = $dok; } @@ -545,6 +548,7 @@ class dokument extends basis_db $this->pflicht = $this->db_parse_bool($row->pflicht); $this->nachreichbar = $this->db_parse_bool($row->nachreichbar); $this->beschreibung_mehrsprachig = $sprache->parseSprachResult('beschreibung_mehrsprachig',$row); + $this->stufe = $row->stufe; return true; } else @@ -605,7 +609,7 @@ class dokument extends basis_db $qry.=" beschreibung_mehrsprachig[$idx],"; } - $qry.=' pflicht, nachreichbar, onlinebewerbung) + $qry.=' pflicht, nachreichbar, onlinebewerbung, stufe) VALUES ('. $this->db_add_param($this->dokument_kurzbz).','. $this->db_add_param($this->studiengang_kz,FHC_INTEGER).','; @@ -615,7 +619,8 @@ class dokument extends basis_db $qry.= $this->db_add_param($this->pflicht,FHC_BOOLEAN).','. $this->db_add_param($this->nachreichbar,FHC_BOOLEAN).','. - $this->db_add_param($this->onlinebewerbung,FHC_BOOLEAN).')'; + $this->db_add_param($this->onlinebewerbung,FHC_BOOLEAN).','. + $this->db_add_param($this->stufe,FHC_INTEGER).')'; } else { @@ -628,7 +633,8 @@ class dokument extends basis_db $qry.=" beschreibung_mehrsprachig[$idx]=".$this->db_add_param($value).","; } $qry.=' pflicht='.$this->db_add_param($this->pflicht, FHC_BOOLEAN).', - nachreichbar='.$this->db_add_param($this->nachreichbar, FHC_BOOLEAN).' + nachreichbar='.$this->db_add_param($this->nachreichbar, FHC_BOOLEAN).', + stufe='.$this->db_add_param($this->stufe, FHC_INTEGER).' WHERE dokument_kurzbz='.$this->db_add_param($this->dokument_kurzbz).' AND studiengang_kz='.$this->db_add_param($this->studiengang_kz); @@ -714,6 +720,7 @@ class dokument extends basis_db $dok->dokumentbeschreibung_mehrsprachig = $sprache->parseSprachResult('dokumentbeschreibung_mehrsprachig', $row); $dok->beschreibung_mehrsprachig = $sprache->parseSprachResult('beschreibung_mehrsprachig', $row); $dok->ausstellungsdetails = $this->db_parse_bool($row->ausstellungsdetails); + $dok->stufe = $row->stufe; $this->result[] = $dok; } @@ -838,7 +845,8 @@ class dokument extends basis_db */ public function getStudiengaengeDokument($dokument_kurzbz, $person_id = null) { - $qry = " SELECT DISTINCT studiengang_kz,typ||kurzbz AS kuerzel, bezeichnung, english FROM public.tbl_dokumentstudiengang + $qry = " SELECT DISTINCT studiengang_kz,typ||kurzbz AS kuerzel, bezeichnung, english, stufe + FROM public.tbl_dokumentstudiengang JOIN public.tbl_prestudent USING (studiengang_kz) JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING (studiengang_kz) diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index dcac98148..4e720daef 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -3019,6 +3019,17 @@ if(!@$db->db_query("SELECT 0 FROM campus.tbl_zeitaufzeichnung_gd WHERE 0 = 1")) } +// Add column Stufe to tbl_dokumentstudiengang +if(!$result = @$db->db_query("SELECT stufe FROM public.tbl_dokumentstudiengang LIMIT 1")) +{ + $qry = "ALTER TABLE public.tbl_dokumentstudiengang ADD COLUMN stufe smallint;"; + + if(!$db->db_query($qry)) + echo 'public.tbl_dokumentstudiengang: '.$db->db_last_error().'
'; + else + echo '
public.tbl_dokumentstudiengang: Spalte stufe hinzugefuegt'; +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; @@ -3181,7 +3192,7 @@ $tabellen=array( "public.tbl_buchungstyp" => array("buchungstyp_kurzbz","beschreibung","standardbetrag","standardtext","aktiv","credit_points"), "public.tbl_dokument" => array("dokument_kurzbz","bezeichnung","ext_id","bezeichnung_mehrsprachig","dokumentbeschreibung_mehrsprachig","ausstellungsdetails"), "public.tbl_dokumentprestudent" => array("dokument_kurzbz","prestudent_id","mitarbeiter_uid","datum","updateamum","updatevon","insertamum","insertvon","ext_id"), - "public.tbl_dokumentstudiengang" => array("dokument_kurzbz","studiengang_kz","ext_id", "onlinebewerbung", "pflicht","beschreibung_mehrsprachig","nachreichbar"), + "public.tbl_dokumentstudiengang" => array("dokument_kurzbz","studiengang_kz","ext_id", "onlinebewerbung", "pflicht","beschreibung_mehrsprachig","nachreichbar","stufe"), "public.tbl_erhalter" => array("erhalter_kz","kurzbz","bezeichnung","dvr","logo","zvr"), "public.tbl_fachbereich" => array("fachbereich_kurzbz","bezeichnung","farbe","studiengang_kz","aktiv","ext_id","oe_kurzbz"), "public.tbl_filter" => array("filter_id","kurzbz","sql","valuename","showvalue","insertamum","insertvon","updateamum","updatevon","type","htmlattr", "bezeichnung"), diff --git a/vilesci/stammdaten/studiengang_dokumente.php b/vilesci/stammdaten/studiengang_dokumente.php index 898ace746..d5b1ff534 100644 --- a/vilesci/stammdaten/studiengang_dokumente.php +++ b/vilesci/stammdaten/studiengang_dokumente.php @@ -34,6 +34,7 @@ $dokument_kurzbz = isset($_REQUEST['dokument_kurzbz']) ? $_REQUEST['dokument_kur $onlinebewerbung = isset($_REQUEST['onlinebewerbung']); $pflicht = isset($_POST['pflicht']); $nachreichbar = isset($_POST['nachreichbar']); +$stufe = isset($_REQUEST['stufe']) ? $_REQUEST['stufe'] : ''; $sprache = new sprache(); $sprache->getAll(true, 'index'); @@ -64,6 +65,7 @@ if($action == 'add') $dokument->onlinebewerbung = $onlinebewerbung; $dokument->pflicht = $pflicht; $dokument->nachreichbar = $nachreichbar; + $dokument->stufe = $stufe; $beschreibung_mehrsprachig = array(); foreach($sprache->result as $row_sprache) @@ -128,6 +130,44 @@ if($action === 'togglepflicht') } } +// Ändern der Stufe per Ajax +$changeStufe = filter_input(INPUT_POST, 'changeStufe', FILTER_VALIDATE_BOOLEAN); +if ($changeStufe && isset($_POST['stufe']) && isset($_POST['studiengang_kz'])) +{ + if (!$stufe = filter_input(INPUT_POST, 'stufe', FILTER_VALIDATE_INT)) + { + echo json_encode(array( + 'status' => 'fehler', + 'msg' => '"'.$_POST['stufe'].'" ist kein gültiger Wert für die Stufe' + )); + exit(); + } + + $studiengang_kz = filter_input(INPUT_POST, 'studiengang_kz', FILTER_VALIDATE_INT); + $dokument_kurzbz = filter_input(INPUT_POST, 'dokument_kurzbz'); + + $dokument = new dokument(); + $dokument->loadDokumentStudiengang($dokument_kurzbz, $studiengang_kz); + $dokument->stufe = $stufe; + + if (!$dokument->saveDokumentStudiengang()) + { + echo json_encode(array( + 'status' => 'fehler', + 'msg' => $p->t('global/fehlerBeiDerParameteruebergabe') + )); + exit(); + } + else + { + echo json_encode(array( + 'status' => 'ok', + 'msg' => 'Status erfolgreich aktualisiert' + )); + exit(); + } +} + if($action === 'togglenachreichbar') { if(!$rechte->isBerechtigt('assistenz', $stg_kz, 'su')) @@ -188,10 +228,25 @@ echo ' Zuordnung Studiengang - Dokumente @@ -399,7 +493,7 @@ else
- '; echo ''; foreach ($studiengang->result as $stg) { @@ -450,9 +544,10 @@ else } if($rechte->isBerechtigt('assistenz', $stg_kz, 'su')) { - echo' Online-Bewerbung - Pflicht - Nachreichbar + echo' Online-Bewerbung + Pflicht + Nachreichbar + Stufe '; } echo' @@ -488,9 +583,29 @@ else } if($rechte->isBerechtigt('assistenz', $stg_kz, 'su')) { - echo' - - + echo' +
'.$checked_onlinebewerbung.'
+ + + + + +
'.$checked_pflicht.'
+ + + + + +
'.$checked_nachreichbar.'
+ + + + + + + + + '; if($rechte->isBerechtigt('assistenz', $stg_kz, 'su')) echo ''; @@ -546,6 +661,9 @@ else nachreichbar?'checked="checked"':'').'> + + + ';