Merge branch 'feature-4998/FHC-IDAM_REST_Schnittstelle_zum_Setzen_des_Aktivierungscodes' into feature-5128/FHC-IDAM_account_activation

This commit is contained in:
Paolo
2019-12-11 18:55:10 +01:00
33 changed files with 1332 additions and 646 deletions
@@ -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);
@@ -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");
}
}
+28
View File
@@ -0,0 +1,28 @@
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
use phpseclib\Crypt\Rijndael;
/**
* Collection of different encryption/hashing algorithms
*/
class CryptLib
{
/**
* Encrypt using the Rijndael algorithm with a key length of 256 bits and the ECB mode
* It is possible to disable the padding, enabled by default
*/
public static function RIJNDAEL_256_ECB($value, $key, $paddingDisabled = false)
{
if (isEmptyString($key) || strlen($value) % 32 != 0) return null;
$cipher = new Rijndael(Rijndael::MODE_ECB);
$cipher->setBlockLength(256);
$cipher->setKey($key);
if ($paddingDisabled === true) $cipher->disablePadding();
return $cipher->encrypt($value);
}
}
@@ -7,7 +7,7 @@ $this->load->view('templates/header', array('title' => 'StudienjahrEdit', 'jquer
<div class="row">
<div class="span4">
<h2>Studienjahr bearbeiten: <?php echo $jahr->studienjahr_kurzbz; ?></h2>
<form method="post" action="<?php echo site_url("organisation/studienjahr/saveStudienjahr"); ?>">
<form method="post" action="<?php echo site_url("organisation/studienjahr/updateStudienjahr"); ?>">
<table>
<?php include('studienjahrForm.php'); ?>
@@ -8,7 +8,7 @@ $this->load->view('templates/header', array('title' => 'StudiensemesterEdit', 'd
<div class="span4">
<h2>Studiensemester bearbeiten: <?php echo $sem->studiensemester_kurzbz; ?></h2>
<form method="post"
action="<?php echo site_url("organisation/studiensemester/saveStudiensemester") ?>">
action="<?php echo site_url("organisation/studiensemester/updateStudiensemester") ?>">
<table>
<?php include('studiensemesterForm.php'); ?>
<input type="hidden" name="semkurzbz" value="<?php echo $sem->studiensemester_kurzbz; ?>"/>
@@ -394,7 +394,7 @@
if ($datasetRaw->OnholdDate != null)
{
$mark = "text-success";
$mark = "onhold";
}
// Parking has priority over locking
@@ -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.')
+310 -308
View File
@@ -1,308 +1,310 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Cristina Hainberger <hainberg@technikum-wien.at>
*
* 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);
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Cristina Hainberger <hainberg@technikum-wien.at>
*
* 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);
@@ -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)
{
+16 -7
View File
@@ -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 '<h2>'.$p->t('lvplan/reservierungen').'</h2>';
echo '<table class="stdplan">';
echo '<tr><th>'.$p->t('global/titel').'</th><th>'.$p->t('lvplan/ort').'</th><th>'.$p->t('global/person').'</th><th>'.$p->t('global/beschreibung').'</th></tr>';
echo '<tr><th>'.$p->t('global/titel').'</th><th>'.$p->t('lvplan/ort').'</th><th>'.$p->t('global/person').'</th><th>'.$p->t('global/beschreibung').'</th><th>'.$p->t('lvplan/reserviertVon').'</th></tr>';
$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 '<tr class="liste'.($i%2).'">';
echo '<td >'.$db->convert_html_chars($titel).'</td>';
echo '<td>'.$db->convert_html_chars($titel).'</td>';
echo '<td>'.(!empty($ortkurzbz)?($ort->content_id!=''?'<a href="../../../cms/content.php?content_id='.$ort->content_id.'" target="_self" onClick="window.resizeTo(1200,880)">'.$db->convert_html_chars($ortkurzbz).'</a>':$db->convert_html_chars($ortkurzbz)):$db->convert_html_chars($ortkurzbz)).'</td>';
echo '<td ><A href="mailto:'.$pers_email.'">'.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).'</A></td>';
echo '<td >'.$db->convert_html_chars($beschreibung).'</td></tr>';
echo '<td><A href="mailto:'.$pers_email.'">'.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).'</A></td>';
echo '<td>'.$db->convert_html_chars($beschreibung).'</td>';
echo '<td>'.$db->convert_html_chars($titelpre_reserviertvon.' '.$pers_vorname_reserviertvon.' '.$pers_nachname_reserviertvon.' '.$titelpost_reserviertvon).'</td>';
}
echo '</table><br>';
}
+20 -4
View File
@@ -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'))
<th>'.$p->t('global/titel').'</th>
<th>'.$p->t('global/stunde').'</th>
<th>'.$p->t('lvplan/raum').'</th>
<th>'.$p->t('global/uid').'</th>
<th>'.$p->t('global/person').'</th>
<th>'.$p->t('global/beschreibung').'</th>
<th>'.$p->t('lvplan/reserviertVon').'</th>
<th>'.$p->t('global/aktion').'</th>
</tr>';
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 '<td>'.$db->convert_html_chars($titel).'</td>';
echo '<td>'.$db->convert_html_chars($stunde).'</td>';
echo '<td>'.$db->convert_html_chars($ort_kurzbz).'</td>';
echo '<td>'.$db->convert_html_chars($pers_uid).'</td>';
echo '<td>'.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).'</td>';
echo '<td>'.$db->convert_html_chars($beschreibung).'<a name="liste'.$i.'">&nbsp;</a></td>';
echo '<td>'.$db->convert_html_chars($titelpre_reserviertvon.' '.$pers_vorname_reserviertvon.' '.$pers_nachname_reserviertvon.' '.$titelpost_reserviertvon).'</td>';
$z=$i-1;
if (($pers_uid==$uid || $insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'))
echo '<td><A class="Item" href="stpl_reserve_list.php?id='.$id.'#liste'.$z.'">Delete</A></td>';
+14 -7
View File
@@ -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))
<a href='".$_SERVER['PHP_SELF']."?csvexport=1' style='font-size: larger;'>CSV Export</a>";
if($anzprojekte > 0)
echo "<a style='font-size: larger; text-decoration: none; cursor: default'> | </a><a href='".$_SERVER['PHP_SELF']."?projektexport=1' style='font-size: larger;'>".$p->t("zeitaufzeichnung/projektexport")."</a>";
echo "<a style='font-size: larger; text-decoration: none; cursor: default'> | </a><a href='".$_SERVER['PHP_SELF']."?projektexport=1".($passuid ? '&uid='.$user : '')."' style='font-size: larger;'>".$p->t("zeitaufzeichnung/projektexport")."</a>";
echo "</td>
<td class='menubox' height='10px'>";
if ($p->t("dms_link/handbuchZeitaufzeichnung")!='')
@@ -1054,19 +1056,21 @@ if($projekt->getProjekteMitarbeiter($user, true))
echo '<tr><td colspan="4"><hr></td></tr>';
echo '<tr><td>'.$p->t('zeitaufzeichnung/projektexport').'</td>';
echo '<td align="center">'.$p->t('zeitaufzeichnung/monat').' <select id="projexpmonat" name="projexpmonat">';
for($i=1;$i<13;$i++)
for ($i=1;$i<13;$i++)
{
$selected = ($i == $aktmonat)?'selected = "selected"':'';
echo '<option value="'.$i.'" '.$selected.'>'.$monatsname[$sprache_index][$i - 1].'</option>';
}
echo '</select></td>';
echo '<td align="center">'.$p->t('zeitaufzeichnung/jahr').' <select id="projexpjahr" name="projexpjahr">';
for(;$jahreanz>0;$jahreanz--)
for (;$jahreanz>0;$jahreanz--)
{
echo '<option value="'.$aktjahr.'">'.$aktjahr.'</option>';
$aktjahr--;
}
echo '</select></td>';
if ($passuid)
echo '<input type="hidden" value="'.$user.'" name="uid">';
echo '<td align="right"><input type="submit" value="Export" name="projexport"></td></tr>';
echo '<tr><td colspan="4"><hr></td></tr>';
echo '</form>';
@@ -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;
@@ -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;
+328
View File
@@ -0,0 +1,328 @@
<?php
/* Copyright (C) 2009 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>
*/
/**
* 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 ! <a href="javascript:history.back()">Zur&uuml;ck</a>');
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$sprache = new sprache();
$sprache->getAll(true, 'index');
$sprache_user = getSprache();
$db = new basis_db();
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../skin/tablesort.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="../../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="../../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
<script type="text/javascript" src="../../../vendor/components/jqueryui/jquery-ui.min.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.ui.datepicker.translation.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[0,0]],
widgets: ["zebra"]
});
});
</script>
<style type="text/css">
.success
{
color: #3c763d;
font-weight: bold;
}
.error
{
color: #ff0000;
}
</style>
</head>
<body style="padding: 10px">
<div id="data"></div>
';
$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 '<a href="index.php?stg_kz='.$stg_kz.'" class="Item">Zurück zur Admin Seite</a><br /><br />';
echo '<h1>Gebiet kopieren</h1>';
echo '<p>Kopiert ein Gebiet mit allen Fragen und Antworten aber ohne Zuordnungen zu Studiengängen und dgl.</p>';
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 .= '<p class="success">Gebiet erfolgreich kopiert</p>';
// 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 .= '<p class="error">Fehler beim Speichern der Fragesprache '.$fragesprache.' bei Frage: '.$newfragen->frage_id.'</p>';
}
}
else
{
$returnmsg .= '<p class="error">Fehler beim Speichern der Frage: '.$newfragen->frage_id.'</p>';
}
}
}
}
else
{
$returnmsg .= '<p class="error">Fehler beim Speichern: '.$gebiet->errormsg.'</p>';
}
}
else
$returnmsg .= '<p class="error">Kurzbezeichnung ist schon vorhanden</p>';
}
}
else
{
$returnmsg .= '<p class="error">Bitte f&uuml;llen Sie alle Pflichtfelder aus</p>';
}
}
$studiengang = new studiengang();
$studiengang->getAll('typ, kurzbz', false);
echo '<p>'.$returnmsg.'</p>';
echo '
<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
<table cellspacing="4">
<tr>
<td>Zu kopierendes Gebiet: </td><td>';
//Dropdown bestehender Gebiete
$gebiete = new gebiet();
$gebiete->getAll();
echo '<SELECT name="gebietToCopy" id="gebieteSelect"><OPTION value="-1">-- Keine Auswahl --</OPTION>';
foreach ($gebiete->result AS $row)
{
if ($gebietToCopy == $row->gebiet_id)
{
$selected = 'selected';
}
echo '<option value="'.$row->gebiet_id.'" '.$selected.'>'.$row->bezeichnung.' - '.$row->kurzbz.' - '.$row->zeit.'</option>';
$selected = '';
}
echo '</select>';
echo '</td></tr>
<tr>
<td colspan="2"><b>Daten neues Gebiet</b></td>
</tr>
<tr>
<td>Kurzbezeichnung</td>
<td><input type="text" name="kurzbz" placeholder="Pflichtfeld" maxlength="10" value="'.(isset($_POST['kurzbz'])?$_POST['kurzbz']:'').'" required/></td>
</tr>
<tr>
<td>Bezeichnung (intern)</td>
<td><input type="text" name="bezeichnung_intern" maxlength="50" value="'.(isset($_POST['bezeichnung_intern'])?$_POST['bezeichnung_intern']:'').'"/></td>
</tr>';
foreach ($sprache->result as $row)
{
echo ' <tr>
<td>Bezeichnung '.$row->bezeichnung_arr[$sprache_user].'</td>
<td><input type="text" name="bezeichnung_mehrsprachig_'.$row->sprache.'" maxlength="255" value="'.(isset($_POST['bezeichnung_mehrsprachig_'.$row->sprache.''])?$_POST['bezeichnung_mehrsprachig_'.$row->sprache.'']:'').'"/></td>
</tr>';
}
echo '
<tr>
<td>Beschreibung (intern)</td>
<td><textarea rows="" cols="" name="beschreibung" style="font-size: 9pt">'.(isset($_POST['beschreibung'])?$_POST['beschreibung']:'').'</textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Gebiet kopieren"/></td>
</tr>
</table>
<input type="hidden" name="copyGebiet" value="copyGebiet"/>
</form>
';
echo '</body></html>';
?>
+1
View File
@@ -690,6 +690,7 @@ if (($anzahl !== 0) || ($stg_kz == '-1') && ($stg_kz !== ''))
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id&amp;stg_kz=$stg_kz&amp;nummer=$nummer&amp;type=gebietpruefen' class='Item'>Prüfen</a> | ";
echo " <a href='edit_gebiet.php?gebiet_id=$gebiet_id&amp;stg_kz=$stg_kz' class='Item'>Bearbeiten</a> |";
echo " <a href='add_gebiet.php?stg_kz=".$stg_kz."'>Neues Gebiet</a> | ";
echo " <a href='copy_gebiet.php?stg_kz=".$stg_kz."&amp;gebietToCopy=".$gebiet_id."'>Gebiet kopieren</a>";
//echo " <a href='export.php?gebiet_id=$gebiet_id&amp;stg_kz=$stg_kz' target='_blank'>PDF exportieren</a>";
//echo " <br/>Gebiet_id=".$gebiet_id."";
echo '</td><td align="right">';
+2
View File
@@ -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";
+4 -2
View File
@@ -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)
{
+10 -1
View File
@@ -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'];
+24 -1
View File
@@ -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));
<?php
// Die Bachelor-ZGV darf nur mit einem eigenen Recht geändert werden
$rechte = new benutzerberechtigung();
$rechte->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');
+58
View File
@@ -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
*/
+1 -1
View File
@@ -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;
+28 -30
View File
@@ -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)
+1
View File
@@ -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))
+102 -101
View File
@@ -1,102 +1,103 @@
<?php
$this->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<br>für<br>lehre';
$this->phrasen['lvplan/raumNichtReservierbar']='Die Möglichkeit der Reservierung ist für diesen Raum deaktiviert.';
<?php
$this->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<br>für<br>lehre';
$this->phrasen['lvplan/raumNichtReservierbar']='Die Möglichkeit der Reservierung ist für diesen Raum deaktiviert.';
$this->phrasen['lvplan/reserviertVon']='Reserviert von';
?>
+102 -101
View File
@@ -1,101 +1,102 @@
<?php
$this->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<br>available';
$this->phrasen['lvplan/raumNichtReservierbar']='Reservation is disabled for this room.';
?>
<?php
$this->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<br>available';
$this->phrasen['lvplan/raumNichtReservierbar']='Reservation is disabled for this room.';
$this->phrasen['lvplan/reserviertVon']='Reserved by';
?>
+1 -1
View File
@@ -87,5 +87,5 @@ $this->phrasen['lvplan/vonZeitEingeben']='';
$this->phrasen['lvplan/vonZeitFormat']='';
$this->phrasen['lvplan/wochenplan']='';
$this->phrasen['lvplan/zurReservierung']='';
$this->phrasen['lvplan/reserviertVon']='';
?>
@@ -4,4 +4,9 @@
hr.studiensemesterline
{
margin: 6px 6px;
}
.onhold
{
color: #CDAD00
}
+15 -12
View File
@@ -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);
}
}
);
@@ -51,7 +51,7 @@ var InfocenterPersonDataset = {
var legendHtml = '<i class="fa fa-circle text-danger"></i> Gesperrt&nbsp;&nbsp;&nbsp;&nbsp;' +
'<i class="fa fa-circle text-info"></i> Geparkt&nbsp;&nbsp;&nbsp;&nbsp;' +
'<i class="fa fa-circle text-success"></i> Zurückgestellt';
'<i class="fa fa-circle onhold"></i> Zurückgestellt';
// userdefined Semestervariable shown independently of personcount,
// it is possible to change the semester
+2 -2
View File
@@ -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";
+1
View File
@@ -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'),
+81 -10
View File
@@ -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 '<br>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 '<strong>system.tbl_filters: '.$db->db_last_error().'</strong><br>';
else
echo '<br>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 '<strong>system.tbl_app: '.$db->db_last_error().'</strong><br>';
else
echo '<br>system.tbl_app: Zeile reporting hinzugefuegt!<br>';
}
}
// 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 '<strong>fue.tbl_projekttyp: '.$db->db_last_error().'</strong><br>';
else
echo '<br>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 '<strong>system.tbl_webservicetyp '.$db->db_last_error().'</strong><br>';
else
echo ' system.tbl_webservicetyp: Added webservice type "API"<br>';
}
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
@@ -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"),
+131 -44
View File
@@ -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 = $("<input>")
.attr("type", "hidden")
.attr("name", "showagain").val("showagain");
$('#mitarbeiterimportform').append(input);
checkInput1(evt);
}
);
$("#savemitarbeiter").click(
function(evt)
{
var input = $("<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 "<form method='POST' onsubmit='return checkInput1();'>";
else
echo "<form method='POST'>";
/*if(($vorname=='' && $nachname=='') || $geburtsdatum_error || $geburtsdatum=='')
echo "<form method='POST' action='' id='mitarbeiterimportform'>";// onsubmit='return checkInput1();'
else*/
echo "<form method='POST' action='' id='mitarbeiterimportform'>";
?>
<!-- <form method='POST'>-->
<table width="100%">
<tr>
<td>
<td valign="top">
<!--Formularfelder-->
<table>
<?php
echo '<tr><td>Wunsch-UID</td><td><input type="text" name="wunschUid" id="wunschUid" maxlength="32" size="30" value="'.$wunschUid.'" />
<span style="padding: 0 3px" id="checkUID"></span>
<button type="button" title="Prüft, ob die UID schon vorhanden ist. Keine Sonderzeichen, Umlaute oder Leerzeichen in der UID" href="#" onclick="checkWunschUid()"> Check UID </button> (optional, max. 32)
</td></tr>';
$showagain = isset($_POST['showagain']);
echo '<tr><td>Wunsch-UID</td><td><input type="text" name="wunschUid" id="wunschUid" maxlength="32" size="30" value="'.$wunschUid.'" />';
echo '<span style="padding: 0 3px" id="checkUID"></span>';
if ($showagain)
echo '<br>';
echo '<button type="button" title="Prüft, ob die UID schon vorhanden ist. Keine Sonderzeichen, Umlaute oder Leerzeichen in der UID" href="#" onclick="checkWunschUid()"> Check UID </button> (optional, max. 32)
</td></tr>';
echo '<tr><td>Anrede</td><td><input type="text" id="anrede" name="anrede" maxlength="16" size="30" value="'.$anrede.'" onblur="AnredeChange()"/></td></tr>';
echo '<tr><td>Titel(Pre)</td><td><input type="text" id="titel" name="titel" maxlength="64" size="30" value="'.$titel.'" /></td></tr>';
echo '<tr><td>Vorname</td><td><input type="text" id="vorname" maxlength="32" name="vorname" size="30" value="'.$vorname.'" />
&nbsp;&nbsp;Weitere Vornamen&nbsp;<input type="text" id="vornamen" maxlength="32" size="30" name="vornamen" value="'.$vornamen.'" /></td></tr>';
echo '<tr><td>Vorname</td><td><input type="text" id="vorname" maxlength="32" name="vorname" size="30" value="'.$vorname.'" />';
if ($showagain)
echo '</td></tr><tr><td>';
else
echo '&nbsp;&nbsp';
echo 'Weitere Vornamen';
if ($showagain)
echo '</td><td>';
else
echo '&nbsp;';
echo '<input type="text" id="vornamen" maxlength="32" size="30" name="vornamen" value="'.$vornamen.'" /></td></tr>';
//echo '<tr></tr>';
echo '<tr><td>Nachname *</td><td><input type="text" maxlength="64" size="30" id="nachname" name="nachname" value="'.$nachname.'" /></td></tr>';
echo '<tr><td>Titel(Post)</td><td><input type="text" id="titelpost" name="titelpost" maxlength="64" size="30" value="'.$titelpost.'" /></td></tr>';
@@ -856,7 +939,12 @@ echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>SVNR</td><td><input type="text" id="svnr" size="30" maxlength="16" name="svnr" value="'.$svnr.'" onblur="GeburtsdatumEintragen()" /></td></tr>';
echo '<tr><td>Ersatzkennzeichen</td><td><input type="text" id="ersatzkennzeichen" size="30" maxlength="10" name="ersatzkennzeichen" value="'.$ersatzkennzeichen.'" /></td></tr>';
echo '<tr><td>Geburtsdatum *</td><td><input type="text" id="geburtsdatum" size="30" maxlength="10" name="geburtsdatum" value="'.$geburtsdatum.'" /> (Format: TT.MM.JJJJ)</td></tr>';
echo '<tr><td>Geburtsdatum *</td><td><input type="text" id="geburtsdatum" size="30" maxlength="10" name="geburtsdatum" value="'.$geburtsdatum.'" />';
if ($showagain)
echo '<br>';
else
echo '&nbsp;';
echo '(Format: TT.MM.JJJJ)</td></tr>';
echo '<tr><td>&nbsp;</td></tr>';
echo '<tr><td>Nation</td><td><SELECT name="adresse_nation" id="adresse_nation" onchange="loadGemeindeData()">';
$nation = new nation();
@@ -926,21 +1014,20 @@ echo '<tr><td>Anmerkungen</td><td><textarea id="anmerkung" name="anmerkungen" co
echo '<tr><td></td><td>';
if(($geburtsdatum=='' && $vorname=='' && $nachname=='') || $geburtsdatum_error)
echo '<input type="submit" name="showagain" value="Vorschlag laden"></td></tr>';
echo '<input type="submit" id="vorschlladen" name="showagain" value="Vorschlag laden"></td></tr>';
else
{
echo '<input type="submit" name="showagain" value="Vorschlag laden">';
echo '<input type="submit" name="save" value="Speichern"></td></tr>';
echo '<input type="submit" id="vorschlladen" name="showagain" value="Vorschlag laden">';
echo '<input type="submit" id="savemitarbeiter" name="save" value="Speichern"></td></tr>';
}
echo '
</table>
<br><br>
Felder die mit einem * gekennzeichnet sind müssen ausgefüllt werden!
</td>
</td>';
<td valign="top">
';
echo '<td valign="top"'.($showagain ? ' width="75%"' : '').'>';
//Vorschlaege laden
if($geburtsdatum!='')
@@ -965,7 +1052,7 @@ if($where!='')
if($result = $db->db_query($qry))
{
echo '<table style="margin-top: 0px" class="tablesorter" id="t1"><thead><tr><th></th><th>Nachname</th><th>Vorname</th><th>Weitere<br/>Vornamen</th><th>GebDatum</th><th>SVNR</th><th>Geschlecht</th><th>Adresse</th><th>Status</th><th>Details</th></tr></thead>';
echo '<tfoot><tr><td style="padding: 4px"><input type="radio" name="person_id" value="0" checked onclick="disablefields(this)"></td><td style="padding: 4px" colspan="3">Neue Person anlegen</td></tr></tfoot><tbody>';
echo '<tfoot><tr><td style="padding: 4px"><input type="radio" name="person_id" value="0" checked onclick="disablefields(this)"></td><td style="padding: 4px" colspan="9">Neue Person anlegen</td></tr></tfoot><tbody>';
while($row = $db->db_fetch_object($result))
{
$status = '';