Merge branch 'master' into signatur

This commit is contained in:
Andreas Österreicher
2018-04-12 18:52:16 +02:00
68 changed files with 4871 additions and 3377 deletions
+13 -7
View File
@@ -650,7 +650,7 @@ class benutzerberechtigung extends basis_db
foreach ($this->berechtigungen as $b)
{
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null || mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz)
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || (mb_strpos($berechtigung_kurzbz,':')!==false && mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz))
&& (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)))
{
if($b->negativ)
@@ -671,7 +671,9 @@ class benutzerberechtigung extends basis_db
{
$childoes = $oe->getChilds($b->oe_kurzbz);
foreach($childoes as $row)
{
$in .= "'".$this->db_escape($row)."',";
}
}
else
{
@@ -728,7 +730,7 @@ class benutzerberechtigung extends basis_db
foreach ($this->berechtigungen as $b)
{
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null || mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz)
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || (mb_strpos($berechtigung_kurzbz,':')!==false && mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz))
&& (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)))
{
if($b->negativ)
@@ -801,7 +803,7 @@ class benutzerberechtigung extends basis_db
$oe = new organisationseinheit();
foreach ($this->berechtigungen as $b)
{
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null || mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz)
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null || (mb_strpos($berechtigung_kurzbz,':')!==false && mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz))
&& (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)))
{
if($b->negativ)
@@ -828,9 +830,9 @@ class benutzerberechtigung extends basis_db
{
if(!is_null($b->oe_kurzbz))
{
$childoes = $oe->getChilds($b->oe_kurzbz);
foreach($childoes as $row)
$oe_kurzbz[] = $row;
$childoes = $oe->getChilds($b->oe_kurzbz);
foreach($childoes as $row)
$oe_kurzbz[] = $row;
}
else
{
@@ -874,7 +876,7 @@ class benutzerberechtigung extends basis_db
if(!mb_strstr($b->berechtigung_kurzbz,'wawi/'))
continue;
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null || mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz)
if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || (mb_strpos($berechtigung_kurzbz,':')!==false && mb_substr($berechtigung_kurzbz,0,mb_strpos($berechtigung_kurzbz,':'))==$b->berechtigung_kurzbz))
&& (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)))
{
if($b->negativ)
@@ -1065,6 +1067,7 @@ class benutzerberechtigung extends basis_db
*
* @param string $berechtigung_kurzbz Kurzbezeichnung der Berechtigung, deren Rollen geladen werden sollen
* @param boolean $inklusiveRollen Default TRUE. Wenn true, wird ein UNION SELECT mit der tbl_rolleberechtigung ausgefuehrt
* @param string $oe_kurzbz Organisationseinheit
* @return boolean true wenn ok, false im Fehlerfall
*/
public function getBenutzerFromBerechtigung($berechtigung_kurzbz, $inklusiveRollen = true, $oe_kurzbz = null)
@@ -1073,6 +1076,7 @@ class benutzerberechtigung extends basis_db
benutzerberechtigung_id,
rolle_kurzbz,
funktion_kurzbz,
oe_kurzbz,
uid,
art,
berechtigung_kurzbz,
@@ -1095,6 +1099,7 @@ class benutzerberechtigung extends basis_db
rolle_kurzbz,
NULL,
NULL,
NULL,
art,
berechtigung_kurzbz,
NULL,
@@ -1118,6 +1123,7 @@ class benutzerberechtigung extends basis_db
$obj->uid = $row->uid;
$obj->funktion_kurzbz = $row->funktion_kurzbz;
$obj->art = $row->art;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->start = $row->start;
$obj->ende = $row->ende;
File diff suppressed because it is too large Load Diff
+3 -2
View File
@@ -1279,7 +1279,7 @@ class content extends basis_db
public function search($searchItems, $limit=null)
{
$qry = "SELECT
distinct on(content_id,sprache,version) content_id, content::text, titel, sprache, version, 1 AS sort
distinct on(content_id,sprache,version) content_id, content::text, titel, sprache, version, template_kurzbz, 1 AS sort
FROM
campus.tbl_contentsprache
JOIN campus.tbl_content USING(content_id)
@@ -1298,7 +1298,7 @@ class content extends basis_db
";
}
$qry .= " UNION SELECT
distinct on(content_id,sprache,version) content_id, content::text, titel, sprache, version, 2 AS sort
distinct on(content_id,sprache,version) content_id, content::text, titel, sprache, version, template_kurzbz, 2 AS sort
FROM
campus.tbl_contentsprache
JOIN campus.tbl_content USING(content_id)
@@ -1333,6 +1333,7 @@ class content extends basis_db
$obj->titel = $row->titel;
$obj->sprache = $row->sprache;
$obj->version = $row->version;
$obj->template_kurzbz = $row->template_kurzbz;
$this->result[] = $obj;
}
+195 -119
View File
@@ -46,7 +46,10 @@ class dms extends basis_db
public $updateamum;
public $updatevon;
public $kategorie_kurzbz_old;
public $cis_suche = false;
public $schlagworte;
public $kategorie_oe_kurzbz;
public $berechtigung_kurzbz;
public $bezeichnung;
/**
@@ -92,6 +95,8 @@ class dms extends basis_db
$this->insertvon = $row->insertvon;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->cis_suche = $this->db_parse_bool($row->cis_suche);
$this->schlagworte = $row->schlagworte;
return true;
}
@@ -143,7 +148,7 @@ class dms extends basis_db
$qry.="INSERT INTO campus.tbl_dms_version(dms_id, version,
filename, mimetype, name, beschreibung, letzterzugriff, insertamum, insertvon,
updateamum, updatevon) VALUES(".
updateamum, updatevon, cis_suche, schlagworte) VALUES(".
$dms_id.','.
$this->db_add_param($this->version, FHC_INTEGER).','.
$this->db_add_param($this->filename).','.
@@ -154,7 +159,9 @@ class dms extends basis_db
$this->db_add_param($this->insertamum).','.
$this->db_add_param($this->insertvon).','.
$this->db_add_param($this->updateamum).','.
$this->db_add_param($this->updatevon).');';
$this->db_add_param($this->updatevon).','.
$this->db_add_param($this->cis_suche, FHC_BOOLEAN).','.
$this->db_add_param($this->schlagworte).');';
}
else
{
@@ -170,7 +177,9 @@ class dms extends basis_db
" beschreibung=".$this->db_add_param($this->beschreibung).",".
" letzterzugriff=".$this->db_add_param($this->letzterzugriff).",".
" updateamum=".$this->db_add_param($this->updateamum).",".
" updatevon=".$this->db_add_param($this->updatevon).
" updatevon=".$this->db_add_param($this->updatevon).",".
" cis_suche=".$this->db_add_param($this->cis_suche, FHC_BOOLEAN).",".
" schlagworte=".$this->db_add_param($this->schlagworte).
" WHERE dms_id=".$this->db_add_param($this->dms_id,FHC_INTEGER)." AND version=".$this->db_add_param($this->version, FHC_INTEGER).";";
}
@@ -214,96 +223,98 @@ class dms extends basis_db
}
}
/**
* Löscht einen DMS Eintrag mit übergebener ID und Version
* Wird die letzte Version eines Eintrages gelöscht, wird automatisch der Eintrag mitgelöscht
* @param $dms_id
* @param $version
*/
public function deleteVersion($dms_id, $version)
{
$dms = new dms();
$dms->load($dms_id, $version);
$qry ="DELETE FROM campus.tbl_dms_version WHERE dms_id = ".$this->db_add_param($dms_id, FHC_INTEGER)." and version =".$this->db_add_param($version, FHC_INTEGER).';';
if($this->db_query($qry))
{
$qry_anzahl ="SELECT 1 FROM campus.tbl_dms_version WHERE dms_id =".$this->db_add_param($dms_id, FHC_INTEGER).';';
if($result = $this->db_query($qry_anzahl))
{
// File der Version im Filesystem löschen
if(is_file(DMS_PATH.$dms->filename) && !unlink(DMS_PATH.$dms->filename))
{
$this->errormsg = "Fehler beim Löschen des Dokuments aufgetreten";
return false;
}
// Wenn letzte Version gelöscht wurde -> lösche gesamten Eintrag
if($this->db_num_rows($result) == 0 )
{
if(!$this->deleteDms($dms_id))
{
$this->errormsg = "Fehler beim Löschen aufgetreten";
return false;
}
else
return true;
}
}
}
else
{
$this->errormsg="Fehler beim Löschen der Version aufgetreten";
return false;
}
return true;
}
/**
* Löscht einen DMS Eintrag mit übergebener ID und Version
* Wird die letzte Version eines Eintrages gelöscht, wird automatisch der Eintrag mitgelöscht
*
* @param $dms_id
* @param $version
*/
public function deleteVersion($dms_id, $version)
{
$dms = new dms();
$dms->load($dms_id, $version);
$qry = "DELETE FROM campus.tbl_dms_version WHERE dms_id = " . $this->db_add_param($dms_id, FHC_INTEGER) . " and version =" . $this->db_add_param($version, FHC_INTEGER) . ';';
if ($this->db_query($qry))
{
$qry_anzahl = "SELECT 1 FROM campus.tbl_dms_version WHERE dms_id =" . $this->db_add_param($dms_id, FHC_INTEGER) . ';';
if ($result = $this->db_query($qry_anzahl))
{
// File der Version im Filesystem löschen
if (is_file(DMS_PATH . $dms->filename) && ! unlink(DMS_PATH . $dms->filename))
{
$this->errormsg = "Fehler beim Löschen des Dokuments aufgetreten";
return false;
}
// Wenn letzte Version gelöscht wurde -> lösche gesamten Eintrag
if ($this->db_num_rows($result) == 0)
{
if (! $this->deleteDms($dms_id))
{
$this->errormsg = "Fehler beim Löschen aufgetreten";
return false;
}
else
return true;
}
}
}
else
{
$this->errormsg = "Fehler beim Löschen der Version aufgetreten";
return false;
}
return true;
}
/**
* Löscht einen gesamten DMS Eintrag inklusive aller Versionen und Projekteinträge
*
* @param $dms_id
*/
public function deleteDms($dms_id)
{
$this->load($dms_id);
$this->getAllVersions($dms_id);
$error = false;
// lösche Versionen
$qry = "BEGIN;DELETE FROM campus.tbl_dms_version WHERE dms_id =" . $this->db_add_param($dms_id, FHC_INTEGER) . "; ";
$qry .= "DELETE FROM fue.tbl_projekt_dokument WHERE dms_id=" . $this->db_add_param($dms_id, FHC_INTEGER) . "; ";
$qry .= "DELETE FROM campus.tbl_dms WHERE dms_id =" . $this->db_add_param($dms_id, FHC_INTEGER) . ";";
if ($this->db_query($qry))
{
$this->db_query('COMMIT;');
// Alle Versionen der Datei im Filesystem löschen
foreach ($this->result as $obj)
{
if (is_file(DMS_PATH . $obj->filename) && ! unlink(DMS_PATH . $obj->filename))
$error = true;
}
if ($error)
{
$this->errormsg = "Fehler beim Löschen des Dokuments aufgetreten";
return false;
}
else
{
return true;
}
}
else
{
$this->db_query('ROLLBACK;');
$this->errormsg = "Fehler beim Löschen des Eintrages aufgetreten";
return false;
}
}
/**
* Löscht einen gesamten DMS Eintrag inklusive aller Versionen und Projekteinträge
* @param $dms_id
*/
public function deleteDms($dms_id)
{
$this->load($dms_id);
$this->getAllVersions($dms_id);
$error = false;
// lösche Versionen
$qry ="BEGIN;DELETE FROM campus.tbl_dms_version WHERE dms_id =".$this->db_add_param($dms_id, FHC_INTEGER)."; ";
$qry.="DELETE FROM fue.tbl_projekt_dokument WHERE dms_id=".$this->db_add_param($dms_id, FHC_INTEGER)."; ";
$qry.="DELETE FROM campus.tbl_dms WHERE dms_id =".$this->db_add_param($dms_id, FHC_INTEGER).";";
if($this->db_query($qry))
{
$this->db_query('COMMIT;');
// Alle Versionen der Datei im Filesystem löschen
foreach($this->result as $obj)
{
if(is_file(DMS_PATH.$obj->filename) && !unlink(DMS_PATH.$obj->filename))
$error = true;
}
if($error)
{
$this->errormsg = "Fehler beim Löschen des Dokuments aufgetreten";
return false;
}
else
{
return true;
}
}
else
{
$this->db_query('ROLLBACK;');
$this->errormsg = "Fehler beim Löschen des Eintrages aufgetreten";
return false;
}
}
/**
/**
* Setzt die Zeit des letzten Zugriffs auf die Datei
*
* @param $dms_id
@@ -339,16 +350,16 @@ class dms extends basis_db
if($this->db_num_rows($result) == 0 )
{
$qry ="BEGIN; DELETE FROM campus.tbl_dms_kategorie_gruppe where kategorie_kurzbz =".$this->db_add_param($kategorie_kurzbz, FHC_STRING).";
DELETE FROM campus.tbl_dms_kategorie WHERE kategorie_kurzbz =".$this->db_add_param($kategorie_kurzbz, FHC_STRING).';';
DELETE FROM campus.tbl_dms_kategorie WHERE kategorie_kurzbz =".$this->db_add_param($kategorie_kurzbz, FHC_STRING).';';
if($this->db_query($qry))
{
$this->db_query('COMMIT;');
$this->db_query('COMMIT;');
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen der Daten'."\n";
$this->db_query('ROLLBACK;');
$this->db_query('ROLLBACK;');
return false;
}
}
@@ -489,11 +500,13 @@ class dms extends basis_db
if($new)
{
//Neuen Datensatz einfuegen
$qry='INSERT INTO campus.tbl_dms_kategorie (kategorie_kurzbz, bezeichnung, beschreibung, parent_kategorie_kurzbz) VALUES('.
$this->db_add_param($this->kategorie_kurzbz).', '.
$this->db_add_param($this->bezeichnung).', '.
$this->db_add_param($this->beschreibung).', '.
$this->db_add_param($this->parent_kategorie_kurzbz).');';
$qry='INSERT INTO campus.tbl_dms_kategorie (kategorie_kurzbz, bezeichnung, beschreibung, parent_kategorie_kurzbz, oe_kurzbz, berechtigung_kurzbz) VALUES('.
$this->db_add_param($this->kategorie_kurzbz).', '.
$this->db_add_param($this->bezeichnung).', '.
$this->db_add_param($this->beschreibung).', '.
$this->db_add_param($this->parent_kategorie_kurzbz).', '.
$this->db_add_param($this->kategorie_oe_kurzbz).', '.
$this->db_add_param($this->berechtigung_kurzbz).');';
}
else
{
@@ -503,7 +516,9 @@ class dms extends basis_db
' kategorie_kurzbz='.$this->db_add_param($this->kategorie_kurzbz).', '.
' bezeichnung='.$this->db_add_param($this->bezeichnung).', '.
' beschreibung='.$this->db_add_param($this->beschreibung).', '.
' parent_kategorie_kurzbz='.$this->db_add_param($this->parent_kategorie_kurzbz).' '.
' parent_kategorie_kurzbz='.$this->db_add_param($this->parent_kategorie_kurzbz).', '.
' oe_kurzbz='.$this->db_add_param($this->kategorie_oe_kurzbz).', '.
' berechtigung_kurzbz='.$this->db_add_param($this->berechtigung_kurzbz).' '.
'WHERE kategorie_kurzbz='.$this->db_add_param($this->kategorie_kurzbz_old).';';
}
@@ -537,6 +552,8 @@ class dms extends basis_db
$this->beschreibung = $row->beschreibung;
$this->parent_kategorie_kurzbz = $row->parent_kategorie_kurzbz;
$this->kategorie_kurzbz_old = $row->kategorie_kurzbz;
$this->kategorie_oe_kurzbz = $row->oe_kurzbz;
$this->berechtigung_kurzbz = $row->berechtigung_kurzbz;
}
return true;
}
@@ -567,6 +584,8 @@ class dms extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->parent_kategorie_kurzbz = $row->parent_kategorie_kurzbz;
$obj->kategorie_oe_kurzbz = $row->oe_kurzbz;
$obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
$this->result[]= $obj;
}
@@ -577,8 +596,7 @@ class dms extends basis_db
/**
* Laedt die Kategorien
* @param $parent_kategorie_kurzbz Wenn die Parent Kategorie übergeben wird, werden nur die direkten
* Unterkategorien geladen
* @param string $parent_kategorie_kurzbz Wenn die Parent Kategorie übergeben wird, werden nur die direkten Unterkategorien geladen
* @return boolean
*/
public function getKategorie($parent_kategorie_kurzbz='')
@@ -600,6 +618,8 @@ class dms extends basis_db
$obj->kategorie_kurzbz = $row->kategorie_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->kategorie_oe_kurzbz = $row->oe_kurzbz;
$obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
$this->result[] = $obj;
}
@@ -663,6 +683,8 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -675,10 +697,35 @@ class dms extends basis_db
}
/**
* Sucht nach Dokumenten
* Zählt die Anzahl an Dokumenten in einer Kategorie
*
* @param $kategorie_kurzbz
*/
public function countDocumentsKategorie($kategorie_kurzbz)
{
$qry = "SELECT count(*) as anzahl FROM campus.tbl_dms WHERE kategorie_kurzbz=".$this->db_add_param($kategorie_kurzbz).";";
if($result = $this->db_query($qry))
{
if($row = $this->db_fetch_object($result))
{
return $row->anzahl;
}
else
return false;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Sucht nach Dokumenten
*
* @param string $suchstring String nach dem gesucht werden soll
*/
public function search($suchstring, $dpp=NULL, $page=NULL)
{
if (!is_null($dpp) && !is_null($page))
@@ -695,12 +742,23 @@ class dms extends basis_db
}
}
$qry = "SELECT * FROM campus.tbl_dms JOIN campus.tbl_dms_version USING(dms_id)
WHERE lower(name) like lower('%".$this->db_escape($suchstring)."%')
OR lower(beschreibung) like lower('%".$this->db_escape($suchstring)."%')
$qry = "SELECT tbl_dms.*, tbl_dms_version.*, tbl_dms_kategorie.berechtigung_kurzbz FROM campus.tbl_dms
JOIN campus.tbl_dms_version USING(dms_id)
JOIN campus.tbl_dms_kategorie USING (kategorie_kurzbz)";
// Wenn erstes Zeichen # ist, dieses wegkürzen und checken ob der Rest numerisch ist. Dann nach eindeutiger ID suchen
if (substr($suchstring, 0, 1) == '#')
{
$suchstring = substr($suchstring, 1);
if (is_numeric($suchstring))
$qry .= " WHERE tbl_dms.dms_id = ".$this->db_add_param($suchstring, FHC_INTEGER);
}
else
{
$qry .= " WHERE lower(name) like lower('%".$this->db_escape($suchstring)."%')
OR lower(tbl_dms_version.beschreibung) like lower('%".$this->db_escape($suchstring)."%')
";
}
if (is_numeric($suchstring))
$qry.= " OR dms_id = ".$this->db_escape($suchstring)."";
@@ -728,6 +786,9 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
$this->result[] = $obj;
}
@@ -740,19 +801,19 @@ class dms extends basis_db
}
/**
* Sucht nach Dokumenten (nur Spalte Beschreibung) mit der aktuellsten Version.
* Sucht nach Dokumenten (Spalte schlagworte) mit der aktuellsten Version, bei denen cis_suche true ist
* Optional kann die Anzahl an Suchergebnissen übergeben werden.
*
* @param suchstring
* @param limit (optional)
* @param string $suchstring
* @param integer $limit (optional)
*/
public function searchLastVersion($suchstring, $limit=null)
{
$qry = "SELECT * FROM campus.tbl_dms JOIN campus.tbl_dms_version USING(dms_id)
WHERE 1=1 ";
$qry = "SELECT * FROM campus.tbl_dms JOIN campus.tbl_dms_version USING(dms_id)
WHERE cis_suche=true ";
foreach($suchstring as $value)
$qry.=" AND (lower(beschreibung::text) like lower('%".$this->db_escape($value)."%')
OR lower (beschreibung::text) like lower ('%".$this->db_escape(htmlentities($value,ENT_NOQUOTES,'UTF-8'))."%'))";
$qry.=" AND (lower(schlagworte::text) like lower('%".$this->db_escape($value)."%')
OR lower (schlagworte::text) like lower ('%".$this->db_escape(htmlentities($value,ENT_NOQUOTES,'UTF-8'))."%'))";
$qry.= "AND version=(SELECT MAX(version) FROM campus.tbl_dms_version where dms_id=tbl_dms.dms_id)";
if(!is_null($limit) && is_numeric($limit))
@@ -777,6 +838,8 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -791,7 +854,7 @@ class dms extends basis_db
/**
*
* lädt alle Versionen zu einer übergebenen ID
* @param $id der zu ladenden Dokumente
* @param integer $id ID der zu ladenden Dokumente
*/
public function getAllVersions($dms_id)
{
@@ -823,6 +886,8 @@ class dms extends basis_db
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->version = $row->version;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -899,6 +964,8 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -948,6 +1015,8 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -998,6 +1067,8 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -1346,6 +1417,8 @@ class dms extends basis_db
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->cis_suche = $this->db_parse_bool($row->cis_suche);
$obj->schlagworte = $row->schlagworte;
$this->result[] = $obj;
}
@@ -1366,8 +1439,8 @@ class dms extends basis_db
$qry.= " AND parent_kategorie_kurzbz=".$this->db_add_param($parent_kategorie_kurzbz);
else
$qry.=" AND parent_kategorie_kurzbz is null";
$qry.=";";
$qry.=";";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
@@ -1378,6 +1451,9 @@ class dms extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->parent_kategorie_kurzbz = $row->parent_kategorie_kurzbz;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
$this->result[] = $obj;
}
+1 -1
View File
@@ -575,7 +575,7 @@ class organisationseinheit extends basis_db
OR (LOWER(bezeichnung) LIKE LOWER(\'%'.$this->db_escape($value).'%\'))';
}
$qry.= ' ORDER BY organisationseinheittyp_kurzbz, bezeichnung;';
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
+1
View File
@@ -1105,6 +1105,7 @@ class prestudent extends person
$this->studienplan_bezeichnung = $row->studienplan_bezeichnung;
$this->rt_stufe = $row->rt_stufe;
$this->statusgrund_id = $row->statusgrund_id;
$this->anmerkung = $row->anmerkung;
return true;
}
else
+2 -2
View File
@@ -109,7 +109,7 @@ $menu=array
'Benutzer'=>array
(
'name'=>'Benutzer','permissions'=>array('admin','lv-plan','support'),
'Funktionen'=>array('name'=>'Funktionen', 'link'=>'personen/funktion.php', 'target'=>'main'),
'Funktionen'=>array('name'=>'Funktionen', 'link'=>'personen/funktion.php', 'target'=>'main', 'permissions'=>array('mitarbeiter')),
'Berechtigungen'=>array('name'=>'Berechtigungen', 'link'=>'stammdaten/benutzerberechtigung_frameset.html', 'target'=>'main','permissions'=>array('basis/berechtigung')),
'Rollen'=>array('name'=>'Rollen', 'link'=>'stammdaten/berechtigungrolle.php', 'target'=>'main','permissions'=>array('basis/berechtigung')),
'Variablen'=>array('name'=>'Variablen', 'link'=>'stammdaten/variablen_frameset.html', 'target'=>'main', 'target'=>'main','permissions'=>array('basis/variable')),
@@ -188,7 +188,7 @@ $menu=array
'Firmenwartung'=>array('name'=>'Firmenwartung', 'link'=>'stammdaten/firma_zusammen_uebersicht.php', 'target'=>'main','permissions'=>array('basis/firma')),
'checkStudenten'=>array('name'=>'CheckStudenten', 'link'=>'../system/checkStudenten.php', 'target'=>'main', 'permissions'=>array('student/stammdaten')),
'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main','permissions'=>array('assistenz')),
'lv_merge'=>array('name'=>'LVs zusammenlegen', 'link'=>'lehre/lv_merge.php', 'target'=>'main','permissions'=>array('admin','lv-plan')),
'lv_merge'=>array('name'=>'LVs zusammenlegen', 'link'=>'lehre/lv_merge.php', 'target'=>'main','permissions'=>array('lehre/lehrveranstaltung')),
'akteupdate'=>array('name'=>'Akten überschreiben', 'link'=>'personen/akteupdate.php', 'target'=>'main','permissions'=>array('admin')),
),
'Auswertung'=> array
+33
View File
@@ -148,6 +148,39 @@ class zeitaufzeichnung extends basis_db
}
}
// ER - Checks
if ($this->aktivitaet_kurzbz == 'Ersatzruhe')
{
$check_qry = "SELECT count(*) from campus.tbl_zeitaufzeichnung where uid=".$this->db_add_param($this->uid)." and (start < ".$this->db_add_param($this->ende)." and ende > ".$this->db_add_param($this->start).")";
if ($this->zeitaufzeichnung_id)
$check_qry .= " and zeitaufzeichnung_id != ".$this->db_add_param($this->zeitaufzeichnung_id);
if($this->db_query($check_qry))
{
if($row = $this->db_fetch_object())
{
if ($row->count)
{
$this->errormsg = 'Ersatzruhe darf nicht Überlappen!';
return false;
}
}
}
}
if ($this->aktivitaet_kurzbz != 'Ersatzruhe')
{
$check_qry = "SELECT count(*) from campus.tbl_zeitaufzeichnung where uid=".$this->db_add_param($this->uid)." and aktivitaet_kurzbz = 'Ersatzruhe' and (start < ".$this->db_add_param($this->ende)." and ende > ".$this->db_add_param($this->start).")";
if($this->db_query($check_qry))
{
if($row = $this->db_fetch_object())
{
if ($row->count)
{
$this->errormsg = 'Eintrag darf nicht mit Ersatzruhe Überlappen!';
return false;
}
}
}
}
if($this->new)
{