mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-26 08:29:28 +00:00
Merge branch 'RechteAnpassen' into benutzerberechtigungGUIneu
This commit is contained in:
@@ -356,7 +356,8 @@ function sanitizeProblemChars($str)
|
||||
'ss' => '/ß/'
|
||||
);
|
||||
|
||||
return preg_replace($acentos, array_keys($acentos), htmlentities($str, ENT_NOQUOTES | ENT_HTML5, $enc));
|
||||
$tmp = preg_replace($acentos, array_keys($acentos), htmlentities($str, ENT_NOQUOTES | ENT_HTML5, $enc));
|
||||
return html_entity_decode($tmp, ENT_NOQUOTES | ENT_HTML5, $enc);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -210,7 +210,7 @@ class Pruefung_model extends DB_Model
|
||||
$this->db->where('ps.prestudent_id', $prestudent_id);
|
||||
|
||||
if ($max_date !== null) {
|
||||
$this->db->where('p.datum <', $max_date);
|
||||
$this->db->where('p.datum <=', $max_date);
|
||||
}
|
||||
if ($studiensemester_kurzbz !== null) {
|
||||
$this->db->where('le.studiensemester_kurzbz', $studiensemester_kurzbz);
|
||||
|
||||
@@ -54,7 +54,7 @@ class Studierendenantrag_model extends DB_Model
|
||||
$this->addJoin('public.tbl_person', 'person_id');
|
||||
$this->addJoin('public.tbl_studiengang stg', 'p.studiengang_kz=stg.studiengang_kz');
|
||||
$this->addJoin('public.tbl_studiensemester ss', 'studiensemester_kurzbz');
|
||||
$this->addJoin('public.tbl_prestudentstatus ps', 'ps.prestudent_id=p.prestudent_id AND ps.studiensemester_kurzbz=ss.studiensemester_kurzbz AND ps.status_kurzbz=get_rolle_prestudent(p.prestudent_id, ss.studiensemester_kurzbz)');
|
||||
$this->addJoin('public.tbl_prestudentstatus ps', 'ps.prestudent_id=p.prestudent_id AND ps.studiensemester_kurzbz=ss.studiensemester_kurzbz AND ps.status_kurzbz=get_rolle_prestudent(p.prestudent_id, ss.studiensemester_kurzbz)', 'LEFT');
|
||||
$this->addJoin('lehre.tbl_studienplan plan', 'studienplan_id', 'LEFT');
|
||||
$this->addJoin('bis.tbl_orgform of', 'of.orgform_kurzbz=COALESCE(plan.orgform_kurzbz, ps.orgform_kurzbz, stg.orgform_kurzbz)');
|
||||
$this->addJoin(
|
||||
|
||||
+7
-1
@@ -215,7 +215,13 @@ function loadampel()
|
||||
</td>
|
||||
<td valign="middle" align="center">
|
||||
<form name="searchform" action="private/tools/suche.php" method="GET" target="content" style="display:inline">
|
||||
<input id="globalsearch" type="search" size="55" name="search" placeholder=" <?php echo $p->t('menu/suchePersonOrtDokumentInhalt');?> ..." title="<?php echo $p->t('menu/suchePersonOrtDokumentInhaltLang');?>"/>
|
||||
<?php
|
||||
if (defined('CIS_ALLOW_PERSON_SEARCH') && !CIS_ALLOW_PERSON_SEARCH)
|
||||
$searchText = $p->t('menu/sucheOrtDokumentInhalt');
|
||||
else
|
||||
$searchText = $p->t('menu/suchePersonOrtDokumentInhalt');
|
||||
?>
|
||||
<input id="globalsearch" type="search" size="55" name="search" placeholder=" <?php echo $searchText ;?> ..." title="<?php echo $searchText ;?>"/>
|
||||
<img src="../skin/images/search.png" onclick="document.searchform.submit()" class="suchicon"/>
|
||||
</form>
|
||||
</td>
|
||||
|
||||
@@ -126,6 +126,9 @@ if (!$searchPerson && !$searchOrt && !$searchDms && !$searchContent && !$searchO
|
||||
|
||||
function searchPerson($searchItems)
|
||||
{
|
||||
if (defined('CIS_ALLOW_PERSON_SEARCH') && !CIS_ALLOW_PERSON_SEARCH)
|
||||
return false;
|
||||
|
||||
global $db, $p, $noalias, $uid;
|
||||
$bn = new benutzer();
|
||||
//search only active and Mitarbeiter with positive Personalnr
|
||||
@@ -182,18 +185,13 @@ function searchPerson($searchItems)
|
||||
echo '<td>',$row->vorname, '</td>';
|
||||
|
||||
echo '<td>';
|
||||
if(!defined('CIS_SUCHE_PROFIL_ANZEIGEN'))
|
||||
echo '<a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->wahlname, ' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
else if(!CIS_SUCHE_PROFIL_ANZEIGEN)
|
||||
{
|
||||
$mitarbeiter = new Mitarbeiter($uid);
|
||||
if($mitarbeiter->errormsg === NULL)
|
||||
echo '<a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->wahlname, ' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
else
|
||||
|
||||
$mitarbeiter = new Mitarbeiter();
|
||||
if (defined('CIS_SUCHE_PROFIL_ANZEIGEN') && CIS_SUCHE_PROFIL_ANZEIGEN === false && !$mitarbeiter->load($uid))
|
||||
echo $row->nachname;
|
||||
}
|
||||
else
|
||||
echo '<a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->wahlname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
|
||||
if($row->aktiv==false)
|
||||
echo '<span style="color: red"> (ausgeschieden)</span>';
|
||||
elseif(isKarenziert($row->uid))
|
||||
|
||||
@@ -784,23 +784,23 @@ echo '
|
||||
{
|
||||
/* Checkt nicht mehr Bisverwendung, sondern Vertragsbestandteil Zeitaufzeichnung */
|
||||
$.ajax({
|
||||
url: "zeitaufzeichnung_bisverwendung.php",
|
||||
data: {
|
||||
day: day,
|
||||
uid: uid
|
||||
},
|
||||
success: function (result)
|
||||
{
|
||||
if (result==\'true\')
|
||||
{
|
||||
$("#homeofficeBlock").show();
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#homeofficeBlock").hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
url: "zeitaufzeichnung_bisverwendung.php",
|
||||
data: {
|
||||
day: day,
|
||||
uid: uid
|
||||
},
|
||||
success: function (result)
|
||||
{
|
||||
if (result==\'true\')
|
||||
{
|
||||
$("#homeofficeBlock").show();
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#homeofficeBlock").hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function checkZeitsperre(day, uid)
|
||||
@@ -1042,7 +1042,7 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
echo "
|
||||
<hr><br>
|
||||
|
||||
<select name='mas' id='mas' onchange='location = this.options[this.selectedIndex].value;''>
|
||||
<select name='mas' id='mas' onchange='location = this.options[this.selectedIndex].value;'>
|
||||
<option>-- Timesheets Mitarbeiter*Innen --</option>";
|
||||
foreach($mitarbeiter->result as $row)
|
||||
{
|
||||
@@ -1247,9 +1247,9 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
$p->t("zeitaufzeichnung/projektphase").'
|
||||
<SELECT name="projektphase" id="projektphase">
|
||||
<OPTION value="" id="projektphasekeineausw">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
|
||||
if ($showprojphases)
|
||||
{
|
||||
|
||||
foreach ($projektphasen as $projektphase)
|
||||
{
|
||||
if (($projektphase->start != "" ) && ($projektphase->ende != " "))
|
||||
@@ -1270,13 +1270,12 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
echo '<option value="'.$db->convert_html_chars($projektphase->projektphase_id).'" '.$selected.'>'.$db->convert_html_chars($projektphase->bezeichnung).
|
||||
$phasentext. '</option>';
|
||||
}
|
||||
echo '</SELECT></span>';
|
||||
|
||||
}
|
||||
echo '</SELECT></span>';
|
||||
echo '</td></tr>';
|
||||
}
|
||||
|
||||
echo "<input type ='hidden' value='$user'id=uidpass>";
|
||||
|
||||
if ($za_simple == 0)
|
||||
{
|
||||
// Service
|
||||
@@ -1370,22 +1369,19 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
<td> </td>
|
||||
<td colspan="3">
|
||||
<span id="pausenblock">
|
||||
<input type="checkbox" name="genPause" id="genPause" onChange="checkPausenzeit()"> '.$p->t("zeitaufzeichnung/pauseEinfuegen").' <input type="text" name="pause_von" class="timepicker" size="4" id="pause_von"> - <input type="text" name="pause_bis" class="timepicker" size="4" id="pause_bis">
|
||||
<input type="checkbox" name="genPause" id="genPause" onChange="checkPausenzeit()"> <label for="genPause">'.$p->t("zeitaufzeichnung/pauseEinfuegen").'</label> <input type="text" name="pause_von" class="timepicker" size="4" id="pause_von"> - <input type="text" name="pause_bis" class="timepicker" size="4" id="pause_bis">
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
';
|
||||
|
||||
//Zeitsperren
|
||||
echo '<p id="outputZs"></p>';
|
||||
|
||||
//Homeoffice Checkbox
|
||||
echo '
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td colspan="1">
|
||||
<span id="homeofficeBlock">
|
||||
<input type="checkbox" name="homeoffice" id="homeoffice" '. $homeofficeChecked . '>Homeoffice</input>
|
||||
<input type="checkbox" name="homeoffice" id="homeoffice" '. $homeofficeChecked . '> <label for="homeoffice">Homeoffice</label>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -1412,7 +1408,7 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
|
||||
$vbt = new vertragsbestandteil();
|
||||
$isAllin = $vbt->isAllin($user);
|
||||
|
||||
|
||||
if ($isAllin)
|
||||
{
|
||||
echo '<span id="saldoAllin"></span><br>';
|
||||
@@ -1432,6 +1428,7 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
echo '</td></tr>';
|
||||
echo '</table>';
|
||||
echo '</form>';
|
||||
echo "<input type ='hidden' value='$user' id='uidpass'>";
|
||||
echo '<hr>';
|
||||
echo '<h3>'.($alle===true?$p->t('zeitaufzeichnung/alleEintraege'):$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage))).'</h3>';
|
||||
if ($alle===true)
|
||||
@@ -1569,7 +1566,7 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
|
||||
$tagessaldo = date('H:i', ($tagessaldo));
|
||||
$colspan = ($za_simple)?6:8;
|
||||
echo '<tr id="tag_row_'.$datum->formatDatum($tag,'d_m_Y').'"><td '.$style.' colspan="'.$colspan.'")>';
|
||||
echo '<tr id="tag_row_'.$datum->formatDatum($tag,'d_m_Y').'"><td '.$style.' colspan="'.$colspan.'">';
|
||||
|
||||
// Zusaetzlicher span fuer Addon Informationen
|
||||
|
||||
@@ -1626,8 +1623,8 @@ if ($projekt->getProjekteMitarbeiter($user, true))
|
||||
|
||||
<tr>
|
||||
<th colspan="'.$colspan.'" style="background-color: #8DBDD8;"></th>
|
||||
<th style="background-color: #8DBDD8;" align="right" colspan="2" style="font-weight: normal;"><b>'.$p->t("zeitaufzeichnung/wochensummeArbeitszeit").':</b></th>
|
||||
<th style="background-color: #8DBDD8;" align="right" style="font-weight: normal;"><b>'.$wochensaldo.$erstr.'</b></th>
|
||||
<th style="background-color: #8DBDD8; font-weight: normal;" align="right" colspan="2"><b>'.$p->t("zeitaufzeichnung/wochensummeArbeitszeit").':</b></th>
|
||||
<th style="background-color: #8DBDD8; font-weight: normal;" align="right"><b>'.$wochensaldo.$erstr.'</b></th>
|
||||
<th style="background-color: #8DBDD8;" colspan="3"></th>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -129,6 +129,8 @@ define('MAILVERTEILER_SPERRE', true);
|
||||
// Bezeichnung des Campus
|
||||
define('CAMPUS_NAME','FH Technikum Wien');
|
||||
|
||||
define('CI_ENVIRONMENT', 'development'); // Code igniter environment variable
|
||||
|
||||
// Anzahl der Tag die eine Nachricht am Pinboard angezeigt wird.
|
||||
define("MAXNEWSALTER",60);
|
||||
// Anzahl der Newseintraege die maximal angezeigt werden
|
||||
|
||||
@@ -57,8 +57,13 @@ define('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN',true);
|
||||
define('CIS_SUCHE_LVPLAN_ANZEIGEN',true);
|
||||
|
||||
// Anzeige des Links zum Profil von Personen bei globaler Suche
|
||||
// Wenn ein Mitarbeiter sucht, wird der Link IMMER angezeigt, unabhängig von der Config
|
||||
// Wenn ein Studierender sucht und die Config auf false ist, wird der Link nicht angezeigt - ansonsten schon
|
||||
define('CIS_SUCHE_PROFIL_ANZEIGEN',true);
|
||||
|
||||
// Anzeige von Personen bei globaler Suche
|
||||
define('CIS_ALLOW_PERSON_SEARCH', true);
|
||||
|
||||
// Soll geprueft werden ob das Passwort innerhalb des letzten Jahres geaendert wurde true|false
|
||||
// Wenn dies nicht geaendert wurde wird nach dem Login auf die Passwort aendern Seite umgeleitet
|
||||
define('CIS_CHECK_PASSWORD_CHANGE',false);
|
||||
|
||||
@@ -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; ?>"/>
|
||||
|
||||
@@ -4665,7 +4665,7 @@ if(!$error)
|
||||
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)
|
||||
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))
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -346,15 +346,25 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<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; ?>"/>
|
||||
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
+182
-12
@@ -1086,12 +1086,33 @@ class mitarbeiter extends benutzer
|
||||
funktion_kurzbz='Leitung' AND
|
||||
(datum_von is null OR datum_von<=now()) AND
|
||||
(datum_bis is null OR datum_bis>=now()) AND
|
||||
oe_kurzbz in (SELECT oe_kurzbz
|
||||
FROM public.tbl_benutzerfunktion
|
||||
WHERE
|
||||
oe_kurzbz in (
|
||||
SELECT
|
||||
oe_kurzbz
|
||||
FROM
|
||||
public.tbl_benutzerfunktion
|
||||
WHERE
|
||||
funktion_kurzbz='oezuordnung' AND uid=".$this->db_add_param($uid)." AND
|
||||
(datum_von is null OR datum_von<=now()) AND
|
||||
(datum_bis is null OR datum_bis>=now())
|
||||
ORDER BY
|
||||
(
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil_funktion
|
||||
JOIN hr.tbl_vertragsbestandteil vbsfkt USING(vertragsbestandteil_id)
|
||||
JOIN hr.tbl_vertragsbestandteil vbskarenz USING(dienstverhaeltnis_id)
|
||||
WHERE
|
||||
tbl_vertragsbestandteil_funktion.benutzerfunktion_id=tbl_benutzerfunktion.benutzerfunktion_id
|
||||
AND vbskarenz.vertragsbestandteiltyp_kurzbz='karenz'
|
||||
AND
|
||||
(
|
||||
now()::date BETWEEN COALESCE(vbskarenz.von, '1970-01-01') AND COALESCE(vbskarenz.bis, '2170-12-31')
|
||||
OR
|
||||
now()::date BETWEEN COALESCE(vbskarenz.von, '1970-01-01') AND COALESCE(vbskarenz.bis, '2170-12-31')
|
||||
)
|
||||
) NULLS FIRST LIMIT 1
|
||||
)
|
||||
ORDER BY datum_von DESC ";
|
||||
|
||||
@@ -1120,6 +1141,138 @@ class mitarbeiter extends benutzer
|
||||
return $return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob eine Person im angegebenen Zeitraum Vorgesetzter von einem Mitarbeiter ist
|
||||
* @param $leiter UID der zu pruefenden Leitungsposition
|
||||
* @param $mitarbeiter UID der zu pruefenden Leitungsposition
|
||||
* @param $datumvon Von Datum des zu pruefenden Zeitraums
|
||||
* @param $datumbis BIS Datum des zu pruefenden Zeitraums
|
||||
*/
|
||||
public function isVorgesetzterByDate($leiter, $mitarbeiter, $datumvon, $datumbis)
|
||||
{
|
||||
// Alle OEs der zu pruefenden Leitungsposition holen (oes_leitung)
|
||||
// Alle OEs des zu pruefenden Mitarbeiters holen (oes_mitarbeiter)
|
||||
// OE-Ueberschneidungen pruefen
|
||||
|
||||
$qry = "
|
||||
WITH RECURSIVE
|
||||
oes_leitung (oe_kurzbz, oe_parent_kurzbz, level) AS
|
||||
(
|
||||
SELECT
|
||||
oe_kurzbz,
|
||||
oe_parent_kurzbz,
|
||||
1 as level
|
||||
FROM
|
||||
public.tbl_organisationseinheit
|
||||
WHERE
|
||||
oe_kurzbz IN (
|
||||
|
||||
-- Leitung im Zeitraum X
|
||||
SELECT oe_kurzbz FROM public.tbl_benutzerfunktion
|
||||
WHERE
|
||||
funktion_kurzbz='Leitung'
|
||||
AND uid=".$this->db_add_param($leiter)."
|
||||
AND
|
||||
(
|
||||
".$this->db_add_param($datumvon)." BETWEEN COALESCE(tbl_benutzerfunktion.datum_von, '1970-01-01') AND COALESCE(tbl_benutzerfunktion.datum_bis, '2170-12-31')
|
||||
OR
|
||||
".$this->db_add_param($datumbis)." BETWEEN COALESCE(tbl_benutzerfunktion.datum_von, '1970-01-01') AND COALESCE(tbl_benutzerfunktion.datum_bis, '2170-12-31')
|
||||
)
|
||||
|
||||
)
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
o.oe_kurzbz,
|
||||
o.oe_parent_kurzbz,
|
||||
oes_leitung.level + 1 as level
|
||||
FROM
|
||||
public.tbl_organisationseinheit o, oes_leitung
|
||||
WHERE
|
||||
o.oe_parent_kurzbz = oes_leitung.oe_kurzbz
|
||||
),
|
||||
oes_mitarbeiter (oe_kurzbz, oe_parent_kurzbz, level) AS
|
||||
(
|
||||
SELECT
|
||||
oe_kurzbz,
|
||||
oe_parent_kurzbz,
|
||||
1 as level
|
||||
FROM
|
||||
public.tbl_organisationseinheit
|
||||
WHERE
|
||||
oe_kurzbz IN (
|
||||
|
||||
-- OEZuordnung im Zeitraum X - bevorzugt nicht karenziert
|
||||
SELECT oe_kurzbz FROM public.tbl_benutzerfunktion
|
||||
WHERE
|
||||
funktion_kurzbz='oezuordnung'
|
||||
AND uid=".$this->db_add_param($mitarbeiter)."
|
||||
AND (
|
||||
".$this->db_add_param($datumvon)." BETWEEN COALESCE(tbl_benutzerfunktion.datum_von, '1970-01-01') AND COALESCE(tbl_benutzerfunktion.datum_bis, '2170-12-31')
|
||||
OR
|
||||
".$this->db_add_param($datumbis)." BETWEEN COALESCE(tbl_benutzerfunktion.datum_von, '1970-01-01') AND COALESCE(tbl_benutzerfunktion.datum_bis, '2170-12-31')
|
||||
)
|
||||
ORDER BY
|
||||
(
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil_funktion
|
||||
JOIN hr.tbl_vertragsbestandteil vbsfkt USING(vertragsbestandteil_id)
|
||||
JOIN hr.tbl_vertragsbestandteil vbskarenz USING(dienstverhaeltnis_id)
|
||||
WHERE
|
||||
tbl_vertragsbestandteil_funktion.benutzerfunktion_id=tbl_benutzerfunktion.benutzerfunktion_id
|
||||
AND vbskarenz.vertragsbestandteiltyp_kurzbz='karenz'
|
||||
AND
|
||||
(
|
||||
".$this->db_add_param($datumvon)." BETWEEN COALESCE(vbskarenz.von, '1970-01-01') AND COALESCE(vbskarenz.bis, '2170-12-31')
|
||||
OR
|
||||
".$this->db_add_param($datumbis)." BETWEEN COALESCE(vbskarenz.von, '1970-01-01') AND COALESCE(vbskarenz.bis, '2170-12-31')
|
||||
)
|
||||
) NULLS FIRST LIMIT 1
|
||||
|
||||
)
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
o.oe_kurzbz,
|
||||
o.oe_parent_kurzbz,
|
||||
oes_mitarbeiter.level + 1 as level
|
||||
FROM
|
||||
public.tbl_organisationseinheit o, oes_mitarbeiter
|
||||
WHERE
|
||||
o.oe_kurzbz = oes_mitarbeiter.oe_parent_kurzbz
|
||||
)
|
||||
SELECT
|
||||
oe_kurzbz, level
|
||||
FROM
|
||||
oes_leitung
|
||||
WHERE
|
||||
oe_kurzbz in (SELECT oe_kurzbz FROM oes_mitarbeiter)
|
||||
ORDER BY
|
||||
oe_kurzbz, level
|
||||
";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($this->db_num_rows($result) > 0)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gibt ein Array mit den UIDs der Vorgesetzten zum Zeitpunkt des korrespondierenden Timesheets zurück
|
||||
* @param $uid
|
||||
@@ -1139,13 +1292,30 @@ class mitarbeiter extends benutzer
|
||||
funktion_kurzbz='Leitung' AND
|
||||
(datum_von is null OR datum_von<=".$this->db_add_param($date).") AND
|
||||
(datum_bis is null OR datum_bis>=".$this->db_add_param($date).") AND
|
||||
oe_kurzbz in (SELECT oe_kurzbz
|
||||
FROM public.tbl_benutzerfunktion
|
||||
WHERE
|
||||
funktion_kurzbz='oezuordnung' AND uid=".$this->db_add_param($uid)." AND
|
||||
(datum_von is null OR (datum_von<= ".$this->db_add_param($date).")) AND
|
||||
(datum_bis is null OR (datum_bis>=".$this->db_add_param($date)."))
|
||||
)
|
||||
oe_kurzbz in (
|
||||
SELECT
|
||||
oe_kurzbz
|
||||
FROM
|
||||
public.tbl_benutzerfunktion
|
||||
WHERE
|
||||
funktion_kurzbz='oezuordnung' AND uid=".$this->db_add_param($uid)." AND
|
||||
(datum_von is null OR (datum_von<= ".$this->db_add_param($date).")) AND
|
||||
(datum_bis is null OR (datum_bis>=".$this->db_add_param($date)."))
|
||||
ORDER BY
|
||||
(
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil_funktion
|
||||
JOIN hr.tbl_vertragsbestandteil vbsfkt USING(vertragsbestandteil_id)
|
||||
JOIN hr.tbl_vertragsbestandteil vbskarenz USING(dienstverhaeltnis_id)
|
||||
WHERE
|
||||
tbl_vertragsbestandteil_funktion.benutzerfunktion_id=tbl_benutzerfunktion.benutzerfunktion_id
|
||||
AND vbskarenz.vertragsbestandteiltyp_kurzbz='karenz'
|
||||
AND (vbskarenz.von <= ".$this->db_add_param($date)." OR vbskarenz.von is null)
|
||||
AND (vbskarenz.bis >= ".$this->db_add_param($date)." OR vbskarenz.bis is null)
|
||||
) NULLS FIRST LIMIT 1
|
||||
)
|
||||
ORDER BY datum_von DESC ";
|
||||
|
||||
if (is_numeric($limit))
|
||||
@@ -1754,7 +1924,7 @@ class mitarbeiter extends benutzer
|
||||
{
|
||||
if (is_null($uid))
|
||||
$uid = $this->uid;
|
||||
|
||||
|
||||
$qry = "
|
||||
SELECT o.oe_kurzbz AS standardkostenstelle, o.bezeichnung
|
||||
FROM public.tbl_benutzerfunktion bf
|
||||
@@ -1771,7 +1941,7 @@ class mitarbeiter extends benutzer
|
||||
$obj = new StdClass();
|
||||
$obj->oekurzbz = $row->standardkostenstelle;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
|
||||
|
||||
$this->result []= $obj;
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -98,7 +98,7 @@ class vertragsbestandteil extends basis_db
|
||||
|
||||
$timestamp = is_null($datum) ? 'NOW()' : '(date('. $this->db_add_param($datum).'))';
|
||||
|
||||
$qry = 'SELECT
|
||||
$qry = 'SELECT
|
||||
vbt.vertragsbestandteil_id, vbt.dienstverhaeltnis_id, vbt.vertragsbestandteiltyp_kurzbz,
|
||||
vbt.von, vbt.bis, vbt.insertamum, vbt.insertvon, vbt.updateamum, vbt.updatevon,
|
||||
vbtza.zeitaufzeichnung, vbtza.azgrelevant, vbtza.homeoffice
|
||||
@@ -108,8 +108,8 @@ class vertragsbestandteil extends basis_db
|
||||
-- Dienstverhältnis(se) des Mitarbeiters
|
||||
WHERE dv.mitarbeiter_uid = '. $this->db_add_param($mitarbeiter_uid). '
|
||||
-- Zeitaufzeichnungspflichtig...
|
||||
AND zeitaufzeichnung = TRUE
|
||||
-- ...im aktuellen Monat (default) oder im Monat des übergebenen $datums
|
||||
AND zeitaufzeichnung = TRUE
|
||||
-- ...im aktuellen Monat (default) oder im Monat des übergebenen $datums
|
||||
AND ((date_trunc(\'month\', '. $timestamp. ')::date < vbt.bis AND (date_trunc(\'month\', '. $timestamp. ') + interval \'1 month - 1 day\')::date > vbt.von) OR (vbt.bis IS NULL AND (date_trunc(\'month\', '. $timestamp. ') + interval \'1 month - 1 day\')::date > vbt.von))
|
||||
-- Vorerst nur check, ob zumindest eine aufrechte Zeitaufzeichnungspflicht. Später Unterscheidung nach Dienstverhältnis.
|
||||
ORDER BY vbt.von DESC --aktuellster
|
||||
@@ -174,7 +174,7 @@ class vertragsbestandteil extends basis_db
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = 'SELECT
|
||||
$qry = 'SELECT
|
||||
vbt.vertragsbestandteil_id, vbt.dienstverhaeltnis_id, vbt.vertragsbestandteiltyp_kurzbz,
|
||||
vbt.von, vbt.bis, vbt.insertamum, vbt.insertvon, vbt.updateamum, vbt.updatevon,
|
||||
vbtza.zeitaufzeichnung, vbtza.azgrelevant, vbtza.homeoffice
|
||||
@@ -184,10 +184,10 @@ class vertragsbestandteil extends basis_db
|
||||
-- Dienstverhältnis(se) des Mitarbeiters
|
||||
WHERE dv.mitarbeiter_uid = '. $this->db_add_param($mitarbeiter_uid). '
|
||||
-- Zeitaufzeichnungspflichtig
|
||||
AND zeitaufzeichnung = TRUE
|
||||
-- Vertragsbestandteile sind aktuell, liegen nach dem GoLive und starten vor dem aktuellen Monatsletzten
|
||||
AND zeitaufzeichnung = TRUE
|
||||
-- Vertragsbestandteile sind aktuell, liegen nach dem GoLive und starten vor dem aktuellen Monatsletzten
|
||||
AND(
|
||||
(COALESCE(vbt.bis, NOW()::date) > '. $this->db_add_param(CASETIME_TIMESHEET_GOLIVE). '::date) AND
|
||||
(COALESCE(vbt.bis, NOW()::date) > '. $this->db_add_param(CASETIME_TIMESHEET_GOLIVE). '::date) AND
|
||||
(vbt.von < (date_trunc(\'month\', NOW()) + interval \'1 month - 1 day\')::date)
|
||||
)
|
||||
ORDER BY vbt.von ' . $order;
|
||||
@@ -251,7 +251,7 @@ class vertragsbestandteil extends basis_db
|
||||
|
||||
$timestamp = is_null($datum) ? 'NOW()' : '(date('. $this->db_add_param($datum).'))';
|
||||
|
||||
$qry = 'SELECT
|
||||
$qry = 'SELECT
|
||||
vbt.vertragsbestandteil_id, vbt.dienstverhaeltnis_id, vbt.vertragsbestandteiltyp_kurzbz,
|
||||
vbt.von, vbt.bis, vbt.insertamum, vbt.insertvon, vbt.updateamum, vbt.updatevon,
|
||||
vbtza.zeitaufzeichnung, vbtza.azgrelevant, vbtza.homeoffice
|
||||
@@ -261,11 +261,11 @@ class vertragsbestandteil extends basis_db
|
||||
-- Dienstverhältnis(se) des Mitarbeiters
|
||||
WHERE dv.mitarbeiter_uid = '. $this->db_add_param($mitarbeiter_uid). '
|
||||
-- AZG-relevant...
|
||||
AND azgrelevant = TRUE
|
||||
-- ...am aktuellen Tag (default) oder am Tag des übergebenen $datums
|
||||
AND azgrelevant = TRUE
|
||||
-- ...am aktuellen Tag (default) oder am Tag des übergebenen $datums
|
||||
AND (
|
||||
(' . $timestamp . '::date BETWEEN vbt.von AND vbt.bis)
|
||||
OR
|
||||
OR
|
||||
(vbt.bis IS NULL AND ' . $timestamp . '::date > vbt.von)
|
||||
)
|
||||
ORDER BY vbt.von DESC --zur Sicherheit: aktuellster
|
||||
@@ -324,7 +324,7 @@ class vertragsbestandteil extends basis_db
|
||||
|
||||
$timestamp = is_null($datum) ? 'NOW()' : '(date('. $this->db_add_param($datum).'))';
|
||||
|
||||
$qry = 'SELECT
|
||||
$qry = 'SELECT
|
||||
vbt.vertragsbestandteil_id, vbt.dienstverhaeltnis_id, vbt.vertragsbestandteiltyp_kurzbz,
|
||||
vbt.von, vbt.bis, vbt.insertamum, vbt.insertvon, vbt.updateamum, vbt.updatevon,
|
||||
vbtza.zeitaufzeichnung, vbtza.azgrelevant, vbtza.homeoffice
|
||||
@@ -334,12 +334,12 @@ class vertragsbestandteil extends basis_db
|
||||
-- Dienstverhältnis(se) des Mitarbeiters
|
||||
WHERE dv.mitarbeiter_uid = '. $this->db_add_param($mitarbeiter_uid). '
|
||||
-- Homeoffice...
|
||||
AND homeoffice = TRUE
|
||||
-- ...am aktuellen Tag (default) oder am Tag des übergebenen $datums
|
||||
AND homeoffice = TRUE
|
||||
-- ...am aktuellen Tag (default) oder am Tag des übergebenen $datums
|
||||
AND (
|
||||
(' . $timestamp . '::date BETWEEN vbt.von AND vbt.bis)
|
||||
OR
|
||||
(vbt.bis IS NULL AND ' . $timestamp . '::date > vbt.von)
|
||||
OR
|
||||
(vbt.bis IS NULL AND ' . $timestamp . '::date >= vbt.von)
|
||||
)
|
||||
ORDER BY vbt.von DESC -- Zur Sicherheit: aktuellster
|
||||
LIMIT 1';
|
||||
@@ -396,7 +396,7 @@ class vertragsbestandteil extends basis_db
|
||||
{
|
||||
$timestamp = is_null($datum) ? 'NOW()' : '(date('. $this->db_add_param($datum).'))';
|
||||
|
||||
$qry = 'SELECT
|
||||
$qry = 'SELECT
|
||||
vbt.vertragsbestandteil_id, vbt.dienstverhaeltnis_id, vbt.vertragsbestandteiltyp_kurzbz,
|
||||
vbt.von, vbt.bis, vbt.insertamum, vbt.insertvon, vbt.updateamum, vbt.updatevon,
|
||||
vbtft.freitexttyp_kurzbz, vbtftt.bezeichnung, vbtft.titel, vbtft.anmerkung
|
||||
@@ -467,19 +467,19 @@ class vertragsbestandteil extends basis_db
|
||||
$timestamp = is_null($datum) ? 'NOW()' : '(date('. $this->db_add_param($datum).'))';
|
||||
|
||||
$qry = '
|
||||
SELECT
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil vbt
|
||||
JOIN
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil vbt
|
||||
JOIN
|
||||
hr.tbl_dienstverhaeltnis dv USING (dienstverhaeltnis_id)
|
||||
WHERE
|
||||
dv.mitarbeiter_uid = '. $this->db_add_param($mitarbeiter_uid). '
|
||||
AND
|
||||
vbt.vertragsbestandteiltyp_kurzbz = \'karenz\'
|
||||
AND
|
||||
AND
|
||||
vbt.vertragsbestandteiltyp_kurzbz = \'karenz\'
|
||||
AND
|
||||
vbt.von::date <= '. $timestamp. '::date
|
||||
AND
|
||||
AND
|
||||
vbt.bis::date >= '. $timestamp. '::date
|
||||
';
|
||||
|
||||
@@ -515,7 +515,7 @@ class vertragsbestandteil extends basis_db
|
||||
{
|
||||
$timestamp = is_null($datum) ? 'NOW()' : '(date('. $this->db_add_param($datum).'))';
|
||||
|
||||
$qry = 'SELECT
|
||||
$qry = 'SELECT
|
||||
vbtstd.vertragsbestandteil_id,
|
||||
vbtstd.wochenstunden,
|
||||
vbtstd.teilzeittyp_kurzbz
|
||||
@@ -528,17 +528,17 @@ class vertragsbestandteil extends basis_db
|
||||
AND ((date_trunc(\'month\', '. $timestamp. ')::date < vbt.bis AND (date_trunc(\'month\', '. $timestamp. ') + interval \'1 month - 1 day\')::date > vbt.von) OR (vbt.bis IS NULL AND (date_trunc(\'month\', '. $timestamp. ') + interval \'1 month - 1 day\')::date > vbt.von))
|
||||
-- DV mit Vertragsbestandteile Karenz herausnehmen, weil die Wochenstunden dieser DV dann ruhen
|
||||
AND (
|
||||
SELECT
|
||||
COUNT(*) AS karenzen
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil vbt
|
||||
WHERE
|
||||
SELECT
|
||||
COUNT(*) AS karenzen
|
||||
FROM
|
||||
hr.tbl_vertragsbestandteil vbt
|
||||
WHERE
|
||||
vbt.dienstverhaeltnis_id = dv.dienstverhaeltnis_id
|
||||
AND
|
||||
vbt.vertragsbestandteiltyp_kurzbz = \'karenz\'
|
||||
AND
|
||||
AND
|
||||
vbt.vertragsbestandteiltyp_kurzbz = \'karenz\'
|
||||
AND
|
||||
vbt.von::date <= '. $timestamp. '::date
|
||||
AND
|
||||
AND
|
||||
vbt.bis::date >= '. $timestamp. '::date
|
||||
) = 0
|
||||
ORDER BY vbt.von DESC -- aktuellster
|
||||
|
||||
+163
-144
@@ -25,23 +25,23 @@ require_once(dirname(__FILE__).'/sprache.class.php');
|
||||
class zgv extends basis_db
|
||||
{
|
||||
|
||||
public $zgv_code;
|
||||
public $zgv_bez;
|
||||
public $zgv_kurzbz;
|
||||
public $zgv_code;
|
||||
public $zgv_bez;
|
||||
public $zgv_kurzbz;
|
||||
|
||||
public $zgvmas_code;
|
||||
public $zgvmas_bez;
|
||||
public $zgvmas_kurzbz;
|
||||
public $zgvmas_code;
|
||||
public $zgvmas_bez;
|
||||
public $zgvmas_kurzbz;
|
||||
|
||||
public $zgvdoktor_code;
|
||||
public $zgvdoktor_bez;
|
||||
public $zgvdoktor_kurzbz;
|
||||
public $zgvdoktor_code;
|
||||
public $zgvdoktor_bez;
|
||||
public $zgvdoktor_kurzbz;
|
||||
|
||||
public $bezeichnung;
|
||||
public $bezeichnung;
|
||||
|
||||
public $result = array();
|
||||
public $result = array();
|
||||
|
||||
public function __construct($zgv_code=null)
|
||||
public function __construct($zgv_code=null)
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
@@ -49,155 +49,174 @@ class zgv extends basis_db
|
||||
$this->load($zgv_code);
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt eine zgv von tbl_zgv
|
||||
* @param $zgv_code
|
||||
* @return boolean
|
||||
*/
|
||||
public function load($zgv_code)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgv WHERE zgv_code = '.$this->db_add_param($zgv_code, FHC_INTEGER).';';
|
||||
/**
|
||||
* Lädt eine zgv von tbl_zgv
|
||||
* @param $zgv_code
|
||||
* @return boolean
|
||||
*/
|
||||
public function load($zgv_code)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgv WHERE zgv_code = '.$this->db_add_param($zgv_code, FHC_INTEGER).';';
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->zgv_code = $row->zgv_code;
|
||||
$this->zgv_bez = $row->zgv_bez;
|
||||
$this->zgv_kurzbz = $row->zgv_kurzbz;
|
||||
$this->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->zgv_code = $row->zgv_code;
|
||||
$this->zgv_bez = $row->zgv_bez;
|
||||
$this->zgv_kurzbz = $row->zgv_kurzbz;
|
||||
$this->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt eine Master-ZGV von tbl_zgvmaster
|
||||
* @param $zgvmas_code
|
||||
* @return boolean
|
||||
*/
|
||||
public function load_mas($zgvmas_code)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgvmaster WHERE zgvmas_code = '.$this->db_add_param($zgvmas_code, FHC_INTEGER).';';
|
||||
* Lädt eine Master-ZGV von tbl_zgvmaster
|
||||
* @param $zgvmas_code
|
||||
* @return boolean
|
||||
*/
|
||||
public function load_mas($zgvmas_code)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgvmaster WHERE zgvmas_code = '.$this->db_add_param($zgvmas_code, FHC_INTEGER).';';
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->zgvmas_code = $row->zgvmas_code;
|
||||
$this->zgvmas_bez = $row->zgvmas_bez;
|
||||
$this->zgvmas_kurzbz = $row->zgvmas_kurzbz;
|
||||
$this->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->zgvmas_code = $row->zgvmas_code;
|
||||
$this->zgvmas_bez = $row->zgvmas_bez;
|
||||
$this->zgvmas_kurzbz = $row->zgvmas_kurzbz;
|
||||
$this->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
* lädt alle ZGVs von tbl_zgv
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAll($onlyAktiv = false)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry ='SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgv';
|
||||
|
||||
/**
|
||||
* lädt alle ZGVs von tbl_zgv
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAll()
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry ='SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgv;';
|
||||
if ($onlyAktiv === true)
|
||||
{
|
||||
$qry .= " WHERE aktiv";
|
||||
}
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$zgv = new zgv();
|
||||
$zgv->zgv_code = $row->zgv_code;
|
||||
$zgv->zgv_bez = $row->zgv_bez;
|
||||
$zgv->zgv_kurzbz = $row->zgv_kurzbz;
|
||||
$zgv->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
$qry .= " ORDER BY zgv_bez";
|
||||
|
||||
$this->result[] = $zgv;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei der Abfrage aufgetreten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$zgv = new zgv();
|
||||
$zgv->zgv_code = $row->zgv_code;
|
||||
$zgv->zgv_bez = $row->zgv_bez;
|
||||
$zgv->zgv_kurzbz = $row->zgv_kurzbz;
|
||||
$zgv->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
|
||||
/**
|
||||
* Lädt alle Master ZGVs von tbl_zgvmaster
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAllMaster()
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgvmaster;';
|
||||
$this->result[] = $zgv;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei der Abfrage aufgetreten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$zgv_master = new zgv();
|
||||
/**
|
||||
* Lädt alle Master ZGVs von tbl_zgvmaster
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAllMaster($onlyAktiv = false)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgvmaster';
|
||||
|
||||
$zgv_master->zgvmas_code = $row->zgvmas_code;
|
||||
$zgv_master->zgvmas_bez = $row->zgvmas_bez;
|
||||
$zgv_master->zgvmas_kurzbz = $row->zgvmas_kurzbz;
|
||||
$zgv_master->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
if ($onlyAktiv === true)
|
||||
{
|
||||
$qry .= " WHERE aktiv";
|
||||
}
|
||||
|
||||
$this->result[] = $zgv_master;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei der Abfrage aufgetreten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
$qry .= " ORDER BY zgvmas_bez";
|
||||
|
||||
/**
|
||||
* Lädt alle Doktor ZGVs von tbl_zgvdoktor
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAllDoktor()
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry='SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgvdoktor;';
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$zgv_master = new zgv();
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row= $this->db_fetch_object($result))
|
||||
{
|
||||
$zgv_doktor = new zgv();
|
||||
$zgv_master->zgvmas_code = $row->zgvmas_code;
|
||||
$zgv_master->zgvmas_bez = $row->zgvmas_bez;
|
||||
$zgv_master->zgvmas_kurzbz = $row->zgvmas_kurzbz;
|
||||
$zgv_master->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
|
||||
$zgv_doktor->zgvdoktor_code = $row->zgvdoktor_code;
|
||||
$zgv_doktor->zgvdoktor_bez = $row->zgvdoktor_bez;
|
||||
$zgv_doktor->zgvdoktor_kurzbz = $row->zgvdoktor_kurzbz;
|
||||
$zgv_doktor->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
$this->result[] = $zgv_master;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei der Abfrage aufgetreten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
$this->result[] = $zgv_doktor;
|
||||
}
|
||||
/**
|
||||
* Lädt alle Doktor ZGVs von tbl_zgvdoktor
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAllDoktor($onlyAktiv = false)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$qry='SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM bis.tbl_zgvdoktor;';
|
||||
|
||||
if ($onlyAktiv === true)
|
||||
{
|
||||
$qry .= " WHERE aktiv";
|
||||
}
|
||||
|
||||
$qry .= " ORDER BY zgvdoktor_bez";
|
||||
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row= $this->db_fetch_object($result))
|
||||
{
|
||||
$zgv_doktor = new zgv();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->erromsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
$zgv_doktor->zgvdoktor_code = $row->zgvdoktor_code;
|
||||
$zgv_doktor->zgvdoktor_bez = $row->zgvdoktor_bez;
|
||||
$zgv_doktor->zgvdoktor_kurzbz = $row->zgvdoktor_kurzbz;
|
||||
$zgv_doktor->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
|
||||
|
||||
$this->result[] = $zgv_doktor;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->erromsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -8,5 +8,6 @@ $this->phrasen['menu/assistenz']='Zeitsperren aller AssistentInnen';
|
||||
$this->phrasen['menu/lektoren']='Lektoren';
|
||||
$this->phrasen['menu/urlaubAlle']='Alle';
|
||||
$this->phrasen['menu/suchePersonOrtDokumentInhalt']='Suche Person / OE / Ort / Dokument / Inhalt / DW';
|
||||
$this->phrasen['menu/sucheOrtDokumentInhalt']='Suche OE / Ort / Dokument / Inhalt / DW';
|
||||
$this->phrasen['menu/suchePersonOrtDokumentInhaltLang']='Suche Person / Organisationseinheit / Ort / Dokument / Inhalt / Durchwahl';
|
||||
?>
|
||||
|
||||
@@ -8,5 +8,6 @@ $this->phrasen['menu/assistenz']='Assistants';
|
||||
$this->phrasen['menu/lektoren']='Lector';
|
||||
$this->phrasen['menu/urlaubAlle']='All';
|
||||
$this->phrasen['menu/suchePersonOrtDokumentInhalt']='Search Person / OU / Room / Document / Content / Ext.';
|
||||
$this->phrasen['menu/sucheOrtDokumentInhalt']='Search OU / Room / Document / Content / Ext.';
|
||||
$this->phrasen['menu/suchePersonOrtDokumentInhaltLang']='Search Person / Organisation Unit / Room / Document / Content / Extension';
|
||||
?>
|
||||
|
||||
@@ -111,7 +111,8 @@ export default {
|
||||
headerSort: false
|
||||
}, {
|
||||
field: 'studierendenantrag_id',
|
||||
title: '#'
|
||||
title: '#',
|
||||
sorter: 'number'
|
||||
}, {
|
||||
field: 'bezeichnung',
|
||||
title: this.$p.t('lehre', 'studiengang'),
|
||||
|
||||
+14
-12
@@ -40,7 +40,7 @@ echo '
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:NOTE="'.$rdf_url.'/rdf#"
|
||||
>
|
||||
<RDF:Seq about="'.$rdf_url.'/liste">
|
||||
<RDF:Seq about="'.$rdf_url.'/liste">
|
||||
';
|
||||
|
||||
//Daten holen
|
||||
@@ -48,13 +48,14 @@ $qry = 'SELECT * FROM lehre.tbl_note ORDER BY note';
|
||||
if(isset($_GET['optional']))
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description id="" about="'.$rdf_url.'/" >
|
||||
<NOTE:note><![CDATA[]]></NOTE:note>
|
||||
<NOTE:bezeichnung><![CDATA[-- keine Auswahl --]]></NOTE:bezeichnung>
|
||||
<NOTE:anmerkung><![CDATA[]]></NOTE:anmerkung>
|
||||
</RDF:Description>
|
||||
</RDF:li>';
|
||||
<RDF:li>
|
||||
<RDF:Description id="" about="'.$rdf_url.'/" >
|
||||
<NOTE:note><![CDATA[]]></NOTE:note>
|
||||
<NOTE:bezeichnung><![CDATA[-- keine Auswahl --]]></NOTE:bezeichnung>
|
||||
<NOTE:anmerkung><![CDATA[]]></NOTE:anmerkung>
|
||||
<NOTE:aktiv><![CDATA[]]></NOTE:aktiv>
|
||||
</RDF:Description>
|
||||
</RDF:li>';
|
||||
}
|
||||
$db = new basis_db();
|
||||
|
||||
@@ -63,13 +64,14 @@ if($db->db_query($qry))
|
||||
while($row = $db->db_fetch_object())
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description id="'.$row->note.'" about="'.$rdf_url.'/'.$row->note.'" >
|
||||
<RDF:li>
|
||||
<RDF:Description id="'.$row->note.'" about="'.$rdf_url.'/'.$row->note.'" >
|
||||
<NOTE:note><![CDATA['.$row->note.']]></NOTE:note>
|
||||
<NOTE:bezeichnung><![CDATA['.$row->bezeichnung.']]></NOTE:bezeichnung>
|
||||
<NOTE:anmerkung><![CDATA['.$row->anmerkung.']]></NOTE:anmerkung>
|
||||
</RDF:Description>
|
||||
</RDF:li>';
|
||||
<NOTE:aktiv><![CDATA['.($db->db_parse_bool($row->aktiv)?'true':'false') .']]></NOTE:aktiv>
|
||||
</RDF:Description>
|
||||
</RDF:li>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -49,6 +49,7 @@ require_once('dbupdate_3.4/30181_tabelle_anrechnung_neue_attribute_fuer_begruend
|
||||
require_once('dbupdate_3.4/29529_infocenter_anpassungen.php');
|
||||
require_once('dbupdate_3.4/29835_uhstat1_erfassung_der_uhstat1_daten_ueber_das_bewerbungstool.php');
|
||||
require_once('dbupdate_3.4/33714_erhoehter_studienbeitrag_fuer_drittsaatenangehoerig.php');
|
||||
require_once('dbupdate_3.4/36275_zeitaufzeichnung_karenz.php');
|
||||
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
if (! defined('DB_NAME')) exit('No direct script access allowed');
|
||||
|
||||
// Add index to system.tbl_log
|
||||
if ($result = $db->db_query("SELECT * FROM information_schema.role_table_grants WHERE table_name='tbl_vertragsbestandteil_funktion' AND table_schema='hr' AND grantee='web' AND privilege_type='SELECT'"))
|
||||
{
|
||||
if ($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "GRANT SELECT ON hr.tbl_vertragsbestandteil_funktion TO web;";
|
||||
|
||||
if (! $db->db_query($qry))
|
||||
echo '<strong>Vertragsbestandteil Funktion Rechte: ' . $db->db_last_error() . '</strong><br>';
|
||||
else
|
||||
echo 'Leserechte für Web User auf vertragsbetandteil_funktion hinzugefuegt';
|
||||
}
|
||||
}
|
||||
@@ -11642,13 +11642,13 @@ Any unusual occurrences
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Begründen Sie die Gleichwertigkeit der ECTS',
|
||||
'text' => 'Erläutern Sie die Gleichwertigkeit der ECTS',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'Give reasons for the equivalence of ECTS',
|
||||
'text' => 'Explain ECTS equivalencies',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
@@ -11662,13 +11662,13 @@ Any unusual occurrences
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Begründen Sie die Gleichwertigkeit der Lehrveranstaltungsinhalte',
|
||||
'text' => 'Erläutern Sie die Gleichwertigkeit der Lehrveranstaltungsinhalte',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'Give reasons for the equivalence of the course contents',
|
||||
'text' => 'Explain the equivalence of course content',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
@@ -18040,6 +18040,26 @@ array(
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'international',
|
||||
'category' => 'international',
|
||||
'phrase' => 'alleGeplantenMarkieren',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Alle geplanten markieren',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'Mark all planned',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'international',
|
||||
'category' => 'international',
|
||||
@@ -19682,7 +19702,7 @@ array(
|
||||
)
|
||||
),
|
||||
/*
|
||||
// es kann fuer jede Kombination Typ und Status eine Phrase der Form info_<Typ>_<Status
|
||||
// es kann fuer jede Kombination Typ und Status eine Phrase der Form info_<Typ>_<Status
|
||||
// erstellt werden, die dann in der Studierendenansicht in einer infobox angezeigt werden
|
||||
array(
|
||||
'app' => 'core',
|
||||
@@ -20607,6 +20627,26 @@ array(
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'ui',
|
||||
'phrase' => 'keineBerechtigung',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Keine Berechtigung',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'No authority',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'studierendenantrag',
|
||||
@@ -23330,7 +23370,7 @@ array(
|
||||
)
|
||||
),
|
||||
|
||||
|
||||
|
||||
array(
|
||||
'app' => 'personalverwaltung',
|
||||
'category' => 'person',
|
||||
@@ -23411,7 +23451,7 @@ array(
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
|
||||
|
||||
|
||||
array(
|
||||
|
||||
@@ -56,7 +56,7 @@ $uid_benutzer = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid_benutzer);
|
||||
if(!$rechte->isBerechtigt('mitarbeiter', null, 's'))
|
||||
if(!$rechte->isBerechtigt('mitarbeiter/zeitwuensche', null, 's'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
Reference in New Issue
Block a user