mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-24 10:22:18 +00:00
Merge branch 'master' into feature-17727/FasDefaultStundensatzProjektbetreuungAnzeigen
This commit is contained in:
@@ -385,6 +385,7 @@ var LeLektorDDObserver=
|
||||
|
||||
req.add('lehreinheit_id', lehreinheit_id);
|
||||
req.add('mitarbeiter_uid', uid);
|
||||
req.add('studiensemester_kurzbz', getStudiensemester());
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
|
||||
+50
-6
@@ -125,7 +125,8 @@ foreach($addon_obj->result as $addon)
|
||||
<command id="menu-statistic-studentendetails:command" oncommand="StatistikPrintStudentExportExtended();"/>
|
||||
<command id="menu-statistic-stromanalyse:command" oncommand="StatistikPrintStromanalyse();"/>
|
||||
<command id="menu-dokumente-bewerberakt:command" oncommand="StudentPrintBewerberakt(event);"/>
|
||||
<command id="menu-dokumente-inskriptionsbestaetigung:command" oncommand="StudentPrintInskriptionsbestaetigung(event);"/>
|
||||
<command id="menu-dokumente-inskriptionsbestaetigung:command" oncommand="StudentPrintInskriptionsbestaetigung(event, 'Inskription');"/>
|
||||
<command id="menu-dokumente-inskriptionsbestaetigungeng:command" oncommand="StudentPrintInskriptionsbestaetigung(event, 'InskriptionEng');"/>
|
||||
<command id="menu-dokumente-zeugnis:command" oncommand="StudentCreateZeugnis('Zeugnis',event);"/>
|
||||
<command id="menu-dokumente-zeugniseng:command" oncommand="StudentCreateZeugnis('ZeugnisEng',event);"/>
|
||||
<command id="menu-dokumente-diplsupplement:command" oncommand="StudentCreateDiplSupplement(event);"/>
|
||||
@@ -139,6 +140,10 @@ foreach($addon_obj->result as $addon)
|
||||
<command id="menu-dokumente-studienerfolgeng-allesemester-finanzamt:command" oncommand="StudentCreateStudienerfolg(event, 'StudienerfolgEng','finanzamt', '', 'true');"/>
|
||||
<command id="menu-dokumente-accountinfoblatt:command" oncommand="PrintAccountInfoBlatt(event);"/>
|
||||
<command id="menu-dokumente-zutrittskarte:command" oncommand="PrintZutrittskarte();"/>
|
||||
<command id="menu-dokumente-antrag-abmeldung:command" oncommand="StudentPrintAntragAbmeldung(event);"/>
|
||||
<command id="menu-dokumente-antrag-abmeldungstgl:command" oncommand="StudentPrintAntragAbmeldungStgl(event);"/>
|
||||
<command id="menu-dokumente-antrag-unterbrechung:command" oncommand="StudentPrintAntragUnterbrechung(event);"/>
|
||||
<command id="menu-dokumente-antrag-wiederholung:command" oncommand="StudentPrintAntragWiederholung(event);"/>
|
||||
<command id="menu-dokumente-studienblatt:command" oncommand="PrintStudienblatt(event);"/>
|
||||
<command id="menu-dokumente-studienblatt_englisch:command" oncommand="PrintStudienblattEnglisch(event);"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple(event,'de');"/>
|
||||
@@ -506,13 +511,52 @@ foreach($addon_obj->result as $addon)
|
||||
label = "&menu-dokumente-zutrittskarte.label;"
|
||||
command = "menu-dokumente-zutrittskarte:command"
|
||||
accesskey = "&menu-dokumente-zutrittskarte.accesskey;"/>
|
||||
<menu id="menu-dokumente-antrag" label="&menu-dokumente-antrag.label;" accesskey="&menu-dokumente-antrag.accesskey;">
|
||||
<menupopup id="menu-dokumente-antrag-popup">
|
||||
<menuitem
|
||||
id = "menu-dokumente-antrag-abmeldung"
|
||||
key = "menu-dokumente-antrag-abmeldung:key"
|
||||
label = "&menu-dokumente-antrag-abmeldung.label;"
|
||||
command = "menu-dokumente-antrag-abmeldung:command"
|
||||
accesskey = "&menu-dokumente-antrag-abmeldung.accesskey;"
|
||||
/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-antrag-abmeldungstgl"
|
||||
key = "menu-dokumente-antrag-abmeldungstgl:key"
|
||||
label = "&menu-dokumente-antrag-abmeldungstgl.label;"
|
||||
command = "menu-dokumente-antrag-abmeldungstgl:command"
|
||||
accesskey = "&menu-dokumente-antrag-abmeldungstgl.accesskey;"
|
||||
/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-antrag-unterbrechung"
|
||||
key = "menu-dokumente-antrag-unterbrechung:key"
|
||||
label = "&menu-dokumente-antrag-unterbrechung.label;"
|
||||
command = "menu-dokumente-antrag-unterbrechung:command"
|
||||
accesskey = "&menu-dokumente-antrag-unterbrechung.accesskey;"
|
||||
/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-antrag-wiederholung"
|
||||
key = "menu-dokumente-antrag-wiederholung:key"
|
||||
label = "&menu-dokumente-antrag-wiederholung.label;"
|
||||
command = "menu-dokumente-antrag-wiederholung:command"
|
||||
accesskey = "&menu-dokumente-antrag-wiederholung.accesskey;"
|
||||
/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-inskriptionsbestaetigung"
|
||||
key = "menu-dokumente-inskriptionsbestaetigung:key"
|
||||
label = "&menu-dokumente-inskriptionsbestaetigung.label;"
|
||||
command = "menu-dokumente-inskriptionsbestaetigung:command"
|
||||
accesskey = "&menu-dokumente-inskriptionsbestaetigung.accesskey;"/>
|
||||
id = "menu-dokumente-inskriptionsbestaetigung"
|
||||
key = "menu-dokumente-inskriptionsbestaetigung:key"
|
||||
label = "&menu-dokumente-inskriptionsbestaetigung.label;"
|
||||
command = "menu-dokumente-inskriptionsbestaetigung:command"
|
||||
accesskey = "&menu-dokumente-inskriptionsbestaetigung.accesskey;"/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-inskriptionsbestaetigungeng"
|
||||
key = "menu-dokumente-inskriptionsbestaetigungeng:key"
|
||||
label = "&menu-dokumente-inskriptionsbestaetigungeng.label;"
|
||||
command = "menu-dokumente-inskriptionsbestaetigungeng:command"
|
||||
accesskey = "&menu-dokumente-inskriptionsbestaetigungeng.accesskey;"
|
||||
/>
|
||||
<menuitem
|
||||
id = "menu-statistic-lehrauftraege"
|
||||
key = "menu-statistic-lehrauftraege:key"
|
||||
|
||||
@@ -54,6 +54,7 @@ require_once('../../include/datum.class.php');
|
||||
require_once('../../include/vertrag.class.php');
|
||||
require_once('../../include/benutzergruppe.class.php');
|
||||
require_once('../../include/bisverwendung.class.php');
|
||||
require_once('../../include/stundensatz.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$db = new basis_db();
|
||||
@@ -543,51 +544,61 @@ if(!$error)
|
||||
$lem->new=true;
|
||||
|
||||
$fixangestellt=false;
|
||||
//Stundensatz aus tbl_mitarbeiter holen
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
if ($mitarbeiter->load($_POST['mitarbeiter_uid']))
|
||||
//"lehre" Stundensatz aus hr.tbl_stundensatz holen
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
if (!$studiensemester->load($_POST['studiensemester_kurzbz']))
|
||||
{
|
||||
$fixangestellt = $mitarbeiter->fixangestellt;
|
||||
$lem->stundensatz = $mitarbeiter->stundensatz;
|
||||
$return = false;
|
||||
$error = true;
|
||||
$errormsg = 'Fehler beim Laden des Studiensemesters';
|
||||
}
|
||||
|
||||
if (defined('FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ')
|
||||
&& !FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ)
|
||||
if (!$error)
|
||||
{
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
if ($mitarbeiter->load($_POST['mitarbeiter_uid']))
|
||||
{
|
||||
$stsem = new studiensemester();
|
||||
$stsem->load($semester_aktuell);
|
||||
$bisverwendung = new bisverwendung();
|
||||
$data = $mitarbeiter->stundensatz;
|
||||
if(!$bisverwendung->getVerwendungRange($mitarbeiter->uid, $stsem->start, $stsem->ende))
|
||||
$fixangestellt = $mitarbeiter->fixangestellt;
|
||||
|
||||
$stundensatz = new stundensatz();
|
||||
$stundensatz->getStundensatzDatum($mitarbeiter->uid, $studiensemester->start, $studiensemester->ende, 'lehre');
|
||||
$lem->stundensatz = $stundensatz->stundensatz;
|
||||
|
||||
if (defined('FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ')
|
||||
&& !FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ)
|
||||
{
|
||||
$bisverwendung->getLastAktVerwendung($mitarbeiter->uid);
|
||||
$bisverwendung->result[] = $bisverwendung;
|
||||
}
|
||||
|
||||
foreach($bisverwendung->result as $row_verwendung)
|
||||
{
|
||||
// Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
|
||||
// geliefert da dies im Vertrag inkludiert ist.
|
||||
|
||||
if ((in_array($row_verwendung->ba1code, $arrEchterDV)) && $row_verwendung->inkludierte_lehre == -1)
|
||||
$stsem = new studiensemester();
|
||||
$stsem->load($semester_aktuell);
|
||||
$bisverwendung = new bisverwendung();
|
||||
|
||||
if(!$bisverwendung->getVerwendungRange($mitarbeiter->uid, $stsem->start, $stsem->ende))
|
||||
{
|
||||
$fixangestellt = true;
|
||||
$lem->stundensatz = '';
|
||||
|
||||
break;
|
||||
$bisverwendung->getLastAktVerwendung($mitarbeiter->uid);
|
||||
$bisverwendung->result[] = $bisverwendung;
|
||||
}
|
||||
|
||||
foreach($bisverwendung->result as $row_verwendung)
|
||||
{
|
||||
// Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
|
||||
// geliefert da dies im Vertrag inkludiert ist.
|
||||
|
||||
if ((in_array($row_verwendung->ba1code, $arrEchterDV)) && $row_verwendung->inkludierte_lehre == -1)
|
||||
{
|
||||
$fixangestellt = true;
|
||||
$lem->stundensatz = '';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$lem->stundensatz = $mitarbeiter->stundensatz;
|
||||
$error=true;
|
||||
$return=false;
|
||||
$errormsg='Mitarbeiter '.$db->convert_html_chars($_POST['mitarbeiter_uid']).' wurde nicht gefunden';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error=true;
|
||||
$return=false;
|
||||
$errormsg='Mitarbeiter '.$db->convert_html_chars($_POST['mitarbeiter_uid']).' wurde nicht gefunden';
|
||||
}
|
||||
|
||||
$maxstunden=9999;
|
||||
|
||||
@@ -1556,49 +1567,61 @@ if(!$error)
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='getstundensatz')
|
||||
{
|
||||
if(isset($_POST['mitarbeiter_uid']))
|
||||
if(isset($_POST['mitarbeiter_uid']) && isset($_POST['studiensemester_kurzbz']))
|
||||
{
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
if($mitarbeiter->load($_POST['mitarbeiter_uid']))
|
||||
$studiensemester = new studiensemester();
|
||||
if (!$studiensemester->load($_POST['studiensemester_kurzbz']))
|
||||
{
|
||||
if (defined('FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ')
|
||||
&& !FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ)
|
||||
$return = false;
|
||||
$error = true;
|
||||
$errormsg = 'Fehler beim Laden des Studiensemesters';
|
||||
}
|
||||
|
||||
if (!$error)
|
||||
{
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
if($mitarbeiter->load($_POST['mitarbeiter_uid']))
|
||||
{
|
||||
$stsem = new studiensemester();
|
||||
$stsem->load($semester_aktuell);
|
||||
$bisverwendung = new bisverwendung();
|
||||
$data = $mitarbeiter->stundensatz;
|
||||
if(!$bisverwendung->getVerwendungRange($mitarbeiter->uid, $stsem->start, $stsem->ende))
|
||||
$stundensatz = new stundensatz();
|
||||
$stundensatz->getStundensatzDatum($mitarbeiter->uid, $studiensemester->start, $studiensemester->ende, 'lehre');
|
||||
$data = $stundensatz->stundensatz;
|
||||
|
||||
if (defined('FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ')
|
||||
&& !FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ)
|
||||
{
|
||||
$bisverwendung->getLastAktVerwendung($mitarbeiter->uid);
|
||||
$bisverwendung->result[] = $bisverwendung;
|
||||
}
|
||||
|
||||
foreach($bisverwendung->result as $row_verwendung)
|
||||
{
|
||||
|
||||
// Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
|
||||
// geliefert da dies im Vertrag inkludiert ist.
|
||||
if ((in_array($row_verwendung->ba1code, $arrEchterDV)) && $row_verwendung->inkludierte_lehre == -1)
|
||||
$stsem = new studiensemester();
|
||||
$stsem->load($semester_aktuell);
|
||||
$bisverwendung = new bisverwendung();
|
||||
if(!$bisverwendung->getVerwendungRange($mitarbeiter->uid, $stsem->start, $stsem->ende))
|
||||
{
|
||||
$data = '';
|
||||
break;
|
||||
$bisverwendung->getLastAktVerwendung($mitarbeiter->uid);
|
||||
$bisverwendung->result[] = $bisverwendung;
|
||||
}
|
||||
|
||||
foreach($bisverwendung->result as $row_verwendung)
|
||||
{
|
||||
|
||||
// Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
|
||||
// geliefert da dies im Vertrag inkludiert ist.
|
||||
if ((in_array($row_verwendung->ba1code, $arrEchterDV)) && $row_verwendung->inkludierte_lehre == -1)
|
||||
{
|
||||
$data = '';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
$data = $mitarbeiter->stundensatz;
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg = 'Fehler beim Laden des Mitarbeitenden';
|
||||
$return = false;
|
||||
{
|
||||
$errormsg = 'Fehler beim Laden des Mitarbeitenden';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg = 'MitarbeitendeUID muss uebergeben werden';
|
||||
$errormsg = 'MitarbeitendeUID und Studiensemester muessen uebergeben werden';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -199,26 +199,46 @@ $p = new phrasen($sprache);
|
||||
<label value="Raumtyp" />
|
||||
<menulist id="lehrveranstaltung-detail-menulist-raumtyp" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/raumtyp.rdf.php" flex="1"
|
||||
xmlns:RAUMTYP="http://www.technikum-wien.at/raumtyp/rdf#"
|
||||
ref="http://www.technikum-wien.at/raumtyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz rdf:http://www.technikum-wien.at/raumtyp/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
<template>
|
||||
<rule RAUMTYP:aktiv='true'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz rdf:http://www.technikum-wien.at/raumtyp/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz rdf:http://www.technikum-wien.at/raumtyp/rdf#beschreibung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
<label value="Raumtyp alternativ" />
|
||||
<menulist id="lehrveranstaltung-detail-menulist-raumtypalternativ" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/raumtyp.rdf.php" flex="1"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/raumtyp.rdf.php" flex="1"
|
||||
xmlns:RAUMTYP="http://www.technikum-wien.at/raumtyp/rdf#"
|
||||
ref="http://www.technikum-wien.at/raumtyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz rdf:http://www.technikum-wien.at/raumtyp/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
<template>
|
||||
<rule RAUMTYP:aktiv='true'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz rdf:http://www.technikum-wien.at/raumtyp/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/raumtyp/rdf#kurzbz rdf:http://www.technikum-wien.at/raumtyp/rdf#beschreibung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
|
||||
|
||||
@@ -261,15 +261,25 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<hbox>
|
||||
<label value="Note" control="lehrveranstaltung-noten-menulist-note"/>
|
||||
<menulist id="lehrveranstaltung-noten-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
oncommand="LehrveranstaltungNoteSpeichern()">
|
||||
xmlns:NOTE="http://www.technikum-wien.at/note/rdf#"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
oncommand="LehrveranstaltungNoteSpeichern()">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
<rule NOTE:aktiv='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
<label value="Punkte" control="lehrveranstaltung-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
|
||||
|
||||
@@ -1228,6 +1228,7 @@ function LeMitarbeiterLektorChange()
|
||||
|
||||
req.add('type', 'getstundensatz');
|
||||
req.add('mitarbeiter_uid', mitarbeiter_uid);
|
||||
req.add('studiensemester_kurzbz', getStudiensemester());
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
@@ -1340,6 +1341,7 @@ function LeMitarbeiterAuswahl()
|
||||
|
||||
req_stundensatz.add('type', 'getstundensatz');
|
||||
req_stundensatz.add('mitarbeiter_uid', mitarbeiter_uid);
|
||||
req_stundensatz.add('studiensemester_kurzbz', getStudiensemester());
|
||||
|
||||
var response_stundensatz = req_stundensatz.executePOST();
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@ require_once('../../include/lehreinheitmitarbeiter.class.php');
|
||||
require_once('../../include/lehreinheit.class.php');
|
||||
require_once('../../include/projektbetreuer.class.php');
|
||||
require_once('../../include/projektarbeit.class.php');
|
||||
require_once('../../include/bisverwendung.class.php');
|
||||
require_once('../../include/studiensemester.class.php');
|
||||
require_once('../../include/phrasen.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
@@ -40,6 +40,8 @@ require_once('../../include/vertrag.class.php');
|
||||
require_once('../../include/lehreinheitmitarbeiter.class.php');
|
||||
require_once('../../include/wawi_konto.class.php');
|
||||
require_once('../../include/addon.class.php');
|
||||
require_once('../../include/stundensatz.class.php');
|
||||
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
@@ -93,7 +95,6 @@ if(!$error)
|
||||
$mitarbeiter->geburtsnation = $_POST['geburtsnation'];
|
||||
$mitarbeiter->sprache = $_POST['sprache'];
|
||||
$mitarbeiter->kurzbz = $_POST['kurzbezeichnung'];
|
||||
$mitarbeiter->stundensatz = $_POST['stundensatz'];
|
||||
$mitarbeiter->telefonklappe = $_POST['telefonklappe'];
|
||||
$mitarbeiter->lektor = ($_POST['lektor']=='true'?true:false);
|
||||
$mitarbeiter->fixangestellt = ($_POST['fixangestellt']=='true'?true:false);
|
||||
@@ -279,7 +280,7 @@ if(!$error)
|
||||
|
||||
if($_POST['neu']!='true')
|
||||
{
|
||||
if(!$entwt->load($_POST['mitarbeiter_uid'],$_POST['studiengang_kz_old']))
|
||||
if(!$entwt->load($_POST['entwicklungsteam_id']))
|
||||
{
|
||||
$error = true;
|
||||
$return = false;
|
||||
@@ -290,12 +291,6 @@ if(!$error)
|
||||
else
|
||||
{
|
||||
|
||||
if($entwt->exists($_POST['mitarbeiter_uid'],$_POST['studiengang_kz']))
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Es existiert bereits ein Eintrag fuer diesen Studiengang';
|
||||
$return = false;
|
||||
}
|
||||
$entwt->new = true;
|
||||
$entwt->insertamum = date('Y-m-d H:i:s');
|
||||
$entwt->insertvon = $user;
|
||||
@@ -303,6 +298,7 @@ if(!$error)
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$entwt->entwicklungsteam_id= $_POST['entwicklungsteam_id'];
|
||||
$entwt->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
|
||||
$entwt->studiengang_kz = $_POST['studiengang_kz'];
|
||||
$entwt->studiengang_kz_old = $_POST['studiengang_kz_old'];
|
||||
@@ -327,15 +323,17 @@ if(!$error)
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='entwicklungsteamdelete')
|
||||
{
|
||||
//Loescht einen Entwicklungsteameintrag
|
||||
$entwicklungsteam_id = $_POST['entwicklungsteam_id'];
|
||||
|
||||
$entwt = new entwicklungsteam();
|
||||
if($entwt->delete($_POST['mitarbeiter_uid'],$_POST['studiengang_kz']))
|
||||
if($entwt->delete($entwicklungsteam_id))
|
||||
{
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $entwt->errormsg;
|
||||
$errormsg = $entwt->errormsg;
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='buchungsave')
|
||||
@@ -802,12 +800,68 @@ if(!$error)
|
||||
$errormsg = $konto->errormsg;
|
||||
}
|
||||
else
|
||||
|
||||
{
|
||||
$error = false;
|
||||
$return = true;
|
||||
$errormsg = "";
|
||||
}
|
||||
}
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'updateStundensatz')
|
||||
{
|
||||
$mitarbeiter_uid = $_POST['mitarbeiter_uid'];
|
||||
$stundenbetrag = $_POST['stundensatz'];
|
||||
$datum_von = $_POST['datum_von'];
|
||||
$datum_bis = $_POST['datum_bis'];
|
||||
$unternehmen = $_POST['unternehmen'];
|
||||
$stundensatztyp = $_POST['typ'];
|
||||
if (isset($_POST['stundensatz_id']))
|
||||
{
|
||||
$stundensatz = new stundensatz();
|
||||
$stundensatz->load($_POST['stundensatz_id']);
|
||||
$stundensatz->new = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$stundensatz = new stundensatz();
|
||||
$stundensatz->new = true;
|
||||
}
|
||||
|
||||
$stundensatz->uid = $mitarbeiter_uid;
|
||||
$stundensatz->stundensatztyp = $stundensatztyp;
|
||||
$stundensatz->stundensatz = $stundenbetrag;
|
||||
$stundensatz->oe_kurzbz = $unternehmen;
|
||||
$stundensatz->gueltig_von = $datum_von;
|
||||
$stundensatz->gueltig_bis = $datum_bis;
|
||||
$stundensatz->insertvon = $user;
|
||||
$stundensatz->updatevon = $user;
|
||||
$stundensatz->insertamum = date('Y-m-d H:i:s');
|
||||
$stundensatz->updateamum = date('Y-m-d H:i:s');
|
||||
|
||||
if ($stundensatz->save())
|
||||
{
|
||||
$data = $stundensatz->stundensatz_id;
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg = $stundensatz->errormsg;
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'deleteStundensatz')
|
||||
{
|
||||
$stundensatz = new stundensatz();
|
||||
if ($stundensatz->delete($_POST['stundensatz_id']))
|
||||
{
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $stundensatz->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
|
||||
@@ -227,8 +227,6 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<checkbox label="Kleriker" id="mitarbeiter-detail-checkbox-kleriker" checked="false" disabled="true" hidden="true" onchange="MitarbeiterDetailValueChange()"/>
|
||||
</row>
|
||||
<row>
|
||||
<label align="end" control="mitarbeiter-detail-textbox-stundensatz" value="Stundensatz"/>
|
||||
<textbox id="mitarbeiter-detail-textbox-stundensatz" size="10" maxlength="10" disabled="true" oninput="MitarbeiterDetailValueChange()"/>
|
||||
<label align="end" control="mitarbeiter-detail-textbox-telefonklappe" value="Telefonklappe"/>
|
||||
<hbox>
|
||||
<textbox id="mitarbeiter-detail-textbox-telefonklappe" size="10" maxlength="10" disabled="true" oninput="MitarbeiterDetailValueChange()"/>
|
||||
|
||||
@@ -199,7 +199,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/bisfunktion/rdf#sws" onclick="MitarbeiterTreeFunktionSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="mitarbeiter-funktion-treecol-bisverwendung_id" label="VerwendungID" flex="1" persist="hidden, width" hidden="true"
|
||||
<treecol id="mitarbeiter-funktion-treecol-bisverwendung_id" label="VerwendungID" flex="1" persist="hidden, width" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/bisfunktion/rdf#bisverwendung_id" onclick="MitarbeiterTreeFunktionSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
@@ -286,15 +286,19 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#studiengang" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id" label="entwicklungsteam_id" flex="1" persist="hidden, width" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#entwicklungsteam_id" onclick="MitarbeiterTreeEntwicklungteamSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="mitarbeiter-entwicklungsteam-treecol-besqual" label="Besondere Qualifikation" flex="1" persist="hidden, width" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#besqual" onclick="MitarbeiterTreeEntwicklungteamSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="mitarbeiter-entwicklungsteam-treecol-beginn" label="Beginn" flex="1" persist="hidden, width" hidden="true"
|
||||
<treecol id="mitarbeiter-entwicklungsteam-treecol-beginn" label="Beginn" flex="1" persist="hidden, width" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#beginn" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="mitarbeiter-entwicklungsteam-treecol-ende" label="Ende" flex="1" persist="hidden, width" hidden="true"
|
||||
<treecol id="mitarbeiter-entwicklungsteam-treecol-ende" label="Ende" flex="1" persist="hidden, width" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#ende" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
@@ -318,6 +322,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#studiengang" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#entwicklungsteam_id" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#besqual" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#beginn" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#ende" />
|
||||
@@ -345,6 +350,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
|
||||
<row>
|
||||
<label value="Studiengang" control="mitarbeiter-entwicklungsteam-detail-menulist-studiengang"/>
|
||||
<menulist id="mitarbeiter-entwicklungsteam-detail-menulist-studiengang" disabled="true"
|
||||
@@ -359,6 +365,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<label value="Besondere Qualifikation" control="mitarbeiter-entwicklungsteam-detail-menulist-besqual"/>
|
||||
<menulist id="mitarbeiter-entwicklungsteam-detail-menulist-besqual" disabled="true"
|
||||
@@ -373,14 +380,17 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<label value="Beginn" control="mitarbeiter-entwicklungsteam-detail-datum-beginn"/>
|
||||
<box id="mitarbeiter-entwicklungsteam-detail-datum-beginn" class="Datum" disabled="true"/>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<label value="Ende" control="mitarbeiter-entwicklungsteam-detail-datum-ende"/>
|
||||
<box id="mitarbeiter-entwicklungsteam-detail-datum-ende" class="Datum" disabled="true"/>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<spacer />
|
||||
<button id="mitarbeiter-entwicklungsteam-detail-button-speichern" label="Speichern" disabled="true" oncommand="MitarbeiterEntwicklungsteamSpeichern()" />
|
||||
|
||||
@@ -39,6 +39,7 @@ var MitarbeiterFunktionTreeDatasource=null; // Datasource des Verwendungstrees
|
||||
var MitarbeiterFunktionSelectVerwendungID=null; // ID der Verwendung der Funktion die nach dem rebuild markiert werden soll
|
||||
var MitarbeiterFunktionSelectStudiengangID=null; // ID des Studiengangs der Funktion die nach dem rebuild markiert werden soll
|
||||
var MitarbeiterEntwicklungsteamTreeDatasource=null; // Datasource des Entwicklungsteamtrees
|
||||
var MitarbeiterEntwicklungsteamSelectEntwicklungsteamID=null; //ID Entwicklungsteameintrag
|
||||
var MitarbeiterEntwicklungsteamSelectMitarbeiterUID=null; // UID des Mitarbeiters des Entwicklugnsteams das nach dem rebuild markiert werden soll
|
||||
var MitarbeiterEntwicklungsteamSelectStudiengangID=null; // ID des Stg des Entwicklungsteams das nach dem rebuild markiert werden soll
|
||||
var MitarbeiterEntwicklungsteamDoubleRefresh=false; // Wenn auf einen Tree der eine leere Datasource enthaelt eine neue Datasource angehaengt wird, dann muss doppelt refresht werden
|
||||
@@ -436,7 +437,6 @@ function MitarbeiterDetailDisableFields(val)
|
||||
//document.getElementById('mitarbeiter-detail-textbox-personalnummer').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-textbox-kurzbezeichnung').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-checkbox-lektor').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-textbox-stundensatz').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-textbox-telefonklappe').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-checkbox-fixangestellt').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-checkbox-bismelden').disabled=val;
|
||||
@@ -557,7 +557,6 @@ function MitarbeiterAuswahl()
|
||||
|
||||
personalnummer=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#personalnummer" ));
|
||||
kurzbezeichnung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#kurzbz" ));
|
||||
stundensatz=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#stundensatz" ));
|
||||
telefonklappe=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#telefonklappe" ));
|
||||
lektor=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#lektor" ));
|
||||
fixangestellt=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#fixangestellt" ));
|
||||
@@ -605,7 +604,6 @@ function MitarbeiterAuswahl()
|
||||
//Mitarbeiterdaten
|
||||
document.getElementById('mitarbeiter-detail-textbox-personalnummer').value=personalnummer;
|
||||
document.getElementById('mitarbeiter-detail-textbox-kurzbezeichnung').value=kurzbezeichnung;
|
||||
document.getElementById('mitarbeiter-detail-textbox-stundensatz').value=stundensatz;
|
||||
document.getElementById('mitarbeiter-detail-textbox-telefonklappe').value=telefonklappe;
|
||||
if(lektor=='Ja')
|
||||
document.getElementById('mitarbeiter-detail-checkbox-lektor').checked=true;
|
||||
@@ -652,6 +650,8 @@ function MitarbeiterAuswahl()
|
||||
document.getElementById('mitarbeiter-udf').setAttribute('src', 'udf.xul.php?person_id='+person_id);
|
||||
}
|
||||
|
||||
document.getElementById('mitarbeiter-stundensatz').setAttribute('src','mitarbeiter/stundensatzoverlay.xul.php?mitarbeiter_uid='+uid);
|
||||
|
||||
// **** VERWENDUNG ****
|
||||
verwendungtree = document.getElementById('mitarbeiter-tree-verwendung');
|
||||
url='<?php echo APP_ROOT;?>rdf/bisverwendung.rdf.php?uid='+uid+"&"+gettimestamp();
|
||||
@@ -686,6 +686,7 @@ function MitarbeiterAuswahl()
|
||||
|
||||
// **** ENTWICKLUNGSTEAM ****
|
||||
entwicklungsteamtree = document.getElementById('mitarbeiter-tree-entwicklungsteam');
|
||||
|
||||
url='<?php echo APP_ROOT;?>rdf/entwicklungsteam.rdf.php?mitarbeiter_uid='+uid+"&"+gettimestamp();
|
||||
|
||||
try
|
||||
@@ -843,7 +844,6 @@ function MitarbeiterSave()
|
||||
//Mitarbeiterdaten
|
||||
personalnummer = document.getElementById('mitarbeiter-detail-textbox-personalnummer').value;
|
||||
kurzbezeichnung = document.getElementById('mitarbeiter-detail-textbox-kurzbezeichnung').value;
|
||||
stundensatz = document.getElementById('mitarbeiter-detail-textbox-stundensatz').value;
|
||||
telefonklappe = document.getElementById('mitarbeiter-detail-textbox-telefonklappe').value;
|
||||
lektor = document.getElementById('mitarbeiter-detail-checkbox-lektor').checked;
|
||||
fixangestellt = document.getElementById('mitarbeiter-detail-checkbox-fixangestellt').checked;
|
||||
@@ -895,7 +895,6 @@ function MitarbeiterSave()
|
||||
req.add('geburtsnation', geburtsnation);
|
||||
req.add('sprache', sprache);
|
||||
req.add('kurzbezeichnung', kurzbezeichnung);
|
||||
req.add('stundensatz', stundensatz);
|
||||
req.add('telefonklappe', telefonklappe);
|
||||
req.add('lektor', lektor);
|
||||
req.add('fixangestellt', fixangestellt);
|
||||
@@ -1606,24 +1605,27 @@ function MitarbeiterEntwicklungsteamTreeSelect()
|
||||
var tree=document.getElementById('mitarbeiter-tree-entwicklungsteam');
|
||||
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
|
||||
//In der globalen Variable ist der zu selektierende Verwendung gespeichert
|
||||
if(MitarbeiterEntwicklungsteamSelectStudiengangID!=null)
|
||||
//In der globalen Variable ist der zu selektierende Entwicklungsteameintrag gespeichert
|
||||
if (MitarbeiterEntwicklungsteamSelectStudiengangID!=null)
|
||||
{
|
||||
for(var i=0;i<items;i++)
|
||||
{
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id"] : "mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id";
|
||||
entwicklungsteam_id=tree.view.getCellText(i,col);
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid"] : "mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid";
|
||||
mitarbeiter_uid=tree.view.getCellText(i,col);
|
||||
mitarbeiter_uid=tree.view.getCellText(i,col);
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-studiengang_kz"] : "mitarbeiter-entwicklungsteam-treecol-studiengang_kz";
|
||||
studiengang_kz=tree.view.getCellText(i,col);
|
||||
|
||||
if(mitarbeiter_uid == MitarbeiterEntwicklungsteamSelectMitarbeiterUID && studiengang_kz==MitarbeiterEntwicklungsteamSelectStudiengangID)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
|
||||
tree.treeBoxObject.ensureRowIsVisible(i);
|
||||
return true;
|
||||
}
|
||||
|
||||
if(entwicklungsteam_id == MitarbeiterEntwicklungsteamSelectEntwicklungsteamID && mitarbeiter_uid == MitarbeiterEntwicklungsteamSelectMitarbeiterUID && studiengang_kz==MitarbeiterEntwicklungsteamSelectStudiengangID)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
|
||||
tree.treeBoxObject.ensureRowIsVisible(i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1676,20 +1678,21 @@ function MitarbeiterEntwicklungsteamSelect()
|
||||
if (tree.currentIndex==-1)
|
||||
return false;
|
||||
|
||||
var col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id"] : "mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id";
|
||||
entwicklungsteam_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-studiengang_kz"] : "mitarbeiter-entwicklungsteam-treecol-studiengang_kz";
|
||||
studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid"] : "mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid";
|
||||
mitarbeiter_uid=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>rdf/entwicklungsteam.rdf.php?studiengang_kz='+studiengang_kz+'&mitarbeiter_uid='+mitarbeiter_uid+'&'+gettimestamp();
|
||||
var url = '<?php echo APP_ROOT ?>rdf/entwicklungsteam.rdf.php?studiengang_kz='+studiengang_kz+'&mitarbeiter_uid='+mitarbeiter_uid+'&entwicklungsteam_id='+entwicklungsteam_id+'&'+gettimestamp();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
|
||||
getService(Components.interfaces.nsIRDFService);
|
||||
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/entwicklungsteam/" + mitarbeiter_uid+'/'+studiengang_kz);
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/entwicklungsteam/" + mitarbeiter_uid+'/'+studiengang_kz+'/'+entwicklungsteam_id);
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/entwicklungsteam/rdf";
|
||||
|
||||
@@ -1746,6 +1749,7 @@ function MitarbeiterEntwicklungsteamSpeichern()
|
||||
req.add('type', 'entwicklungsteamsave');
|
||||
|
||||
req.add('neu', neu);
|
||||
req.add('entwicklungsteam_id', entwicklungsteam_id);
|
||||
req.add('studiengang_kz', studiengang_kz);
|
||||
req.add('studiengang_kz_old', studiengang_kz_old);
|
||||
req.add('besqualcode', besqualcode);
|
||||
@@ -1768,6 +1772,7 @@ function MitarbeiterEntwicklungsteamSpeichern()
|
||||
else
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
MitarbeiterEntwicklungsteamSelectEntwicklungsteamID = entwicklungsteam_id;
|
||||
MitarbeiterEntwicklungsteamSelectMitarbeiterUID = mitarbeiter_uid;
|
||||
MitarbeiterEntwicklungsteamSelectStudiengangID = studiengang_kz;
|
||||
MitarbeiterEntwicklungsteamDoubleRefresh=true;
|
||||
@@ -1791,11 +1796,8 @@ function MitarbeiterEntwicklungsteamLoeschen()
|
||||
return false;
|
||||
}
|
||||
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-studiengang_kz"] : "mitarbeiter-entwicklungsteam-treecol-studiengang_kz";
|
||||
studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid"] : "mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid";
|
||||
mitarbeiter_uid=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id"] : "mitarbeiter-entwicklungsteam-treecol-entwicklungsteam_id";
|
||||
entwicklungsteam_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
if(confirm("Wollen Sie diesen Eintrag wirklich loeschen?"))
|
||||
{
|
||||
@@ -1803,9 +1805,7 @@ function MitarbeiterEntwicklungsteamLoeschen()
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'entwicklungsteamdelete');
|
||||
|
||||
req.add('studiengang_kz', studiengang_kz);
|
||||
req.add('mitarbeiter_uid', mitarbeiter_uid);
|
||||
req.add('entwicklungsteam_id', entwicklungsteam_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
|
||||
@@ -268,6 +268,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
|
||||
?>
|
||||
<tab id="mitarbeiter-tab-termine" label="Termine" onclick="MitarbeiterTermineIFrameLoad()" />
|
||||
<tab id="mitarbeiter-tab-notizen" label="Notizen"/>
|
||||
<tab id="mitarbeiter-tab-stundensatz" label="Stundensätze" />
|
||||
<?php
|
||||
if (!defined('FAS_UDF') || FAS_UDF == true)
|
||||
echo '<tab id="mitarbeiter-tab-udf" label="Zusatzfelder" onclick="MitarbeiterUDFIFrameLoad()"/>';
|
||||
@@ -289,6 +290,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
|
||||
<vbox id="mitarbeiter-box-notiz">
|
||||
<box class="Notiz" flex="1" id="mitarbeiter-box-notizen"/>
|
||||
</vbox>
|
||||
<iframe id="mitarbeiter-stundensatz" src="" style="margin-top:10px;" />
|
||||
<?php
|
||||
if (!defined('FAS_UDF') || FAS_UDF == true)
|
||||
echo '<iframe id="mitarbeiter-udf" src="" style="margin-top:10px;" />';
|
||||
|
||||
@@ -0,0 +1,310 @@
|
||||
<?php
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
?>
|
||||
|
||||
var StundensaetzeTreeDatasource = ''; // Datasource des Stundensaetze Trees
|
||||
var StundensatzSelectID = null;
|
||||
var MitarbeiterUID = '';
|
||||
var StundensatzChanged = false;
|
||||
var DoubleRefresh = false
|
||||
|
||||
var StundensaetzeSinkObserver =
|
||||
{
|
||||
onBeginLoad : function(pSink) {},
|
||||
onInterrupt : function(pSink) {},
|
||||
onResume : function(pSink) {},
|
||||
onError : function(pSink, pStatus, pError) {},
|
||||
onEndLoad : function(pSink)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
document.getElementById('stundensaetze-tree').builder.rebuild();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
var StundensaetzeTreeListener =
|
||||
{
|
||||
willRebuild : function(builder) { },
|
||||
didRebuild : function(builder)
|
||||
{
|
||||
if(DoubleRefresh === true)
|
||||
{
|
||||
window.setTimeout('StundensatzTreeDatasourceRefresh()',10);
|
||||
DoubleRefresh = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
//timeout nur bei Mozilla notwendig da sonst die rows
|
||||
//noch keine values haben. Ab Seamonkey funktionierts auch
|
||||
//ohne dem setTimeout
|
||||
window.setTimeout(StundensaetzeTreeSelectID, 10);
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
function StundensatzTreeDatasourceRefresh(StundensatzSelect)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
StundensaetzeTreeDatasource.Refresh(false);
|
||||
}
|
||||
|
||||
function StundensatzDisableFields(val)
|
||||
{
|
||||
|
||||
document.getElementById('mitarbeiter-stundensatz-button-neu').disabled = val;
|
||||
document.getElementById('mitarbeiter-stundensatz-button-loeschen').disabled = val;
|
||||
}
|
||||
|
||||
function StundensatzNeu()
|
||||
{
|
||||
StundensatzDetailResetFields();
|
||||
StundensatzDetailsDisableFields(false);
|
||||
StundensatzChanged = false;
|
||||
}
|
||||
|
||||
function StundensatzDetailsDisableFields(val)
|
||||
{
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-stundensatz').disabled = val;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-unternehmen').disabled = val;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-typ').disabled = val;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-von').disabled = val;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-bis').disabled = val;
|
||||
document.getElementById('mitarbeiter-stundensatz-button-speichern').disabled = val;
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Setzt Defaultwerte fuer die Felder
|
||||
// ****
|
||||
function StundensatzDetailResetFields()
|
||||
{
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-stundensatz').value = '';
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-von').value = '';
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-bis').value = '';
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-unternehmen').value = '';
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-typ').value = '';
|
||||
|
||||
var Datum = new Date();
|
||||
var Jahr = Datum.getFullYear();
|
||||
var Tag = Datum.getDate();
|
||||
var Monat = Datum.getMonth()+1;
|
||||
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-von').value = Tag+'.'+Monat+'.'+Jahr;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Laedt die Studensätze
|
||||
// ****
|
||||
function loadStundensaetze(mitarbeiter_uid)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
MitarbeiterUID = mitarbeiter_uid;
|
||||
var url = "<?php echo APP_ROOT; ?>rdf/stundensatz.rdf.php?mitarbeiter_uid="+mitarbeiter_uid+'&'+gettimestamp();
|
||||
var tree = document.getElementById('stundensaetze-tree');
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = tree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
tree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
tree.builder.rebuild();
|
||||
|
||||
try
|
||||
{
|
||||
StundensaetzeTreeDatasource.removeXMLSinkObserver(StundensaetzeSinkObserver);
|
||||
tree.builder.removeListener(StundensaetzeTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
StundensaetzeTreeDatasource = rdfService.GetDataSource(url);
|
||||
|
||||
StundensaetzeTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
StundensaetzeTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
tree.database.AddDataSource(StundensaetzeTreeDatasource);
|
||||
StundensaetzeTreeDatasource.addXMLSinkObserver(StundensaetzeSinkObserver);
|
||||
tree.builder.addListener(StundensaetzeTreeListener);
|
||||
|
||||
StundensatzDisableFields(false);
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Selectiert einen Stundensatz nachdem der Tree
|
||||
// * rebuildet wurde.
|
||||
// ****
|
||||
function StundensaetzeTreeSelectID()
|
||||
{
|
||||
var tree = document.getElementById('stundensaetze-tree');
|
||||
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
|
||||
//In der globalen Variable ist der zu selektierender Stundensatz gespeichert
|
||||
if(StundensatzSelectID != null)
|
||||
{
|
||||
for(var i = 0; i < items; i++)
|
||||
{
|
||||
//ID der row holen
|
||||
col = tree.columns ? tree.columns["stundensatz-treecol-stundensatz_id"] : "stundensatz-treecol-stundensatz_id";
|
||||
id = tree.view.getCellText(i,col);
|
||||
|
||||
if(id === StundensatzSelectID)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
|
||||
tree.treeBoxObject.ensureRowIsVisible(i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
StundensatzSelectID = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function StundensatzDetailSpeichern()
|
||||
{
|
||||
var stundensatz = document.getElementById('mitarbeiter-stundensatz-textbox-stundensatz').value;
|
||||
var datum_von = document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-von').value;
|
||||
var datum_bis = document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-bis').value;
|
||||
var unternehmen = document.getElementById('mitarbeiter-stundensatz-textbox-unternehmen').value;
|
||||
var typ = document.getElementById('mitarbeiter-stundensatz-textbox-typ').value;
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/mitarbeiter/mitarbeiterDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
if (StundensatzChanged !== false)
|
||||
req.add('stundensatz_id', StundensatzChanged);
|
||||
|
||||
req.add('type', 'updateStundensatz');
|
||||
req.add('mitarbeiter_uid', MitarbeiterUID);
|
||||
req.add('stundensatz', stundensatz);
|
||||
req.add('datum_von', ConvertDateToISO(datum_von));
|
||||
req.add('datum_bis', ConvertDateToISO(datum_bis));
|
||||
req.add('unternehmen', unternehmen);
|
||||
req.add('typ', typ);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if (val.dbdml_errormsg === '')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(val.dbdml_errormsg !== '' && val.dbdml_errormsg !== 'unknown')
|
||||
alert(val.dbdml_errormsg);
|
||||
|
||||
if(document.getElementById('stundensaetze-tree').view.rowCount === 0)
|
||||
{
|
||||
DoubleRefresh = true;
|
||||
}
|
||||
StundensatzSelectID = val.dbdml_data;
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
StundensaetzeTreeDatasource.Refresh(false);
|
||||
StundensatzChanged = false;
|
||||
StundensatzDetailResetFields();
|
||||
StundensatzDetailsDisableFields(true);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function StundensatzBearbeiten()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
var tree = document.getElementById('stundensaetze-tree');
|
||||
|
||||
if (tree.currentIndex === -1)
|
||||
return;
|
||||
|
||||
//Ausgewaehlten Stundensatz holen
|
||||
var col = tree.columns ? tree.columns["stundensatz-treecol-stundensatz_id"] : "stundensatz-treecol-stundensatz_id";
|
||||
var stundensatz_id = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Daten holen
|
||||
var url = "<?php echo APP_ROOT; ?>rdf/stundensatz.rdf.php?stundensatz_id="+stundensatz_id+'&'+gettimestamp();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/stundensatz/"+stundensatz_id);
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/stundensatz/rdf";
|
||||
|
||||
//Daten holen
|
||||
var stundensatz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#stundensatz"));
|
||||
var datum_von = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#gueltig_von" ));
|
||||
var datum_bis = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#gueltig_bis" ));
|
||||
var unternehmen = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#oe_kurzbz" ));
|
||||
var typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#stundensatztyp" ));
|
||||
|
||||
StundensatzChanged = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#stundensatz_id" ));
|
||||
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-stundensatz').value = stundensatz;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-von').value = datum_von;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-gueltig-bis').value = datum_bis;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-unternehmen').value = unternehmen;
|
||||
document.getElementById('mitarbeiter-stundensatz-textbox-typ').value = typ;
|
||||
|
||||
StundensatzDetailsDisableFields(false);
|
||||
}
|
||||
|
||||
function StundensatzDelete()
|
||||
{
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('stundensaetze-tree');
|
||||
|
||||
if (tree.currentIndex === -1)
|
||||
{
|
||||
alert('Bitte zuerst einen Stundensatz auswaehlen');
|
||||
return;
|
||||
}
|
||||
|
||||
StundensatzDetailsDisableFields(false);
|
||||
|
||||
//Ausgewaehlten Stundensatz holen
|
||||
var col = tree.columns ? tree.columns["stundensatz-treecol-stundensatz_id"] : "stundensatz-treecol-stundensatz_id";
|
||||
var stundensatz_id = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
if (confirm('Diesen Stundensatz wirklich loeschen?'))
|
||||
{
|
||||
var url = '<?php echo APP_ROOT ?>content/mitarbeiter/mitarbeiterDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'deleteStundensatz');
|
||||
req.add('stundensatz_id', stundensatz_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if (val.dbdml_errormsg === '')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
StundensaetzeTreeDatasource.Refresh(false);
|
||||
StundensatzDetailResetFields();
|
||||
StundensatzDetailsDisableFields(true);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,170 @@
|
||||
<?php
|
||||
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
|
||||
include('../../config/vilesci.config.inc.php');
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
|
||||
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type="text/css"?>';
|
||||
|
||||
if(isset($_GET['mitarbeiter_uid']))
|
||||
$mitarbeiter_uid = $_GET['mitarbeiter_uid'];
|
||||
else
|
||||
die('Parameter mitarbeiter_uid muss uebergeben werden');
|
||||
|
||||
?>
|
||||
|
||||
<window id="stundensaetze-window" title="Stundensaetze"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="loadStundensaetze('<?php echo $mitarbeiter_uid; ?>');"
|
||||
>
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/mitarbeiter/stundensatzoverlay.js.php" />
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
|
||||
|
||||
<hbox flex="1">
|
||||
<!-- STUNDENSÄTZE -->
|
||||
<vbox flex="4">
|
||||
<tree id="stundensaetze-tree" seltype="single" hidecolumnpicker="false" flex="2"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/stundensatz/liste"
|
||||
onselect="StundensatzBearbeiten()"
|
||||
flags="dont-build-content"
|
||||
enableColumnDrag="true"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
|
||||
persist="hidden, height"
|
||||
>
|
||||
<treecols>
|
||||
<treecol id="stundensatz-treecol-stundensatz_id" label="StundensatzID" flex="1" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/stundensatz/rdf#stundensatz_id"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="stundensatz-treecol-stundensatz" label="Stundensatz" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/stundensatz/rdf#stundensatz"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="stundensatz-treecol-oe_kurzbz_bezeichnung" label="Unternehmen" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/stundensatz/rdf#oe_kurzbz_bezeichnung"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="stundensatz-treecol-stundensatz-typ" label="Stundensatztyp" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/stundensatz/rdf#stundensatztyp_bezeichnung"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="stundensatz-treecol-gueltig_von" label="Gültig von" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/stundensatz/rdf#gueltig_von"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="stundensatz-treecol-gueltig_bis" label="Gültig bis" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/stundensatz/rdf#gueltig_bis"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<rule>
|
||||
<treechildren>
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/stundensatz/rdf#stundensatz_id" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/stundensatz/rdf#stundensatz" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/stundensatz/rdf#oe_kurzbz_bezeichnung" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/stundensatz/rdf#stundensatztyp_bezeichnung" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/stundensatz/rdf#gueltig_von" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/stundensatz/rdf#gueltig_bis" />
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</rule>
|
||||
</template>
|
||||
</tree>
|
||||
</vbox>
|
||||
<vbox flex="1">
|
||||
<hbox>
|
||||
<button id="mitarbeiter-stundensatz-button-neu" label="Neu" oncommand="StundensatzNeu();" disabled="true"/>
|
||||
<button id="mitarbeiter-stundensatz-button-loeschen" label="Loeschen" oncommand="StundensatzDelete();" disabled="true"/>
|
||||
</hbox>
|
||||
<vbox hidden="true">
|
||||
<label value="Stundensatz" control="mitarbeiter-stundensatz-textbox-stundensatz_id"/>
|
||||
<textbox id="mitarbeiter-stundensatz-textbox-stundensatz_id" disabled="true"/>
|
||||
</vbox>
|
||||
<groupbox id="mitarbeiter-stundensatz-groupbox">
|
||||
<caption label="Details"/>
|
||||
<grid id="mitarbeiter-stundensatz-grid-detail" style="overflow:auto;margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Stundensatz" control="mitarbeiter-stundensatz-textbox-stundensatz"/>
|
||||
<hbox>
|
||||
<textbox id="mitarbeiter-stundensatz-textbox-stundensatz" disabled="true" maxlength="9" size="9"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Stundensatztyp" control="mitarbeiter-stundensatz-textbox-typ"/>
|
||||
<menulist id="mitarbeiter-stundensatz-textbox-typ"
|
||||
flex="1"
|
||||
disabled="true"
|
||||
xmlns:STUNDENSATZTYP="http://www.technikum-wien.at/stundensatztyp/rdf#"
|
||||
datasources="<?php echo APP_ROOT;?>rdf/stundensatztyp.rdf.php"
|
||||
ref="http://www.technikum-wien.at/stundensatztyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/stundensatztyp/rdf#typ"
|
||||
label="rdf:http://www.technikum-wien.at/stundensatztyp/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Unternehmen" control="mitarbeiter-stundensatz-textbox-unternehmen"/>
|
||||
<menulist id="mitarbeiter-stundensatz-textbox-unternehmen"
|
||||
flex="1"
|
||||
disabled="true"
|
||||
xmlns:ORGANISATIONSEINHEIT="http://www.technikum-wien.at/organisationseinheit/rdf#"
|
||||
datasources="<?php echo APP_ROOT;?>rdf/organisationseinheit.rdf.php?onlyRoots=true"
|
||||
ref="http://www.technikum-wien.at/organisationseinheit/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#oe_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Gültig von" control="mitarbeiter-stundensatz-textbox-gueltig-von"/>
|
||||
<hbox>
|
||||
<box class="Datum" id="mitarbeiter-stundensatz-textbox-gueltig-von" disabled="true"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Gültig bis" control="mitarbeiter-stundensatz-textbox-gueltig-bis"/>
|
||||
<hbox>
|
||||
<box class="Datum" id="mitarbeiter-stundensatz-textbox-gueltig-bis" disabled="true"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="mitarbeiter-stundensatz-button-speichern" oncommand="StundensatzDetailSpeichern()" label="Speichern" disabled="true"/>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</hbox>
|
||||
</window>
|
||||
@@ -253,7 +253,7 @@ else
|
||||
array('uid', 'stg_kz', 'person_id', 'id', 'prestudent_id', 'buchungsnummern', 'ss', 'abschlusspruefung_id',
|
||||
'typ', 'all', 'preoutgoing_id', 'lvid', 'projekt_kurzbz', 'von', 'bis', 'stundevon', 'stundebis',
|
||||
'sem', 'lehreinheit', 'mitarbeiter_uid', 'studienordnung_id', 'fixangestellt', 'standort',
|
||||
'abrechnungsmonat', 'form', 'projektarbeit_id', 'betreuerart_kurzbz')
|
||||
'abrechnungsmonat', 'form', 'projektarbeit_id', 'betreuerart_kurzbz', 'studiensemester_kurzbz')
|
||||
)
|
||||
)
|
||||
{
|
||||
|
||||
@@ -30,6 +30,8 @@ require_once('../../include/Excel/excel.php');
|
||||
require_once('../../include/studiengang.class.php');
|
||||
require_once('../../include/studiensemester.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/benutzerfunktion.class.php');
|
||||
require_once('../../include/organisationseinheit.class.php');
|
||||
|
||||
$stsem = new studiensemester();
|
||||
|
||||
@@ -96,12 +98,11 @@ $qry_stg = "SELECT distinct studiengang_kz, typ, kurzbz
|
||||
SELECT
|
||||
studiengang_kz
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer, lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung
|
||||
lehre.tbl_projektbetreuer JOIN lehre.tbl_projektarbeit ON tbl_projektbetreuer.projektarbeit_id=tbl_projektarbeit.projektarbeit_id
|
||||
JOIN lehre.tbl_lehreinheit ON tbl_lehreinheit.lehreinheit_id = tbl_projektarbeit.lehreinheit_id
|
||||
JOIN lehre.tbl_lehrveranstaltung ON tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_lehreinheit.lehrveranstaltung_id
|
||||
WHERE
|
||||
lehre.tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND
|
||||
tbl_projektbetreuer.projektarbeit_id=tbl_projektarbeit.projektarbeit_id AND
|
||||
tbl_projektarbeit.lehreinheit_id = tbl_lehreinheit.lehreinheit_id AND
|
||||
tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
lehre.tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)."
|
||||
) as foo
|
||||
JOIN public.tbl_studiengang USING (studiengang_kz)
|
||||
";
|
||||
@@ -124,6 +125,10 @@ $workbook->setCustomColor(10, 255, 186, 179);
|
||||
$format_colored =& $workbook->addFormat();
|
||||
$format_colored->setFgColor(10);
|
||||
|
||||
$workbook->setCustomColor(10, 238, 238, 0);
|
||||
$oe_colored =& $workbook->addFormat();
|
||||
$oe_colored->setFgColor(11);
|
||||
|
||||
$format_number_colored =& $workbook->addFormat();
|
||||
$format_number_colored->setNumFormat('0,0.00');
|
||||
//$format_number_colored->setNumFormat('0.00');
|
||||
@@ -185,6 +190,17 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtstunden", $format_bold);
|
||||
$worksheet->write(2, ++$i, "Gesamtkosten", $format_bold);
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtkosten", $format_bold);
|
||||
|
||||
$worksheet->write(2, ++$i, "Gesamtstunden bestellt", $format_bold);
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtstunden bestellt", $format_bold);
|
||||
$worksheet->write(2, ++$i, "Gesamtkosten bestellt", $format_bold);
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtkosten bestellt", $format_bold);
|
||||
|
||||
$worksheet->write(2, ++$i, "Gesamtstunden erteilt", $format_bold);
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtstunden erteilt", $format_bold);
|
||||
$worksheet->write(2, ++$i, "Gesamtkosten erteilt", $format_bold);
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtkosten erteilt", $format_bold);
|
||||
|
||||
$worksheet->write(2, ++$i, "Gesamtstunden angenommen", $format_bold);
|
||||
$gesamt->write($gesamtsheet_row, $i, "Gesamtstunden angenommen", $format_bold);
|
||||
$worksheet->write(2, ++$i, "Gesamtkosten angenommen", $format_bold);
|
||||
@@ -209,7 +225,7 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
SELECT tbl_organisationseinheit.organisationseinheittyp_kurzbz || ' ' || tbl_organisationseinheit.bezeichnung
|
||||
FROM PUBLIC.tbl_benutzerfunktion
|
||||
JOIN PUBLIC.tbl_organisationseinheit USING (oe_kurzbz)
|
||||
WHERE funktion_kurzbz = 'oezuordnung'
|
||||
WHERE funktion_kurzbz = (CASE WHEN fixangestellt = true THEN 'kstzuordnung' ELSE 'oezuordnung' END)
|
||||
AND (
|
||||
datum_von IS NULL
|
||||
OR datum_von <= now()
|
||||
@@ -229,7 +245,7 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
WHERE oe_kurzbz IN (
|
||||
SELECT oe_kurzbz
|
||||
FROM PUBLIC.tbl_benutzerfunktion
|
||||
WHERE funktion_kurzbz = 'oezuordnung'
|
||||
WHERE funktion_kurzbz = (CASE WHEN fixangestellt = true THEN 'kstzuordnung' ELSE 'oezuordnung' END)
|
||||
AND (
|
||||
datum_von IS NULL
|
||||
OR datum_von <= now()
|
||||
@@ -262,26 +278,20 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
THEN 't'
|
||||
ELSE 'f'
|
||||
END AS geaendert,
|
||||
(SELECT
|
||||
vertragsstatus_kurzbz
|
||||
FROM
|
||||
lehre.tbl_vertrag_vertragsstatus
|
||||
WHERE
|
||||
vertrag_id = tbl_lehreinheitmitarbeiter.vertrag_id
|
||||
ORDER BY datum DESC
|
||||
LIMIT 1) as vertragsstatus
|
||||
FROM lehre.tbl_lehreinheit,
|
||||
lehre.tbl_lehreinheitmitarbeiter,
|
||||
PUBLIC.tbl_mitarbeiter,
|
||||
PUBLIC.tbl_benutzer,
|
||||
PUBLIC.tbl_person,
|
||||
lehre.tbl_lehrveranstaltung
|
||||
WHERE tbl_person.person_id = tbl_benutzer.person_id
|
||||
AND tbl_benutzer.uid = tbl_mitarbeiter.mitarbeiter_uid
|
||||
AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid = tbl_mitarbeiter.mitarbeiter_uid
|
||||
AND tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_lehreinheit.lehrveranstaltung_id
|
||||
AND studiengang_kz = ".$db->db_add_param($studiengang_kz)."
|
||||
(SELECT
|
||||
ARRAY_TO_STRING(ARRAY_AGG(vertragsstatus_kurzbz), ',')
|
||||
FROM
|
||||
lehre.tbl_vertrag_vertragsstatus
|
||||
WHERE
|
||||
vertrag_id = tbl_lehreinheitmitarbeiter.vertrag_id
|
||||
) as vertragsstatus
|
||||
FROM lehre.tbl_lehreinheit
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter ON tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id
|
||||
JOIN PUBLIC.tbl_mitarbeiter ON tbl_lehreinheitmitarbeiter.mitarbeiter_uid = tbl_mitarbeiter.mitarbeiter_uid
|
||||
JOIN PUBLIC.tbl_benutzer ON tbl_benutzer.uid = tbl_mitarbeiter.mitarbeiter_uid
|
||||
JOIN PUBLIC.tbl_person ON tbl_person.person_id = tbl_benutzer.person_id
|
||||
JOIN lehre.tbl_lehrveranstaltung ON tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_lehreinheit.lehrveranstaltung_id
|
||||
WHERE studiengang_kz = ".$db->db_add_param($studiengang_kz)."
|
||||
AND studiensemester_kurzbz = ".$db->db_add_param($semester_aktuell)."
|
||||
AND tbl_lehreinheitmitarbeiter.semesterstunden <> 0
|
||||
AND tbl_lehreinheitmitarbeiter.semesterstunden IS NOT NULL
|
||||
@@ -302,6 +312,7 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$gesamtsheet_row++;
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$row->vertragsstatus = explode(',', $row->vertragsstatus);
|
||||
//Gesamtstunden und Kosten ermitteln
|
||||
if (array_key_exists($row->mitarbeiter_uid, $liste))
|
||||
{
|
||||
@@ -314,13 +325,43 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten'] + ($row->semesterstunden * $row->stundensatz);
|
||||
|
||||
if (!isset($liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt']))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_bestellt'] = 0;
|
||||
}
|
||||
|
||||
if (!isset($liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt']))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_erteilt'] = 0;
|
||||
}
|
||||
|
||||
if (!isset($liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert']))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_akzeptiert'] = 0;
|
||||
}
|
||||
|
||||
if ($row->vertragsstatus == 'akzeptiert')
|
||||
if (in_array('bestellt', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt'] + $row->semesterstunden;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_bestellt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_bestellt']
|
||||
+ ($row->semesterstunden * $row->stundensatz);
|
||||
}
|
||||
|
||||
if (in_array('erteilt', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt'] + $row->semesterstunden;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_erteilt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_erteilt']
|
||||
+ ($row->semesterstunden * $row->stundensatz);
|
||||
}
|
||||
|
||||
if (in_array('akzeptiert', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert'] + $row->semesterstunden;
|
||||
@@ -336,13 +377,43 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden'] = $row->semesterstunden;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten'] = $row->semesterstunden * $row->stundensatz;
|
||||
|
||||
if (!isset($liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt']))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_bestellt'] = 0;
|
||||
}
|
||||
|
||||
if (!isset($liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt']))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_erteilt'] = 0;
|
||||
}
|
||||
|
||||
if (!isset($liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert']))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_akzeptiert'] = 0;
|
||||
}
|
||||
|
||||
if ($row->vertragsstatus == 'akzeptiert')
|
||||
if (in_array('bestellt', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_bestellt'] + $row->semesterstunden;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_bestellt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_bestellt']
|
||||
+ ($row->semesterstunden * $row->stundensatz);
|
||||
}
|
||||
|
||||
if (in_array('erteilt', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_erteilt'] + $row->semesterstunden;
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_erteilt'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtkosten_erteilt']
|
||||
+ ($row->semesterstunden * $row->stundensatz);
|
||||
}
|
||||
|
||||
if (in_array('akzeptiert', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert'] =
|
||||
$liste[$row->mitarbeiter_uid]['gesamtstunden_akzeptiert'] + $row->semesterstunden;
|
||||
@@ -356,8 +427,20 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$liste[$row->mitarbeiter_uid]['vorname'] = $row->vorname;
|
||||
$liste[$row->mitarbeiter_uid]['nachname'] = $row->nachname;
|
||||
$liste[$row->mitarbeiter_uid]['fixangestellt'] = $row->fixangestellt;
|
||||
$liste[$row->mitarbeiter_uid]['oezuordnung'] = $row->oezuordnung;
|
||||
$liste[$row->mitarbeiter_uid]['department'] = $row->department;
|
||||
|
||||
if (is_null($row->oezuordnung))
|
||||
{
|
||||
$oeInfos = getOe($row->mitarbeiter_uid, $row->fixangestellt);
|
||||
$liste[$row->mitarbeiter_uid]['oezuordnung'] = $oeInfos['oezuordnung'];
|
||||
$liste[$row->mitarbeiter_uid]['department'] = $oeInfos['department'];
|
||||
$liste[$row->mitarbeiter_uid]['organisationgeaendert'] = $oeInfos['organisationgeaendert'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$liste[$row->mitarbeiter_uid]['oezuordnung'] = $row->oezuordnung;
|
||||
$liste[$row->mitarbeiter_uid]['department'] = $row->department;
|
||||
}
|
||||
|
||||
$liste[$row->mitarbeiter_uid]['betreuergesamtstunden'] = 0;
|
||||
$liste[$row->mitarbeiter_uid]['betreuergesamtkosten'] = 0;
|
||||
if ($row->geaendert == 't')
|
||||
@@ -375,7 +458,7 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
public.tbl_benutzerfunktion
|
||||
JOIN public.tbl_organisationseinheit USING (oe_kurzbz)
|
||||
WHERE
|
||||
funktion_kurzbz='oezuordnung'
|
||||
funktion_kurzbz = (CASE WHEN fixangestellt = true THEN 'kstzuordnung' ELSE 'oezuordnung' END)
|
||||
AND (datum_von IS NULL OR datum_von <= now())
|
||||
AND (datum_bis IS NULL OR datum_bis >= now())
|
||||
AND tbl_benutzerfunktion.uid = tbl_benutzer.uid
|
||||
@@ -390,7 +473,7 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
WHERE oe_kurzbz IN (
|
||||
SELECT oe_kurzbz
|
||||
FROM PUBLIC.tbl_benutzerfunktion
|
||||
WHERE funktion_kurzbz = 'oezuordnung'
|
||||
WHERE funktion_kurzbz = (CASE WHEN fixangestellt = true THEN 'kstzuordnung' ELSE 'oezuordnung' END)
|
||||
AND (
|
||||
datum_von IS NULL
|
||||
OR datum_von <= now()
|
||||
@@ -419,27 +502,23 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
WHERE meine_oes.organisationseinheittyp_kurzbz = 'Department'
|
||||
) AS department
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer, public.tbl_person, public.tbl_benutzer,
|
||||
public.tbl_mitarbeiter, lehre.tbl_projektarbeit, lehre.tbl_lehreinheit,
|
||||
lehre.tbl_lehrveranstaltung
|
||||
lehre.tbl_projektbetreuer JOIN public.tbl_person ON tbl_projektbetreuer.person_id=tbl_person.person_id
|
||||
JOIN public.tbl_benutzer ON tbl_benutzer.person_id=tbl_person.person_id
|
||||
JOIN public.tbl_mitarbeiter ON tbl_mitarbeiter.mitarbeiter_uid=tbl_benutzer.uid
|
||||
JOIN lehre.tbl_projektarbeit ON tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id
|
||||
JOIN lehre.tbl_lehreinheit ON tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id
|
||||
JOIN lehre.tbl_lehrveranstaltung ON tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_lehreinheit.lehrveranstaltung_id
|
||||
WHERE
|
||||
tbl_projektbetreuer.person_id=tbl_person.person_id AND
|
||||
tbl_person.person_id=tbl_benutzer.person_id AND
|
||||
tbl_mitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND
|
||||
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
|
||||
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND
|
||||
tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id AND
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
|
||||
NOT EXISTS (SELECT
|
||||
mitarbeiter_uid
|
||||
FROM
|
||||
lehre.tbl_lehreinheitmitarbeiter, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung
|
||||
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit ON tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id
|
||||
JOIN lehre.tbl_lehrveranstaltung ON tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id
|
||||
WHERE
|
||||
mitarbeiter_uid=tbl_benutzer.uid AND
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
|
||||
tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
|
||||
tbl_lehreinheitmitarbeiter.semesterstunden<>0 AND
|
||||
tbl_lehreinheitmitarbeiter.semesterstunden is not null AND
|
||||
EXISTS (
|
||||
@@ -461,8 +540,20 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$liste[$row->uid]['vorname'] = $row->vorname;
|
||||
$liste[$row->uid]['nachname'] = $row->nachname;
|
||||
$liste[$row->uid]['fixangestellt'] = $row->fixangestellt;
|
||||
$liste[$row->uid]['oezuordnung'] = $row->oezuordnung;
|
||||
$liste[$row->uid]['department'] = $row->department;
|
||||
|
||||
if (is_null($row->oezuordnung))
|
||||
{
|
||||
$oeInfos = getOe($row->uid, $row->fixangestellt);
|
||||
$liste[$row->uid]['oezuordnung'] = $oeInfos['oezuordnung'];
|
||||
$liste[$row->uid]['department'] = $oeInfos['department'];
|
||||
$liste[$row->uid]['organisationgeaendert'] = $oeInfos['organisationgeaendert'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$liste[$row->uid]['oezuordnung'] = $row->oezuordnung;
|
||||
$liste[$row->uid]['department'] = $row->department;
|
||||
}
|
||||
|
||||
$liste[$row->uid]['geaendert'] = false;
|
||||
$liste[$row->uid]['gesamtstunden'] = 0;
|
||||
$liste[$row->uid]['gesamtkosten'] = 0;
|
||||
@@ -488,32 +579,29 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
ELSE
|
||||
'f'
|
||||
END as geaendert,
|
||||
(
|
||||
SELECT
|
||||
vertragsstatus_kurzbz
|
||||
(SELECT
|
||||
ARRAY_TO_STRING(ARRAY_AGG(vertragsstatus_kurzbz), ',')
|
||||
FROM
|
||||
lehre.tbl_vertrag_vertragsstatus
|
||||
WHERE
|
||||
vertrag_id = tbl_projektbetreuer.vertrag_id
|
||||
ORDER BY datum DESC
|
||||
LIMIT 1
|
||||
) as vertragsstatus
|
||||
FROM lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
|
||||
public.tbl_benutzer, lehre.tbl_projektarbeit, campus.vw_student
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer JOIN public.tbl_benutzer ON tbl_projektbetreuer.person_id = tbl_benutzer.person_id
|
||||
JOIN lehre.tbl_projektarbeit ON tbl_projektarbeit.projektarbeit_id = tbl_projektbetreuer.projektarbeit_id
|
||||
JOIN lehre.tbl_lehreinheit ON tbl_lehreinheit.lehreinheit_id = tbl_projektarbeit.lehreinheit_id
|
||||
JOIN lehre.tbl_lehrveranstaltung ON tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
JOIN campus.vw_student ON vw_student.uid = student_uid
|
||||
WHERE
|
||||
tbl_projektbetreuer.person_id = tbl_benutzer.person_id
|
||||
AND tbl_benutzer.uid = ".$db->db_add_param($uid)."
|
||||
AND tbl_projektarbeit.projektarbeit_id = tbl_projektbetreuer.projektarbeit_id
|
||||
AND student_uid = vw_student.uid
|
||||
AND tbl_lehreinheit.lehreinheit_id = tbl_projektarbeit.lehreinheit_id
|
||||
tbl_benutzer.uid = ".$db->db_add_param($uid)."
|
||||
AND tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)."
|
||||
AND tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$row->vertragsstatus = explode(',', $row->vertragsstatus);
|
||||
$liste[$uid]['gesamtstunden'] = $liste[$uid]['gesamtstunden'] + $row->stunden;
|
||||
$liste[$uid]['gesamtkosten'] =
|
||||
$liste[$uid]['gesamtkosten'] + ($row->stunden * $row->stundensatz);
|
||||
@@ -524,13 +612,42 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
{
|
||||
$liste[$uid]['geaendert'] = true;
|
||||
}
|
||||
|
||||
if (!isset($liste[$uid]['gesamtstunden_bestellt']))
|
||||
{
|
||||
$liste[$uid]['gesamtstunden_bestellt'] = 0;
|
||||
$liste[$uid]['gesamtkosten_bestellt'] = 0;
|
||||
}
|
||||
|
||||
if (!isset($liste[$uid]['gesamtstunden_erteilt']))
|
||||
{
|
||||
$liste[$uid]['gesamtstunden_erteilt'] = 0;
|
||||
$liste[$uid]['gesamtkosten_erteilt'] = 0;
|
||||
}
|
||||
|
||||
if (!isset($liste[$uid]['gesamtstunden_akzeptiert']))
|
||||
{
|
||||
$liste[$uid]['gesamtstunden_akzeptiert'] = 0;
|
||||
$liste[$uid]['gesamtkosten_akzeptiert'] = 0;
|
||||
}
|
||||
|
||||
if ($row->vertragsstatus == 'akzeptiert')
|
||||
if (in_array('bestellt', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$uid]['gesamtstunden_bestellt'] =
|
||||
$liste[$uid]['gesamtstunden_bestellt'] + $row->stunden;
|
||||
$liste[$uid]['gesamtkosten_bestellt'] =
|
||||
$liste[$uid]['gesamtkosten_bestellt'] + ($row->stunden * $row->stundensatz);
|
||||
}
|
||||
|
||||
if (in_array('erteilt', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$uid]['gesamtstunden_erteilt'] =
|
||||
$liste[$uid]['gesamtstunden_erteilt'] + $row->stunden;
|
||||
$liste[$uid]['gesamtkosten_erteilt'] =
|
||||
$liste[$uid]['gesamtkosten_erteilt'] + ($row->stunden * $row->stundensatz);
|
||||
}
|
||||
|
||||
if (in_array('akzeptiert', $row->vertragsstatus))
|
||||
{
|
||||
$liste[$uid]['gesamtstunden_akzeptiert'] =
|
||||
$liste[$uid]['gesamtstunden_akzeptiert'] + $row->stunden;
|
||||
@@ -558,13 +675,20 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
if (isset($row['geaendert']) && $row['geaendert'] == true)
|
||||
{
|
||||
$format = $format_colored;
|
||||
$formatOE = $format_colored;
|
||||
$formatnb = $format_number_colored;
|
||||
}
|
||||
else
|
||||
{
|
||||
$format = $format_normal;
|
||||
$formatOE = $format_normal;
|
||||
$formatnb = $format_number;
|
||||
}
|
||||
|
||||
if(isset($row['organisationgeaendert']) && $row['organisationgeaendert'] === true)
|
||||
{
|
||||
$formatOE = $oe_colored;
|
||||
}
|
||||
//Studiengang
|
||||
$worksheet->write($zeile, $i, $studiengang->kuerzel, $format);
|
||||
$gesamt->write($gesamtsheet_row, $i, $studiengang->kuerzel, $format);
|
||||
@@ -584,11 +708,11 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$worksheet->write($zeile, ++$i, $row['fixangestellt'], $format);
|
||||
$gesamt->write($gesamtsheet_row, $i, $row['fixangestellt'], $format);
|
||||
//OE-Zuordnung
|
||||
$worksheet->write($zeile, ++$i, $row['oezuordnung'], $format);
|
||||
$gesamt->write($gesamtsheet_row, $i, $row['oezuordnung'], $format);
|
||||
$worksheet->write($zeile, ++$i, $row['oezuordnung'], $formatOE);
|
||||
$gesamt->write($gesamtsheet_row, $i, $row['oezuordnung'], $formatOE);
|
||||
//Department der OE-Zuordnung
|
||||
$worksheet->write($zeile, ++$i, $row['department'], $format);
|
||||
$gesamt->write($gesamtsheet_row, $i, $row['department'], $format);
|
||||
$worksheet->write($zeile, ++$i, $row['department'], $formatOE);
|
||||
$gesamt->write($gesamtsheet_row, $i, $row['department'], $formatOE);
|
||||
//LVStunden
|
||||
$lvstunden = str_replace(', ', '.', $row['lvstunden']);
|
||||
$worksheet->write($zeile, ++$i, $lvstunden, $format);
|
||||
@@ -613,6 +737,25 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
$gesamtkosten_row = str_replace(', ', '.', $row['gesamtkosten']);
|
||||
$worksheet->writeNumber($zeile, ++$i, $gesamtkosten_row, $formatnb);
|
||||
$gesamt->writeNumber($gesamtsheet_row, $i, $gesamtkosten_row, $formatnb);
|
||||
|
||||
//Gesamtstunden bestellt
|
||||
$gesamtstunden_bestellt = str_replace(', ', '.', $row['gesamtstunden_bestellt']);
|
||||
$worksheet->write($zeile, ++$i, $gesamtstunden_bestellt, $formatnb);
|
||||
$gesamt->write($gesamtsheet_row, $i, $gesamtstunden_bestellt, $formatnb);
|
||||
//Gesamtkosten bestellt
|
||||
$gesamtkosten_bestellt_row = str_replace(', ', '.', $row['gesamtkosten_bestellt']);
|
||||
$worksheet->writeNumber($zeile, ++$i, $gesamtkosten_bestellt_row, $formatnb);
|
||||
$gesamt->writeNumber($gesamtsheet_row, $i, $gesamtkosten_bestellt_row, $formatnb);
|
||||
|
||||
//Gesamtstunden erteilt
|
||||
$gesamtstunden_erteilt = str_replace(', ', '.', $row['gesamtstunden_erteilt']);
|
||||
$worksheet->write($zeile, ++$i, $gesamtstunden_erteilt, $formatnb);
|
||||
$gesamt->write($gesamtsheet_row, $i, $gesamtstunden_erteilt, $formatnb);
|
||||
//Gesamtkosten erteilt
|
||||
$gesamtkosten_erteilt_row = str_replace(', ', '.', $row['gesamtkosten_erteilt']);
|
||||
$worksheet->writeNumber($zeile, ++$i, $gesamtkosten_erteilt_row, $formatnb);
|
||||
$gesamt->writeNumber($gesamtsheet_row, $i, $gesamtkosten_erteilt_row, $formatnb);
|
||||
|
||||
//Gesamtstunden akzeptiert
|
||||
$gesamtstunden_akzeptiert = str_replace(', ', '.', $row['gesamtstunden_akzeptiert']);
|
||||
$worksheet->write($zeile, ++$i, $gesamtstunden_akzeptiert, $formatnb);
|
||||
@@ -641,11 +784,31 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
else
|
||||
$liste_gesamt[$uid]['gesamtkosten'] = $row['gesamtkosten'];
|
||||
|
||||
if (isset($liste_gesamt[$uid]['gesamtstunden_bestellt']))
|
||||
$liste_gesamt[$uid]['gesamtstunden_bestellt'] += $row['gesamtstunden_bestellt'];
|
||||
else
|
||||
$liste_gesamt[$uid]['gesamtstunden_bestellt'] = $row['gesamtstunden_bestellt'];
|
||||
|
||||
if (isset($liste_gesamt[$uid]['gesamtkosten_bestellt']))
|
||||
$liste_gesamt[$uid]['gesamtkosten_bestellt'] += $row['gesamtkosten_bestellt'];
|
||||
else
|
||||
$liste_gesamt[$uid]['gesamtkosten_bestellt'] = $row['gesamtkosten_bestellt'];
|
||||
|
||||
if (isset($liste_gesamt[$uid]['gesamtstunden_erteilt']))
|
||||
$liste_gesamt[$uid]['gesamtstunden_erteilt'] += $row['gesamtstunden_erteilt'];
|
||||
else
|
||||
$liste_gesamt[$uid]['gesamtstunden_erteilt'] = $row['gesamtstunden_erteilt'];
|
||||
|
||||
if (isset($liste_gesamt[$uid]['gesamtkosten_erteilt']))
|
||||
$liste_gesamt[$uid]['gesamtkosten_erteilt'] += $row['gesamtkosten_erteilt'];
|
||||
else
|
||||
$liste_gesamt[$uid]['gesamtkosten_erteilt'] = $row['gesamtkosten_erteilt'];
|
||||
|
||||
if (isset($liste_gesamt[$uid]['gesamtstunden_akzeptiert']))
|
||||
$liste_gesamt[$uid]['gesamtstunden_akzeptiert'] += $row['gesamtstunden_akzeptiert'];
|
||||
else
|
||||
$liste_gesamt[$uid]['gesamtstunden_akzeptiert'] = $row['gesamtstunden_akzeptiert'];
|
||||
|
||||
|
||||
if (isset($liste_gesamt[$uid]['gesamtkosten_akzeptiert']))
|
||||
$liste_gesamt[$uid]['gesamtkosten_akzeptiert'] += $row['gesamtkosten_akzeptiert'];
|
||||
else
|
||||
@@ -745,3 +908,36 @@ if ($result_stg = $db->db_query($qry_stg))
|
||||
else
|
||||
echo "Fehler beim Versenden der Lehrauftragsliste";
|
||||
}
|
||||
|
||||
function getOe($mitarbeiter_uid, $fixangestellt)
|
||||
{
|
||||
$benutzerfunktion = new Benutzerfunktion();
|
||||
$oe = new Organisationseinheit();
|
||||
|
||||
$benutzerfunktion->getBenutzerFunktionByUid($mitarbeiter_uid, $fixangestellt === 'Ja' ? 'kstzuordnung' : 'oezuordnung', date('Y-m-d'));
|
||||
|
||||
if (isset($benutzerfunktion->result[0]))
|
||||
{
|
||||
array_multisort(array_column($benutzerfunktion->result, 'datum_von'), SORT_ASC, $benutzerfunktion->result);
|
||||
}
|
||||
else
|
||||
{
|
||||
$benutzerfunktion->getBenutzerFunktionByUid($mitarbeiter_uid, $fixangestellt === 'Ja' ? 'kstzuordnung' : 'oezuordnung', null, date('Y-m-d'));
|
||||
array_multisort(array_column($benutzerfunktion->result, 'datum_bis'), SORT_DESC, $benutzerfunktion->result);
|
||||
}
|
||||
|
||||
if (!isset($benutzerfunktion->result[0]))
|
||||
return array('oezuordnung' => '', 'department' => '', 'organisationgeaendert' => false);
|
||||
|
||||
$oe->load($benutzerfunktion->result[0]->oe_kurzbz);
|
||||
$oezuordnung = $oe->organisationseinheittyp_kurzbz . ' ' . $oe->bezeichnung;
|
||||
|
||||
$oe_parents = $oe->getParents_withOEType($oe->oe_kurzbz);
|
||||
|
||||
if (is_array($oe_parents))
|
||||
$department = ($oe_parents[array_search('Department', array_column($oe_parents, 'oe_typ_bezeichnung'))]->oe_bezeichnung);
|
||||
else
|
||||
$department = '';
|
||||
|
||||
return array('oezuordnung' => $oezuordnung, 'department' => $department, 'organisationgeaendert' => true);
|
||||
}
|
||||
@@ -64,7 +64,7 @@ $format_title->setAlign('merge');
|
||||
|
||||
//Zeilenueberschriften ausgeben
|
||||
$headline = array('Typ der Projektarbeit','Titel der Projektarbeit','Student',
|
||||
'Note','Punkte','Beginn','Ende','Freigegeben','Gesperrt bis','Gesamtstunden','Themenbereich',
|
||||
'Note','Punkte','Beginn','Ende','Freigegeben','Gesperrt bis','Themenbereich',
|
||||
'Anmerkung','Projektarbeit ID');
|
||||
|
||||
$i = 0;
|
||||
@@ -81,7 +81,7 @@ $qry = "SELECT
|
||||
trim(COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'')
|
||||
|| ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'')),
|
||||
(SELECT anmerkung FROM lehre.tbl_note WHERE note=tbl_projektarbeit.note) as anmerkung, punkte, beginn,
|
||||
ende, CASE WHEN freigegeben THEN 'Ja' ELSE 'Nein' END, gesperrtbis, gesamtstunden, themenbereich,
|
||||
ende, CASE WHEN freigegeben THEN 'Ja' ELSE 'Nein' END, gesperrtbis, themenbereich,
|
||||
tbl_projektarbeit.anmerkung, projektarbeit_id
|
||||
FROM
|
||||
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
|
||||
|
||||
@@ -76,6 +76,8 @@ require_once('../../include/mobilitaet.class.php');
|
||||
require_once('../../include/studienordnung.class.php');
|
||||
require_once('../../include/mitarbeiter.class.php');
|
||||
require_once('../../include/bisverwendung.class.php');
|
||||
require_once('../../include/bismeldestichtag.class.php');
|
||||
require_once('../../include/stundensatz.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$db = new basis_db();
|
||||
@@ -385,7 +387,7 @@ function isBuchungAllowedToChange($buchung_obj)
|
||||
* @param $new_status_ausbildungssemester Ausbildungssemester des neuen/zu ändernen Status
|
||||
* @param $old_status_studiensemester Studiensemester des alten Status, leer wenn neuer Status
|
||||
* @param $old_status_ausbildungssemester Ausbildungssemester des alten Status, leer wenn neuer Status
|
||||
* @return array
|
||||
* @return array mit error = true und Fehlerbeschreibung wenn ungültig, andernfalls error = false
|
||||
*/
|
||||
function checkStatusaenderung(
|
||||
$prestudent_id, $status_kurzbz, $new_status_studiensemester, $new_status_datum, $new_status_ausbildungssemester,
|
||||
@@ -419,7 +421,7 @@ function checkStatusaenderung(
|
||||
$studiensemester->load($new_status_studiensemester);
|
||||
$new_status_semesterstart = new DateTime($studiensemester->start);
|
||||
|
||||
// Alle bisherigen prestudentstatus nach Datum sortiert
|
||||
// Alle prestudentstatus nach Datum sortiert
|
||||
$qry = "SELECT status_kurzbz, studiensemester_kurzbz, ausbildungssemester, datum, sem.start AS studiensemester_start
|
||||
FROM public.tbl_prestudentstatus pss
|
||||
JOIN public.tbl_studiensemester sem USING (studiensemester_kurzbz)
|
||||
@@ -466,7 +468,7 @@ function checkStatusaenderung(
|
||||
// Gültige Zeitabfolge, bestehenden Status hinzufügen
|
||||
$statusArr[] = $row;
|
||||
}
|
||||
// oder Neuer/editierter Statuseintrag nach bestehendem Statuseintrag
|
||||
// oder Neuer/editierter Statuseintrag vor bestehendem Statuseintrag
|
||||
elseif ($new_status_datum <= $status_datum && $new_status_semesterstart <= $studiensemester_start)
|
||||
{
|
||||
// Gültige Zeitabfolge, bestehenden Status hinzufügen
|
||||
@@ -477,8 +479,7 @@ function checkStatusaenderung(
|
||||
// Zeitabfolge ungültig, Fehler
|
||||
return array(
|
||||
'error' => true,
|
||||
'errormsg' => 'Datum des Statuseintrags muss nach dem Statusdatum,'
|
||||
.' Semesterstartdatum nach Semesterstartdatum des vorherigen Statuseintrags sein'
|
||||
'errormsg' => 'Ungültige Zeitabfolge der Statuseinträge (Statusdatum oder Semester)'
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -996,6 +997,18 @@ if(!$error)
|
||||
{
|
||||
$new_status_datum = isset($_POST['datum']) ? $_POST['datum'] : date('Y-m-d');
|
||||
|
||||
$bismeldestichtag = new bismeldestichtag();
|
||||
|
||||
$meldestichtag_erreicht = $bismeldestichtag->checkMeldestichtagErreicht($new_status_datum);
|
||||
|
||||
if ($meldestichtag_erreicht === true)
|
||||
{
|
||||
$return = false;
|
||||
$error = true;
|
||||
$errormsg .= 'Studentstatus mit Datum oder Semesterende vor erreichtem Meldestichtag können nicht hinzugefügt werden.';
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
|
||||
$check_statusaenderung_result = checkStatusaenderung(
|
||||
$prestudent_id,
|
||||
$_POST['status_kurzbz'],
|
||||
@@ -1206,13 +1219,24 @@ if(!$error)
|
||||
|
||||
if(isset($_POST['studiensemester_kurzbz']) && isset($_POST['status_kurzbz']) &&
|
||||
isset($_POST['prestudent_id']) && is_numeric($_POST['prestudent_id']) &&
|
||||
isset($_POST['ausbildungssemester']) && is_numeric($_POST['ausbildungssemester']))
|
||||
isset($_POST['ausbildungssemester']) && is_numeric($_POST['ausbildungssemester']) &&
|
||||
isset($_POST['datum']))
|
||||
{
|
||||
if($_POST['status_kurzbz']=='Student' && !$rechte->isBerechtigt('admin', null, 'suid') && !$rechte->isBerechtigt('student/keine_studstatuspruefung', null, 'suid'))
|
||||
$erweiterteBerechtigungen = $rechte->isBerechtigt('admin', null, 'suid') || $rechte->isBerechtigt('student/keine_studstatuspruefung', null, 'suid');
|
||||
|
||||
$bismeldestichtag = new bismeldestichtag();
|
||||
$meldestichtag_erreicht = $bismeldestichtag->checkMeldestichtagErreicht($_POST['datum']);
|
||||
|
||||
if($_POST['status_kurzbz']=='Student' && !$erweiterteBerechtigungen)
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Studentenrolle kann nur durch den Administrator geloescht werden';
|
||||
}
|
||||
elseif ($meldestichtag_erreicht && !$erweiterteBerechtigungen)
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Studentstatus mit Datum oder Semesterende vor erreichtem Meldestichtag können nicht gelöscht werden.';
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT count(*) as anzahl FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($_POST['prestudent_id'], FHC_INTEGER);
|
||||
@@ -1532,6 +1556,17 @@ if(!$error)
|
||||
$error = true;
|
||||
$errormsg = isset($check_statusaenderung_result['errormsg']) ? $check_statusaenderung_result['errormsg'] : '';
|
||||
}
|
||||
|
||||
// Prüfung, ob Meldestichtag erreicht ist
|
||||
$bismeldestichtag = new bismeldestichtag();
|
||||
$meldestichtag_erreicht = $bismeldestichtag->checkMeldestichtagErreicht($_POST['datum']);
|
||||
|
||||
if ($meldestichtag_erreicht === true)
|
||||
{
|
||||
$return = false;
|
||||
$error = true;
|
||||
$errormsg = 'Studentstatus mit Datum oder Semesterende vor erreichtem Meldestichtag können nicht hinzugefügt werden.';
|
||||
}
|
||||
}
|
||||
|
||||
if(!$error)
|
||||
@@ -2504,10 +2539,15 @@ if(!$error)
|
||||
{
|
||||
$person_ids = explode(';',$_POST['person_ids']);
|
||||
$exists = false;
|
||||
if (defined('FAS_DOPPELTE_BUCHUNGSTYPEN_CHECK') && (in_array($_POST['buchungstyp_kurzbz'], unserialize(FAS_DOPPELTE_BUCHUNGSTYPEN_CHECK))))
|
||||
if (defined('FAS_DOPPELTE_BUCHUNGSTYPEN_CHECK'))
|
||||
{
|
||||
$konto = new konto();
|
||||
$exists = $konto->checkDoppelteBuchung($person_ids, $_POST['studiensemester_kurzbz'], $_POST['buchungstyp_kurzbz']);
|
||||
$buchungen = unserialize(FAS_DOPPELTE_BUCHUNGSTYPEN_CHECK);
|
||||
$buchung = $_POST['buchungstyp_kurzbz'];
|
||||
if (isset($buchungen[$buchung]))
|
||||
{
|
||||
$konto = new konto();
|
||||
$exists = $konto->checkDoppelteBuchung($person_ids, $_POST['studiensemester_kurzbz'], $buchungen[$buchung]);
|
||||
}
|
||||
}
|
||||
|
||||
if($exists)
|
||||
@@ -2547,13 +2587,16 @@ if(!$error)
|
||||
}
|
||||
else
|
||||
{
|
||||
if(defined('FAS_BUCHUNGSTYP_FIXE_KOSTENSTELLE') && isset(unserialize(FAS_BUCHUNGSTYP_FIXE_KOSTENSTELLE)[$_POST['buchungstyp_kurzbz']]))
|
||||
$kostenstelle = unserialize(FAS_BUCHUNGSTYP_FIXE_KOSTENSTELLE)[$_POST['buchungstyp_kurzbz']];
|
||||
|
||||
foreach ($person_ids as $person_id)
|
||||
{
|
||||
if($person_id!='')
|
||||
{
|
||||
$buchung = new konto();
|
||||
$buchung->person_id = $person_id;
|
||||
$buchung->studiengang_kz = $_POST['studiengang_kz'];
|
||||
$buchung->studiengang_kz = isset($kostenstelle) ? $kostenstelle : $_POST['studiengang_kz'];
|
||||
$buchung->studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
|
||||
$buchung->buchungsnr_verweis='';
|
||||
$buchung->betrag = $_POST['betrag'];
|
||||
@@ -4617,68 +4660,107 @@ if(!$error)
|
||||
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='getstundensatz')
|
||||
{
|
||||
if(isset($_POST['person_id']))
|
||||
if(isset($_POST['person_id']) && isset($_POST['studiensemester_kurzbz']))
|
||||
{
|
||||
$qry = "SELECT mitarbeiter_uid, stundensatz FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
|
||||
WHERE person_id=".$db->db_add_param($_POST['person_id'], FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
$studiensemester = new studiensemester();
|
||||
if ($studiensemester->load($_POST['studiensemester_kurzbz']))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
if (defined('FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ')
|
||||
&& !FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ)
|
||||
{
|
||||
$mitarbeiter_uid = $row->mitarbeiter_uid;
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
|
||||
if($mitarbeiter->load($mitarbeiter_uid))
|
||||
// Mitarbeiter laden
|
||||
$qry = "
|
||||
SELECT
|
||||
mitarbeiter_uid, fixangestellt
|
||||
FROM
|
||||
public.tbl_mitarbeiter
|
||||
JOIN public.tbl_benutzer ON(tbl_benutzer.uid=tbl_mitarbeiter.mitarbeiter_uid)
|
||||
WHERE
|
||||
person_id=".$db->db_add_param($_POST['person_id'], FHC_INTEGER) ."
|
||||
ORDER BY tbl_mitarbeiter.insertamum DESC NULLS LAST LIMIT 1
|
||||
";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if (defined('FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ')
|
||||
&& !FAS_LV_LEKTORINNENZUTEILUNG_FIXANGESTELLT_STUNDENSATZ)
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$stsem = new studiensemester();
|
||||
$stsem->load($semester_aktuell);
|
||||
$bisverwendung = new bisverwendung();
|
||||
$data = $mitarbeiter->stundensatz;
|
||||
if(!$bisverwendung->getVerwendungRange($mitarbeiter->uid, $stsem->start, $stsem->ende))
|
||||
{
|
||||
$bisverwendung->getLastAktVerwendung($mitarbeiter->uid);
|
||||
$bisverwendung->result[] = $bisverwendung;
|
||||
}
|
||||
$uid = $row->mitarbeiter_uid;
|
||||
|
||||
foreach($bisverwendung->result as $row_verwendung)
|
||||
if($db->db_parse_bool($row->fixangestellt)==true)
|
||||
{
|
||||
// Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
|
||||
// geliefert da dies im Vertrag inkludiert ist.
|
||||
if (defined('DEFAULT_ECHTER_DIENSTVERTRAG')
|
||||
&& in_array($row_verwendung->ba1code,DEFAULT_ECHTER_DIENSTVERTRAG)
|
||||
&& $row_verwendung->inkludierte_lehre == -1)
|
||||
// Fixangestellte haben keinen Stundensatz
|
||||
$data = '';
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Stundensatz des Mitarbeiters laden
|
||||
$stundensatz = new stundensatz();
|
||||
if($stundensatz->getStundensatzDatum($uid, $studiensemester->start, $studiensemester->ende, 'lehre'))
|
||||
{
|
||||
$data = '';
|
||||
break;
|
||||
$data = $stundensatz->stundensatz;
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Keine Stundensatz hinterlegt
|
||||
$data = '0.00';
|
||||
$return = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
$data = $mitarbeiter->stundensatz;
|
||||
$return = true;
|
||||
{
|
||||
// Kein Mitarbeiter gefunden, kein Stundensatz
|
||||
$data = '';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg = 'Fehler beim Laden Mitarbeiter*in';
|
||||
$return = false;
|
||||
$qry = "SELECT ss.stundensatz
|
||||
FROM hr.tbl_stundensatz ss
|
||||
JOIN public.tbl_mitarbeiter ON ss.uid = tbl_mitarbeiter.mitarbeiter_uid
|
||||
JOIN public.tbl_benutzer ON(tbl_benutzer.uid=tbl_mitarbeiter.mitarbeiter_uid)
|
||||
WHERE person_id=".$db->db_add_param($_POST['person_id'], FHC_INTEGER) ."
|
||||
AND stundensatztyp = ". $db->db_add_param('lehre') ."
|
||||
AND gueltig_von <= ". $db->db_add_param($studiensemester->ende) ."
|
||||
AND (gueltig_bis >= ". $db->db_add_param($studiensemester->start) ." OR gueltig_bis IS NULL)
|
||||
ORDER BY gueltig_bis DESC NULLS FIRST, gueltig_von DESC NULLS LAST LIMIT 1
|
||||
";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$data = $row->stundensatz;
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$data = '80.00';
|
||||
$return = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Unbekannter Fehler';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler beim Laden des Studiensemesters';
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$data = '00.00';
|
||||
$data = '20.00'.$_POST['studiensemester_kurzbz'];
|
||||
$return = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg = 'Fehler bei Datenabfrage';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='saveanrechnung')
|
||||
{
|
||||
|
||||
@@ -194,17 +194,27 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<label value="Note komm. Pruefung" control="student-abschlusspruefung-menulist-notekommpruef" />
|
||||
<menulist id="student-abschlusspruefung-menulist-notekommpruef"
|
||||
disabled="true"
|
||||
xmlns:NOTE="http://www.technikum-wien.at/note/rdf#"
|
||||
datasources="<?php echo APP_ROOT;?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
>
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<template>
|
||||
<rule NOTE:aktiv='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Prüfungsantritt" control="student-abschlusspruefung-menulist-pruefungsantritt" />
|
||||
|
||||
@@ -783,6 +783,22 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#statusgrund" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-prestudent-tree-rolle-statusgrund" label="Insertamum" flex="1" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#insertamum" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-prestudent-tree-rolle-insertvon" label="Insertvon" flex="1" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#insertvon" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-prestudent-tree-rolle-updateamum" label="Updateamum" flex="1" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#updateamum" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-prestudent-tree-rolle-updatevon" label="Updatevon" flex="1" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#updatevon" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
@@ -790,20 +806,24 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#status_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studiensemester_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#lehrverband"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#orgform_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#prestudent_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studienplan_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studienplan_bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#anmerkung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bestaetigt_von"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bestaetigt_am"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bewerbung_abgeschicktamum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#statusgrund"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#status_kurzbz"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studiensemester_kurzbz"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#lehrverband"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#orgform_kurzbz"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#prestudent_id"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studienplan_id"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studienplan_bezeichnung"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#anmerkung"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bestaetigt_von"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bestaetigt_am"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bewerbung_abgeschicktamum"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#statusgrund"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#insertamum"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#insertvon"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#updateamum"/>
|
||||
<treecell properties="Aktiv_rdf:http://www.technikum-wien.at/prestudentrolle/rdf#aktiv rdf:http://www.technikum-wien.at/prestudentrolle/rdf#stichtagsaktiv" label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#updatevon"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
|
||||
@@ -208,7 +208,8 @@ else
|
||||
<menupopup id="student-filter-menu-popup" >
|
||||
<menuitem id="student-toolbar-filter-dokumente" label="fehlende Dokumente" oncommand="InteressentDokumenteFilter()" disabled="false" tooltiptext="Liste aller Studenten mit Fehlenden Dokumenten"/>
|
||||
<menuitem id="student-toolbar-filter-offenebuchungen" label="offene Buchungen" oncommand="StudentKontoFilterStudenten('konto')" disabled="false" tooltiptext="Liste aller Studenten mit offenen Buchungen"/>
|
||||
<menuitem id="student-toolbar-filter-studiengebuehr" label="nicht gebuchte Studiengebuehr" oncommand="StudentKontoFilterStudenten('studiengebuehr')" disabled="false" tooltiptext="Liste aller Studenten die noch nicht mit Studienbebuehr belastet wurden" />
|
||||
<menuitem id="student-toolbar-filter-studiengebuehr" label="nicht gebuchte Studiengebuehr" oncommand="StudentKontoFilterStudenten('studiengebuehr')" disabled="false" tooltiptext="Liste aller Studenten die noch nicht mit der Studiengebühr belastet wurden" />
|
||||
<menuitem id="student-toolbar-filter-erhoehte-studiengebuehr" label="erhöhten Studienbeitrag" oncommand="StudentKontoFilterStudenten('StudiengebuehrErhoeht')" disabled="false" tooltiptext="Liste aller Studenten denen der erhöhte Studienbeitrag eingebucht wurde" />
|
||||
<menuitem id="student-toolbar-filter-zgvohnedatum" label="ZGV eingetragen ohne Datum" oncommand="StudentKontoFilterStudenten('zgvohnedatum')" disabled="false" tooltiptext="Liste aller Studenten die ZGV eingetragen haben bei denen aber kein ZGV Datum gesetzt ist" />
|
||||
<menu label="nach Statusgrund">
|
||||
<menupopup id="student-filter-statusgrund-menu-popup">
|
||||
|
||||
@@ -27,8 +27,14 @@ header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../config/global.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
$user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
?>
|
||||
|
||||
<overlay id="StudentKonto"
|
||||
@@ -206,10 +212,6 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<spacer flex="1"/>
|
||||
<button id="student-konto-button-zahlungsbestaetigung" label="Zahlungsbestaetigung drucken" oncommand="StudentKontoZahlungsbestaetigung();" disabled="true" hidden="<?php echo $is_hidden?>"/>
|
||||
</hbox>
|
||||
<vbox hidden="true">
|
||||
<label value="Buchungsnr" control="student-konto-textbox-buchungsnr"/>
|
||||
<textbox id="student-konto-textbox-buchungsnr" disabled="true"/>
|
||||
</vbox>
|
||||
<groupbox id="student-konto-groupbox">
|
||||
<caption label="Details"/>
|
||||
<grid id="student-konto-grid-detail" style="overflow:auto;margin:4px;" flex="1">
|
||||
@@ -218,6 +220,20 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<?php
|
||||
$hidden = 'hidden="true"';
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
$hidden = '';
|
||||
?>
|
||||
<row <?php echo $hidden ?>>
|
||||
<label value="Buchungsnr" control="student-konto-textbox-buchungsnr"/>
|
||||
<hbox>
|
||||
<textbox id="student-konto-textbox-buchungsnr" readonly="true" size="9"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Betrag" control="student-konto-textbox-betrag"/>
|
||||
<hbox>
|
||||
|
||||
@@ -181,6 +181,8 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<vbox>
|
||||
<spacer flex="1"/>
|
||||
<button id="student-note-copy" label="<=" style="font-weight: bold;" oncommand="StudentNotenMove();"/>
|
||||
<spacer id="student-note-copy-antrag-spacer" flex="2"/>
|
||||
<button id="student-note-copy-antrag" label="<=" style="font-weight: bold;" oncommand="StudentNotenMoveFromAntrag();"/>
|
||||
<spacer flex="1"/>
|
||||
</vbox>
|
||||
|
||||
@@ -262,20 +264,107 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<label id="student-antragnoten-tree-label" value="Wiederholung" hidden="true"/>
|
||||
<tree id="student-antragnoten-tree" seltype="multi" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/antragnote/liste"
|
||||
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
|
||||
<treecols>
|
||||
<treecol id="student-antragnoten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="false" primary="true"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#lehrveranstaltung_bezeichnung"
|
||||
onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-note_bezeichnung" label="Note" flex="5" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#note_bezeichnung" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-mitarbeiter_uid" label="MitarbeiterInUID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#mitarbeiter_uid" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#benotungsdatum_iso" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#benotungsdatum_iso" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-freigabedatum" label="Freigabedatum" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#freigabedatum_iso" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#studiensemester_kurzbz" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-note" label="NoteID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#note" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-prestudent_id" label="PrestudentInID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#prestudent_id" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#lehrveranstaltung_id" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-antragnoten-tree-studierendenantrag_lehrveranstaltung_id" label="StudierendenantragLehrveranstaltungID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/antragnote/rdf#studierendenantrag_lehrveranstaltung_id" onclick="StudentAntragNotenTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#lehrveranstaltung_bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#note_bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#mitarbeiter_uid"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#benotungsdatum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#benotungsdatum_iso"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#freigabedatum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#studiensemester_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#note"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#prestudent_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#lehrveranstaltung_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/antragnote/rdf#studierendenantrag_lehrveranstaltung_id"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<label value="Note" control="student-noten-menulist-note"/>
|
||||
<menulist id="student-noten-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
oncommand="StudentNoteSpeichern()">
|
||||
xmlns:NOTE="http://www.technikum-wien.at/note/rdf#"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
oncommand="StudentNoteSpeichern()">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
<rule NOTE:aktiv='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
<label value="Punkte" control="student-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
|
||||
|
||||
@@ -47,6 +47,8 @@ var StudentNotenTreeDatasource; //Datasource des Noten Trees
|
||||
var StudentNotenSelectLehrveranstaltungID=null; //LehreinheitID des Noten Eintrages der nach dem Refresh markiert werden soll
|
||||
var StudentLvGesamtNotenTreeDatasource; //Datasource des Noten Trees
|
||||
var StudentLvGesamtNotenSelectLehrveranstaltungID=null; //LehreinheitID des Noten Eintrages der nach dem Refresh markiert werden soll
|
||||
var StudentAntragNotenTreeDatasource; //Datasource des Noten Trees
|
||||
var StudentAntragNotenSelectLehrveranstaltungID=null; //LehreinheitID des Noten Eintrages der nach dem Refresh markiert werden soll
|
||||
var StudentPruefungTreeDatasource; //Datasource des Pruefung Trees
|
||||
var StudentPruefungSelectID=null; //ID der Pruefung die nach dem Refresh markiert werden soll
|
||||
var StudentAnrechnungTreeDatasource; //Datasource des Anrechnung Trees
|
||||
@@ -56,6 +58,7 @@ var StudentAkteTreeDatasource=null;
|
||||
var doublerebuildkonto='false';
|
||||
var StudentNotenTreeloaded=false;
|
||||
var StudentGesamtNotenTreeloaded=false;
|
||||
var StudentAntragNotenTreeloaded=false;
|
||||
// ********** Observer und Listener ************* //
|
||||
|
||||
// ****
|
||||
@@ -342,6 +345,54 @@ var StudentLvGesamtNotenTreeListener =
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Observer fuer LvGesamtNoten Tree
|
||||
// * startet Rebuild nachdem das Refresh
|
||||
// * der datasource fertig ist
|
||||
// ****
|
||||
var StudentAntragNotenTreeSinkObserver =
|
||||
{
|
||||
onBeginLoad : function(pSink) {},
|
||||
onInterrupt : function(pSink) {},
|
||||
onResume : function(pSink) {},
|
||||
onError : function(pSink, pStatus, pError) {},
|
||||
onEndLoad : function(pSink)
|
||||
{
|
||||
StudentAntragNotenTreeloaded=false;
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var dsResources = StudentAntragNotenTreeDatasource.GetAllResources();
|
||||
if (dsResources.hasMoreElements()) {
|
||||
document.getElementById('student-antragnoten-tree').hidden = false;
|
||||
document.getElementById('student-antragnoten-tree-label').hidden = false;
|
||||
document.getElementById('student-note-copy-antrag').hidden = false;
|
||||
document.getElementById('student-note-copy-antrag-spacer').hidden = false;
|
||||
} else {
|
||||
document.getElementById('student-antragnoten-tree').hidden = true;
|
||||
document.getElementById('student-antragnoten-tree-label').hidden = true;
|
||||
document.getElementById('student-note-copy-antrag').hidden = true;
|
||||
document.getElementById('student-note-copy-antrag-spacer').hidden = true;
|
||||
}
|
||||
document.getElementById('student-antragnoten-tree').builder.rebuild();
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Nach dem Rebuild wird der Eintrag wieder
|
||||
// * markiert
|
||||
// ****
|
||||
var StudentAntragNotenTreeListener =
|
||||
{
|
||||
willRebuild : function(builder) { },
|
||||
didRebuild : function(builder)
|
||||
{
|
||||
//timeout nur bei Mozilla notwendig da sonst die rows
|
||||
//noch keine values haben. Ab Seamonkey funktionierts auch
|
||||
//ohne dem setTimeout
|
||||
StudentAntragNotenTreeloaded=true;
|
||||
window.setTimeout(StudentAntragNotenTreeSelectID,10);
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Observer fuer Pruefung Tree
|
||||
// * startet Rebuild nachdem das Refresh
|
||||
@@ -1604,6 +1655,35 @@ function StudentAuswahl()
|
||||
lvgesamtnotentree.database.AddDataSource(StudentLvGesamtNotenTreeDatasource);
|
||||
StudentLvGesamtNotenTreeDatasource.addXMLSinkObserver(StudentLvGesamtNotenTreeSinkObserver);
|
||||
lvgesamtnotentree.builder.addListener(StudentLvGesamtNotenTreeListener);
|
||||
|
||||
var antragnotentree = document.getElementById('student-antragnoten-tree');
|
||||
|
||||
url='<?php echo APP_ROOT;?>index.ci.php/components/Antrag/Wiederholung/getLvsAsRdf/'+prestudent_id+"?"+gettimestamp();
|
||||
|
||||
try
|
||||
{
|
||||
StudentAntragNotenTreeDatasource.removeXMLSinkObserver(StudentAntragNotenTreeSinkObserver);
|
||||
antragnotentree.builder.removeListener(StudentAntragNotenTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = antragnotentree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
antragnotentree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
//Refresh damit die entfernten DS auch wirklich entfernt werden
|
||||
antragnotentree.builder.rebuild();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
StudentAntragNotenTreeDatasource = rdfService.GetDataSource(url);
|
||||
StudentAntragNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
StudentAntragNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
antragnotentree.database.AddDataSource(StudentAntragNotenTreeDatasource);
|
||||
StudentAntragNotenTreeDatasource.addXMLSinkObserver(StudentAntragNotenTreeSinkObserver);
|
||||
antragnotentree.builder.addListener(StudentAntragNotenTreeListener);
|
||||
}
|
||||
|
||||
// ***** KONTAKTE *****
|
||||
@@ -1796,7 +1876,6 @@ function StudentPrestudentDisableFields(val)
|
||||
|
||||
document.getElementById('student-prestudent-menulist-aufnahmeschluessel').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-facheinschlberuf').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-bismelden').disabled=val;
|
||||
document.getElementById('student-prestudent-menulist-foerderrelevant').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-dual').disabled=val;
|
||||
document.getElementById('student-prestudent-button-save').disabled=val;
|
||||
@@ -1843,6 +1922,20 @@ function StudentPrestudentDisableFields(val)
|
||||
document.getElementById('student-prestudent-menulist-zgvmastercode').disabled=true;
|
||||
}
|
||||
|
||||
// bismelden checkbox deaktivieren wenn Recht nicht vorhanden ist
|
||||
<?php
|
||||
$editBismelden = $rechte->isBerechtigt('student/editBismelden') ? 'true' : 'false';
|
||||
echo ' var editBismelden = '.$editBismelden.';';
|
||||
?>
|
||||
if (editBismelden == true)
|
||||
{
|
||||
document.getElementById('student-prestudent-checkbox-bismelden').disabled=val;
|
||||
}
|
||||
else
|
||||
{
|
||||
document.getElementById('student-prestudent-checkbox-bismelden').disabled=true;
|
||||
}
|
||||
|
||||
//Status Tree leeren
|
||||
rollentree = document.getElementById('student-prestudent-tree-rolle');
|
||||
|
||||
@@ -2000,6 +2093,7 @@ function StudentPrestudentRolleDelete()
|
||||
var studiensemester_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', tree.currentIndex);
|
||||
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
|
||||
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', tree.currentIndex);
|
||||
var datum = getTreeCellText(tree, 'student-prestudent-tree-rolle-datum', tree.currentIndex);
|
||||
|
||||
studiengang_kz = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
if(confirm('Diese Rolle wirklich loeschen?'))
|
||||
@@ -2028,6 +2122,7 @@ function StudentPrestudentRolleDelete()
|
||||
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
|
||||
req.add('ausbildungssemester', ausbildungssemester);
|
||||
req.add('studiengang_kz', studiengang_kz);
|
||||
req.add('datum', datum);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
@@ -2059,6 +2154,7 @@ function StudentPrestudentRolleDelete()
|
||||
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
|
||||
req.add('ausbildungssemester', ausbildungssemester);
|
||||
req.add('studiengang_kz', studiengang_kz);
|
||||
req.add('datum', datum);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
@@ -2151,8 +2247,9 @@ function StudentRolleBearbeiten()
|
||||
var studiensemester_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', tree.currentIndex);
|
||||
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
|
||||
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', tree.currentIndex);
|
||||
var datum = getTreeCellText(tree, 'student-prestudent-tree-rolle-datum', tree.currentIndex);
|
||||
|
||||
window.open('<?php echo APP_ROOT?>content/student/studentrolledialog.xul.php?prestudent_id='+prestudent_id+'&status_kurzbz='+status_kurzbz+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&ausbildungssemester='+ausbildungssemester,"Status","status=no, width=500, height=450, centerscreen, resizable");
|
||||
window.open('<?php echo APP_ROOT?>content/student/studentrolledialog.xul.php?prestudent_id='+prestudent_id+'&status_kurzbz='+status_kurzbz+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&ausbildungssemester='+ausbildungssemester+'&datum='+datum,"Status","status=no, width=500, height=450, centerscreen, resizable");
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -2191,14 +2288,26 @@ function StudentRolleSpeichern(dialog, studiensemester_old, ausbildungssemester_
|
||||
// Convert bewerbung_abgeschicktamum to ISO-Date
|
||||
if(bewerbung_abgeschicktamum != '')
|
||||
{
|
||||
if(bewerbung_abgeschicktamum.length != 19)
|
||||
if(bewerbung_abgeschicktamum.length < 10)
|
||||
{
|
||||
bewerbung_abgeschicktamum = '';
|
||||
alert('Abgeschicktdatum ist ungueltig');
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
datepart = bewerbung_abgeschicktamum.substring(0, 10);
|
||||
timepart = bewerbung_abgeschicktamum.substring(11);
|
||||
|
||||
timepart_arr = timepart.split(':');
|
||||
|
||||
for (i = 0; i <= 2; i++)
|
||||
{
|
||||
if (typeof timepart_arr[i] === 'undefined' || timepart_arr[i].length !== 2)
|
||||
{
|
||||
timepart_arr[i] = '00';
|
||||
}
|
||||
}
|
||||
|
||||
arr = datepart.split('.');
|
||||
|
||||
if(arr[0].length==1)
|
||||
@@ -2207,7 +2316,7 @@ function StudentRolleSpeichern(dialog, studiensemester_old, ausbildungssemester_
|
||||
if(arr[1].length==1)
|
||||
arr[1]='0'+arr[1];
|
||||
|
||||
bewerbung_abgeschicktamum = arr[2]+'-'+arr[1]+'-'+arr[0]+' '+timepart;
|
||||
bewerbung_abgeschicktamum = arr[2]+'-'+arr[1]+'-'+arr[0]+' '+timepart_arr.join(":");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2373,7 +2482,7 @@ function StudentAddRolle(rolle, semester, studiensemester, statusgrund_id)
|
||||
// ****
|
||||
// * Druckt die Instkriptionsbestaetigung
|
||||
// ****
|
||||
function StudentPrintInskriptionsbestaetigung(event)
|
||||
function StudentPrintInskriptionsbestaetigung(event, xsl)
|
||||
{
|
||||
tree = document.getElementById('student-tree');
|
||||
//Alle markierten Studenten holen
|
||||
@@ -2410,7 +2519,7 @@ function StudentPrintInskriptionsbestaetigung(event)
|
||||
var output='pdf';
|
||||
|
||||
if(anzahl>0)
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=student.rdf.php&xsl=Inskription&stg_kz='+stg_kz+'&uid='+paramList+'&ss='+stsem+'&output='+output,'Inskriptionsbestaetigung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=student.rdf.php&xsl='+ xsl +'&stg_kz='+stg_kz+'&uid='+paramList+'&ss='+stsem+'&output='+output,'Inskriptionsbestaetigung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
else
|
||||
alert('Bitte einen Studenten auswaehlen');
|
||||
}
|
||||
@@ -3440,6 +3549,10 @@ function StudentZeugnisDokumentArchivieren()
|
||||
xml = 'ausbildungsvertrag.xml.php';
|
||||
break;
|
||||
|
||||
case 'AbschlussdokumentLehrgaenge':
|
||||
xml = 'abschlussdokument_lehrgaenge.xml.php';
|
||||
break;
|
||||
|
||||
default:
|
||||
alert('Das Archivieren fuer diesen Dokumenttyp wird derzeit nicht unterstuetzt');
|
||||
return
|
||||
@@ -4367,6 +4480,77 @@ function StudentNotenTreeSelectDifferent()
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Selectiert die Noten im AntragNoteTree welche nicht gleich denen
|
||||
// * im ZeugnisNoteTree sind
|
||||
// ****
|
||||
function StudentAntragNotenTreeSelectDifferent()
|
||||
{
|
||||
var zeugnistree = document.getElementById("student-noten-tree");
|
||||
var antragnotentree = document.getElementById("student-antragnoten-tree");
|
||||
//bestehende markierung entfernen
|
||||
antragnotentree.view.selection.clearSelection();
|
||||
|
||||
if(StudentNotenTreeloaded && StudentAntragNotenTreeloaded)
|
||||
{
|
||||
if(antragnotentree.view)
|
||||
var antragitems = antragnotentree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
else
|
||||
return false;
|
||||
|
||||
if(zeugnistree.view)
|
||||
var zeugnisitems = zeugnistree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
else
|
||||
return false;
|
||||
|
||||
for(var i=0;i<antragitems;i++)
|
||||
{
|
||||
//Daten aus AntragNotenTree holen
|
||||
col = antragnotentree.columns ? antragnotentree.columns["student-antragnoten-tree-lehrveranstaltung_id"] : "student-antragnoten-tree-lehrveranstaltung_id";
|
||||
var antraglehrveranstaltung_id=antragnotentree.view.getCellText(i,col);
|
||||
col = antragnotentree.columns ? antragnotentree.columns["student-antragnoten-tree-note"] : "student-antragnoten-tree-note";
|
||||
var antragnote=antragnotentree.view.getCellText(i,col);
|
||||
col = antragnotentree.columns ? antragnotentree.columns["student-antragnoten-tree-benotungsdatum-iso"] : "student-antragnoten-tree-benotungsdatum-iso";
|
||||
var antragbenotungsdatum=antragnotentree.view.getCellText(i,col);
|
||||
|
||||
found=false;
|
||||
//Schauen ob die gleiche Zeile im Zeugnisnoten Tree vorkommt
|
||||
for(var j=0;j<zeugnisitems;j++)
|
||||
{
|
||||
col = zeugnistree.columns ? zeugnistree.columns["student-noten-tree-lehrveranstaltung_id"] : "student-noten-tree-lehrveranstaltung_id";
|
||||
var zeugnislehrveranstaltung_id=zeugnistree.view.getCellText(j,col);
|
||||
col = zeugnistree.columns ? zeugnistree.columns["student-noten-tree-note"] : "student-noten-tree-note";
|
||||
var zeugnisnote=zeugnistree.view.getCellText(j,col);
|
||||
col = zeugnistree.columns ? zeugnistree.columns["student-noten-tree-benotungsdatum-iso"] : "student-noten-tree-benotungsdatum-iso";
|
||||
var zeugnisbenotungsdatum=zeugnistree.view.getCellText(j,col);
|
||||
|
||||
if(zeugnislehrveranstaltung_id==antraglehrveranstaltung_id && zeugnisnote==antragnote && zeugnisbenotungsdatum==antragbenotungsdatum)
|
||||
{
|
||||
found=true;
|
||||
break;
|
||||
}
|
||||
|
||||
//Wenn das benotungsdatum im Zeugnis
|
||||
//nach dem benotungsdatum des antrags liegt, dann wird die zeile auch nicht markiert.
|
||||
//damit wird verhindert, dass pruefungsnoten die nur von der assistenz eingetragen wurden,
|
||||
//durch den alten eintrag des antrags wieder ueberschrieben werden
|
||||
if(zeugnislehrveranstaltung_id==antraglehrveranstaltung_id
|
||||
&& zeugnisbenotungsdatum>antragbenotungsdatum)
|
||||
{
|
||||
found=true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(!found)
|
||||
{
|
||||
//Zeile markieren
|
||||
antragnotentree.view.selection.rangedSelect(i,i,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Selectiert den Noten Eintrag nachdem der Tree
|
||||
// * rebuildet wurde.
|
||||
@@ -4377,11 +4561,12 @@ function StudentLvGesamtNotenTreeSelectID()
|
||||
}
|
||||
|
||||
// ***
|
||||
// * Disabled/Enabled die Nodenfelder
|
||||
// * Disabled/Enabled die Notenfelder
|
||||
// ***
|
||||
function StudentNoteDisableFields(val)
|
||||
{
|
||||
document.getElementById('student-note-copy').disabled=val;
|
||||
document.getElementById('student-note-copy-antrag').disabled=val;
|
||||
}
|
||||
|
||||
// ***
|
||||
@@ -4565,6 +4750,68 @@ function StudentNotenMove()
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Uebernimmt die Noten der Antraege fuer die Zeugnisnote
|
||||
// ****
|
||||
function StudentNotenMoveFromAntrag()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-antragnoten-tree');
|
||||
|
||||
var start = new Object();
|
||||
var end = new Object();
|
||||
var numRanges = tree.view.selection.getRangeCount();
|
||||
var paramList= '';
|
||||
var i = 0;
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>index.ci.php/components/Antrag/Wiederholung/moveLvsToZeugnis';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
col = tree.columns ? tree.columns["student-antragnoten-tree-studierendenantrag_lehrveranstaltung_id"] : "student-antragnoten-tree-studierendenantrag_lehrveranstaltung_id";
|
||||
studierendenantrag_lehrveranstaltung_id = tree.view.getCellText(v,col);
|
||||
|
||||
req.add('studierendenantrag_lehrveranstaltung_id_'+i, studierendenantrag_lehrveranstaltung_id);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
req.add('anzahl', i);
|
||||
|
||||
var uid = document.getElementById('student-detail-textbox-uid').value;
|
||||
req.add('student_uid', uid);
|
||||
|
||||
var txt = "?";
|
||||
for(var q in req.parms) {
|
||||
txt = txt+'&'+req.parms[q].name+'='+encodeURIComponent(req.parms[q].value);
|
||||
}
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response);
|
||||
else
|
||||
alert(val.dbdml_errormsg);
|
||||
|
||||
StudentNotenTreeDatasource.Refresh(false); //non blocking
|
||||
SetStatusBarText('Daten wurden gespeichert');
|
||||
StudentNoteDetailDisableFields(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
StudentNotenTreeDatasource.Refresh(false); //non blocking
|
||||
SetStatusBarText('Daten wurden gespeichert');
|
||||
StudentNoteDetailDisableFields(true);
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Loescht die markierte Note
|
||||
// ****
|
||||
@@ -5930,6 +6177,198 @@ function StudentCreateDiplSupplement(event)
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=diplomasupplement.xml.php&output='+output+'&xsl=DiplSupplement&xsl_stg_kz='+stg_kz+'&uid='+paramList,'DiplomaSupplement', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
function StudentPrintAntragAbmeldung(event)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-tree');
|
||||
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return alert('Bitte eine/n Studierende/n auswaehlen');
|
||||
|
||||
//Uids aller markierten Studenten holen
|
||||
var start = new Object();
|
||||
var end = new Object();
|
||||
var numRanges = tree.view.selection.getRangeCount();
|
||||
var prestudent_id= '';
|
||||
var student_uid= '';
|
||||
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
|
||||
var prestudentId=tree.view.getCellText(v,col);
|
||||
prestudent_id += ';'+prestudentId;
|
||||
|
||||
col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
student_uid += ';'+uid;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (event.shiftKey)
|
||||
{
|
||||
var output='odt';
|
||||
}
|
||||
else if (event.ctrlKey)
|
||||
{
|
||||
var output='doc';
|
||||
}
|
||||
else
|
||||
{
|
||||
var output='pdf';
|
||||
}
|
||||
|
||||
window.open('<?php echo APP_ROOT; ?>/content/pdfExport.php?xml=AntragAbmeldung.xml.php&xsl=AntragAbmeldung&uid='+student_uid+'&prestudent_id='+prestudent_id+'&output='+output,'AntragAbmeldung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
function StudentPrintAntragAbmeldungStgl(event)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-tree');
|
||||
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return alert('Bitte eine/n Studierende/n auswaehlen');
|
||||
|
||||
//Uids aller markierten Studenten holen
|
||||
var start = new Object();
|
||||
var end = new Object();
|
||||
var numRanges = tree.view.selection.getRangeCount();
|
||||
var prestudent_id= '';
|
||||
var student_uid= '';
|
||||
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
|
||||
var prestudentId=tree.view.getCellText(v,col);
|
||||
prestudent_id += ';'+prestudentId;
|
||||
|
||||
col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
student_uid += ';'+uid;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (event.shiftKey)
|
||||
{
|
||||
var output='odt';
|
||||
}
|
||||
else if (event.ctrlKey)
|
||||
{
|
||||
var output='doc';
|
||||
}
|
||||
else
|
||||
{
|
||||
var output='pdf';
|
||||
}
|
||||
|
||||
window.open('<?php echo APP_ROOT; ?>/content/pdfExport.php?xml=AntragAbmeldungStgl.xml.php&xsl=AntragAbmeldungStgl&uid='+student_uid+'&prestudent_id='+prestudent_id+'&output='+output,'AntragAbmeldung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
function StudentPrintAntragUnterbrechung(event)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-tree');
|
||||
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return alert('Bitte eine/n Studierende/n auswaehlen');
|
||||
|
||||
//Uids aller markierten Studenten holen
|
||||
var start = new Object();
|
||||
var end = new Object();
|
||||
var numRanges = tree.view.selection.getRangeCount();
|
||||
var prestudent_id= '';
|
||||
var student_uid= '';
|
||||
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
|
||||
var prestudentId=tree.view.getCellText(v,col);
|
||||
prestudent_id += ';'+prestudentId;
|
||||
|
||||
col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
student_uid += ';'+uid;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (event.shiftKey)
|
||||
{
|
||||
var output='odt';
|
||||
}
|
||||
else if (event.ctrlKey)
|
||||
{
|
||||
var output='doc';
|
||||
}
|
||||
else
|
||||
{
|
||||
var output='pdf';
|
||||
}
|
||||
|
||||
window.open('<?php echo APP_ROOT; ?>/content/pdfExport.php?xml=AntragUnterbrechung.xml.php&xsl=AntragUnterbrechung&uid='+student_uid+'&prestudent_id='+prestudent_id+'&output='+output,'AntragUnterbrechung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
function StudentPrintAntragWiederholung(event)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-tree');
|
||||
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return alert('Bitte eine/n Studierende/n auswaehlen');
|
||||
|
||||
//Uids aller markierten Studenten holen
|
||||
var start = new Object();
|
||||
var end = new Object();
|
||||
var numRanges = tree.view.selection.getRangeCount();
|
||||
var prestudent_id= '';
|
||||
var student_uid= '';
|
||||
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
|
||||
var prestudentId=tree.view.getCellText(v,col);
|
||||
prestudent_id += ';'+prestudentId;
|
||||
|
||||
col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
student_uid += ';'+uid;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (event.shiftKey)
|
||||
{
|
||||
var output='odt';
|
||||
}
|
||||
else if (event.ctrlKey)
|
||||
{
|
||||
var output='doc';
|
||||
}
|
||||
else
|
||||
{
|
||||
var output='pdf';
|
||||
}
|
||||
|
||||
window.open('<?php echo APP_ROOT; ?>/content/pdfExport.php?xml=AntragWiederholung.xml.php&xsl=AntragWiederholung&uid='+student_uid+'&prestudent_id='+prestudent_id+'&output='+output,'AntragUnterbrechung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Erstellt den Ausbildungsvertrag fuer einen oder mehrere Studenten
|
||||
// ****
|
||||
@@ -6358,6 +6797,13 @@ function StudentLVGesamtNotenTreeSort()
|
||||
window.setTimeout(StudentNotenTreeSelectDifferent,20);
|
||||
}
|
||||
|
||||
function StudentAntragNotenTreeSort()
|
||||
{
|
||||
// Nach dem Sortieren der Noten die Unterschiede erneut markieren
|
||||
// da sonst nach dem sortieren falsche Eintraege markiert sind
|
||||
window.setTimeout(StudentAntragNotenTreeSelectDifferent,20);
|
||||
}
|
||||
|
||||
//****
|
||||
//* Exportiert den Bescheid fuer alle markierten Studierenden
|
||||
//****
|
||||
|
||||
@@ -1374,6 +1374,7 @@ function StudentProjektbetreuerLoadMitarbeiterDaten()
|
||||
|
||||
req.add('type', 'getstundensatz');
|
||||
req.add('person_id', person_id);
|
||||
req.add('studiensemester_kurzbz', getStudiensemester())
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
@@ -1395,7 +1396,7 @@ function StudentProjektbetreuerLoadMitarbeiterDaten()
|
||||
else
|
||||
default_stundensatz = 'Stundensatz';
|
||||
|
||||
document.getElementById('student-projektbetreuer-label-stundensatz').value = default_stundensatz;
|
||||
document.getElementById('student-projektbetreuer-label-stundensatz').value = default_stundensatz;
|
||||
document.getElementById('student-projektbetreuer-textbox-stundensatz').value = stundensatz;
|
||||
}
|
||||
|
||||
|
||||
@@ -152,8 +152,8 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<button id="student-projektarbeit-button-neu" label="Neu" oncommand="StudentProjektarbeitNeu();" disabled="true"/>
|
||||
<button id="student-projektarbeit-button-loeschen" label="Loeschen" oncommand="StudentProjektarbeitLoeschen();" disabled="true"/>
|
||||
<button id="student-projektarbeit-button-neu" label="Neue PA" oncommand="StudentProjektarbeitNeu();" disabled="true"/>
|
||||
<button id="student-projektarbeit-button-loeschen" label="PA Loeschen" oncommand="StudentProjektarbeitLoeschen();" disabled="true"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<hbox>
|
||||
@@ -279,14 +279,24 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
|
||||
</hbox>
|
||||
<label value="Gesamtnote" control="student-projektarbeit-menulist-note"/>
|
||||
<menulist id="student-projektarbeit-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
xmlns:NOTE="http://www.technikum-wien.at/note/rdf#"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
<rule NOTE:aktiv='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
@@ -312,7 +322,7 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
|
||||
<spacer />
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-projektarbeit-button-speichern" oncommand="StudentProjektarbeitSpeichern()" label="Speichern" disabled="true"/>
|
||||
<button id="student-projektarbeit-button-speichern" oncommand="StudentProjektarbeitSpeichern()" label="PA Speichern" disabled="true"/>
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
@@ -418,8 +428,8 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<button id="student-projektbetreuer-button-neu" label="Neu" oncommand="StudentProjektbetreuerNeu();" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-loeschen" label="Loeschen" oncommand="StudentProjektbetreuerLoeschen();" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-neu" label="Neue Betreuung" oncommand="StudentProjektbetreuerNeu();" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-loeschen" label="Betreuung Loeschen" oncommand="StudentProjektbetreuerLoeschen();" disabled="true"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<vbox hidden="true">
|
||||
@@ -483,14 +493,24 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
|
||||
<row>
|
||||
<label value="Note" control="student-projektbetreuer-menulist-note"/>
|
||||
<menulist id="student-projektbetreuer-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
xmlns:NOTE="http://www.technikum-wien.at/note/rdf#"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
<rule NOTE:aktiv='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
@@ -514,7 +534,7 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
|
||||
<spacer />
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-projektbetreuer-button-speichern" label="Speichern" oncommand="StudentProjektbetreuerSpeichern()" />
|
||||
<button id="student-projektbetreuer-button-speichern" label="Betreuung Speichern" oncommand="StudentProjektbetreuerSpeichern()" />
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
|
||||
@@ -216,14 +216,24 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<row>
|
||||
<label value="Note" control="student-pruefung-menulist-note"/>
|
||||
<menulist id="student-pruefung-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT; ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
xmlns:NOTE="http://www.technikum-wien.at/note/rdf#"
|
||||
datasources="<?php echo APP_ROOT; ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
<rule NOTE:aktiv='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*" style="text-decoration:line-through;"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
|
||||
@@ -31,6 +31,7 @@ require_once('../../include/person.class.php');
|
||||
require_once('../../include/prestudent.class.php');
|
||||
require_once('../../include/studienplan.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/bismeldestichtag.class.php');
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
|
||||
|
||||
@@ -58,8 +59,17 @@ if(isset($_GET['ausbildungssemester']))
|
||||
else
|
||||
$ausbildungssemester='';
|
||||
|
||||
if(isset($_GET['datum']))
|
||||
$datum=$_GET['datum'];
|
||||
else
|
||||
$datum='';
|
||||
|
||||
$vorname = '';
|
||||
$nachname = '';
|
||||
|
||||
$user=get_uid();
|
||||
$db = new basis_db();
|
||||
|
||||
if($prestudent_id!='')
|
||||
{
|
||||
$prestudent = new prestudent();
|
||||
@@ -67,9 +77,16 @@ if($prestudent_id!='')
|
||||
|
||||
$vorname = $prestudent->vorname;
|
||||
$nachname = $prestudent->nachname;
|
||||
|
||||
// Prüfen, ob Studnetrolle vor dem aktuellen Meldestichtag ist. In diesem Fall darf die Rolle nicht mehr bearbeitet werden.
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
$bismeldestichtag = new bismeldestichtag();
|
||||
$disabled = $bismeldestichtag->checkMeldestichtagErreicht($datum) && !$rechte->isBerechtigt('student/keine_studstatuspruefung', null, 'suid')
|
||||
? ' disabled="true"'
|
||||
: '';
|
||||
}
|
||||
$db = new basis_db();
|
||||
$user=get_uid();
|
||||
?>
|
||||
|
||||
<window id="student-rolle-dialog" title="Status"
|
||||
@@ -83,6 +100,9 @@ $user=get_uid();
|
||||
<vbox>
|
||||
<textbox id="student-rolle-textbox-prestudent_id" value="" hidden="true" />
|
||||
<groupbox id="student-rolle-groupbox" flex="1">
|
||||
<?php if ($disabled): ?>
|
||||
<label class="warning">Meldestichtag erreicht - Bearbeiten nicht mehr möglich</label>
|
||||
<?php endif; ?>
|
||||
<caption label="Details<?php echo ($nachname!=''?" $nachname $vorname":'');?>"/>
|
||||
<grid id="student-rolle-grid-detail" style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
@@ -112,7 +132,7 @@ $user=get_uid();
|
||||
<label value="Studiensemester" control="student-rolle-menulist-studiensemester"/>
|
||||
<menulist id="student-rolle-menulist-studiensemester"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/studiensemester.rdf.php?order=desc" flex="1"
|
||||
ref="http://www.technikum-wien.at/studiensemester/liste" >
|
||||
ref="http://www.technikum-wien.at/studiensemester/liste"<?php echo $disabled ?> >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/studiensemester/rdf#kurzbz"
|
||||
@@ -124,7 +144,7 @@ $user=get_uid();
|
||||
</row>
|
||||
<row>
|
||||
<label value="Ausbildungssemester" control="student-rolle-menulist-ausbildungssemester"/>
|
||||
<menulist id="student-rolle-menulist-ausbildungssemester" >
|
||||
<menulist id="student-rolle-menulist-ausbildungssemester"<?php echo $disabled ?> >
|
||||
<menupopup>
|
||||
<?php
|
||||
|
||||
@@ -163,7 +183,7 @@ $user=get_uid();
|
||||
?>
|
||||
<row hidden="<?php echo $hidden; ?>">
|
||||
<label value="Organisationsform" control="student-rolle-menulist-orgform_kurzbz"/>
|
||||
<menulist id="student-rolle-menulist-orgform_kurzbz" >
|
||||
<menulist id="student-rolle-menulist-orgform_kurzbz"<?php echo $disabled ?> >
|
||||
<menupopup>
|
||||
<menuitem value="" label="-- keine Auswahl --"/>
|
||||
<?php
|
||||
@@ -181,13 +201,13 @@ $user=get_uid();
|
||||
</row>
|
||||
<row>
|
||||
<label value="Datum" control="student-rolle-datum-datum"/>
|
||||
<box class='Datum' id="student-rolle-datum-datum" />
|
||||
<box class='Datum' id="student-rolle-datum-datum"<?php echo $disabled ?>/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Bestätigt am" control="student-rolle-datum-bestaetigt_datum"/>
|
||||
<box class='Datum' id="student-rolle-datum-bestaetigt_datum" />
|
||||
<box class='Datum' id="student-rolle-datum-bestaetigt_datum"<?php echo $disabled ?> />
|
||||
</row>
|
||||
<?php
|
||||
<?php
|
||||
$readonly = 'readonly="true"';
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
@@ -196,11 +216,11 @@ $user=get_uid();
|
||||
?>
|
||||
<row>
|
||||
<label value="Bewerbung abgeschickt am" control="student-rolle-datum-bewerbung_abgeschicktamum"/>
|
||||
<textbox id="student-rolle-datum-bewerbung_abgeschicktamum" <?php echo $readonly ?>/>
|
||||
<textbox id="student-rolle-datum-bewerbung_abgeschicktamum" <?php echo $readonly ?><?php echo $disabled ?>/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Studienplan" control="student-rolle-menulist-studienplan"/>
|
||||
<menulist id="student-rolle-menulist-studienplan" >
|
||||
<menulist id="student-rolle-menulist-studienplan"<?php echo $disabled ?> >
|
||||
<menupopup>
|
||||
<menuitem value="" label="-- keine Auswahl --"/>
|
||||
<?php
|
||||
@@ -217,11 +237,11 @@ $user=get_uid();
|
||||
</row>
|
||||
<row>
|
||||
<label value="Anmerkung"/>
|
||||
<textbox id="student-rolle-textbox-anmerkung" multiline="true" />
|
||||
<textbox id="student-rolle-textbox-anmerkung" multiline="true"<?php echo $disabled ?> />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Aufnahmestufe"/>
|
||||
<menulist id="student-rolle-menulist-stufe" disabled="false">
|
||||
<menulist id="student-rolle-menulist-stufe" <?php echo empty($disabled) ? 'disabled="false"' : $disabled ?>>
|
||||
<menupopup>
|
||||
<menuitem value="" label="-- keine Auswahl --"/>
|
||||
<menuitem value="1" label="1"/>
|
||||
@@ -234,7 +254,7 @@ $user=get_uid();
|
||||
<label value="Grund"/>
|
||||
<menulist id="student-rolle-menulist-statusgrund"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/statusgrund" >
|
||||
ref="http://www.technikum-wien.at/statusgrund"<?php echo $disabled ?> >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/statusgrund/rdf#statusgrund_id"
|
||||
@@ -248,7 +268,7 @@ $user=get_uid();
|
||||
</grid>
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-rolle-button-speichern" oncommand="StudentRolleSpeichern()" label="Speichern" />
|
||||
<button id="student-rolle-button-speichern" oncommand="StudentRolleSpeichern()" label="Speichern"<?php echo $disabled ?> />
|
||||
</hbox>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
|
||||
@@ -270,7 +270,8 @@ foreach ($uid_arr as $uid)
|
||||
'matrikelnummer' => rtrim($student->matrikelnr),
|
||||
'matr_nr' => $person->matr_nr,
|
||||
'ausstellungsdatum' => date('M.Y'),
|
||||
'gueltigbis' => $datum_obj->formatDatum($gueltigbis, 'd.m.Y')
|
||||
'gueltigbis' => $datum_obj->formatDatum($gueltigbis, 'd.m.Y'),
|
||||
'gueltigbis_3jahre' => date('d.m.Y', strtotime('+3 years'))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user