diff --git a/application/controllers/organisation/Studienjahr.php b/application/controllers/organisation/Studienjahr.php index c3c841df9..e154734d4 100644 --- a/application/controllers/organisation/Studienjahr.php +++ b/application/controllers/organisation/Studienjahr.php @@ -20,7 +20,7 @@ class Studienjahr extends Auth_Controller 'editStudienjahr' => 'basis/studiensemester:rw', 'newStudienjahr' => 'basis/studiensemester:rw', 'insStudienjahr' => 'basis/studiensemester:rw', - 'saveStudienjahr' => 'basis/studiensemester:rw', + 'updateStudienjahr' => 'basis/studiensemester:rw', 'deleteStudienjahr' => 'basis/studiensemester:rw' ) ); @@ -117,6 +117,10 @@ class Studienjahr extends Auth_Controller public function insStudienjahr() { $data = $this->__retrieveStudienjahrData(); + $studienjahr_exists = $this->StudienjahrModel->load($data['studienjahr_kurzbz']); + if (hasData($studienjahr_exists)) + show_error("Studienjahr existiert bereits"); + $studienjahr = $this->StudienjahrModel->insert($data); if ($studienjahr->error) @@ -177,7 +181,7 @@ class Studienjahr extends Auth_Controller * replaces slash in Kurzbezeichnung with underscore * saved=true is a GET parameter passed for showing save message */ - public function saveStudienjahr() + public function updateStudienjahr() { $data = $this->__retrieveStudienjahrData(); $studienjahr = $this->StudienjahrModel->update($data['studienjahr_kurzbz'], $data); diff --git a/application/controllers/organisation/Studiensemester.php b/application/controllers/organisation/Studiensemester.php index cdca4997d..1e1aa45ee 100644 --- a/application/controllers/organisation/Studiensemester.php +++ b/application/controllers/organisation/Studiensemester.php @@ -20,7 +20,7 @@ class Studiensemester extends Auth_Controller 'editStudiensemester' => 'basis/studiensemester:rw', 'newStudiensemester' => 'basis/studiensemester:rw', 'insStudiensemester' => 'basis/studiensemester:rw', - 'saveStudiensemester' => 'basis/studiensemester:rw', + 'updateStudiensemester' => 'basis/studiensemester:rw', 'deleteStudiensemester' => 'basis/studiensemester:rw' ) ); @@ -108,6 +108,11 @@ class Studiensemester extends Auth_Controller public function insStudiensemester() { $data = $this->__retrieveStudiensemesterData(); + + $studiensemester_exists = $this->StudiensemesterModel->load($data['studiensemester_kurzbz']); + if (hasData($studiensemester_exists)) + show_error("Studiensemester existiert bereits"); + $semester = $this->StudiensemesterModel->insert($data); if ($semester->error) @@ -185,7 +190,7 @@ class Studiensemester extends Auth_Controller * redirects to edit page after inserting * saved=true is a GET parameter passed for showing save message */ - public function saveStudiensemester() + public function updateStudiensemester() { $data = $this->__retrieveStudiensemesterData(); $semester = $this->StudiensemesterModel->update($data['studiensemester_kurzbz'], $data); @@ -214,5 +219,4 @@ class Studiensemester extends Auth_Controller redirect("/organisation/studiensemester/listStudiensemester"); } - } diff --git a/application/libraries/CryptLib.php b/application/libraries/CryptLib.php new file mode 100644 index 000000000..ea19f3e5b --- /dev/null +++ b/application/libraries/CryptLib.php @@ -0,0 +1,28 @@ +setBlockLength(256); + $cipher->setKey($key); + + if ($paddingDisabled === true) $cipher->disablePadding(); + + return $cipher->encrypt($value); + } +} diff --git a/application/views/organisation/studienjahrEdit.php b/application/views/organisation/studienjahrEdit.php index 4a23217b1..df0397cdf 100644 --- a/application/views/organisation/studienjahrEdit.php +++ b/application/views/organisation/studienjahrEdit.php @@ -7,7 +7,7 @@ $this->load->view('templates/header', array('title' => 'StudienjahrEdit', 'jquer

Studienjahr bearbeiten: studienjahr_kurzbz; ?>

-
"> + "> diff --git a/application/views/organisation/studiensemesterEdit.php b/application/views/organisation/studiensemesterEdit.php index 9f0abc0cb..98c4ca243 100644 --- a/application/views/organisation/studiensemesterEdit.php +++ b/application/views/organisation/studiensemesterEdit.php @@ -8,7 +8,7 @@ $this->load->view('templates/header', array('title' => 'StudiensemesterEdit', 'd

Studiensemester bearbeiten: studiensemester_kurzbz; ?>

"> + action="">
diff --git a/application/views/system/infocenter/infocenterData.php b/application/views/system/infocenter/infocenterData.php index 6cafc6192..91a24c463 100644 --- a/application/views/system/infocenter/infocenterData.php +++ b/application/views/system/infocenter/infocenterData.php @@ -394,7 +394,7 @@ if ($datasetRaw->OnholdDate != null) { - $mark = "text-success"; + $mark = "onhold"; } // Parking has priority over locking diff --git a/application/views/system/infocenter/infocenterFreigegebenData.php b/application/views/system/infocenter/infocenterFreigegebenData.php index 13a2c0563..87a9f78d6 100644 --- a/application/views/system/infocenter/infocenterFreigegebenData.php +++ b/application/views/system/infocenter/infocenterFreigegebenData.php @@ -206,6 +206,7 @@ FROM public.tbl_prestudent ps JOIN public.tbl_studiengang sg USING(studiengang_kz) WHERE ps.person_id = p.person_id + AND ps.reihungstestangetreten = FALSE AND (sg.typ IN ('.$STUDIENGANG_TYP.') OR sg.studiengang_kz in('.$ADDITIONAL_STG.') diff --git a/cis/private/lehre/fotoliste.pdf.php b/cis/private/lehre/fotoliste.pdf.php index 8565470c6..3fc04355f 100644 --- a/cis/private/lehre/fotoliste.pdf.php +++ b/cis/private/lehre/fotoliste.pdf.php @@ -1,308 +1,310 @@ - - * - * Description: This file creates a studentlist with students' profile fotos - * by a given studiengangs- and lehrveranstaltungs ID (and eventually a given lehreinheit ID). - * If fotos are locked by student, a dummy picture is inserted instead of the students foto. - * EXCEPTION: if user has admins or assitents rights, ALL students' fotos are iserted (even locked ones) - * - */ - -require_once('../../../config/cis.config.inc.php'); -require_once('../../../include/dokument_export.class.php'); -require_once('../../../include/lehrveranstaltung.class.php'); -require_once('../../../include/lehreinheit.class.php'); -require_once('../../../include/benutzerberechtigung.class.php'); -require_once('../../../include/studiensemester.class.php'); -require_once('../../../include/studiengang.class.php'); -require_once('../../../include/functions.inc.php'); -require_once('../../../include/erhalter.class.php'); -require_once('../../../include/datum.class.php'); - - -$doc = new dokument_export('fotoliste'); -$output = 'pdf'; -$show_all_fotos = false; - - -//check user access & $_GET vars -if (!$db = new basis_db()) - die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - -$user = get_uid(); - - -if (isset($_GET['lvid']) && is_numeric($_GET['lvid'])) - $lvid = $_GET['lvid']; -else - die('Eine gueltige LvID muss uebergeben werden'); - -isset($_GET['stsem']) ? $studiensemester = $_GET['stsem'] : die('Ein Studiensemester muss uebergeben werden'); - -$lv = new lehrveranstaltung(); -$lv->load($lvid); - -$stg = new studiengang(); -$stg->load($lv->studiengang_kz); - -$berechtigung = new benutzerberechtigung(); -$berechtigung->getBerechtigungen($user); - -if (!$berechtigung->isBerechtigt('admin') && !$berechtigung->isBerechtigt('assistenz') && !$berechtigung->isBerechtigt('lehre', $lv->oe_kurzbz, 's') && !check_lektor_lehrveranstaltung($user, $lvid, $studiensemester)) - die('Sie muessen LektorIn der LV sein oder das Recht "ADMIN", "ASSISTENZ" oder "LEHRE" haben, um diese Seite aufrufen zu koennen'); - -if ($berechtigung->isBerechtigt('admin') || $berechtigung->isBerechtigt('assistenz')) - $show_all_fotos = true; - -if (isset($_GET['output']) && ($output = 'odt' || $output = 'doc')) - $output = $_GET['output']; -isset($_GET['stg_kz']) ? $studiengang = $_GET['stg_kz'] : $studiengang = NULL; -isset($_GET['lehreinheit_id']) ? $lehreinheit = $_GET['lehreinheit_id'] : $lehreinheit = NULL; - - -//**************************** overall lehrveranstaltungs data ******************************* -//load overall lehrveranstaltungs-data -$qry = "SELECT DISTINCT ON - (kuerzel, semester, verband, gruppe, gruppe_kurzbz) - UPPER(stg_typ || stg_kurzbz) as kuerzel, - lv_bezeichnung, - stg_bez, - semester, - verband, - gruppe, - gruppe_kurzbz, - stg_typ - FROM - campus.vw_lehreinheit - WHERE - lehrveranstaltung_id=" . $db->db_add_param($lvid, FHC_INTEGER) . " - AND - studiensemester_kurzbz=" . $db->db_add_param($studiensemester); -if ($lehreinheit != '') - $qry .= " AND lehreinheit_id=" . $db->db_add_param($lehreinheit, FHC_INTEGER); - -$gruppen_string = ''; -$gruppen_string_arr = array(); -$stg_typ = $stg->typ; -$stg_bezeichnung = $stg->bezeichnung; - -//structure overall lehrveranstaltungs data -if ($result = $db->db_query($qry)) { - while ($row = $db->db_fetch_object($result)) { - //lehrveranstaltung - $lv_bezeichnung = $row->lv_bezeichnung; - - //collect all gruppenkürzel - if ($row->gruppe_kurzbz == '') - $gruppen_string = trim($row->kuerzel . '-' . $row->semester . $row->verband . $row->gruppe); - else - $gruppen_string = $row->gruppe_kurzbz; - - $gruppen_string_arr[] = $gruppen_string; - } -} - -//concatinate distinct gruppenkürzel -$studiengruppe = implode(", ", array_unique($gruppen_string_arr)); - -//get studiengangstyp-bezeichnung -$qry = "SELECT - bezeichnung - FROM - public.tbl_studiengangstyp - WHERE - typ =" . $db->db_add_param($stg_typ); - -if ($result = $db->db_query($qry)) { - $row = $db->db_fetch_object($result); - $stg_typ_bezeichnung = $row->bezeichnung; -} - - -//add overall lehrveranstaltungs-data for XML -$data = array( - 'lehrveranstaltung' => $lv_bezeichnung, - 'studiengang' => $stg_bezeichnung, - 'studiengangs_typ' => $stg_typ_bezeichnung, - 'studiensemester' => $studiensemester, - 'studiengruppe' => $studiengruppe -); - - - -//**************************** students data ******************************* -//load students-data -$qry = 'SELECT DISTINCT ON - (nachname, vorname, person_id) - vorname, - nachname, - matrikelnr, - tbl_studentlehrverband.semester, - tbl_studentlehrverband.verband, - tbl_studentlehrverband.gruppe, - (SELECT - status_kurzbz - FROM - public.tbl_prestudentstatus - WHERE - prestudent_id=tbl_student.prestudent_id - ORDER BY - datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, - tbl_studiengang.kurzbz, - tbl_studiengang.typ, - tbl_bisio.bisio_id, - tbl_bisio.von, - tbl_bisio.bis, - tbl_student.studiengang_kz AS stg_kz_student, - tbl_zeugnisnote.note, - tbl_mitarbeiter.mitarbeiter_uid, - tbl_person.matr_nr, - tbl_person.geschlecht, - tbl_person.foto, - tbl_person.foto_sperre - FROM - campus.vw_student_lehrveranstaltung - JOIN public.tbl_benutzer USING(uid) - JOIN public.tbl_person USING(person_id) - LEFT JOIN public.tbl_student ON(uid=student_uid) - LEFT JOIN public.tbl_studiengang ON(tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz) - LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) - LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz) - LEFT JOIN lehre.tbl_zeugnisnote ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id - AND tbl_zeugnisnote.student_uid=tbl_student.student_uid - AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz) - LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid) - WHERE - vw_student_lehrveranstaltung.lehrveranstaltung_id=' . $db->db_add_param($lvid, FHC_INTEGER) . ' AND - vw_student_lehrveranstaltung.studiensemester_kurzbz=' . $db->db_add_param($studiensemester); - -if ($lehreinheit != '') - $qry .= ' AND vw_student_lehrveranstaltung.lehreinheit_id=' . $db->db_add_param($lehreinheit, FHC_INTEGER); - -$qry .= ' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC'; - -$stsem_obj = new studiensemester(); -$stsem_obj->load($studiensemester); -$stsemdatumvon = $stsem_obj->start; -$stsemdatumbis = $stsem_obj->ende; - -$erhalter = new erhalter(); -$erhalter->getAll(); - -$a_o_kz = '9' . sprintf("%03s", $erhalter->result[0]->erhalter_kz); //Stg_Kz AO-Studierende auslesen (9005 fuer FHTW) -$anzahl_studierende = 0; -$datum = new datum(); -$zusatz = ''; - -//structure students data -if ($result = $db->db_query($qry)) { - while ($row = $db->db_fetch_object($result)) { - if ($row->status != 'Abbrecher' && $row->status != 'Unterbrecher') { - $anzahl_studierende++; - - if ($row->status == 'Incoming') //Incoming - $zusatz = '(i)'; - else - $zusatz = ''; - - if ($row->bisio_id != '' && $row->status != 'Incoming' && ($row->bis > $stsemdatumvon || $row->bis == '') && $row->von < $stsemdatumbis) //Outgoing - $zusatz .= '(o)(ab ' . $datum->formatDatum($row->von, 'd.m.Y') . ')'; - - if ($row->note == 6) //angerechnet - $zusatz .= '(ar)'; - - if ($row->mitarbeiter_uid != '') //mitarbeiter - $zusatz .= '(ma)'; - - if ($row->stg_kz_student == $a_o_kz) //Außerordentliche Studierende - $zusatz .= '(a.o.)'; - - //allow admin and assistenz to see ALL fotos (even if locked by user) - if ($show_all_fotos) - $row->foto_sperre = 'f'; - - //create foto (if not locked by student OR if fotolist is created by admin or assistenz) - $foto_url = ''; - - if ($row->foto_sperre == 'f' && $row->foto != '') { - $foto_src = $row->foto; - $foto_url = sys_get_temp_dir() . '/foto' . trim($row->matrikelnr) . '.jpg'; - $foto_url_arr[] = $foto_url; - - //create writeable file - if (!$foto = fopen($foto_url, 'w')) - die("Das Bild konnte nicht erstellt werden"); - //add foto base64-code - if (!fwrite($foto, base64_decode($foto_src))) - { - die("Das Bild konnte nicht erstellt werden"); - } - - //add foto to document - $doc->addImage($foto_url, trim($row->matrikelnr) . '.jpg', 'image/jpg'); - } - elseif ($row->foto_sperre == 't') - { - $foto_url = 'gesperrt'; - } - - //create studiengruppe - $student_studiengruppe = strtoupper($row->typ.$row->kurzbz.'-'.$row->semester); - - //add studierenden data for XML - $data[] = array('studierende' => array( - 'vorname' => $row->vorname, - 'nachname' => mb_strtoupper($row->nachname, 'UTF-8'), - 'personenkennzeichen' => trim($row->matrikelnr), - 'geschlecht' => $row->geschlecht, - 'foto_gesperrt' => $row->foto_sperre, // f/t - 'foto_url' => $foto_url, - 'studiengruppe' => $student_studiengruppe, - 'verband' => trim($row->verband), - 'gruppe' => trim($row->gruppe), - 'zusatz' => $zusatz - )); - } - } - //Anzahl Studierende in Array $data (an erster Stelle) einfuegen - $data = array_reverse($data, true); - $data['anzahl_studierende'] = $anzahl_studierende; - $data = array_reverse($data, true); -} - -//add data to fotoliste.xsl -$doc->addDataArray($data, 'fotoliste'); - -//set doc name -$doc->setFilename('Fotoliste_'.$stg_bezeichnung.'_'.$studiensemester.'_'.$lv_bezeichnung); - -//create doc in format required -if (!$doc->create($output)) - die($doc->errormsg); - -//download doc -$doc->output(); - -//unlink doc from tmp-folder -$doc->close(); - -//unlink fotos from tmp-folder -foreach ($foto_url_arr as $foto_url) - unlink($foto_url); + + * + * Description: This file creates a studentlist with students' profile fotos + * by a given studiengangs- and lehrveranstaltungs ID (and eventually a given lehreinheit ID). + * If fotos are locked by student, a dummy picture is inserted instead of the students foto. + * EXCEPTION: if user has admins or assitents rights, ALL students' fotos are iserted (even locked ones) + * + */ + +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/dokument_export.class.php'); +require_once('../../../include/lehrveranstaltung.class.php'); +require_once('../../../include/lehreinheit.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); +require_once('../../../include/studiensemester.class.php'); +require_once('../../../include/studiengang.class.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/erhalter.class.php'); +require_once('../../../include/datum.class.php'); + + +$doc = new dokument_export('fotoliste'); +$output = 'pdf'; +$show_all_fotos = false; + + +//check user access & $_GET vars +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); + +$user = get_uid(); + + +if (isset($_GET['lvid']) && is_numeric($_GET['lvid'])) + $lvid = $_GET['lvid']; +else + die('Eine gueltige LvID muss uebergeben werden'); + +isset($_GET['stsem']) ? $studiensemester = $_GET['stsem'] : die('Ein Studiensemester muss uebergeben werden'); + +$lv = new lehrveranstaltung(); +$lv->load($lvid); + +$stg = new studiengang(); +$stg->load($lv->studiengang_kz); + +$berechtigung = new benutzerberechtigung(); +$berechtigung->getBerechtigungen($user); + +if (!$berechtigung->isBerechtigt('admin') && !$berechtigung->isBerechtigt('assistenz') && !$berechtigung->isBerechtigt('lehre', $lv->oe_kurzbz, 's') && !check_lektor_lehrveranstaltung($user, $lvid, $studiensemester)) + die('Sie muessen LektorIn der LV sein oder das Recht "ADMIN", "ASSISTENZ" oder "LEHRE" haben, um diese Seite aufrufen zu koennen'); + +if ($berechtigung->isBerechtigt('admin') || $berechtigung->isBerechtigt('assistenz')) + $show_all_fotos = true; + +if (isset($_GET['output']) && ($output = 'odt' || $output = 'doc')) + $output = $_GET['output']; +isset($_GET['stg_kz']) ? $studiengang = $_GET['stg_kz'] : $studiengang = NULL; +isset($_GET['lehreinheit_id']) ? $lehreinheit = $_GET['lehreinheit_id'] : $lehreinheit = NULL; + + +//**************************** overall lehrveranstaltungs data ******************************* +//load overall lehrveranstaltungs-data +$qry = "SELECT DISTINCT ON + (kuerzel, semester, verband, gruppe, gruppe_kurzbz) + UPPER(stg_typ || stg_kurzbz) as kuerzel, + lv_bezeichnung, + stg_bez, + semester, + verband, + gruppe, + gruppe_kurzbz, + stg_typ + FROM + campus.vw_lehreinheit + WHERE + lehrveranstaltung_id=" . $db->db_add_param($lvid, FHC_INTEGER) . " + AND + studiensemester_kurzbz=" . $db->db_add_param($studiensemester); +if ($lehreinheit != '') + $qry .= " AND lehreinheit_id=" . $db->db_add_param($lehreinheit, FHC_INTEGER); + +$gruppen_string = ''; +$gruppen_string_arr = array(); +$stg_typ = $stg->typ; +$stg_bezeichnung = $stg->bezeichnung; + +//structure overall lehrveranstaltungs data +if ($result = $db->db_query($qry)) { + while ($row = $db->db_fetch_object($result)) { + //lehrveranstaltung + $lv_bezeichnung = $row->lv_bezeichnung; + + //collect all gruppenkürzel + if ($row->gruppe_kurzbz == '') + $gruppen_string = trim($row->kuerzel . '-' . $row->semester . $row->verband . $row->gruppe); + else + $gruppen_string = $row->gruppe_kurzbz; + + $gruppen_string_arr[] = $gruppen_string; + } +} + +//concatinate distinct gruppenkürzel +$studiengruppe = implode(", ", array_unique($gruppen_string_arr)); + +//get studiengangstyp-bezeichnung +$qry = "SELECT + bezeichnung + FROM + public.tbl_studiengangstyp + WHERE + typ =" . $db->db_add_param($stg_typ); + +if ($result = $db->db_query($qry)) { + $row = $db->db_fetch_object($result); + $stg_typ_bezeichnung = $row->bezeichnung; +} + + +//add overall lehrveranstaltungs-data for XML +$data = array( + 'lehrveranstaltung' => $lv_bezeichnung, + 'studiengang' => $stg_bezeichnung, + 'studiengangs_typ' => $stg_typ_bezeichnung, + 'studiensemester' => $studiensemester, + 'studiengruppe' => $studiengruppe +); + + + +//**************************** students data ******************************* +//load students-data +$qry = 'SELECT DISTINCT ON + (nachname, vorname, person_id) + vorname, + nachname, + matrikelnr, + tbl_studentlehrverband.semester, + tbl_studentlehrverband.verband, + tbl_studentlehrverband.gruppe, + (SELECT + status_kurzbz + FROM + public.tbl_prestudentstatus + WHERE + prestudent_id=tbl_student.prestudent_id + ORDER BY + datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, + tbl_studiengang.kurzbz, + tbl_studiengang.typ, + tbl_bisio.bisio_id, + tbl_bisio.von, + tbl_bisio.bis, + tbl_student.studiengang_kz AS stg_kz_student, + tbl_zeugnisnote.note, + tbl_mitarbeiter.mitarbeiter_uid, + tbl_person.person_id, + tbl_person.matr_nr, + tbl_person.geschlecht, + tbl_person.foto, + tbl_person.foto_sperre + FROM + campus.vw_student_lehrveranstaltung + JOIN public.tbl_benutzer USING(uid) + JOIN public.tbl_person USING(person_id) + LEFT JOIN public.tbl_student ON(uid=student_uid) + LEFT JOIN public.tbl_studiengang ON(tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz) + LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) + LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz) + LEFT JOIN lehre.tbl_zeugnisnote ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id + AND tbl_zeugnisnote.student_uid=tbl_student.student_uid + AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz) + LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid) + WHERE + vw_student_lehrveranstaltung.lehrveranstaltung_id=' . $db->db_add_param($lvid, FHC_INTEGER) . ' AND + vw_student_lehrveranstaltung.studiensemester_kurzbz=' . $db->db_add_param($studiensemester); + +if ($lehreinheit != '') + $qry .= ' AND vw_student_lehrveranstaltung.lehreinheit_id=' . $db->db_add_param($lehreinheit, FHC_INTEGER); + +$qry .= ' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC'; + +$stsem_obj = new studiensemester(); +$stsem_obj->load($studiensemester); +$stsemdatumvon = $stsem_obj->start; +$stsemdatumbis = $stsem_obj->ende; + +$erhalter = new erhalter(); +$erhalter->getAll(); + +$a_o_kz = '9' . sprintf("%03s", $erhalter->result[0]->erhalter_kz); //Stg_Kz AO-Studierende auslesen (9005 fuer FHTW) +$anzahl_studierende = 0; +$datum = new datum(); +$zusatz = ''; +$foto_url_arr = array(); + +//structure students data +if ($result = $db->db_query($qry)) { + while ($row = $db->db_fetch_object($result)) { + if ($row->status != 'Abbrecher' && $row->status != 'Unterbrecher') { + $anzahl_studierende++; + + if ($row->status == 'Incoming') //Incoming + $zusatz = '(i)'; + else + $zusatz = ''; + + if ($row->bisio_id != '' && $row->status != 'Incoming' && ($row->bis > $stsemdatumvon || $row->bis == '') && $row->von < $stsemdatumbis) //Outgoing + $zusatz .= '(o)(ab ' . $datum->formatDatum($row->von, 'd.m.Y') . ')'; + + if ($row->note == 6) //angerechnet + $zusatz .= '(ar)'; + + if ($row->mitarbeiter_uid != '') //mitarbeiter + $zusatz .= '(ma)'; + + if ($row->stg_kz_student == $a_o_kz) //Außerordentliche Studierende + $zusatz .= '(a.o.)'; + + //allow admin and assistenz to see ALL fotos (even if locked by user) + if ($show_all_fotos) + $row->foto_sperre = 'f'; + + //create foto (if not locked by student OR if fotolist is created by admin or assistenz) + $foto_url = ''; + + if ($row->foto_sperre == 'f' && $row->foto != '') { + $foto_src = $row->foto; + $foto_url = sys_get_temp_dir() . '/foto' . trim($row->person_id) . '.jpg'; + $foto_url_arr[] = $foto_url; + + //create writeable file + if (!$foto = fopen($foto_url, 'w')) + die("Das Bild konnte nicht erstellt werden"); + //add foto base64-code + if (!fwrite($foto, base64_decode($foto_src))) + { + die("Das Bild konnte nicht erstellt werden"); + } + + //add foto to document + $doc->addImage($foto_url, trim($row->person_id) . '.jpg', 'image/jpg'); + } + elseif ($row->foto_sperre == 't') + { + $foto_url = 'gesperrt'; + } + + //create studiengruppe + $student_studiengruppe = strtoupper($row->typ.$row->kurzbz.'-'.$row->semester); + + //add studierenden data for XML + $data[] = array('studierende' => array( + 'vorname' => $row->vorname, + 'nachname' => mb_strtoupper($row->nachname, 'UTF-8'), + 'personenkennzeichen' => trim($row->matrikelnr), + 'geschlecht' => $row->geschlecht, + 'foto_gesperrt' => $row->foto_sperre, // f/t + 'foto_url' => $foto_url, + 'studiengruppe' => $student_studiengruppe, + 'verband' => trim($row->verband), + 'gruppe' => trim($row->gruppe), + 'zusatz' => $zusatz + )); + } + } + //Anzahl Studierende in Array $data (an erster Stelle) einfuegen + $data = array_reverse($data, true); + $data['anzahl_studierende'] = $anzahl_studierende; + $data = array_reverse($data, true); +} + +//add data to fotoliste.xsl +$doc->addDataArray($data, 'fotoliste'); + +//set doc name +$doc->setFilename('Fotoliste_'.$stg_bezeichnung.'_'.$studiensemester.'_'.$lv_bezeichnung); + +//create doc in format required +if (!$doc->create($output)) + die($doc->errormsg); + +//download doc +$doc->output(); + +//unlink doc from tmp-folder +$doc->close(); + +//unlink fotos from tmp-folder +foreach ($foto_url_arr as $foto_url) + unlink($foto_url); diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index b4eba2f6d..9c30427c3 100644 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -1177,7 +1177,12 @@ function getAllFreieRaeume($terminId) $teilnehmer = $teilnehmer !== false ? $teilnehmer : 0; $pruefungstermin->getAll($pruefungstermin->von, $pruefungstermin->bis, TRUE); - if($ort->search($datum_von[0], $datum_von[1], $datum_bis[1], null, $teilnehmer, true)) + if(defined('CIS_PRUEFUNGSANMELDUNG_ERLAUBE_TERMINKOLLISION') && CIS_PRUEFUNGSANMELDUNG_ERLAUBE_TERMINKOLLISION) + $ortSuccess = $ort->getOrte(true, null, true); + else + $ortSuccess = $ort->search($datum_von[0], $datum_von[1], $datum_bis[1], null, $teilnehmer, true); + + if($ortSuccess) { foreach($pruefungstermin->result as $termin) { diff --git a/cis/private/lvplan/stpl_detail.php b/cis/private/lvplan/stpl_detail.php index 3612a15db..87d4a70ff 100644 --- a/cis/private/lvplan/stpl_detail.php +++ b/cis/private/lvplan/stpl_detail.php @@ -156,9 +156,12 @@ $num_rows_stpl = $db->db_num_rows($erg_stpl); $sql_query=" SELECT vw_reservierung.*, vw_mitarbeiter.titelpre, vw_mitarbeiter.titelpost, - vw_mitarbeiter.vorname,vw_mitarbeiter.nachname + vw_mitarbeiter.vorname, vw_mitarbeiter.nachname, reserviert_von.titelpre AS titelpre_reserviertvon, reserviert_von.titelpost AS titelpost_reserviertvon, + reserviert_von.vorname AS vorname_reserviertvon, reserviert_von.nachname AS nachname_reserviertvon FROM - campus.vw_reservierung, campus.vw_mitarbeiter + campus.vw_reservierung + JOIN campus.vw_mitarbeiter ON vw_reservierung.uid=vw_mitarbeiter.uid + LEFT JOIN campus.vw_mitarbeiter reserviert_von ON vw_reservierung.insertvon=reserviert_von.uid WHERE datum=".$db->db_add_param($datum)." AND stunde=".$db->db_add_param($stunde); @@ -167,7 +170,6 @@ if (isset($ort_kurzbz) && $type=='ort') $sql_query.=" AND vw_reservierung.ort_kurzbz=".$db->db_add_param($ort_kurzbz); if ($type=='lektor') $sql_query.=" AND vw_reservierung.uid=".$db->db_add_param($pers_uid); -$sql_query.=" AND vw_reservierung.uid=vw_mitarbeiter.uid"; if ($type=='verband' || $type=='student') { $sql_query.=" AND studiengang_kz=".$db->db_add_param($stg_kz)." @@ -271,7 +273,7 @@ if ($num_rows_repl>0) { echo '

'.$p->t('lvplan/reservierungen').'

'; echo '
'; - echo ''; + echo ''; $i=0; $ort = new ort(); while($row = $db->db_fetch_object($erg_repl)) @@ -285,13 +287,20 @@ if ($num_rows_repl>0) $pers_nachname=$row->nachname; $pers_email=$row->uid.'@'.DOMAIN; $beschreibung=$row->beschreibung; + $reserviertvon=$row->insertvon; + $titelpre_reserviertvon=$row->titelpre_reserviertvon; + $titelpost_reserviertvon=$row->titelpost_reserviertvon; + $pers_vorname_reserviertvon=$row->vorname_reserviertvon; + $pers_nachname_reserviertvon=$row->nachname_reserviertvon; + $ort->load($ortkurzbz); echo ''; - echo ''; + echo ''; echo ''; - echo ''; - echo ''; + echo ''; + echo ''; + echo ''; } echo '
'.$p->t('global/titel').''.$p->t('lvplan/ort').''.$p->t('global/person').''.$p->t('global/beschreibung').'
'.$p->t('global/titel').''.$p->t('lvplan/ort').''.$p->t('global/person').''.$p->t('global/beschreibung').''.$p->t('lvplan/reserviertVon').'
'.$db->convert_html_chars($titel).''.$db->convert_html_chars($titel).''.(!empty($ortkurzbz)?($ort->content_id!=''?''.$db->convert_html_chars($ortkurzbz).'':$db->convert_html_chars($ortkurzbz)):$db->convert_html_chars($ortkurzbz)).''.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).''.$db->convert_html_chars($beschreibung).'
'.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).''.$db->convert_html_chars($beschreibung).''.$db->convert_html_chars($titelpre_reserviertvon.' '.$pers_vorname_reserviertvon.' '.$pers_nachname_reserviertvon.' '.$titelpost_reserviertvon).'

'; } diff --git a/cis/private/lvplan/stpl_reserve_list.php b/cis/private/lvplan/stpl_reserve_list.php index 5e6e1fa85..21328050b 100644 --- a/cis/private/lvplan/stpl_reserve_list.php +++ b/cis/private/lvplan/stpl_reserve_list.php @@ -88,9 +88,15 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) $datum = date("Y-m-d",$datum); //EIGENE - $sql_query="SELECT * FROM campus.vw_reservierung + $sql_query="SELECT vw_reservierung.*, vw_mitarbeiter.titelpre, vw_mitarbeiter.titelpost, + vw_mitarbeiter.vorname, vw_mitarbeiter.nachname, reserviert_von.titelpre AS titelpre_reserviertvon, + reserviert_von.titelpost AS titelpost_reserviertvon, reserviert_von.vorname AS vorname_reserviertvon, + reserviert_von.nachname AS nachname_reserviertvon + FROM campus.vw_reservierung + JOIN campus.vw_mitarbeiter ON vw_reservierung.uid=vw_mitarbeiter.uid + LEFT JOIN campus.vw_mitarbeiter reserviert_von ON vw_reservierung.insertvon=reserviert_von.uid WHERE datum>=".$db->db_add_param($datum)." - AND (uid=".$db->db_add_param($uid)." OR insertvon=".$db->db_add_param($uid).") + AND (vw_reservierung.uid=".$db->db_add_param($uid)." OR vw_reservierung.insertvon=".$db->db_add_param($uid).") ORDER BY datum, titel, ort_kurzbz, stunde"; if (!$erg_res=$db->db_query($sql_query)) @@ -108,8 +114,9 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) '.$p->t('global/titel').' '.$p->t('global/stunde').' '.$p->t('lvplan/raum').' - '.$p->t('global/uid').' + '.$p->t('global/person').' '.$p->t('global/beschreibung').' + '.$p->t('lvplan/reserviertVon').' '.$p->t('global/aktion').' '; for ($i=0; $i<$num_rows_res; $i++) @@ -124,6 +131,14 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) $beschreibung=$db->db_result($erg_res,$i,"beschreibung"); $insertamum=$db->db_result($erg_res,$i,"insertamum"); $insertvon=$db->db_result($erg_res,$i,"insertvon"); + $titelpre=$db->db_result($erg_res,$i,"titelpre"); + $titelpost=$db->db_result($erg_res,$i,"titelpost"); + $pers_vorname=$db->db_result($erg_res,$i,"vorname"); + $pers_nachname=$db->db_result($erg_res,$i,"nachname"); + $titelpre_reserviertvon=$db->db_result($erg_res,$i,"titelpre_reserviertvon"); + $titelpost_reserviertvon=$db->db_result($erg_res,$i,"titelpost_reserviertvon"); + $pers_vorname_reserviertvon=$db->db_result($erg_res,$i,"vorname_reserviertvon"); + $pers_nachname_reserviertvon=$db->db_result($erg_res,$i,"nachname_reserviertvon"); $datum1 = $datum_obj->formatDatum($datum1, 'd.m.Y'); if($insertamum!='') $insertamum = $datum_obj->formatDatum($insertamum, 'd.m.Y H:i:s'); @@ -132,8 +147,9 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo ''.$db->convert_html_chars($titel).''; echo ''.$db->convert_html_chars($stunde).''; echo ''.$db->convert_html_chars($ort_kurzbz).''; - echo ''.$db->convert_html_chars($pers_uid).''; + echo ''.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).''; echo ''.$db->convert_html_chars($beschreibung).' '; + echo ''.$db->convert_html_chars($titelpre_reserviertvon.' '.$pers_vorname_reserviertvon.' '.$pers_nachname_reserviertvon.' '.$titelpost_reserviertvon).''; $z=$i-1; if (($pers_uid==$uid || $insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo 'Delete'; diff --git a/cis/private/tools/zeitaufzeichnung.php b/cis/private/tools/zeitaufzeichnung.php index cd40391e1..2d96380f6 100644 --- a/cis/private/tools/zeitaufzeichnung.php +++ b/cis/private/tools/zeitaufzeichnung.php @@ -55,6 +55,7 @@ if (!$db = new basis_db()) $user = get_uid(); +$passuid = false; $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); @@ -67,6 +68,7 @@ if(isset($_GET['uid'])) $user = $_GET['uid']; $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); + $passuid = true; } else { @@ -1021,7 +1023,7 @@ if($projekt->getProjekteMitarbeiter($user, true)) CSV Export"; if($anzprojekte > 0) - echo " | ".$p->t("zeitaufzeichnung/projektexport").""; + echo " | ".$p->t("zeitaufzeichnung/projektexport").""; echo " "; if ($p->t("dms_link/handbuchZeitaufzeichnung")!='') @@ -1054,19 +1056,21 @@ if($projekt->getProjekteMitarbeiter($user, true)) echo '
'; echo ''.$p->t('zeitaufzeichnung/projektexport').''; echo ''.$p->t('zeitaufzeichnung/monat').' '; echo ''.$p->t('zeitaufzeichnung/jahr').' '; + if ($passuid) + echo ''; echo ''; echo '
'; echo '
'; @@ -1490,16 +1494,19 @@ if($projekt->getProjekteMitarbeiter($user, true)) } list($h2, $m2) = explode(':', $elsumme); $elsumme = $h2*3600+$m2*60; - if ($tagessaldo > 18000 && $tagessaldo < 19800 && $pflichtpause==false && $elsumme == 0) + if ($datum->formatDatum($tag, 'Y-m-d') >= '2019-11-06') { - //$pausesumme = $tagessaldo-18000; $pausesumme = $pausesumme; } + else if ($tagessaldo > 18000 && $tagessaldo < 19800 && $pflichtpause==false && $elsumme == 0) + { + $pausesumme = $tagessaldo-18000; + } else if ($tagessaldo>18000 && $pflichtpause==false && $elsumme == 0) { - //$pausesumme = $pausesumme+1800; - $pausesumme = $pausesumme; + $pausesumme = $pausesumme+1800; } + if ($elsumme > 0){ $pausesumme = $pausesumme + $elsumme; $pflichtpause = true; diff --git a/cis/private/tools/zeitaufzeichnung_projektliste.php b/cis/private/tools/zeitaufzeichnung_projektliste.php index b8b19a0a9..c578ccb88 100644 --- a/cis/private/tools/zeitaufzeichnung_projektliste.php +++ b/cis/private/tools/zeitaufzeichnung_projektliste.php @@ -29,6 +29,7 @@ require_once('../../../include/phrasen.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/Excel/excel.php'); require_once('../../../include/benutzer.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); require_once('../../../include/mitarbeiter.class.php'); require_once('../../../include/zeitaufzeichnung.class.php'); require_once('../../../include/projekt.class.php'); @@ -46,6 +47,24 @@ $sprache_obj->load($sprache); $sprache_index = $sprache_obj->index; $uid = get_uid(); + +//Wenn User Administrator ist und UID uebergeben wurde, dann die Zeitaufzeichnung +//des uebergebenen Users anzeigen +if (isset($_GET['uid'])) +{ + $rechte = new benutzerberechtigung(); + $rechte->getBerechtigungen($uid); + + if ($rechte->isBerechtigt('admin')) + { + $uid = $_GET['uid']; + } + else + { + die($p->t('global/FuerDieseAktionBenoetigenSieAdministrationsrechte')); + } +} + $benutzer = new benutzer(); if (!$benutzer->load($uid)) die($p->t("zeitaufzeichnung/benutzerWurdeNichtGefunden", array($uid))); @@ -602,12 +621,12 @@ foreach ($projektnames as $projektname) $lastspalte = 4 + $nrPhases; //calculating spaces for centering global header texts - $usernamelength = strlen($username) * 1.77; +/* $usernamelength = strlen($username) * 1.77; $numberspacesfirstrow = $totalwidth - $daywidth * 2 - $worktimewidth - $usernamelength; $numberspacessecondrow = $numberspacesfirstrow + $usernamelength - strlen($p->t('zeitaufzeichnung/personalnr').$persnr) - 4; $spacesstringfirstrow = str_repeat(' ', $numberspacesfirstrow); - $spacesstringsecondrow = str_repeat(' ', $numberspacessecondrow); + $spacesstringsecondrow = str_repeat(' ', $numberspacessecondrow);*/ $spalte = $zeile = 0; @@ -626,14 +645,14 @@ foreach ($projektnames as $projektname) } $worksheet->setMerge($zeile, $spalte + 3, $zeile, $lastspalte); $worksheet->setMerge($zeile + 1, $spalte + 3, $zeile + 1, $lastspalte); - $worksheet->write($zeile, $spalte + 3, $p->t('zeitaufzeichnung/projektlistegedruckt').$spacesstringfirstrow.$username, $format_heading_right); + $worksheet->write($zeile, $spalte + 3, /*$p->t('zeitaufzeichnung/projektlistegedruckt').$spacesstringfirstrow.*/$username, $format_heading_right); for ($i = 4; $i < $lastspalte; $i++) { $worksheet->write($zeile, $i, '', $format_heading_topline); $worksheet->write($zeile + 1, $i, '', $format_heading_bottomline); } $worksheet->write($zeile, $lastspalte, '', $format_heading_right); - $worksheet->write($zeile + 1, $spalte + 3, date('d.m.Y H:i').$spacesstringsecondrow.$p->t('zeitaufzeichnung/personalnr').$persnr, $format_heading_right_bottomline); + $worksheet->write($zeile + 1, $spalte + 3, /*date('d.m.Y H:i').$spacesstringsecondrow.*/$p->t('zeitaufzeichnung/personalnr').$persnr, $format_heading_right_bottomline); $worksheet->write($zeile + 1, $lastspalte, '', $format_heading_right_bottomline); $zeile += 3; diff --git a/cis/testtool/admin/copy_gebiet.php b/cis/testtool/admin/copy_gebiet.php new file mode 100644 index 000000000..970ce2e0e --- /dev/null +++ b/cis/testtool/admin/copy_gebiet.php @@ -0,0 +1,328 @@ +, + * Andreas Oesterreicher , + * Rudolf Hangl and + * Gerald Simane-Sequens + */ +/** + * Kopiert ein Testtool-Gebiet mit allen Fragen und Antworten aber ohne Zuordnungen zu Studiengängen und dgl. + */ + +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/gebiet.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); +require_once('../../../include/studiengang.class.php'); +require_once('../../../include/sprache.class.php'); +require_once('../../../include/frage.class.php'); +require_once('../../../include/antwort.class.php'); +require_once('../../../include/vorschlag.class.php'); + +if (!$user = get_uid()) + die('Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden ! Zurück'); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +$sprache = new sprache(); +$sprache->getAll(true, 'index'); + +$sprache_user = getSprache(); + +$db = new basis_db(); + +echo ' + + + + + + + + + + + + + + +
+'; + +$stg_kz = (isset($_GET['stg_kz'])?$_GET['stg_kz']:'-1'); +$gebietToCopy = (isset($_POST['gebietToCopy'])?$_POST['gebietToCopy']:(isset($_GET['gebietToCopy'])?$_GET['gebietToCopy']:'')); +$gebiet = new gebiet(); + +echo 'Zurück zur Admin Seite

'; +echo '

Gebiet kopieren

'; +echo '

Kopiert ein Gebiet mit allen Fragen und Antworten aber ohne Zuordnungen zu Studiengängen und dgl.

'; + +if(!$rechte->isBerechtigt('basis/testtool')) + die($rechte->errormsg); + +$returnmsg = ''; +//Speichern der Daten +if (isset($_POST['copyGebiet']) && $_POST['copyGebiet'] == 'copyGebiet') +{ + if (!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die($rechte->errormsg); + + if (isset($_POST['kurzbz']) && $_POST['kurzbz'] != '') + { + //Test, ob kurzbz schon vorhanden + if ($result = $db->db_query('SELECT kurzbz FROM testtool.tbl_gebiet WHERE kurzbz = '.$db->db_add_param($_POST['kurzbz']).' LIMIT 1;')) + { + if ($db->db_num_rows($result) == 0) + { + $gebietToCopy = $_POST['gebietToCopy']; + + // Zu kopierendes Gebiet laden + $gebiet = new gebiet($gebietToCopy); + + $bezeichnung_mehrsprachig = array(); + foreach ($sprache->result as $row_sprache) + { + $bezeichnung_mehrsprachig[$row_sprache->sprache] = $_POST['bezeichnung_mehrsprachig_'.$row_sprache->sprache]; + } + $gebiet->bezeichnung_mehrsprachig = $bezeichnung_mehrsprachig; + + $gebiet->kurzbz = $_POST['kurzbz']; + $gebiet->bezeichnung = $_POST['bezeichnung_intern']; + $gebiet->beschreibung = $_POST['beschreibung']; + $gebiet->insertamum = date('Y-m-d H:i:s'); + $gebiet->insertvon = $user; + + // Neues Gebiet speichern + if ($gebiet->save(true)) + { + $returnmsg .= '

Gebiet erfolgreich kopiert

'; + + // Array mit allen Fragen und Antworten anlegen + $frageAntwortArray = array(); + + // Fragen laden + $fragenToCopy = new frage(); + $fragenToCopy->getFragenGebiet($gebietToCopy); + // Sprachen laden und für jede Sprache die Fragen und Antworten laden + foreach ($sprache->result as $row_sprache) + { + $fragenSpracheToCopy = new frage(); + $indexFrageSprache = 0; + foreach ($fragenToCopy->result AS $copyFrage) + { + if ($fragenSpracheToCopy->getFrageSprache($copyFrage->frage_id, $row_sprache->sprache, true)) + { + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['nummer'] = $fragenSpracheToCopy->nummer; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['demo'] = $fragenSpracheToCopy->demo; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['kategorie_kurzbz'] = $fragenSpracheToCopy->kategorie_kurzbz; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['level'] = $fragenSpracheToCopy->level; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['aktiv'] = $fragenSpracheToCopy->aktiv; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['text'] = $fragenSpracheToCopy->text; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['bild'] = $fragenSpracheToCopy->bild; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['audio'] = $fragenSpracheToCopy->audio; + + // Vorschläge laden + $vorschlagSprachenToCopy = new vorschlag(); + $vorschlagSprachenToCopy->getVorschlag($copyFrage->frage_id, $row_sprache->sprache, false); + + $indexVorschlagSprache = 0; + foreach ($vorschlagSprachenToCopy->result AS $vorschlagSprache) + { + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['vorschlaege'][$indexVorschlagSprache]['nummer'] = $vorschlagSprache->nummer; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['vorschlaege'][$indexVorschlagSprache]['punkte'] = $vorschlagSprache->punkte; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['vorschlaege'][$indexVorschlagSprache]['text'] = $vorschlagSprache->text; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['vorschlaege'][$indexVorschlagSprache]['bild'] = $vorschlagSprache->bild; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['vorschlaege'][$indexVorschlagSprache]['audio'] = $vorschlagSprache->audio; + $frageAntwortArray[$row_sprache->sprache][$indexFrageSprache]['vorschlaege'][$indexVorschlagSprache]['aktiv'] = $vorschlagSprache->aktiv; + $indexVorschlagSprache++; + } + } + $indexFrageSprache++; + } + } + + // Einfügen der Fragen und Antworten aus dem Array in das neue Gebiet + $anzahlFragenKopiert = 0; + + foreach ($frageAntwortArray AS $fragesprache => $index) + { + foreach ($index AS $frage => $value) + { + $newfragen = new frage(); + $newfragen->new = true; + + $newfragen->kategorie_kurzbz = $value["kategorie_kurzbz"]; + $newfragen->gebiet_id = $gebiet->gebiet_id; + $newfragen->level = $value["level"]; + $newfragen->nummer = $value["nummer"]; + $newfragen->demo = $value["demo"]; + $newfragen->insertamum = date('Y-m-d H:i:s'); + $newfragen->insertvon = $user; + $newfragen->aktiv = $value["aktiv"]; + + if ($newfragen->save()) + { + $newfragen->sprache = $fragesprache; + $newfragen->text = $value["text"]; + $newfragen->bild = $value["bild"]; + $newfragen->audio = $value["audio"]; + $newfragen->insertamum = date('Y-m-d H:i:s'); + $newfragen->insertvon = $user; + + if ($newfragen->save_fragesprache()) + { + if (isset($value["vorschlaege"])) + { + foreach ($value["vorschlaege"] AS $vorschlag => $content) + { + // Vorschläge speichern + $newvorschlaege = new vorschlag(); + $newvorschlaege->new = true; + + $newvorschlaege->frage_id = $newfragen->frage_id; + $newvorschlaege->nummer = $content["nummer"]; + $newvorschlaege->punkte = $content["punkte"]; + $newvorschlaege->aktiv = $content["aktiv"]; + $newvorschlaege->insertamum = date('Y-m-d H:i:s'); + $newvorschlaege->insertvon = $user; + + if ($newvorschlaege->save()) + { + $newvorschlaege->sprache = $fragesprache; + $newvorschlaege->text = $content["text"]; + $newvorschlaege->bild = $content["bild"]; + $newvorschlaege->audio = $content["audio"]; + $newvorschlaege->insertamum = date('Y-m-d H:i:s'); + $newvorschlaege->insertvon = $user; + + if ($newvorschlaege->save_vorschlagsprache()) + { + $anzahlFragenKopiert++; + } + } + } + } + } + else + { + $returnmsg .= '

Fehler beim Speichern der Fragesprache '.$fragesprache.' bei Frage: '.$newfragen->frage_id.'

'; + } + } + else + { + $returnmsg .= '

Fehler beim Speichern der Frage: '.$newfragen->frage_id.'

'; + } + } + } + } + else + { + $returnmsg .= '

Fehler beim Speichern: '.$gebiet->errormsg.'

'; + } + } + else + $returnmsg .= '

Kurzbezeichnung ist schon vorhanden

'; + } + } + else + { + $returnmsg .= '

Bitte füllen Sie alle Pflichtfelder aus

'; + } +} + + +$studiengang = new studiengang(); +$studiengang->getAll('typ, kurzbz', false); + +echo '

'.$returnmsg.'

'; +echo ' +
+ + + + + + + + + + + + + + '; + +foreach ($sprache->result as $row) +{ + echo ' + + + '; +} +echo ' + + + + + + + + +
Zu kopierendes Gebiet: '; + //Dropdown bestehender Gebiete + $gebiete = new gebiet(); + $gebiete->getAll(); + echo ''; +echo '
Daten neues Gebiet
Kurzbezeichnung
Bezeichnung (intern)
Bezeichnung '.$row->bezeichnung_arr[$sprache_user].'
Beschreibung (intern)
+ +
+'; + +echo ''; +?> diff --git a/cis/testtool/admin/index.php b/cis/testtool/admin/index.php index d433a747e..7fc7a7da3 100644 --- a/cis/testtool/admin/index.php +++ b/cis/testtool/admin/index.php @@ -690,6 +690,7 @@ if (($anzahl !== 0) || ($stg_kz == '-1') && ($stg_kz !== '')) echo " Prüfen | "; echo " Bearbeiten |"; echo " Neues Gebiet | "; + echo " Gebiet kopieren"; //echo " PDF exportieren"; //echo "
Gebiet_id=".$gebiet_id.""; echo ''; diff --git a/content/statistik/notenspiegel.php b/content/statistik/notenspiegel.php index d9cb3dca0..1a7651296 100644 --- a/content/statistik/notenspiegel.php +++ b/content/statistik/notenspiegel.php @@ -107,6 +107,7 @@ $qry = "SELECT vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz ) AND studiengang_kz<>0 + AND zeugnis UNION SELECT lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, ects @@ -114,6 +115,7 @@ $qry = "SELECT lehre.tbl_lehrveranstaltung JOIN lehre.tbl_zeugnisnote USING(lehrveranstaltung_id) WHERE tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND + zeugnis AND tbl_zeugnisnote.student_uid in($uids) AND tbl_zeugnisnote.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." ORDER BY bezeichnung"; diff --git a/content/statistik/notenspiegel_erweitert.php b/content/statistik/notenspiegel_erweitert.php index acaa91611..2849a1895 100644 --- a/content/statistik/notenspiegel_erweitert.php +++ b/content/statistik/notenspiegel_erweitert.php @@ -109,6 +109,7 @@ $qry = "SELECT vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz ) AND studiengang_kz<>0 + AND zeugnis UNION SELECT lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, ects @@ -117,7 +118,8 @@ $qry = "SELECT WHERE tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND tbl_zeugnisnote.student_uid in($uids) AND - tbl_zeugnisnote.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." + tbl_zeugnisnote.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND + zeugnis ORDER BY bezeichnung"; if (!$result_lva = $db->db_query($qry)) @@ -152,7 +154,7 @@ $nulltermine = array_filter($termine, function ($termin) }); //keine Werte in sort Spalte - es wird versucht, Reihenfolge aufgrund Strings zu bestimmen -//zuerst Termine 1 - n, dann kommissionelle und zusätzliche kommissionelle +//zuerst Termine 1 bis n, dann kommissionelle und zusätzliche kommissionelle $max = 0; foreach ($nulltermine as $termin) { diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php index 91988a062..e1234fc76 100644 --- a/content/student/studentDBDML.php +++ b/content/student/studentDBDML.php @@ -524,7 +524,16 @@ if(!$error) $prestudent->studiengang_kz = $_POST['studiengang_kz']; $prestudent->berufstaetigkeit_code = $_POST['berufstaetigkeit_code']; $prestudent->ausbildungcode = $_POST['ausbildungcode']; - $prestudent->zgv_code = $_POST['zgv_code']; + // Die Bachelor-ZGV darf nur mit einem eigenen Recht geändert werden + if($rechte->isBerechtigt('student/editBakkZgv',$_POST['studiengang_kz'],'suid')) + { + $prestudent->zgv_code = $_POST['zgv_code']; + } + elseif ($prestudent->zgv_code != $_POST['zgv_code']) + { + $errormsg = 'Keine Berechtigung zum Ändern der ZGV'; + $error = true; + } $prestudent->zgvort = $_POST['zgvort']; $prestudent->zgvdatum = $_POST['zgvdatum']; $prestudent->zgvnation = $_POST['zgvnation']; diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index ec9683b15..b40105988 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -23,6 +23,7 @@ require_once('../../config/vilesci.config.inc.php'); require_once('../../include/functions.inc.php'); require_once('../../include/variable.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); $user = get_uid(); @@ -1647,7 +1648,6 @@ function StudentPrestudentDisableFields(val) document.getElementById('student-prestudent-menulist-aufmerksamdurch').disabled=val; document.getElementById('student-prestudent-menulist-berufstaetigkeit').disabled=val; document.getElementById('student-prestudent-menulist-ausbildung').disabled=val; - document.getElementById('student-prestudent-menulist-zgvcode').disabled=val; document.getElementById('student-prestudent-textbox-zgvort').disabled=val; document.getElementById('student-prestudent-menulist-zgvnation').disabled=val; document.getElementById('student-prestudent-textbox-zgvdatum').disabled=val; @@ -1665,6 +1665,29 @@ function StudentPrestudentDisableFields(val) document.getElementById('student-prestudent-textbox-mentor').disabled=val; document.getElementById('student-detail-menulist-gsstudientyp').disabled=val; + // Studiengang des angeklickten Prestudenten ermitteln + var tree = document.getElementById('student-tree'); + var col = tree.columns ? tree.columns["student-treecol-studiengang_kz"] : "student-treecol-studiengang_kz"; + var studiengang_kz = parseInt(tree.view.getCellText(tree.currentIndex,col)); + + getBerechtigungen($user); + $studiengaenge = $rechte->getStgKz('student/editBakkZgv'); + // Anlegen eines Arrays mit allen berechtigten Stg-Kz + echo ' var berechtigte_studiengaenge = ['.implode(',',$studiengaenge).'];'; + ?> + + if (berechtigte_studiengaenge.indexOf(studiengang_kz) >= 0) + { + document.getElementById('student-prestudent-menulist-zgvcode').disabled=val; + } + else + { + document.getElementById('student-prestudent-menulist-zgvcode').disabled=true; + } + //Status Tree leeren rollentree = document.getElementById('student-prestudent-tree-rolle'); diff --git a/include/bisio.class.php b/include/bisio.class.php index 50f65ced3..605d0c652 100644 --- a/include/bisio.class.php +++ b/include/bisio.class.php @@ -349,6 +349,64 @@ class bisio extends basis_db } } + /** + * Liefert alle Incoming/Outgoing + * Eintraege eines Studenten, die + * innerhalb des gewuenschten + * Zeitraums beginnen + * @param $uid + * @param $von + * @param $bis + * @return true wenn ok, false wenn fehler + */ + public function getIOForPeriod($uid, $von, $bis) + { + $qry = "SELECT tbl_bisio.*, + tbl_mobilitaetsprogramm.kurzbz as mobilitaetsprogramm_kurzbz + FROM + bis.tbl_bisio, + bis.tbl_mobilitaetsprogramm + WHERE + student_uid=".$this->db_add_param($uid)." AND + tbl_mobilitaetsprogramm.mobilitaetsprogramm_code=tbl_bisio.mobilitaetsprogramm_code AND + tbl_bisio.von BETWEEN ".$this->db_add_param($von)." AND ".$this->db_add_param($bis)." + ORDER BY bis;"; + + if ($this->db_query($qry)) + { + while ($row = $this->db_fetch_object()) + { + $io = new bisio(); + + $io->bisio_id = $row->bisio_id; + $io->mobilitaetsprogramm_code = $row->mobilitaetsprogramm_code; + $io->mobilitaetsprogramm_kurzbz = $row->mobilitaetsprogramm_kurzbz; + $io->nation_code = $row->nation_code; + $io->von = $row->von; + $io->bis = $row->bis; + $io->student_uid = $row->student_uid; + $io->updateamum = $row->updateamum; + $io->updatevon = $row->updatevon; + $io->insertamum = $row->insertamum; + $io->insertvon = $row->insertvon; + $io->ext_id = $row->ext_id; + $io->ort = $row->ort; + $io->universitaet = $row->universitaet; + $io->lehreinheit_id = $row->lehreinheit_id; + $io->ects_angerechnet = $row->ects_angerechnet; + $io->ects_erworben = $row->ects_erworben; + + $this->result[] = $io; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + /** * Laedt alle Foerderungen */ diff --git a/include/frage.class.php b/include/frage.class.php index cafb0c0fd..aef603a6d 100644 --- a/include/frage.class.php +++ b/include/frage.class.php @@ -400,7 +400,7 @@ class frage extends basis_db $this->text = $row->text; $this->bild = $row->bild; $this->audio = $row->audio; - $this->insertaum = $row->insertamum; + $this->insertamum = $row->insertamum; $this->insertvon = $row->insertvon; $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; diff --git a/include/mitarbeiter.class.php b/include/mitarbeiter.class.php index 2457c806a..467bff8f8 100644 --- a/include/mitarbeiter.class.php +++ b/include/mitarbeiter.class.php @@ -1118,17 +1118,17 @@ class mitarbeiter extends benutzer $oe.=$this->db_add_param($row->oe_kurzbz); } } - + // Kinder-Organisationseinheiten holen if ($include_OE_childs == true) { if (!empty($oe)) { $child_oe_arr = array(); // array of string child oes - + $qry = ' - WITH RECURSIVE - oes (oe_kurzbz, oe_parent_kurzbz) AS + WITH RECURSIVE + oes (oe_kurzbz, oe_parent_kurzbz) AS ( SELECT oe_kurzbz, @@ -1140,11 +1140,11 @@ class mitarbeiter extends benutzer UNION ALL - SELECT + SELECT o.oe_kurzbz, o.oe_parent_kurzbz FROM - public.tbl_organisationseinheit o, oes + public.tbl_organisationseinheit o, oes WHERE o.oe_parent_kurzbz = oes.oe_kurzbz ) @@ -1156,39 +1156,39 @@ class mitarbeiter extends benutzer oe_kurzbz'; if($this->db_query($qry)) - { + { while($row = $this->db_fetch_object()) { $child_oe_arr []= $this->db_add_param($row->oe_kurzbz); } } - + // eliminate duplicates $child_oe_arr = array_unique($child_oe_arr); - + // check if leader has child oes by comparing the original // string of oes with string of child oes. if ($oe == implode(',', $child_oe_arr)) { $this->result ['isIndirectSupervisor']= false; - } + } else { $this->result ['isIndirectSupervisor']= true; } - + // overwrite $oe with child oes for further query $oe = implode(',', $child_oe_arr); - } + } } - + //Alle Personen holen die dieser Organisationseinheit untergeordnet sind $qry = " - SELECT distinct - uid - FROM - public.tbl_benutzerfunktion + SELECT distinct + uid + FROM + public.tbl_benutzerfunktion JOIN public.tbl_benutzer USING (uid) @@ -1199,12 +1199,9 @@ class mitarbeiter extends benutzer $qry.=")) "; - if($oe!='') - $qry.=" OR (funktion_kurzbz='ass' AND oe_kurzbz in($oe))"; - - $qry.= ") - AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) + $qry.= ") + AND + (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND @@ -1326,6 +1323,7 @@ class mitarbeiter extends benutzer $l->gebort=$row->gebort; $l->gebzeit=$row->gebzeit; $l->geschlecht=$row->geschlecht; + $l->staatsbuergerschaft=$row->staatsbuergerschaft; //$l->foto=$row->foto; $l->anmerkung=$row->anmerkung; $l->aktiv= $this->db_parse_bool($row->aktiv); @@ -1491,15 +1489,15 @@ class mitarbeiter extends benutzer return false; } } - + /** Check if uid is a supervisor - * + * * @param string $uid * @param string $employee_uid * @return boolean True if $uid is direct leader of $employee_uid. */ function check_isVorgesetzter($uid, $employee_uid) - { + { $this->getUntergebene($uid); $untergebenen_arr = $this->untergebene; @@ -1515,14 +1513,14 @@ class mitarbeiter extends benutzer } } /** Check if uid is a supervisor on higher oe level - * + * * @param string $uid * @param string $employee_uid * @return boolean True if $uid is indirect supervisor (leader on higher oe-level) - * of $employee_uid. - * :NOTE: as all children oes also include the direct oe, the return value is also true when + * of $employee_uid. + * :NOTE: as all children oes also include the direct oe, the return value is also true when * uid is ONLY direct leader. To distinguish you might check in the calling script: - * isVorgesetzter_indirekt && isVorgesetzter --> direct leader + * isVorgesetzter_indirekt && isVorgesetzter --> direct leader * isVorgesetzter_indirekt && !isVorgesetzter --> only super leader on higher level */ function check_isVorgesetzter_indirekt($uid, $employee_uid) diff --git a/include/vorschlag.class.php b/include/vorschlag.class.php index e2bf566c9..eb2668902 100644 --- a/include/vorschlag.class.php +++ b/include/vorschlag.class.php @@ -299,6 +299,7 @@ class vorschlag extends basis_db $vs->frage_id = $row->frage_id; $vs->nummer = $row->nummer; $vs->punkte = $row->punkte; + $vs->aktiv = $this->db_parse_bool($row->aktiv); $qry = "SELECT * FROM testtool.tbl_vorschlag_sprache WHERE vorschlag_id=".$this->db_add_param($row->vorschlag_id, FHC_INTEGER)." AND sprache=".$this->db_add_param($sprache).";"; if($this->db_query($qry)) diff --git a/locale/de-AT/lvplan.php b/locale/de-AT/lvplan.php index d7510d341..f0e802896 100644 --- a/locale/de-AT/lvplan.php +++ b/locale/de-AT/lvplan.php @@ -1,102 +1,103 @@ -phrasen['lvplan/lehrveranstaltungsplan']='Lehrveranstaltungsplan'; -$this->phrasen['lvplan/persoenlicherLvPlan']='Mein persönlicher Lehrveranstaltungsplan'; -$this->phrasen['lvplan/stammdatenKontrollieren']='Hier können Sie Ihre Stammdaten kontrollieren'; -$this->phrasen['lvplan/profil']='PROFIL'; -$this->phrasen['lvplan/saalplan']='Saalplan'; -$this->phrasen['lvplan/lektorenplan']='LektorInnenplan'; -$this->phrasen['lvplan/saalreservierung']='Saalreservierung'; -$this->phrasen['lvplan/saal']='Saal'; -$this->phrasen['lvplan/lektor']='LektorIn'; -$this->phrasen['lvplan/reservierungsliste']='Reservierungsliste'; -$this->phrasen['lvplan/reservierungenLoeschen']='Reservierungen löschen'; -$this->phrasen['lvplan/meineReservierungenAnzeigen']='Meine Reservierungen anzeigen'; -$this->phrasen['lvplan/raumsuche']='Raumsuche'; -$this->phrasen['lvplan/lehrverband']='Lehr-Verband'; -$this->phrasen['lvplan/stg']='Stg'; -$this->phrasen['lvplan/sem']='Sem'; -$this->phrasen['lvplan/ver']='Ver'; -$this->phrasen['lvplan/grp']='Grp'; -$this->phrasen['lvplan/lehrverbaende']='Lehrverbände'; -$this->phrasen['lvplan/uebersichtDerLehrverbaende']='Übersicht der Lehrverbände'; -$this->phrasen['lvplan/fehlerUndFeedback']='Feedback geben'; -$this->phrasen['lvplan/lvKoordinationsstelle']='LV-Koordinationsstelle'; -$this->phrasen['lvplan/reservierungen']='Reservierungen'; -$this->phrasen['lvplan/reservierungWurdeGeloescht']='Reservierung wurde geloescht'; -$this->phrasen['lvplan/alleReservierungen']='Alle Reservierungen'; -$this->phrasen['lvplan/zurReservierung']='Zur Reservierung'; -$this->phrasen['lvplan/raum']='Raum'; -$this->phrasen['lvplan/raeume']='Räume'; -$this->phrasen['lvplan/raumtyp']='Raumtyp'; -$this->phrasen['lvplan/anzahlPersonen']='Anzahl Personen'; -$this->phrasen['lvplan/datumAngeben']='Es muss ein Datum angegeben werden'; -$this->phrasen['lvplan/vonZeitEingeben']='VON-Zeit muss eingegeben werden'; -$this->phrasen['lvplan/bisZeitEingeben']='BIS-Zeit muss eingegeben werden'; -$this->phrasen['lvplan/datumUngueltig']='Das angegebene Datum ist ungueltig! Bitte geben Sie das Datum im Format dd.mm.YYYY (31.12.2011) ein'; -$this->phrasen['lvplan/rauminfoAnzeigen']='Rauminfo anzeigen'; -$this->phrasen['lvplan/vonZeitFormat']='VON-Zeit muss im Format hh:mm (12:30) angegeben werden'; -$this->phrasen['lvplan/bisZeitFormat']='BIS-Zeit muss im Format hh:mm (12:30) angegeben werden'; -$this->phrasen['lvplan/eigeneReservierungen']='Eigene Reservierungen'; -$this->phrasen['lvplan/wochenplan']='Wochenplan'; -$this->phrasen['lvplan/raumExistiertNicht']='Dieser Ort existiert nicht'; -$this->phrasen['lvplan/titelUndBeschreibungFehlt']='Eingabe Titel und Beschreibung fehlt'; -$this->phrasen['lvplan/titelFehlt']='Eingabe Titel fehlt'; -$this->phrasen['lvplan/beschreibungFehlt']='Eingabe Beschreibung fehlt'; -$this->phrasen['lvplan/bereitsReserviert']='bereits reserviert'; -$this->phrasen['lvplan/spezialgruppe']='Spezialgruppe'; -$this->phrasen['lvplan/datumsbereichZuGross'] = 'Datumsbereich ist zu groß'; -$this->phrasen['lvplan/springeZuKw']='Springe zu KW'; -$this->phrasen['lvplan/home']='HOME'; -$this->phrasen['lvplan/nichtVorhanden']='nicht vorhanden.'; -$this->phrasen['lvplan/bitteWendenSieSichAn']='Bitte wenden Sie sich an den'; -$this->phrasen['lvplan/semesterIstUngueltig']='Semester ist ungültig'; -$this->phrasen['lvplan/stundeIstUngueltig']='Stunde ist ungültig'; -$this->phrasen['lvplan/datumIstUngueltig']='Datum ist ungueltig'; -$this->phrasen['lvplan/einheit']='Einheit'; -$this->phrasen['lvplan/info']='Info'; -$this->phrasen['lvplan/unr']='UNr'; -$this->phrasen['lvplan/ort']='Ort'; -$this->phrasen['lvplan/lehrveranstaltungsplanDetails']='Lehrveranstaltungsplan Details'; -$this->phrasen['lvplan/studierende']='Studierende'; -$this->phrasen['lvplan/uebersicht']='Übersicht'; -$this->phrasen['lvplan/vierWochenZurueck']='4 Wochen zurückblättern'; -$this->phrasen['lvplan/eineWocheZurueck']='Eine Woche zurückblättern'; -$this->phrasen['lvplan/eineWocheVor']='Eine Woche vorblättern'; -$this->phrasen['lvplan/vierWochenVor']='4 Wochen vorblättern'; -$this->phrasen['lvplan/lvPlan']='LV-Plan'; -$this->phrasen['lvplan/lektorInStudentIn']='LektorIn / StudentIn'; -$this->phrasen['lvplan/studiengangAuswaehlen']='...Studiengang auswählen...'; -$this->phrasen['lvplan/raumAuswaehlen']='...Raum auswählen...'; -$this->phrasen['lvplan/studiensemesterAuswaehlen']='...Studiensemester auswählen...'; -$this->phrasen['lvplan/semesterplaenearchiv']='Semesterpläne Archiv'; -$this->phrasen['lvplan/semesterplanLaden']='Semesterplan laden'; -$this->phrasen['lvplan/bitteEinenStudiengangAuswaehlen']='Bitte einen Studiengang auswählen'; -$this->phrasen['lvplan/bitteEinStudiensemesterAuswaehlen']='Bitte ein Studiensemester auswählen'; -$this->phrasen['lvplan/bitteEinenLektorAuswaehlen']='Bitte eineN LektorIn/StudentIn auswählen'; -$this->phrasen['lvplan/semesterplaene']='Semesterübersicht'; -$this->phrasen['lvplan/hauptmenue']='Hauptmenü'; -$this->phrasen['lvplan/nameEingeben']='Name eingeben'; -$this->phrasen['lvplan/anleitungLVPlanSync']='Anleitung LV-Plan Synchronisation'; -$this->phrasen['lvplan/caldavURL']='CalDAV URL (Android, Thunderbird, CalDAV-Synchronizer)'; -$this->phrasen['lvplan/caldavURLMac']='CalDAV Principal URL (MacOS, iOS)'; -$this->phrasen['lvplan/googleURL']='iCAL URL (Google)'; -$this->phrasen['lvplan/persoenlichenAbonnieren']='Persönlichen LV-Plan abonnieren'; -$this->phrasen['lvplan/aktuelleKW']='Aktuelle Kalenderwoche'; -$this->phrasen['lvplan/rauminformationenAnzeigen']='Rauminformationen anzeigen'; -$this->phrasen['lvplan/personen']='Personen'; -$this->phrasen['lvplan/alleRaeume']='Alle Räume'; -$this->phrasen['lvplan/raumreservierungAufZeitraumEingeschraenkt']='Die Raumreservierung ist auf den Zeitraum vom %s bis %s eingeschränkt'; -$this->phrasen['lvplan/neueStunden']='Neue Stunden'; -$this->phrasen['lvplan/stdBeginn']='Std (Beginnzeit)'; -$this->phrasen['lvplan/lehrfach']='Lehrfach'; -$this->phrasen['lvplan/info']='Info'; -$this->phrasen['lvplan/geloeschteStunden']='Gelöschte Stunden'; -$this->phrasen['lvplan/geaenderteStunden']='Geänderte Stunden'; -$this->phrasen['lvplan/jetzt']='Jetzt'; -$this->phrasen['lvplan/vorher']='Vorher'; -$this->phrasen['lvplan/status']='Status'; -$this->phrasen['lvplan/automatischeMail']='Dies ist eine automatische Mail!'; -$this->phrasen['lvplan/folgendeAenderungen']='Es haben sich folgende Aenderungen in Ihrem LV-Plan ergeben:'; -$this->phrasen['lvplan/reserviertInDev']='reserviert
für
lehre'; -$this->phrasen['lvplan/raumNichtReservierbar']='Die Möglichkeit der Reservierung ist für diesen Raum deaktiviert.'; +phrasen['lvplan/lehrveranstaltungsplan']='Lehrveranstaltungsplan'; +$this->phrasen['lvplan/persoenlicherLvPlan']='Mein persönlicher Lehrveranstaltungsplan'; +$this->phrasen['lvplan/stammdatenKontrollieren']='Hier können Sie Ihre Stammdaten kontrollieren'; +$this->phrasen['lvplan/profil']='PROFIL'; +$this->phrasen['lvplan/saalplan']='Saalplan'; +$this->phrasen['lvplan/lektorenplan']='LektorInnenplan'; +$this->phrasen['lvplan/saalreservierung']='Saalreservierung'; +$this->phrasen['lvplan/saal']='Saal'; +$this->phrasen['lvplan/lektor']='LektorIn'; +$this->phrasen['lvplan/reservierungsliste']='Reservierungsliste'; +$this->phrasen['lvplan/reservierungenLoeschen']='Reservierungen löschen'; +$this->phrasen['lvplan/meineReservierungenAnzeigen']='Meine Reservierungen anzeigen'; +$this->phrasen['lvplan/raumsuche']='Raumsuche'; +$this->phrasen['lvplan/lehrverband']='Lehr-Verband'; +$this->phrasen['lvplan/stg']='Stg'; +$this->phrasen['lvplan/sem']='Sem'; +$this->phrasen['lvplan/ver']='Ver'; +$this->phrasen['lvplan/grp']='Grp'; +$this->phrasen['lvplan/lehrverbaende']='Lehrverbände'; +$this->phrasen['lvplan/uebersichtDerLehrverbaende']='Übersicht der Lehrverbände'; +$this->phrasen['lvplan/fehlerUndFeedback']='Feedback geben'; +$this->phrasen['lvplan/lvKoordinationsstelle']='LV-Koordinationsstelle'; +$this->phrasen['lvplan/reservierungen']='Reservierungen'; +$this->phrasen['lvplan/reservierungWurdeGeloescht']='Reservierung wurde geloescht'; +$this->phrasen['lvplan/alleReservierungen']='Alle Reservierungen'; +$this->phrasen['lvplan/zurReservierung']='Zur Reservierung'; +$this->phrasen['lvplan/raum']='Raum'; +$this->phrasen['lvplan/raeume']='Räume'; +$this->phrasen['lvplan/raumtyp']='Raumtyp'; +$this->phrasen['lvplan/anzahlPersonen']='Anzahl Personen'; +$this->phrasen['lvplan/datumAngeben']='Es muss ein Datum angegeben werden'; +$this->phrasen['lvplan/vonZeitEingeben']='VON-Zeit muss eingegeben werden'; +$this->phrasen['lvplan/bisZeitEingeben']='BIS-Zeit muss eingegeben werden'; +$this->phrasen['lvplan/datumUngueltig']='Das angegebene Datum ist ungueltig! Bitte geben Sie das Datum im Format dd.mm.YYYY (31.12.2011) ein'; +$this->phrasen['lvplan/rauminfoAnzeigen']='Rauminfo anzeigen'; +$this->phrasen['lvplan/vonZeitFormat']='VON-Zeit muss im Format hh:mm (12:30) angegeben werden'; +$this->phrasen['lvplan/bisZeitFormat']='BIS-Zeit muss im Format hh:mm (12:30) angegeben werden'; +$this->phrasen['lvplan/eigeneReservierungen']='Eigene Reservierungen'; +$this->phrasen['lvplan/wochenplan']='Wochenplan'; +$this->phrasen['lvplan/raumExistiertNicht']='Dieser Ort existiert nicht'; +$this->phrasen['lvplan/titelUndBeschreibungFehlt']='Eingabe Titel und Beschreibung fehlt'; +$this->phrasen['lvplan/titelFehlt']='Eingabe Titel fehlt'; +$this->phrasen['lvplan/beschreibungFehlt']='Eingabe Beschreibung fehlt'; +$this->phrasen['lvplan/bereitsReserviert']='bereits reserviert'; +$this->phrasen['lvplan/spezialgruppe']='Spezialgruppe'; +$this->phrasen['lvplan/datumsbereichZuGross'] = 'Datumsbereich ist zu groß'; +$this->phrasen['lvplan/springeZuKw']='Springe zu KW'; +$this->phrasen['lvplan/home']='HOME'; +$this->phrasen['lvplan/nichtVorhanden']='nicht vorhanden.'; +$this->phrasen['lvplan/bitteWendenSieSichAn']='Bitte wenden Sie sich an den'; +$this->phrasen['lvplan/semesterIstUngueltig']='Semester ist ungültig'; +$this->phrasen['lvplan/stundeIstUngueltig']='Stunde ist ungültig'; +$this->phrasen['lvplan/datumIstUngueltig']='Datum ist ungueltig'; +$this->phrasen['lvplan/einheit']='Einheit'; +$this->phrasen['lvplan/info']='Info'; +$this->phrasen['lvplan/unr']='UNr'; +$this->phrasen['lvplan/ort']='Ort'; +$this->phrasen['lvplan/lehrveranstaltungsplanDetails']='Lehrveranstaltungsplan Details'; +$this->phrasen['lvplan/studierende']='Studierende'; +$this->phrasen['lvplan/uebersicht']='Übersicht'; +$this->phrasen['lvplan/vierWochenZurueck']='4 Wochen zurückblättern'; +$this->phrasen['lvplan/eineWocheZurueck']='Eine Woche zurückblättern'; +$this->phrasen['lvplan/eineWocheVor']='Eine Woche vorblättern'; +$this->phrasen['lvplan/vierWochenVor']='4 Wochen vorblättern'; +$this->phrasen['lvplan/lvPlan']='LV-Plan'; +$this->phrasen['lvplan/lektorInStudentIn']='LektorIn / StudentIn'; +$this->phrasen['lvplan/studiengangAuswaehlen']='...Studiengang auswählen...'; +$this->phrasen['lvplan/raumAuswaehlen']='...Raum auswählen...'; +$this->phrasen['lvplan/studiensemesterAuswaehlen']='...Studiensemester auswählen...'; +$this->phrasen['lvplan/semesterplaenearchiv']='Semesterpläne Archiv'; +$this->phrasen['lvplan/semesterplanLaden']='Semesterplan laden'; +$this->phrasen['lvplan/bitteEinenStudiengangAuswaehlen']='Bitte einen Studiengang auswählen'; +$this->phrasen['lvplan/bitteEinStudiensemesterAuswaehlen']='Bitte ein Studiensemester auswählen'; +$this->phrasen['lvplan/bitteEinenLektorAuswaehlen']='Bitte eineN LektorIn/StudentIn auswählen'; +$this->phrasen['lvplan/semesterplaene']='Semesterübersicht'; +$this->phrasen['lvplan/hauptmenue']='Hauptmenü'; +$this->phrasen['lvplan/nameEingeben']='Name eingeben'; +$this->phrasen['lvplan/anleitungLVPlanSync']='Anleitung LV-Plan Synchronisation'; +$this->phrasen['lvplan/caldavURL']='CalDAV URL (Android, Thunderbird, CalDAV-Synchronizer)'; +$this->phrasen['lvplan/caldavURLMac']='CalDAV Principal URL (MacOS, iOS)'; +$this->phrasen['lvplan/googleURL']='iCAL URL (Google)'; +$this->phrasen['lvplan/persoenlichenAbonnieren']='Persönlichen LV-Plan abonnieren'; +$this->phrasen['lvplan/aktuelleKW']='Aktuelle Kalenderwoche'; +$this->phrasen['lvplan/rauminformationenAnzeigen']='Rauminformationen anzeigen'; +$this->phrasen['lvplan/personen']='Personen'; +$this->phrasen['lvplan/alleRaeume']='Alle Räume'; +$this->phrasen['lvplan/raumreservierungAufZeitraumEingeschraenkt']='Die Raumreservierung ist auf den Zeitraum vom %s bis %s eingeschränkt'; +$this->phrasen['lvplan/neueStunden']='Neue Stunden'; +$this->phrasen['lvplan/stdBeginn']='Std (Beginnzeit)'; +$this->phrasen['lvplan/lehrfach']='Lehrfach'; +$this->phrasen['lvplan/info']='Info'; +$this->phrasen['lvplan/geloeschteStunden']='Gelöschte Stunden'; +$this->phrasen['lvplan/geaenderteStunden']='Geänderte Stunden'; +$this->phrasen['lvplan/jetzt']='Jetzt'; +$this->phrasen['lvplan/vorher']='Vorher'; +$this->phrasen['lvplan/status']='Status'; +$this->phrasen['lvplan/automatischeMail']='Dies ist eine automatische Mail!'; +$this->phrasen['lvplan/folgendeAenderungen']='Es haben sich folgende Aenderungen in Ihrem LV-Plan ergeben:'; +$this->phrasen['lvplan/reserviertInDev']='reserviert
für
lehre'; +$this->phrasen['lvplan/raumNichtReservierbar']='Die Möglichkeit der Reservierung ist für diesen Raum deaktiviert.'; +$this->phrasen['lvplan/reserviertVon']='Reserviert von'; ?> \ No newline at end of file diff --git a/locale/en-US/lvplan.php b/locale/en-US/lvplan.php index ebab1ce85..bd2b4b1eb 100644 --- a/locale/en-US/lvplan.php +++ b/locale/en-US/lvplan.php @@ -1,101 +1,102 @@ -phrasen['lvplan/lehrveranstaltungsplan']='Schedule'; -$this->phrasen['lvplan/persoenlicherLvPlan']='My personal schedule'; -$this->phrasen['lvplan/stammdatenKontrollieren']='Check your profile'; -$this->phrasen['lvplan/profil']='PROFILE'; -$this->phrasen['lvplan/saalplan']='Rooms'; -$this->phrasen['lvplan/lektorenplan']='Lector'; -$this->phrasen['lvplan/saalreservierung']='Room reservation'; -$this->phrasen['lvplan/saal']='Room'; -$this->phrasen['lvplan/lektor']='Lector'; -$this->phrasen['lvplan/reservierungsliste']='Reservation list'; -$this->phrasen['lvplan/reservierungenLoeschen']='Delete room reservations'; -$this->phrasen['lvplan/meineReservierungenAnzeigen']='Show my room reservations'; -$this->phrasen['lvplan/raumsuche']='Room search'; -$this->phrasen['lvplan/lehrverband']='Teaching Group'; -$this->phrasen['lvplan/stg']='Dp'; //Degree Program -$this->phrasen['lvplan/sem']='Sem'; -$this->phrasen['lvplan/ver']='Div'; //Division -$this->phrasen['lvplan/grp']='Grp'; -$this->phrasen['lvplan/lehrverbaende']='Teaching Groups'; -$this->phrasen['lvplan/uebersichtDerLehrverbaende']='Overview of Teaching Groups'; -$this->phrasen['lvplan/fehlerUndFeedback']='Send Feedback'; -$this->phrasen['lvplan/lvKoordinationsstelle']='Course-Coordination Office'; -$this->phrasen['lvplan/reservierungen']='Reservations'; -$this->phrasen['lvplan/reservierungWurdeGeloescht'] = 'Reservation successfully deleted'; -$this->phrasen['lvplan/alleReservierungen']='All reservations'; -$this->phrasen['lvplan/zurReservierung']='Reservation'; -$this->phrasen['lvplan/raum']='Room'; -$this->phrasen['lvplan/raeume']='Rooms'; -$this->phrasen['lvplan/raumtyp']='Roomtype'; -$this->phrasen['lvplan/anzahlPersonen']='Number of persons'; -$this->phrasen['lvplan/datumAngeben']='No valid date'; -$this->phrasen['lvplan/vonZeitEingeben']='No valid FROM-Time'; -$this->phrasen['lvplan/bisZeitEingeben']='No valid TO-Time'; -$this->phrasen['lvplan/datumUngueltig']='Invalid date! Please insert dd.mm.YYYY (31.12.2011)'; -$this->phrasen['lvplan/rauminfoAnzeigen']='Show roominformation'; -$this->phrasen['lvplan/vonZeitFormat']='FROM-Time must have the format hh:mm (12:30)'; -$this->phrasen['lvplan/bisZeitFormat']='TO-Time must have the format hh:mm (12:30)'; -$this->phrasen['lvplan/eigeneReservierungen']='Own reservations'; -$this->phrasen['lvplan/wochenplan']='Weekly Schedule'; -$this->phrasen['lvplan/raumExistiertNicht']='This room does not exist'; -$this->phrasen['lvplan/titelUndBeschreibungFehlt']='Title and description are missing'; -$this->phrasen['lvplan/titelFehlt']='Title is missing'; -$this->phrasen['lvplan/beschreibungFehlt']='Description is missing'; -$this->phrasen['lvplan/bereitsReserviert']='already reserved'; -$this->phrasen['lvplan/spezialgruppe']='Special group'; -$this->phrasen['lvplan/datumsbereichZuGross'] = 'Invalid date'; -$this->phrasen['lvplan/springeZuKw']='Jump to CW'; -$this->phrasen['lvplan/home']='HOME'; -$this->phrasen['lvplan/nichtVorhanden']='is not existing.'; -$this->phrasen['lvplan/bitteWendenSieSichAn']='Please contact the'; -$this->phrasen['lvplan/semesterIstUngueltig']='Invalid semester'; -$this->phrasen['lvplan/stundeIstUngueltig']='Invalid unit'; -$this->phrasen['lvplan/datumIstUngueltig']='Invalid date'; -$this->phrasen['lvplan/einheit']='Unit'; -$this->phrasen['lvplan/info']='Info'; -$this->phrasen['lvplan/unr']='UNr'; -$this->phrasen['lvplan/ort']='Room'; -$this->phrasen['lvplan/lehrveranstaltungsplanDetails']='Schedule Details'; -$this->phrasen['lvplan/studierende']='Students'; -$this->phrasen['lvplan/uebersicht']='Overview'; -$this->phrasen['lvplan/vierWochenZurueck']='Go back 4 weeks'; -$this->phrasen['lvplan/eineWocheZurueck']='Go back 1 week'; -$this->phrasen['lvplan/eineWocheVor']='Go forward 1 week'; -$this->phrasen['lvplan/vierWochenVor']='Go forward 4 weeks'; -$this->phrasen['lvplan/lvPlan']='Schedule'; -$this->phrasen['lvplan/lektorInStudentIn']='Lecturer/Student'; -$this->phrasen['lvplan/studiengangAuswaehlen']='...Select degree program...'; -$this->phrasen['lvplan/raumAuswaehlen']='...Select room...'; -$this->phrasen['lvplan/studiensemesterAuswaehlen']='...Select semester...'; -$this->phrasen['lvplan/semesterplaenearchiv']='Semester Schedule Archive'; -$this->phrasen['lvplan/semesterplanLaden']='Load semester schedule'; -$this->phrasen['lvplan/bitteEinenStudiengangAuswaehlen']='Please select a degree program'; -$this->phrasen['lvplan/bitteEinStudiensemesterAuswaehlen']='Please select a semester'; -$this->phrasen['lvplan/bitteEinenLektorAuswaehlen']='Please select a lecturer/student'; -$this->phrasen['lvplan/semesterplaene']='Overview'; -$this->phrasen['lvplan/hauptmenue']='Main Menu'; -$this->phrasen['lvplan/nameEingeben']='Enter name'; -$this->phrasen['lvplan/anleitungLVPlanSync']='Instructions for synchronizing your schedule '; -$this->phrasen['lvplan/caldavURL']='CalDAV URL (Android, Thunderbird, CalDAV-Synchronizer)'; -$this->phrasen['lvplan/caldavURLMac']='CalDAV Principal URL (MacOS, iOS)'; -$this->phrasen['lvplan/googleURL']='iCAL URL (Google)'; -$this->phrasen['lvplan/persoenlichenAbonnieren']='Subscribe to personal schedule'; -$this->phrasen['lvplan/aktuelleKW']='Current calendar week'; -$this->phrasen['lvplan/rauminformationenAnzeigen']='Show room information'; -$this->phrasen['lvplan/personen']='persons'; -$this->phrasen['lvplan/raumreservierungAufZeitraumEingeschraenkt']='Room reservation is limited to the period from %s to %s'; -$this->phrasen['lvplan/neueStunden']='New Units'; -$this->phrasen['lvplan/stdBeginn']='Unit (Begin)'; -$this->phrasen['lvplan/lehrfach']='Course'; -$this->phrasen['lvplan/info']='Info'; -$this->phrasen['lvplan/geloeschteStunden']='Deleted Units'; -$this->phrasen['lvplan/geaenderteStunden']='Changed Units'; -$this->phrasen['lvplan/jetzt']='Now'; -$this->phrasen['lvplan/vorher']='Previously'; -$this->phrasen['lvplan/status']='Status'; -$this->phrasen['lvplan/automatischeMail']='This is an automatic email!'; -$this->phrasen['lvplan/folgendeAenderungen']='There have been the following changes in your Schedule:'; -$this->phrasen['lvplan/reserviertInDev']='not
available'; -$this->phrasen['lvplan/raumNichtReservierbar']='Reservation is disabled for this room.'; -?> +phrasen['lvplan/lehrveranstaltungsplan']='Schedule'; +$this->phrasen['lvplan/persoenlicherLvPlan']='My personal schedule'; +$this->phrasen['lvplan/stammdatenKontrollieren']='Check your profile'; +$this->phrasen['lvplan/profil']='PROFILE'; +$this->phrasen['lvplan/saalplan']='Rooms'; +$this->phrasen['lvplan/lektorenplan']='Lector'; +$this->phrasen['lvplan/saalreservierung']='Room reservation'; +$this->phrasen['lvplan/saal']='Room'; +$this->phrasen['lvplan/lektor']='Lector'; +$this->phrasen['lvplan/reservierungsliste']='Reservation list'; +$this->phrasen['lvplan/reservierungenLoeschen']='Delete room reservations'; +$this->phrasen['lvplan/meineReservierungenAnzeigen']='Show my room reservations'; +$this->phrasen['lvplan/raumsuche']='Room search'; +$this->phrasen['lvplan/lehrverband']='Teaching Group'; +$this->phrasen['lvplan/stg']='Dp'; //Degree Program +$this->phrasen['lvplan/sem']='Sem'; +$this->phrasen['lvplan/ver']='Div'; //Division +$this->phrasen['lvplan/grp']='Grp'; +$this->phrasen['lvplan/lehrverbaende']='Teaching Groups'; +$this->phrasen['lvplan/uebersichtDerLehrverbaende']='Overview of Teaching Groups'; +$this->phrasen['lvplan/fehlerUndFeedback']='Send Feedback'; +$this->phrasen['lvplan/lvKoordinationsstelle']='Course-Coordination Office'; +$this->phrasen['lvplan/reservierungen']='Reservations'; +$this->phrasen['lvplan/reservierungWurdeGeloescht'] = 'Reservation successfully deleted'; +$this->phrasen['lvplan/alleReservierungen']='All reservations'; +$this->phrasen['lvplan/zurReservierung']='Reservation'; +$this->phrasen['lvplan/raum']='Room'; +$this->phrasen['lvplan/raeume']='Rooms'; +$this->phrasen['lvplan/raumtyp']='Roomtype'; +$this->phrasen['lvplan/anzahlPersonen']='Number of persons'; +$this->phrasen['lvplan/datumAngeben']='No valid date'; +$this->phrasen['lvplan/vonZeitEingeben']='No valid FROM-Time'; +$this->phrasen['lvplan/bisZeitEingeben']='No valid TO-Time'; +$this->phrasen['lvplan/datumUngueltig']='Invalid date! Please insert dd.mm.YYYY (31.12.2011)'; +$this->phrasen['lvplan/rauminfoAnzeigen']='Show roominformation'; +$this->phrasen['lvplan/vonZeitFormat']='FROM-Time must have the format hh:mm (12:30)'; +$this->phrasen['lvplan/bisZeitFormat']='TO-Time must have the format hh:mm (12:30)'; +$this->phrasen['lvplan/eigeneReservierungen']='Own reservations'; +$this->phrasen['lvplan/wochenplan']='Weekly Schedule'; +$this->phrasen['lvplan/raumExistiertNicht']='This room does not exist'; +$this->phrasen['lvplan/titelUndBeschreibungFehlt']='Title and description are missing'; +$this->phrasen['lvplan/titelFehlt']='Title is missing'; +$this->phrasen['lvplan/beschreibungFehlt']='Description is missing'; +$this->phrasen['lvplan/bereitsReserviert']='already reserved'; +$this->phrasen['lvplan/spezialgruppe']='Special group'; +$this->phrasen['lvplan/datumsbereichZuGross'] = 'Invalid date'; +$this->phrasen['lvplan/springeZuKw']='Jump to CW'; +$this->phrasen['lvplan/home']='HOME'; +$this->phrasen['lvplan/nichtVorhanden']='is not existing.'; +$this->phrasen['lvplan/bitteWendenSieSichAn']='Please contact the'; +$this->phrasen['lvplan/semesterIstUngueltig']='Invalid semester'; +$this->phrasen['lvplan/stundeIstUngueltig']='Invalid unit'; +$this->phrasen['lvplan/datumIstUngueltig']='Invalid date'; +$this->phrasen['lvplan/einheit']='Unit'; +$this->phrasen['lvplan/info']='Info'; +$this->phrasen['lvplan/unr']='UNr'; +$this->phrasen['lvplan/ort']='Room'; +$this->phrasen['lvplan/lehrveranstaltungsplanDetails']='Schedule Details'; +$this->phrasen['lvplan/studierende']='Students'; +$this->phrasen['lvplan/uebersicht']='Overview'; +$this->phrasen['lvplan/vierWochenZurueck']='Go back 4 weeks'; +$this->phrasen['lvplan/eineWocheZurueck']='Go back 1 week'; +$this->phrasen['lvplan/eineWocheVor']='Go forward 1 week'; +$this->phrasen['lvplan/vierWochenVor']='Go forward 4 weeks'; +$this->phrasen['lvplan/lvPlan']='Schedule'; +$this->phrasen['lvplan/lektorInStudentIn']='Lecturer/Student'; +$this->phrasen['lvplan/studiengangAuswaehlen']='...Select degree program...'; +$this->phrasen['lvplan/raumAuswaehlen']='...Select room...'; +$this->phrasen['lvplan/studiensemesterAuswaehlen']='...Select semester...'; +$this->phrasen['lvplan/semesterplaenearchiv']='Semester Schedule Archive'; +$this->phrasen['lvplan/semesterplanLaden']='Load semester schedule'; +$this->phrasen['lvplan/bitteEinenStudiengangAuswaehlen']='Please select a degree program'; +$this->phrasen['lvplan/bitteEinStudiensemesterAuswaehlen']='Please select a semester'; +$this->phrasen['lvplan/bitteEinenLektorAuswaehlen']='Please select a lecturer/student'; +$this->phrasen['lvplan/semesterplaene']='Overview'; +$this->phrasen['lvplan/hauptmenue']='Main Menu'; +$this->phrasen['lvplan/nameEingeben']='Enter name'; +$this->phrasen['lvplan/anleitungLVPlanSync']='Instructions for synchronizing your schedule '; +$this->phrasen['lvplan/caldavURL']='CalDAV URL (Android, Thunderbird, CalDAV-Synchronizer)'; +$this->phrasen['lvplan/caldavURLMac']='CalDAV Principal URL (MacOS, iOS)'; +$this->phrasen['lvplan/googleURL']='iCAL URL (Google)'; +$this->phrasen['lvplan/persoenlichenAbonnieren']='Subscribe to personal schedule'; +$this->phrasen['lvplan/aktuelleKW']='Current calendar week'; +$this->phrasen['lvplan/rauminformationenAnzeigen']='Show room information'; +$this->phrasen['lvplan/personen']='persons'; +$this->phrasen['lvplan/raumreservierungAufZeitraumEingeschraenkt']='Room reservation is limited to the period from %s to %s'; +$this->phrasen['lvplan/neueStunden']='New Units'; +$this->phrasen['lvplan/stdBeginn']='Unit (Begin)'; +$this->phrasen['lvplan/lehrfach']='Course'; +$this->phrasen['lvplan/info']='Info'; +$this->phrasen['lvplan/geloeschteStunden']='Deleted Units'; +$this->phrasen['lvplan/geaenderteStunden']='Changed Units'; +$this->phrasen['lvplan/jetzt']='Now'; +$this->phrasen['lvplan/vorher']='Previously'; +$this->phrasen['lvplan/status']='Status'; +$this->phrasen['lvplan/automatischeMail']='This is an automatic email!'; +$this->phrasen['lvplan/folgendeAenderungen']='There have been the following changes in your Schedule:'; +$this->phrasen['lvplan/reserviertInDev']='not
available'; +$this->phrasen['lvplan/raumNichtReservierbar']='Reservation is disabled for this room.'; +$this->phrasen['lvplan/reserviertVon']='Reserved by'; +?> diff --git a/locale/it-IT/lvplan.php b/locale/it-IT/lvplan.php index 4434bdbdd..f843a9b82 100644 --- a/locale/it-IT/lvplan.php +++ b/locale/it-IT/lvplan.php @@ -87,5 +87,5 @@ $this->phrasen['lvplan/vonZeitEingeben']=''; $this->phrasen['lvplan/vonZeitFormat']=''; $this->phrasen['lvplan/wochenplan']=''; $this->phrasen['lvplan/zurReservierung']=''; - +$this->phrasen['lvplan/reserviertVon']=''; ?> diff --git a/public/css/infocenter/infocenterPersonDataset.css b/public/css/infocenter/infocenterPersonDataset.css index 2e0edf07f..621391e67 100644 --- a/public/css/infocenter/infocenterPersonDataset.css +++ b/public/css/infocenter/infocenterPersonDataset.css @@ -4,4 +4,9 @@ hr.studiensemesterline { margin: 6px 6px; +} + +.onhold +{ + color: #CDAD00 } \ No newline at end of file diff --git a/public/js/FilterWidget.js b/public/js/FilterWidget.js index a0753464f..a85969865 100644 --- a/public/js/FilterWidget.js +++ b/public/js/FilterWidget.js @@ -479,8 +479,9 @@ var FHC_FilterWidget = { /** * Event function used by the apply filter button + * The given parameter is used to decide if the page is going to be reloaded */ - _applyFilterEvent: function() { + _applyFilterEvent: function(reload = true) { var appliedFilters = []; var appliedFiltersOperations = []; @@ -505,7 +506,15 @@ var FHC_FilterWidget = { }, { successCallback: function(data, textStatus, jqXHR) { - FHC_FilterWidget._failOrReload(data, textStatus, jqXHR); + + if (reload === true) + { + FHC_FilterWidget._failOrReload(data, textStatus, jqXHR); + } + else + { + console.log(FHC_AjaxClient.getError(data)); + } } } ); @@ -577,6 +586,9 @@ var FHC_FilterWidget = { if ($("#customFilterDescription").val() != "") { + // Apply the filter before saving it, without reloading the page + FHC_FilterWidget._applyFilterEvent(false); + FHC_AjaxClient.ajaxCallPost( "widgets/Filters/saveCustomFilter", { @@ -585,16 +597,7 @@ var FHC_FilterWidget = { }, { successCallback: function(data, textStatus, jqXHR) { - - // If menu is present - if (FHC_FilterWidget._hideMenu != true) - { - // If a success and refreshSideMenuHook is a valid function then call it to refresh the side menu - if (typeof refreshSideMenuHook == "function") - { - refreshSideMenuHook(); - } - } + FHC_FilterWidget._failOrReload(data); } } ); diff --git a/public/js/infocenter/infocenterPersonDataset.js b/public/js/infocenter/infocenterPersonDataset.js index 2187a6a3b..2768f77b2 100644 --- a/public/js/infocenter/infocenterPersonDataset.js +++ b/public/js/infocenter/infocenterPersonDataset.js @@ -51,7 +51,7 @@ var InfocenterPersonDataset = { var legendHtml = ' Gesperrt    ' + ' Geparkt    ' + - ' Zurückgestellt'; + ' Zurückgestellt'; // userdefined Semestervariable shown independently of personcount, // it is possible to change the semester diff --git a/system/account_deaktivierung_mail.php b/system/account_deaktivierung_mail.php index 289846a72..083295461 100644 --- a/system/account_deaktivierung_mail.php +++ b/system/account_deaktivierung_mail.php @@ -58,7 +58,7 @@ if($result = $db->db_query($qry)) $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n"; $message .= "\n"; $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, sich umgehend mit den KollegInnen in der Personalabteilung in Verbindung zu setzen: "; - $message .= "Frau Dragana Vitorovic, dragana.vitorovic@technikum-wien.at\n"; + $message .= "Frau Natalie König, natalie.koenig@technikum-wien.at\n"; $message .= "\n"; $message .= "Mit freundlichen Grüßen\n"; $message .= "\n"; @@ -212,7 +212,7 @@ if($result = $db->db_query($qry)) $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden\n"; $message .= "\n"; $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, sich umgehend mit den KollegInnen in der Personalabteilung in Verbindung zu setzen: "; - $message .= "Frau Dragana Vitorovic, dragana.vitorovic@technikum-wien.at\n"; + $message .= "Frau Natalie König, natalie.koenig@technikum-wien.at\n"; $message .= "\n"; $message .= "Mit freundlichen Grüßen\n"; $message .= "\n"; diff --git a/system/checksystem.php b/system/checksystem.php index 9f6915df0..04e76bb52 100644 --- a/system/checksystem.php +++ b/system/checksystem.php @@ -191,6 +191,7 @@ $berechtigungen = array( array('student/anrechnung','Anrechnungen des Studenten'), 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/noten','Notenverwaltung'), array('student/stammdaten','Stammdaten der Studenten'), array('student/vorrueckung','Studentenvorrückung'), diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index fbaa00965..0cc307bf2 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -2968,13 +2968,13 @@ if(!$result = @$db->db_query("SELECT vertragsstunden FROM lehre.tbl_vertrag LIMI if(!$result = @$db->db_query("SELECT vertragsstunden_studiensemester_kurzbz FROM lehre.tbl_vertrag LIMIT 1")) { $qry = " - ALTER TABLE lehre.tbl_vertrag - ADD COLUMN vertragsstunden_studiensemester_kurzbz VARCHAR(16); - ALTER TABLE lehre.tbl_vertrag - ADD CONSTRAINT fk_vertrag_vertragsstunden_studiensemester_kurzbz - FOREIGN KEY (vertragsstunden_studiensemester_kurzbz) - REFERENCES public.tbl_studiensemester (studiensemester_kurzbz) + ADD COLUMN vertragsstunden_studiensemester_kurzbz VARCHAR(16); + + ALTER TABLE lehre.tbl_vertrag + ADD CONSTRAINT fk_vertrag_vertragsstunden_studiensemester_kurzbz + FOREIGN KEY (vertragsstunden_studiensemester_kurzbz) + REFERENCES public.tbl_studiensemester (studiensemester_kurzbz) ON UPDATE CASCADE ON DELETE RESTRICT; "; @@ -3394,6 +3394,75 @@ if(!$result = @$db->db_query("SELECT incoming FROM bis.tbl_zweck LIMIT 1")) echo '
bis.tbl_zweck Spalte incoming und outgoing hinzugefügt, neue Codexeinträge ergänzt.'; } +// Add column statistik_kurzbz to system.tbl_filters +if(!$result = @$db->db_query("SELECT statistik_kurzbz FROM system.tbl_filters LIMIT 1")) +{ + $qry = "ALTER TABLE system.tbl_filters ADD COLUMN statistik_kurzbz varchar(64); + ALTER TABLE system.tbl_filters ADD CONSTRAINT fk_filters_statistik FOREIGN KEY (statistik_kurzbz) REFERENCES public.tbl_statistik (statistik_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;"; + + if(!$db->db_query($qry)) + echo 'system.tbl_filters: '.$db->db_last_error().'
'; + else + echo '
system.tbl_filters: Spalte statistik_kurzbz hinzugefuegt'; +} + +// app reporting hinzufügen +if($result = @$db->db_query("SELECT 1 FROM system.tbl_app WHERE app= 'reporting';")) +{ + if($db->db_num_rows($result) == 0) + { + $qry = "INSERT INTO system.tbl_app(app) VALUES ('reporting');"; + + if(!$db->db_query($qry)) + echo 'system.tbl_app: '.$db->db_last_error().'
'; + else + echo '
system.tbl_app: Zeile reporting hinzugefuegt!
'; + } +} + +// Add table fue.tbl_projekttyp +if(!$result = @$db->db_query("SELECT 1 FROM fue.tbl_projekttyp LIMIT 1")) +{ + $qry = " + CREATE TABLE fue.tbl_projekttyp + ( + projekttyp_kurzbz varchar(32) NOT NULL, + bezeichnung varchar(255) + ); + COMMENT ON TABLE fue.tbl_projekttyp IS 'Project Type'; + ALTER TABLE fue.tbl_projekttyp ADD CONSTRAINT pk_tbl_projekttyp PRIMARY KEY (projekttyp_kurzbz); + ALTER TABLE fue.tbl_projekt ADD COLUMN projekttyp_kurzbz varchar(32); + ALTER TABLE fue.tbl_projekt ADD CONSTRAINT fk_tbl_projekt_projekttyp FOREIGN KEY (projekttyp_kurzbz) REFERENCES fue.tbl_projekttyp (projekttyp_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE; + + INSERT INTO fue.tbl_projekttyp(projekttyp_kurzbz, bezeichnung) VALUES ('fue', 'Forschung und Entwicklung'); + INSERT INTO fue.tbl_projekttyp(projekttyp_kurzbz, bezeichnung) VALUES ('intern', 'Intern'); + INSERT INTO fue.tbl_projekttyp(projekttyp_kurzbz, bezeichnung) VALUES ('internoe', 'Intern Organisationseinheit'); + + GRANT SELECT ON TABLE fue.tbl_projekttyp TO web; + GRANT SELECT ON TABLE fue.tbl_projekttyp TO wawi; + GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE fue.tbl_projekttyp TO vilesci; + "; + + if(!$db->db_query($qry)) + echo 'fue.tbl_projekttyp: '.$db->db_last_error().'
'; + else + echo '
fue.tbl_projekttyp hinzugefuegt.'; +} + +// Add new webservice type in system.tbl_webservicetyp +if ($result = @$db->db_query("SELECT 1 FROM system.tbl_webservicetyp WHERE webservicetyp_kurzbz = 'API';")) +{ + if ($db->db_num_rows($result) == 0) + { + $qry = "INSERT INTO system.tbl_webservicetyp(webservicetyp_kurzbz, beschreibung) VALUES('API', 'Cronjob');"; + + if (!$db->db_query($qry)) + echo 'system.tbl_webservicetyp '.$db->db_last_error().'
'; + else + echo ' system.tbl_webservicetyp: Added webservice type "API"
'; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; @@ -3480,16 +3549,17 @@ $tabellen=array( "campus.tbl_uebung" => array("uebung_id","gewicht","punkte","angabedatei","freigabevon","freigabebis","abgabe","beispiele","statistik","bezeichnung","positiv","defaultbemerkung","lehreinheit_id","maxstd","maxbsp","liste_id","prozent","nummer","updateamum","updatevon","insertamum","insertvon"), "campus.tbl_veranstaltung" => array("veranstaltung_id","titel","beschreibung","veranstaltungskategorie_kurzbz","inhalt","start","ende","freigabevon","freigabeamum","updateamum","updatevon","insertamum","insertvon"), "campus.tbl_veranstaltungskategorie" => array("veranstaltungskategorie_kurzbz","bezeichnung","bild","farbe"), - "campus.tbl_zeitaufzeichnung" => array("zeitaufzeichnung_id","uid","aktivitaet_kurzbz","projekt_kurzbz","start","ende","beschreibung","oe_kurzbz_1","oe_kurzbz_2","insertamum","insertvon","updateamum","updatevon","ext_id","service_id","kunde_uid"), + "campus.tbl_zeitaufzeichnung" => array("zeitaufzeichnung_id","uid","aktivitaet_kurzbz","projekt_kurzbz","start","ende","beschreibung","oe_kurzbz_1","oe_kurzbz_2","insertamum","insertvon","updateamum","updatevon","ext_id","service_id","kunde_uid","projektphase_id"), "campus.tbl_zeitaufzeichnung_gd" => array("zeitaufzeichnung_gd_id","uid","studiensemester_kurzbz","selbstverwaltete_pause","insertamum","insertvon","updateamum","updatevon"), "campus.tbl_zeitsperre" => array("zeitsperre_id","zeitsperretyp_kurzbz","mitarbeiter_uid","bezeichnung","vondatum","vonstunde","bisdatum","bisstunde","vertretung_uid","updateamum","updatevon","insertamum","insertvon","erreichbarkeit_kurzbz","freigabeamum","freigabevon"), "campus.tbl_zeitsperretyp" => array("zeitsperretyp_kurzbz","beschreibung","farbe"), "campus.tbl_zeitwunsch" => array("stunde","mitarbeiter_uid","tag","gewicht","updateamum","updatevon","insertamum","insertvon"), "fue.tbl_aktivitaet" => array("aktivitaet_kurzbz","beschreibung","sort"), "fue.tbl_aufwandstyp" => array("aufwandstyp_kurzbz","bezeichnung"), - "fue.tbl_projekt" => array("projekt_kurzbz","nummer","titel","beschreibung","beginn","ende","oe_kurzbz","budget","farbe","aufwandstyp_kurzbz","ressource_id","anzahl_ma","aufwand_pt","projekt_id"), + "fue.tbl_projekt" => array("projekt_kurzbz","nummer","titel","beschreibung","beginn","ende","oe_kurzbz","budget","farbe","aufwandstyp_kurzbz","ressource_id","anzahl_ma","aufwand_pt","projekt_id","projekttyp_kurzbz"), "fue.tbl_projektphase" => array("projektphase_id","projekt_kurzbz","projektphase_fk","bezeichnung","typ","beschreibung","start","ende","budget","insertamum","insertvon","updateamum","updatevon","personentage","farbe","ressource_id"), "fue.tbl_projekttask" => array("projekttask_id","projektphase_id","bezeichnung","beschreibung","aufwand","mantis_id","insertamum","insertvon","updateamum","updatevon","projekttask_fk","erledigt","ende","ressource_id","scrumsprint_id"), + "fue.tbl_projekttyp" => array("projekttyp_kurzbz","bezeichnung"), "fue.tbl_projekt_dokument" => array("projekt_dokument_id","projektphase_id","projekt_kurzbz","dms_id"), "fue.tbl_projekt_ressource" => array("projekt_ressource_id","projekt_kurzbz","projektphase_id","ressource_id","funktion_kurzbz","beschreibung","aufwand"), "fue.tbl_ressource" => array("ressource_id","student_uid","mitarbeiter_uid","betriebsmittel_id","firma_id","bezeichnung","beschreibung","insertamum","insertvon","updateamum","updatevon"), @@ -3625,7 +3695,8 @@ $tabellen=array( "public.tbl_studiensemester" => array("studiensemester_kurzbz","bezeichnung","start","ende","studienjahr_kurzbz","ext_id","beschreibung","onlinebewerbung"), "public.tbl_tag" => array("tag"), "public.tbl_variable" => array("name","uid","wert"), - "public.tbl_vorlage" => array("vorlage_kurzbz","bezeichnung","anmerkung","mimetype","attribute","archivierbar","signierbar","stud_selfservice","dokument_kurzbz"), + "public.tbl_variablenname" => array("name","defaultwert"), + "public.tbl_vorlage" => array("vorlage_kurzbz","bezeichnung","anmerkung","mimetype","attribute","archivierbar","signierbar","stud_selfservice","dokument_kurzbz","insertamum","insertvon","updateamum","updatevon"), "public.tbl_vorlagedokument" => array("vorlagedokument_id","sort","vorlagestudiengang_id","dokument_kurzbz"), "public.tbl_vorlagestudiengang" => array("vorlagestudiengang_id","vorlage_kurzbz","studiengang_kz","version","text","oe_kurzbz","style","berechtigung","anmerkung_vorlagestudiengang","aktiv","sprache","subject","orgform_kurzbz","insertamum","insertvon","updateamum","updatevon"), "testtool.tbl_ablauf" => array("ablauf_id","gebiet_id","studiengang_kz","reihung","gewicht","semester", "insertamum","insertvon","updateamum", "updatevon","ablauf_vorgaben_id","studienplan_id"), @@ -3648,7 +3719,7 @@ $tabellen=array( "system.tbl_extensions" => array("extension_id","name","version","description","license","url","core_version","dependencies","enabled"), "system.tbl_log" => array("log_id","person_id","zeitpunkt","app","oe_kurzbz","logtype_kurzbz","logdata","insertvon","taetigkeit_kurzbz"), "system.tbl_logtype" => array("logtype_kurzbz", "data_schema"), - "system.tbl_filters" => array("filter_id","app","dataset_name","filter_kurzbz","person_id","description","sort","default_filter","filter","oe_kurzbz"), + "system.tbl_filters" => array("filter_id","app","dataset_name","filter_kurzbz","person_id","description","sort","default_filter","filter","oe_kurzbz","statistik_kurzbz"), "system.tbl_phrase" => array("phrase_id","app","phrase","insertamum","insertvon","category"), "system.tbl_phrasentext" => array("phrasentext_id","phrase_id","sprache","orgeinheit_kurzbz","orgform_kurzbz","text","description","insertamum","insertvon"), "system.tbl_rolle" => array("rolle_kurzbz","beschreibung"), diff --git a/vilesci/personen/import/mitarbeiterimport.php b/vilesci/personen/import/mitarbeiterimport.php index 7707c19f6..410820528 100644 --- a/vilesci/personen/import/mitarbeiterimport.php +++ b/vilesci/personen/import/mitarbeiterimport.php @@ -157,12 +157,37 @@ if(isset($_POST['checkUID'])) $(document).ready(function() { - $('#t1').tablesorter( + if ($('#t1 tbody td').length > 0) { - sortList: [[1,0],[2,0],[4,0]], - widgets: ['zebra'], - headers: {0: {sorter: false},8: {sorter: false},9: {sorter: false}} - }); + $('#t1').tablesorter( + { + sortList: [[1,0],[2,0],[4,0]], + widgets: ['zebra'], + headers: {0: {sorter: false},8: {sorter: false},9: {sorter: false}} + }); + } + + $("#vorschlladen").click( + function(evt) + { + var input = $("") + .attr("type", "hidden") + .attr("name", "showagain").val("showagain"); + $('#mitarbeiterimportform').append(input); + checkInput1(evt); + } + ); + + $("#savemitarbeiter").click( + function(evt) + { + var input = $("") + .attr("type", "hidden") + .attr("name", "save").val("save"); + $('#mitarbeiterimportform').append(input); + checkInput1(evt); + } + ); }); function disablefields(obj) @@ -199,6 +224,26 @@ function disablefields(obj) document.getElementById('ueb3').style.display = 'none'; document.getElementById('ueberschreiben1').checked = true; } + disablefields2(val); +} + +function disablefields2(val) +{ + document.getElementById('adresse_nation').disabled=val; + document.getElementById('adresse').disabled=val; + document.getElementById('plz').disabled=val; + var ortel = document.getElementById('ort'); + if (typeof(ortel) != 'undefined' && ortel != null) + ortel.disabled=val; + var gemeindeel = document.getElementById('gemeinde'); + if (typeof(gemeindeel) != 'undefined' && gemeindeel != null) + gemeindeel.disabled=val; + var orttextel = document.getElementById('adresse-ort-textfeld'); + if (typeof(orttextel) != 'undefined' && orttextel != null) + orttextel.disabled=val; + var gemeindetextel = document.getElementById('adresse-gemeinde-textfeld'); + if (typeof(gemeindetextel) != 'undefined' && gemeindetextel != null) + gemeindetextel.disabled=val; } function GeburtsdatumEintragen() @@ -223,31 +268,47 @@ function GeburtsdatumEintragen() } } -function checkInput1() +function checkInput1(evt) { + evt.preventDefault(); if(document.getElementById('nachname').value=='') { alert('Nachname muss eingetragen werden'); - return false; } - if(document.getElementById('geburtsdatum').value=='') + else if(document.getElementById('geburtsdatum').value=='') { alert('Geburtsdatum muss eingetragen werden'); - return false; } - return true; + else + checkWunschUid(true); } -function checkWunschUid() +function checkWunschUid(submit) { // Set UID lower case and remove whitespaces and - uid = $("#wunschUid").val().toLowerCase(); uid = uid.replace(/\s+/g, ''); - uid = uid.replace('-', ''); - + uid = uid.replace(/-/g, ''); + $("#checkUID").html(''); $("#wunschUid").val(uid); - if (uid != '') + if (uid === '') + { + if (submit === true) + $("#mitarbeiterimportform").submit(); + } + else if(uid.length < 4 || uid.length > 32) + { + $("#checkUID").css( "color", "red" ); + $("#checkUID").html('UID Länge muss mind. 4, max. 32 Zeichen sein'); + } + // Check ob uid Sonderzeichen (alles außer a-z und 0-9) enthält + else if (/^[a-z0-9]*$/i.test(uid) === false) + { + $("#checkUID").css( "color", "red" ); + $("#checkUID").html('Die UID darf keine Sonderzeichen enthalten'); + } + else { data = { uid: uid, @@ -259,21 +320,25 @@ function checkWunschUid() data: data, type: 'POST', dataType: "json", - success: function(data) - { - if(data.status != 'ok') + success: function (data) { + if (data.status != 'ok') { - $("#checkUID").css( "color", "red" ); + $("#checkUID").css("color", "red"); $("#checkUID").html('UID bereits vorhanden'); - } - else + } else { - $("#checkUID").css( "color", "green" ); - $("#checkUID").html('UID verfügbar'); + if (submit) + { + $("#mitarbeiterimportform").submit(); + } + else + { + $("#checkUID").css("color", "green"); + $("#checkUID").html('UID verfügbar'); + } } }, - error: function(data) - { + error: function (data) { alert(data.msg) } }); @@ -559,7 +624,13 @@ if(isset($_POST['save'])) if ($wunschUid != '') { - $uid = $wunschUid; + if (preg_match('/^[a-z0-9]{4,32}$/i', $wunschUid)) + $uid = $wunschUid; + else + { + $error = true; + $errormsg = 'Die Wunsch-UID '.$wunschUid.' ist ungültig!'; + } } $bn = new benutzer(); @@ -824,27 +895,39 @@ if($geburtsdatum!='') if($geburtsdatum_error) echo "Format des Geburtsdatums ist ungueltig!"; } -if(($vorname=='' && $nachname=='') || $geburtsdatum_error || $geburtsdatum=='') - echo "
"; -else - echo ""; +/*if(($vorname=='' && $nachname=='') || $geburtsdatum_error || $geburtsdatum=='') + echo "";// onsubmit='return checkInput1();' +else*/ + echo ""; ?> -
+ '; +$showagain = isset($_POST['showagain']); +echo ''; echo ''; echo ''; -echo ''; +echo ''; //echo ''; echo ''; echo ''; @@ -856,7 +939,12 @@ echo ''; echo ''; echo ''; echo ''; -echo ''; +echo ''; echo ''; echo '
Wunsch-UID - - (optional, max. 32) -
Wunsch-UID'; +echo ''; +if ($showagain) + echo '
'; +echo ' (optional, max. 32) +
Anrede
Titel(Pre)
Vorname -   Weitere Vornamen 
Vorname'; +if ($showagain) + echo '
'; +else + echo '  '; +echo 'Weitere Vornamen'; +if ($showagain) + echo ''; +else + echo ' '; +echo '
Nachname *
Titel(Post)
SVNR
Ersatzkennzeichen
Geburtsdatum * (Format: TT.MM.JJJJ)
Geburtsdatum *'; +if ($showagain) + echo '
'; +else + echo ' '; +echo '(Format: TT.MM.JJJJ)
 
Nation
Anmerkungen