Syncro für Berechtigungen WaWi->FHC

This commit is contained in:
Andreas Österreicher
2010-12-21 14:59:19 +00:00
parent dc1c0d4dc1
commit 5a8822a88d
5 changed files with 345 additions and 4 deletions
+5 -2
View File
@@ -805,6 +805,9 @@ class benutzerberechtigung extends basis_db
foreach ($this->berechtigungen as $b)
{
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)
&& (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)))
{
@@ -826,7 +829,7 @@ class benutzerberechtigung extends basis_db
}
else
{
if(!is_null($b->oe_kurzbz))
if($b->oe_kurzbz!='')
{
$childoes = $oe->getChilds($b->oe_kurzbz);
foreach($childoes as $row)
@@ -869,7 +872,7 @@ class benutzerberechtigung extends basis_db
if(count($not)>0)
$qry.=" AND oe_kurzbz NOT IN(".$this->implode4SQL($not).")";
}
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
+63
View File
@@ -39,6 +39,69 @@ class berechtigung extends basis_db
parent::__construct();
}
/**
* Laedt eine Berechtigung
* @param $berechtigung_kurzbz
* @return true wenn ok, false im Fehlerfall
*/
public function load($berechtigung_kurzbz)
{
$qry = "SELECT * FROM system.tbl_berechtigung WHERE berechtigung_kurzbz='".addslashes($berechtigung_kurzbz)."'";
if($result = $this->db_query($qry))
{
if($row = $this->db_fetch_object($result))
{
$this->berechtigung_kurzbz=$row->berechtigung_kurzbz;
$this->beschreibung = $row->beschreibung;
return true;
}
else
{
$this->errormsg = 'Eintrag wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Speichert eine Berechtigung
*
*/
public function save($new=null)
{
if(is_null($new))
$new = $this->new;
if($new)
{
$qry = "INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) VALUES(".
$this->addslashes($this->berechtigung_kurzbz).','.
$this->addslashes($this->beschreibung).');';
}
else
{
$qry = 'UPDATE system.tbl_berechtigung
SET beschreibung='.$this->addslashes($this->beschreibung).'
WHERE berechtigung_kurzbz='.$this->addslashes($this->berechtigung_kurzbz).';';
}
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern: '.$this->db_last_error();
return false;
}
}
/**
* Holt alle BerechtigungsRollen
* @return true wenn erfolgreich, false im Fehlerfall