This commit is contained in:
kindlm
2015-11-06 14:22:24 +01:00
12 changed files with 121 additions and 15 deletions
@@ -347,7 +347,7 @@ if($result = $db->db_query($qry))
$gruppen.=' ';
}
}
echo "<OPTION value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->kurzbz - $gruppen $lektoren</OPTION>\n";
echo "<OPTION value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id".(isset($uid) && $uid!=''?'&uid='.$uid:'')."' $selected>$row->kurzbz - $gruppen $lektoren</OPTION>\n";
}
echo '</SELECT> ';
}
+57 -6
View File
@@ -38,6 +38,8 @@ require_once('../../../include/service.class.php');
require_once('../../../include/mitarbeiter.class.php');
require_once('../../../include/betriebsmittelperson.class.php');
require_once('../../../include/globals.inc.php');
require_once('../../../include/bisverwendung.class.php');
require_once('../../../include/studiensemester.class.php');
$sprache = getSprache();
$p=new phrasen($sprache);
@@ -46,6 +48,11 @@ if (!$db = new basis_db())
die($p->t("global/fehlerBeimOeffnenDerDatenbankverbindung"));
$user = get_uid();
if ($user == 'raab' && isset($_GET["debuguser"]))
$user = $_GET["debuguser"];
$datum = new datum();
@@ -86,7 +93,11 @@ $alle = (isset($_GET['alle'])?(isset($_GET['normal'])?false:true):false);
$angezeigte_tage = '50';
$zs = new zeitsperre();
$zs->getZeitsperrenForZeitaufzeichnung($user,$angezeigte_tage);
if ($alle)
$zs->getZeitsperrenForZeitaufzeichnung($user,'180');
else
$zs->getZeitsperrenForZeitaufzeichnung($user,$angezeigte_tage);
$zeitsperren = $zs->result;
echo '<!DOCTYPE HTML>
@@ -616,7 +627,11 @@ if($projekt->getProjekteMitarbeiter($user, true))
{
echo '<p><a href="../../../cms/dms.php?id='.$p->t("dms_link/handbuchZeitaufzeichnung").'" target="_blank">'.$p->t("zeitaufzeichnung/handbuchZeitaufzeichnung").'</a></p>';
}
echo '<p><a href="zeitsperre_resturlaub.php">'.$p->t("urlaubstool/meineZeitsperren").'</a></p>';
if ($p->t("dms_link/fiktiveNormalarbeitszeit")!='')
{
echo '<p><a href="../../../cms/dms.php?id='.$p->t("dms_link/fiktiveNormalarbeitszeit").'" target="_blank">'.$p->t("zeitaufzeichnung/fiktiveNormalarbeitszeit").'</a></p>';
}
echo '<p><a href="../profile/zeitsperre_resturlaub.php">'.$p->t("urlaubstool/meineZeitsperren").'</a></p>';
echo "</td>
</tr>
</table>";
@@ -626,7 +641,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
echo '<table>
<tr>
<td>';
<td rowspan="2">';
echo '<table>';
if($za_simple == 0)
{
@@ -836,8 +851,40 @@ if($projekt->getProjekteMitarbeiter($user, true))
else
echo '<input type="file" name="csv" value="" style="visibility:hidden">';
echo '</table>';
echo '</td><td valign="top"><span id="zeitsaldo"></span><br><br><div id="monatsliste"></span></td></tr>
</table>';
echo '</td><td valign="top"><span id="zeitsaldo"></span><br><br><div id="monatsliste"></span></td></tr>';
echo '<tr><td style="float:right;">';
// Summen Lehre anzeigen
$bv = new bisverwendung();
$bv->getLastAktVerwendung($user);
$lehre_inkludiert = $bv->inkludierte_lehre;
if (!$lehre_inkludiert)
$lehre_inkludiert = 0;
$stsem = new studiensemester();
$sem_akt = $stsem->getakt();
$lehre = new zeitaufzeichnung();
$l_arr = $lehre->getLehreForUser($user, $sem_akt);
if ($l_arr["LehreAuftraege"]>0 || $l_arr["LehreIntern"] > 0 || $l_arr["LehreExtern"] > 0)
{
$l_extern_soll = $l_arr["LehreAuftraege"]-$lehre_inkludiert;
$l_extern_soll_norm = $l_extern_soll/4*3;
$lehre_inkludiert_norm = $lehre_inkludiert/4*3;
echo '<table>';
echo '<tr><td colspan="3"><h3>Übersicht Lehre '.$sem_akt.'</h3></tr>';
echo '<tr><td colspan="3">(in Stunden)</tr>';
echo '<tr><td></td><td>beauftragt (LE)</td><td>gebucht</td></tr>';
if ($lehre_inkludiert > 0 || $l_arr["LehreIntern"] > 0)
echo '<tr><td>LehreIntern:</td><td align="right">'.$lehre_inkludiert_norm.' ('.$lehre_inkludiert.')</td><td align="right">'.$l_arr["LehreIntern"].'</td></tr>';
if ($l_extern_soll > 0 || $l_arr["LehreExtern"] > 0)
echo '<tr><td>LehreExtern:</td><td align="right">'.$l_extern_soll_norm.' ('.$l_extern_soll.')</td><td align="right">'.$l_arr["LehreExtern"].'</td></tr>';
echo '</table>';
}
echo '</td></tr>';
echo '</table>';
echo '<hr>';
echo '<h3>'.($alle===true?$p->t('zeitaufzeichnung/alleEintraege'):$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage))).'</h3>';
@@ -943,7 +990,11 @@ if($projekt->getProjekteMitarbeiter($user, true))
}
list($h2, $m2) = explode(':', $elsumme);
$elsumme = $h2*3600+$m2*60;
if ($tagessaldo>18000 && $pflichtpause==false && $elsumme == 0)
if ($tagessaldo > 18000 && $tagessaldo < 19800 && $pflichtpause==false && $elsumme == 0)
{
$pausesumme = $tagessaldo-18000;
}
else if ($tagessaldo>18000 && $pflichtpause==false && $elsumme == 0)
{
$pausesumme = $pausesumme+1800;
}
+1 -1
View File
@@ -1847,7 +1847,7 @@ function StudentRolleBearbeiten()
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', 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=300, 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,"Status","status=no, width=500, height=350, centerscreen, resizable");
}
// ****
+1
View File
@@ -715,6 +715,7 @@ class mitarbeiter extends benutzer
WHERE person_id=tbl_benutzer.person_id
AND NOT EXISTS(SELECT 1 FROM lehre.tbl_vertrag_vertragsstatus WHERE vertrag_id=tbl_vertrag.vertrag_id AND vertragsstatus_kurzbz='gedruckt')
AND NOT EXISTS(SELECT 1 FROM lehre.tbl_vertrag_vertragsstatus WHERE vertrag_id=tbl_vertrag.vertrag_id AND vertragsstatus_kurzbz='abgerechnet')
AND EXISTS(SELECT 1 FROM lehre.tbl_lehreinheitmitarbeiter WHERE vertrag_id=tbl_vertrag.vertrag_id)
)";
}
+50
View File
@@ -438,5 +438,55 @@ class zeitaufzeichnung extends basis_db
return false;
}
}
/**
* Holt alle ZA-Einträge Typ LehreIntern und LehreExtern eines Users
* für das laufende Studienjahr und gibt die Summen in einem Array zurück
* @param string $user
* @return Array mit Keay: LehreIntern, LehreExtern, LehreAuftraege, LehreInkludiert
*/
public function getLehreForUser($user,$sem)
{
$where = "uid=".$this->db_add_param($user);
$where_sem = "studiensemester_kurzbz=".$this->db_add_param($sem);
$lehre_arr = array("LehreIntern"=>0, "LehreExtern"=>0, "LehreAuftraege"=>0);
$qry = "
select sum(extract(epoch from ende-start))/3600 as lehre, aktivitaet_kurzbz from campus.tbl_zeitaufzeichnung where $where and aktivitaet_kurzbz in ('LehreIntern', 'LehreExtern') and start > (select start from public.tbl_studiensemester where $where_sem) group by aktivitaet_kurzbz
";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$lehre_arr[$row->aktivitaet_kurzbz] = round($row->lehre,2);
}
}
else
{
return false;
}
$where = "mitarbeiter_uid=".$this->db_add_param($user);
$where_sem = "l.studiensemester_kurzbz=".$this->db_add_param($sem);
$qry = "
select sum(m.semesterstunden) from lehre.tbl_lehreinheitmitarbeiter m, lehre.tbl_lehreinheit l where $where and $where_sem and l.lehreinheit_id = m.lehreinheit_id
";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$lehre_arr["LehreAuftraege"] = round($row->sum);
}
}
else
{
return false;
}
return $lehre_arr;
}
}
?>
+1 -1
View File
@@ -482,7 +482,7 @@ class zeitsperre extends basis_db
$qry = "select datum::date, freigabevon, zeitsperretyp_kurzbz
from (SELECT generate_series(vondatum::timestamp, bisdatum::timestamp, '1 day') as datum, freigabevon, mitarbeiter_uid, zeitsperretyp_kurzbz FROM campus.tbl_zeitsperre where vonstunde is null and bisstunde is null) a
where a.mitarbeiter_uid = ".$this->db_add_param($uid)." and datum>(now() - interval '50 Days') and zeitsperretyp_kurzbz in ('Krank','Urlaub', 'ZA', 'DienstV','PflegeU')";
where a.mitarbeiter_uid = ".$this->db_add_param($uid)." and datum>(now() - interval '".$anz_tage." Days') and zeitsperretyp_kurzbz in ('Krank','Urlaub', 'ZA', 'DienstV','PflegeU')";
+1
View File
@@ -15,6 +15,7 @@ $this->phrasen['dms_link/bedienungsanleitungMailverteiler']='1474'; //Bedienungs
$this->phrasen['dms_link/berechtigungskonzeptMailverteiler']='1475'; //Berechtigungskonzept Mailverteiler
$this->phrasen['dms_link/handbuchUrlaubsverwaltung']='759'; //Handbuch Urlaubsverwaltung -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/handbuchZeitaufzeichnung']='1545'; //Handbuch Zeitaufzeichnung -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/fiktiveNormalarbeitszeit']='2512'; //fiktive Normalarbeitszeit -> Leer lassen, falls es keines gibt
// Content IDs (=Englisch)
$this->phrasen['dms_link/lvPlanFAQ']='6887'; //Hilfe-Link aus dem LV-Plan in die LV-Plan FAQ auf der CIS (CMS-ID)
+1
View File
@@ -43,4 +43,5 @@ $this->phrasen['zeitaufzeichnung/arbeitszeit']='Arbeitszeit';
$this->phrasen['zeitaufzeichnung/pause']='Pausen';'inkl. 30 min. Pflichtpause';
$this->phrasen['zeitaufzeichnung/inklusivePflichtpause']='inkl. 30 min. Pflichtpause';
$this->phrasen['zeitaufzeichnung/handbuchZeitaufzeichnung']='Arbeitszeitaufzeichnung Leitfaden';
$this->phrasen['zeitaufzeichnung/fiktiveNormalarbeitszeit']='Vereinbarung der fiktiven Normalarbeitszeit';
?>
+1
View File
@@ -15,6 +15,7 @@ $this->phrasen['dms_link/bedienungsanleitungMailverteiler']='1474'; //Bedienungs
$this->phrasen['dms_link/berechtigungskonzeptMailverteiler']='1475'; //Berechtigungskonzept Mailverteiler
$this->phrasen['dms_link/handbuchUrlaubsverwaltung']='759'; //Handbuch Urlaubsverwaltung
$this->phrasen['dms_link/handbuchZeitaufzeichnung']='1545'; //Handbuch Zeitaufzeichnung -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/fiktiveNormalarbeitszeit']='2512'; //fiktive Normalarbeitszeit -> Leer lassen, falls es keines gibt
// Content IDs (=Deutsch)
$this->phrasen['dms_link/lvPlanFAQ']='6887'; //Hilfe-Link aus dem LV-Plan in die LV-Plan FAQ auf der CIS (CMS-ID)
+1
View File
@@ -43,4 +43,5 @@ $this->phrasen['zeitaufzeichnung/arbeitszeit']='Working time';
$this->phrasen['zeitaufzeichnung/pause']='Breaks';
$this->phrasen['zeitaufzeichnung/inklusicePlichtpause']='incl. 30 min. lunch break';
$this->phrasen['zeitaufzeichnung/handbuchZeitaufzeichnung']='Timesheet howto';
$this->phrasen['zeitaufzeichnung/fiktiveNormalarbeitszeit']='Vereinbarung der fiktiven Normalarbeitszeit';
?>
+2 -2
View File
@@ -3938,7 +3938,7 @@ $tabellen=array(
"public.tbl_notiz_dokument" => array("notiz_id","dms_id"),
"public.tbl_ort" => array("ort_kurzbz","bezeichnung","planbezeichnung","max_person","lehre","reservieren","aktiv","lageplan","dislozierung","kosten","ausstattung","updateamum","updatevon","insertamum","insertvon","ext_id","stockwerk","standort_id","telefonklappe","content_id","m2","gebteil","oe_kurzbz"),
"public.tbl_ortraumtyp" => array("ort_kurzbz","hierarchie","raumtyp_kurzbz"),
"public.tbl_organisationseinheit" => array("oe_kurzbz", "oe_parent_kurzbz", "bezeichnung","organisationseinheittyp_kurzbz", "aktiv","mailverteiler","freigabegrenze","kurzzeichen","lehre","standort","warn_semesterstunden_frei","warn_semesterstunden_fix"),
"public.tbl_organisationseinheit" => array("oe_kurzbz", "oe_parent_kurzbz", "bezeichnung","organisationseinheittyp_kurzbz", "aktiv","mailverteiler","freigabegrenze","kurzzeichen","lehre","standort","warn_semesterstunden_frei","warn_semesterstunden_fix","standort_id"),
"public.tbl_organisationseinheittyp" => array("organisationseinheittyp_kurzbz", "bezeichnung", "beschreibung"),
"public.tbl_person" => array("person_id","staatsbuergerschaft","geburtsnation","sprache","anrede","titelpost","titelpre","nachname","vorname","vornamen","gebdatum","gebort","gebzeit","foto","anmerkung","homepage","svnr","ersatzkennzeichen","familienstand","geschlecht","anzahlkinder","aktiv","insertamum","insertvon","updateamum","updatevon","ext_id","bundesland_code","kompetenzen","kurzbeschreibung","zugangscode", "foto_sperre","matr_nr"),
"public.tbl_person_fotostatus" => array("person_fotostatus_id","person_id","fotostatus_kurzbz","datum","insertamum","insertvon","updateamum","updatevon"),
@@ -3960,7 +3960,7 @@ $tabellen=array(
"public.tbl_semesterwochen" => array("semester","studiengang_kz","wochen"),
"public.tbl_service" => array("service_id", "bezeichnung","beschreibung","ext_id","oe_kurzbz","content_id"),
"public.tbl_sprache" => array("sprache","locale","flagge","index","content","bezeichnung"),
"public.tbl_standort" => array("standort_id","adresse_id","kurzbz","bezeichnung","insertvon","insertamum","updatevon","updateamum","ext_id", "firma_id"),
"public.tbl_standort" => array("standort_id","adresse_id","kurzbz","bezeichnung","insertvon","insertamum","updatevon","updateamum","ext_id", "firma_id","code"),
"public.tbl_statistik" => array("statistik_kurzbz","bezeichnung","url","r","gruppe","sql","php","content_id","insertamum","insertvon","updateamum","updatevon","berechtigung_kurzbz","publish","preferences"),
"public.tbl_student" => array("student_uid","matrikelnr","prestudent_id","studiengang_kz","semester","verband","gruppe","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_studentlehrverband" => array("student_uid","studiensemester_kurzbz","studiengang_kz","semester","verband","gruppe","updateamum","updatevon","insertamum","insertvon","ext_id"),
+1 -1
View File
@@ -149,7 +149,7 @@ echo "
if((!$rechte->isBerechtigt('lehre/studienordnung')) && (!$rechte->isBerechtigt('lehre/studienordnungInaktiv')))
die('Sie haben keine Berechtigung für diese Seite');
if($rechte->isBerechtigt('lehre/studienordnungInaktiv'))
if(($rechte->isBerechtigt('lehre/studienordnungInaktiv')) && (!$rechte->isBerechtigt('lehre/studienordnung')))
echo "<script type='text/javascript'>var initSTOs = 'inaktiv';</script>";
$stg_arr = $rechte->getStgKz('lehre/studienordnung');
if(empty($stg_arr))