diff --git a/cis/private/lvplan/index.php b/cis/private/lvplan/index.php
index 10f055227..b2f7bd135 100644
--- a/cis/private/lvplan/index.php
+++ b/cis/private/lvplan/index.php
@@ -202,6 +202,7 @@ function MM_jumpMenu(targ,selObj,restore){ //v3.0
+
diff --git a/include/benutzerberechtigung.class.php b/include/benutzerberechtigung.class.php
index 125cf62b6..3eb48d353 100644
--- a/include/benutzerberechtigung.class.php
+++ b/include/benutzerberechtigung.class.php
@@ -73,7 +73,47 @@ class benutzerberechtigung extends basis_db
*/
public function load($benutzerberechtigung_id)
{
- return false;
+ if(!is_numeric($benutzerberechtigung_id) || $benutzerberechtigung_id=='')
+ {
+ $this->errormsg = 'benutzerberechtigung_id ist ungueltig';
+ return false;
+ }
+
+ $qry = "SELECT * FROM system.tbl_benutzerrolle WHERE benutzerberechtigung_id='$benutzerberechtigung_id'";
+
+ if($this->db_query($qry))
+ {
+ if($row = $this->db_fetch_object())
+ {
+ $this->benutzerberechtigung_id = $benutzerberechtigung_id;
+ $this->rolle_kurzbz = $row->rolle_kurzbz;
+ $this->berechtigung_kurzbz = $row->berechtigung_kurzbz;
+ $this->uid = $row->uid;
+ $this->funktion_kurzbz = $row->funktion_kurzbz;
+ $this->oe_kurzbz = $row->oe_kurzbz;
+ $this->art = $row->art;
+ $this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
+ $this->start = $row->start;
+ $this->ende = $row->ende;
+ $this->negativ = ($row->negativ=='t'?true:false);
+ $this->updateamum = $row->updateamum;
+ $this->updatevon = $row->updatevon;
+ $this->insertamum = $row->insertamum;
+ $this->insertvon = $row->insertvon;
+
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Es wurde kein Eintrag mit dieser ID gefunden';
+ return false;
+ }
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Berechtigung';
+ return false;
+ }
}
/**
@@ -89,24 +129,9 @@ class benutzerberechtigung extends basis_db
return false;
}
- if(mb_strlen($this->fachbereich_kurzbz)>16)
+ if(mb_strlen($this->berechtigung_kurzbz)>32)
{
- $this->errormsg = 'fachbereich_kurzbz darf nicht laenger als 16 Zeichen sein';
- return false;
- }
- if($this->studiengang_kz!='' && !is_numeric($this->studiengang_kz))
- {
- $this->errormsg = 'Studiengangskennzahl muss eine gueltige Zahl sein';
- return false;
- }
- if(mb_strlen($this->berechtigung_kurzbz)>16)
- {
- $this->errormsg = 'Berechtigung_kurzbz darf nicht laenger als 16 Zeichen sein';
- return false;
- }
- if($this->berechtigung_kurzbz=='')
- {
- $this->errormsg = 'Berechtigung_kurzbz muss angegeben werden';
+ $this->errormsg = 'Berechtigung_kurzbz darf nicht laenger als 32 Zeichen sein';
return false;
}
if(mb_strlen($this->uid)>32)
@@ -114,12 +139,42 @@ class benutzerberechtigung extends basis_db
$this->errormsg = 'UID darf nicht laenger als 32 Zeichen sein';
return false;
}
- if($this->uid=='')
+
+ if($this->rolle_kurzbz=='' && $this->berechtigung_kurzbz=='')
{
- $this->errormsg = 'UID muss angegeben werden';
+ $this->errormsg = 'Es muss entweder eine Rolle oder eine Berechtigung angegeben werden';
+ return false;
+ }
+
+ if($this->rolle_kurzbz!='' && $this->berechtigung_kurzbz!='')
+ {
+ $this->errormsg = 'Rolle und Berechtigung kann nicht gleichzeitig angegeben werden';
+ return false;
+ }
+
+ if($this->uid=='' && $this->funktion_kurzbz=='')
+ {
+ $this->errormsg = 'Ess muss entweder eine UID oder eine Funktion_kurzbz angegeben werden';
+ return false;
+ }
+
+ if($this->uid!='' && $this->funktion_kurzbz!='')
+ {
+ $this->errormsg = 'UID und Funktion_kurzbz kann nicht gleichzeitig angegeben werden';
+ return false;
+ }
+
+ if($this->funktion_kurzbz!='' && $this->oe_kurzbz!='')
+ {
+ $this->errormsg = 'Wenn eine Funktion_kurzbz angegeben wird, darf keine Organisationseinheit eingetragen sein';
+ return false;
+ }
+
+ if($this->art=='')
+ {
+ $this->errormsg = 'Art darf nicht leer sein';
return false;
}
-
return true;
}
@@ -135,68 +190,125 @@ class benutzerberechtigung extends basis_db
if(!$this->validate())
return false;
- /*
if($this->new)
{
- $qry = 'INSERT INTO public.tbl_benutzerberechtigung (art, fachbereich_kurzbz, studiengang_kz, berechtigung_kurzbz,
- uid, studiensemester_kurzbz, start, ende)
- VALUES('.$this->addslashes($this->art).','.
- $this->addslashes($this->fachbereich_kurzbz).','.
- $this->addslashes($this->studiengang_kz).','.
+ $qry = 'INSERT INTO system.tbl_benutzerrolle (rolle_kurzbz, berechtigung_kurzbz, uid, funktion_kurzbz,
+ oe_kurzbz, art, studiensemester_kurzbz, start, ende, negativ, updateamum, updatevon, insertamum, insertvon)
+ VALUES('.$this->addslashes($this->rolle_kurzbz).','.
$this->addslashes($this->berechtigung_kurzbz).','.
$this->addslashes($this->uid).','.
+ $this->addslashes($this->funktion_kurzbz).','.
+ $this->addslashes($this->oe_kurzbz).','.
+ $this->addslashes($this->art).','.
$this->addslashes($this->studiensemester_kurzbz).','.
$this->addslashes($this->start).','.
- $this->addslashes($this->ende).');';
+ $this->addslashes($this->ende).','.
+ ($this->negativ?'true':'false').','.
+ $this->addslashes($this->updateamum).','.
+ $this->addslashes($this->updatevon).','.
+ $this->addslashes($this->insertamum).','.
+ $this->addslashes($this->insertvon).');';
}
else
{
- $qry = 'UPDATE public.tbl_benutzerberechtigung SET'.
+ $qry = 'UPDATE system.tbl_benutzerrolle SET'.
+ ' rolle_kurzbz='.$this->addslashes($this->rolle_kurzbz).','.
+ ' berechtigung_kurzbz='.$this->addslashes($this->berechtigung_kurzbz).','.
+ ' uid='.$this->addslashes($this->uid).','.
+ ' funktion_kurzbz='.$this->addslashes($this->funktion_kurzbz).','.
+ ' oe_kurzbz='.$this->addslashes($this->oe_kurzbz).','.
' art='.$this->addslashes($this->art).','.
- ' fachbereich_kurzbz='.$this->addslashes($this->fachbereich_kurzbz).','.
- ' studiengang_kz='.$this->addslashes($this->studiengang_kz).','.
- ' berechtigung_kurzbz='.$this->addslashes($this->berechtigung_kurzbz).','.
- ' uid='.$this->addslashes($this->uid).','.
' studiensemester_kurzbz='.$this->addslashes($this->studiensemester_kurzbz).','.
' start='.$this->addslashes($this->start).','.
- ' ende='.$this->addslashes($this->ende).
+ ' ende='.$this->addslashes($this->ende).','.
+ ' negativ='.($this->negativ?'true':'false').','.
+ ' updateamum='.$this->addslashes($this->updateamum).','.
+ ' updatevon='.$this->addslashes($this->updatevon).
" WHERE benutzerberechtigung_id='".addslashes($this->benutzerberechtigung_id)."'";
}
- if(p g_query($this->conn,$qry))
+ if($this->db_query($qry))
{
//Log schreiben
return true;
}
else
{
- $this->errormsg = 'Fehler beim Speichern der Benutzerberechtigung:'.$qry;
+ $this->errormsg = 'Fehler beim Speichern der Benutzerberechtigung:'.$qry.$this->db_last_error();
return false;
}
- */
- return false;
}
/**
- * Speichert Benutzerberechtigung in die Datenbank
- * Wenn $new auf true gesetzt ist wird ein neuer Datensatz
- * angelegt, ansonsten der Datensatz upgedated
+ * Loescht einen Eintrag aus der Tabelle benutzerrolle
+ * @param benutzerberechtigung_id
* @return true wenn erfolgreich, false im Fehlerfall
*/
- function delete($benutzerberechtigung_id)
+ public function delete($benutzerberechtigung_id)
{
- /*
- // Berechtigungen holen
- $sql_query="DELETE from tbl_benutzerberechtigung where benutzerberechtigung_id = '".$benutzerberechtigung_id."'";
-
- if(!p g_query($this->conn, $sql_query))
+ if(!is_numeric($benutzerberechtigung_id) || $benutzerberechtigung_id=='')
{
- $this->errormsg='Fehler beim löschen';
+ $this->errormsg = 'benutzerberechtigung_id ist ungültig';
return false;
- }*/
- return false;
+ }
+
+ // Berechtigungen loeschen
+ $sql_query="DELETE FROM system.tbl_benutzerrolle where benutzerberechtigung_id = '$benutzerberechtigung_id'";
+
+ if(!$this->db_query($sql_query))
+ {
+ $this->errormsg='Fehler beim Löschen';
+ return false;
+ }
+ return true;
}
+ /**
+ * Laedt die Benutzerrollen zu einer UID
+ *
+ * @param unknown_type $uid
+ */
+ public function loadBenutzerRollen($uid=null, $funktion_kurzbz=null)
+ {
+ $qry = 'SELECT * FROM system.tbl_benutzerrolle WHERE ';
+
+ if(!is_null($uid))
+ $qry.= " uid='".addslashes($uid)."'";
+ elseif(!is_null($funktion_kurzbz))
+ $qry.= " funktion_kurzbz='".addslashes($funktion_kurzbz)."'";
+ else
+ {
+ $this->errormsg = 'Entweder UID oder funktion_kurzbz muss uebergeben werden';
+ return false;
+ }
+
+ if($this->db_query($qry))
+ {
+ while($row = $this->db_fetch_object())
+ {
+ $obj = new benutzerberechtigung();
+
+ $obj->benutzerberechtigung_id = $row->benutzerberechtigung_id;
+ $obj->rolle_kurzbz = $row->rolle_kurzbz;
+ $obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
+ $obj->uid = $row->uid;
+ $obj->funktion_kurzbz = $row->funktion_kurzbz;
+ $obj->oe_kurzbz = $row->oe_kurzbz;
+ $obj->art = $row->art;
+ $obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
+ $obj->start = $row->start;
+ $obj->ende = $row->ende;
+ $obj->negativ = ($row->negativ=='t'?true:false);
+ $obj->udpateamum = $row->updateamum;
+ $obj->updatevon = $row->updatevon;
+ $obj->insertamum = $row->insertamum;
+ $obj->insertvon = $row->insertvon;
+
+ $this->berechtigungen[] = $obj;
+ }
+ }
+ }
+
/**
* Laedt die Berechtigungen eines Users
* @param $uid
diff --git a/include/berechtigung.class.php b/include/berechtigung.class.php
index d6a07d973..1fcd6036d 100644
--- a/include/berechtigung.class.php
+++ b/include/berechtigung.class.php
@@ -23,7 +23,7 @@ require_once(dirname(__FILE__).'/basis_db.class.php');
class berechtigung extends basis_db
{
- public $berechtigungen=array();
+ public $result=array();
public $new;
public $rolle_kurzbz;
@@ -85,6 +85,7 @@ class berechtigung extends basis_db
$obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
$obj->rolle_kurzbz = $row->rolle_kurzbz;
+ $obj->art = $row->art;
$obj->beschreibung = $row->beschreibung;
$this->result[] = $obj;
@@ -97,5 +98,99 @@ class berechtigung extends basis_db
return false;
}
}
+
+ /**
+ * Laedt die Berechtigungen
+ *
+ * @return boolean
+ */
+ public function getBerechtigungen()
+ {
+ $this->result=array();
+ $qry = 'SELECT * FROM system.tbl_berechtigung ORDER BY berechtigung_kurzbz';
+
+ if($this->db_query($qry))
+ {
+ while($row = $this->db_fetch_object())
+ {
+ $obj = new berechtigung();
+
+ $obj->berechtigung_kurzbz = $row->berechtigung_kurzbz;
+ $obj->beschreibung = $row->beschreibung;
+
+ $this->result[] = $obj;
+ }
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Berechtigungen';
+ return false;
+ }
+ }
+
+ /**
+ * Loescht eine rolleberechtigung zuordnung
+ *
+ * @param $rolle_kurzbz
+ * @param $berechtigung_kurzbz
+ */
+ public function deleteRolleBerechtigung($rolle_kurzbz, $berechtigung_kurzbz)
+ {
+ $qry = "DELETE FROM system.tbl_rolleberechtigung WHERE rolle_kurzbz='".addslashes($rolle_kurzbz)."' AND berechtigung_kurzbz='".addslashes($berechtigung_kurzbz)."';";
+
+ if($this->db_query($qry))
+ {
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Löschen der Zuordnung:'.$this->db_last_error();
+ return false;
+ }
+ }
+
+ /**
+ * Speichert eine RolleBerechtigung Zuordnung
+ *
+ */
+ public function saveRolleBerechtigung()
+ {
+ $qry = "SELECT 1 FROM system.tbl_rolleberechtigung
+ WHERE rolle_kurzbz='".addslashes($this->rolle_kurzbz)."'
+ AND berechtigung_kurzbz='".addslashes($this->berechtigung_kurzbz)."'";
+
+ if($this->db_query($qry))
+ {
+ if($this->db_num_rows()>0)
+ {
+ //Update
+ $qry = "UPDATE system.tbl_rolleberechtigung SET art='".addslashes($this->art)."' WHERE rolle_kurzbz='".addslashes($this->rolle_kurzbz)."' AND berechtigung_kurzbz='".addslashes($this->berechtigung_kurzbz)."';";
+ }
+ else
+ {
+ //Insert
+ $qry = "INSERT INTO system.tbl_rolleberechtigung (rolle_kurzbz, berechtigung_kurzbz, art) VALUES('".
+ addslashes($this->rolle_kurzbz)."','".
+ addslashes($this->berechtigung_kurzbz)."','".
+ addslashes($this->art)."');";
+ }
+
+ if($this->db_query($qry))
+ {
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Speichern: '.$this->db_last_error();
+ return false;
+ }
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Speichern der Zuteilung:'.$this->db_last_error();
+ return false;
+ }
+ }
}
?>
\ No newline at end of file
diff --git a/system/hextobase64.php b/system/hextobase64.php
index 426944d2f..72b8f2617 100644
--- a/system/hextobase64.php
+++ b/system/hextobase64.php
@@ -48,8 +48,11 @@ function hexstr($hex)
$string='';
if (!$len=mb_strlen($hex,'UTF-8'))
return $string;
- for ($i=0;$i\n";
flush();
-
$db = new basis_db();
if (!$db->db_query('BEGIN'))
die('Error:'.$db->db_last_error()." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
@@ -75,21 +76,16 @@ echo "tbl_akte...".date('Y-m-d H:i:s')." \n";
flush();
//Akte
-$beg=microtime(true);
-$beg1=$beg;
$qry = "SELECT akte_id, inhalt FROM public.tbl_akte where inhalt is not null and inhalt>''; \n";
if($result = $db->db_query($qry))
{
echo " \nRecords...".$db->db_num_rows($result)." \n";
flush();
-
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->inhalt=convert($row->inhalt);
- $qry = "UPDATE public.tbl_akte SET inhalt='".$row->inhalt."' WHERE akte_id='".$row->akte_id."'; ";
+ $qry = "UPDATE public.tbl_akte SET inhalt='".$row->inhalt."' WHERE akte_id='".addslashes($row->akte_id)."'; ";
$res=$db->db_query($qry);
if(!$rows=$db->db_affected_rows($res))
{
@@ -97,25 +93,18 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
- echo $row->akte_id."($erg sec), ";
+ echo $row->akte_id.", ";
flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \ntbl_akte...ENDE $erg sec ".$db->db_last_error()." \n";
+#$db->db_free_result($result);
+echo " \ntbl_akte...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -123,22 +112,17 @@ echo " \n";
echo "tbl_person...".date('Y-m-d H:i:s')." \n";
flush();
-$beg=microtime(true);
-$beg1=$beg;
-$qry = "SELECT foto, person_id FROM public.tbl_person WHERE foto is not null and foto>''; \n";
+$qry = "SELECT foto, person_id FROM public.tbl_person WHERE foto is not null and foto>'' ; \n";
if($result = $db->db_query($qry))
{
-
echo " \nRecords...".$db->db_num_rows($result)." \n";
flush();
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->foto=convert($row->foto);
- $qry = "UPDATE public.tbl_person SET foto='".$row->foto."' WHERE person_id='".$row->person_id."'; \n";
+ $qry = "UPDATE public.tbl_person SET foto='".$row->foto."' WHERE person_id='".addslashes($row->person_id)."'; \n";
$res=$db->db_query($qry);
if(!$rows=$db->db_affected_rows($res))
{
@@ -146,25 +130,18 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
- echo $row->person_id."($erg sec), ";
+ echo $row->person_id.", ";
flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \ntbl_person...ENDE $erg sec ".$db->db_last_error()." \n";
+#$db->db_free_result($result);
+echo " \ntbl_person...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -174,9 +151,7 @@ echo " \n";
echo "tbl_frage_sprache bild+audio...".date('Y-m-d H:i:s')." \n";
flush();
-$beg=microtime(true);
-$beg1=$beg;
-$qry = "SELECT bild,audio, frage_id, sprache FROM testtool.tbl_frage_sprache WHERE (bild is not null and bild >'') or (audio is not null and audio >''); \n";
+$qry = "SELECT bild,audio, frage_id, sprache FROM testtool.tbl_frage_sprache WHERE (bild is not null and bild >'') or (audio is not null and audio >'') ; \n";
if($result = $db->db_query($qry))
{
echo " \nRecords...".$db->db_num_rows($result)." \n";
@@ -185,11 +160,10 @@ if($result = $db->db_query($qry))
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
$row->bild=convert($row->bild);
$row->audio=convert($row->audio);
- $qry = "UPDATE testtool.tbl_frage_sprache SET audio=".($row->audio?"'".$row->audio."'":'null')." ,bild=".($row->bild?"'".$row->bild."'":'null')." WHERE frage_id='".$row->frage_id."' AND sprache='".$row->sprache."'; \n";
+ $qry = "UPDATE testtool.tbl_frage_sprache SET audio=".($row->audio?"'".$row->audio."'":'null')." ,bild=".($row->bild?"'".$row->bild."'":'null')." WHERE frage_id='".addslashes($row->frage_id)."' AND sprache='".addslashes($row->sprache)."'; \n";
$res=$db->db_query($qry);
if(!$rows=$db->db_affected_rows($res))
{
@@ -197,25 +171,18 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
-# echo $row->frage_id."($erg sec), ";
-# flush();
+ echo $row->frage_id.", ";
+ flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \ntbl_frage_sprache bild+audio...ENDE $erg sec ".$db->db_last_error()." \n";
+#$db->db_free_result($result);
+echo " \ntbl_frage_sprache bild+audio...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -224,9 +191,7 @@ echo " \n";
echo "testtool.tbl_vorschlag_sprache bild+audio...".date('Y-m-d H:i:s')." \n";
flush();
-$beg=microtime(true);
-$beg1=$beg;
-$qry = "SELECT bild,audio, vorschlag_id, sprache FROM testtool.tbl_vorschlag_sprache WHERE (bild is not null and bild>'') or (audio is not null and audio>''); \n";
+$qry = "SELECT bild,audio, vorschlag_id, sprache FROM testtool.tbl_vorschlag_sprache WHERE (bild is not null and bild>'') or (audio is not null and audio>'') ; \n";
# --->$qry = "SELECT bild, frage_id, sprache FROM testtool.tbl_vorschlag_sprache WHERE bild is not null and bild>''";
if($result = $db->db_query($qry))
{
@@ -236,11 +201,9 @@ if($result = $db->db_query($qry))
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->bild=convert($row->bild);
$row->audio=convert($row->audio);
- $qry = "UPDATE testtool.tbl_vorschlag_sprache SET bild=".($row->bild?"'".$row->bild."'":'null').", audio=".($row->audio?"'".$row->audio."'":'null')." WHERE vorschlag_id='".$row->vorschlag_id."' AND sprache='".$row->sprache."'; \n";
+ $qry = "UPDATE testtool.tbl_vorschlag_sprache SET bild=".($row->bild?"'".$row->bild."'":'null').", audio=".($row->audio?"'".$row->audio."'":'null')." WHERE vorschlag_id='".addslashes($row->vorschlag_id)."' AND sprache='".addslashes($row->sprache)."'; \n";
$res=$db->db_query($qry);
if(!$rows=$db->db_affected_rows($res))
{
@@ -248,25 +211,17 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
-# echo $row->vorschlag_id."($erg sec), ";
-# flush();
+ echo $row->vorschlag_id.", ";
+ flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \ntesttool.tbl_vorschlag_sprache bild + audio...ENDE $erg sec ".$db->db_last_error()." \n";
+echo " \ntesttool.tbl_vorschlag_sprache bild + audio...".date('Y-m-d H:i:s')." ENDE ".date('Y-m-d H:i:s')." ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -275,9 +230,6 @@ echo " \n";
echo "kommune.tbl_wettbewerb icon...".date('Y-m-d H:i:s')." \n";
flush();
-
-$beg=microtime(true);
-$beg1=$beg;
$qry = "SELECT icon, wettbewerb_kurzbz FROM kommune.tbl_wettbewerb WHERE icon is not null and icon>''; \n";
if($result = $db->db_query($qry))
{
@@ -288,8 +240,6 @@ if($result = $db->db_query($qry))
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->icon=convert($row->icon);
$qry = "UPDATE kommune.tbl_wettbewerb SET icon='".$row->icon."' WHERE wettbewerb_kurzbz='".addslashes($row->wettbewerb_kurzbz)."'; \n";
$res=$db->db_query($qry);
@@ -299,25 +249,18 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
-# echo $row->wettbewerb_kurzbz."($erg sec), ";
-# flush();
+ echo $row->wettbewerb_kurzbz.", ";
+ flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \nkommune.tbl_wettbewerb icon...ENDE $erg sec ".$db->db_last_error()." \n";
+#$db->db_free_result($result);
+echo " \nkommune.tbl_wettbewerb icon...".date('Y-m-d H:i:s')." ENDE ".date('Y-m-d H:i:s')." ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -326,8 +269,6 @@ echo " \n";
echo "kommune.tbl_wettbewerb logo...".date('Y-m-d H:i:s')." \n";
flush();
-$beg=microtime(true);
-$beg1=$beg;
$qry = "SELECT logo, team_kurzbz FROM kommune.tbl_team WHERE logo is not null and logo>''; \n";
if($result = $db->db_query($qry))
{
@@ -338,8 +279,6 @@ if($result = $db->db_query($qry))
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->logo=convert($row->logo);
$qry = "UPDATE kommune.tbl_team SET logo='".$row->logo."' WHERE team_kurzbz='".addslashes($row->team_kurzbz)."'";
$res=$db->db_query($qry);
@@ -349,25 +288,17 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
-# echo $row->team_kurzbz."($erg sec), ";
-# flush();
+ echo $row->team_kurzbz.", ";
+ flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \nkommune.tbl_wettbewerb logo...ENDE $erg sec ".$db->db_last_error()." \n";
+echo " \nkommune.tbl_wettbewerb logo...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -376,8 +307,6 @@ echo " \n";
echo "public.tbl_sprache flagge ...".date('Y-m-d H:i:s')." \n";
flush();
-$beg=microtime(true);
-$beg1=$beg;
$qry = "SELECT flagge, sprache FROM public.tbl_sprache WHERE flagge is not null and flagge>''; \n";
if($result = $db->db_query($qry))
{
@@ -387,10 +316,8 @@ if($result = $db->db_query($qry))
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->flagge=convert($row->flagge);
- $qry = "UPDATE public.tbl_sprache SET flagge='".$row->flagge."' WHERE sprache='".$row->sprache."'; \n";
+ $qry = "UPDATE public.tbl_sprache SET flagge='".$row->flagge."' WHERE sprache='".addslashes($row->sprache)."'; \n";
$res=$db->db_query($qry);
if(!$rows=$db->db_affected_rows($res))
{
@@ -398,26 +325,18 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " $i : $erg sec \n";
+ echo " \n";
flush();
}
-
- $erg=number_format( (microtime(true) - $beg2 ),3);
-# echo $row->sprache."($erg sec), ";
-# flush();
+ echo $row->sprache.", ";
+ flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \npublic.tbl_sprache flagge...ENDE $erg sec ".$db->db_last_error()." \n";
+echo " \npublic.tbl_sprache flagge...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -426,8 +345,6 @@ echo " \n";
echo "public.tbl_erhalter logo ...".date('Y-m-d H:i:s')." \n";
flush();
-$beg=microtime(true);
-$beg1=$beg;
$qry = "SELECT logo, erhalter_kz FROM public.tbl_erhalter WHERE logo is not null and logo>''; \n";
if($result = $db->db_query($qry))
{
@@ -437,10 +354,8 @@ if($result = $db->db_query($qry))
$i=0;
while($row = $db->db_fetch_object($result))
{
- $beg2=microtime(true);
-
$row->logo=convert($row->logo);
- $qry = "UPDATE public.tbl_erhalter SET logo='".$row->logo."' WHERE erhalter_kz='".$row->erhalter_kz."'";
+ $qry = "UPDATE public.tbl_erhalter SET logo='".$row->logo."' WHERE erhalter_kz='".addslashes($row->erhalter_kz)."'";
$res=$db->db_query($qry);
if(!$rows=$db->db_affected_rows($res))
{
@@ -448,25 +363,51 @@ if($result = $db->db_query($qry))
$db->db_query('ROLLBACK');
die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
}
- $db->db_free_result($res);
-
- $rest=$i%$next_row_counter;
- if ($i>0 && !$rest)
+
+ if ($i>0 && !$i%$next_row_counter)
{
- $erg=number_format( (microtime(true) - $beg1 ),3);
- $beg1=microtime(true);
- echo " : $next_row_counter Anederungen : $erg sec \n";
+ echo " \n";
flush();
}
- $erg=number_format( (microtime(true) - $beg2 ),3);
-# echo $row->erhalter_kz."($erg sec), ";
-# flush();
+ echo $row->erhalter_kz.", ";
+ flush();
$i++;
}
}
-$db->db_free_result($result);
-$erg=number_format( (microtime(true) - $beg ),3);
-echo " \npublic.tbl_erhalter logo...ENDE $erg sec ".$db->db_last_error()." \n";
+echo " \npublic.tbl_erhalter logo...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
+flush();
+
+echo " \n";
+
+$qry = "SELECT bild, veranstaltungskategorie_kurzbz FROM campus.tbl_veranstaltungskategorie WHERE bild is not null and bild>''; \n";
+if($result = $db->db_query($qry))
+{
+ echo " \nRecords...".$db->db_num_rows($result)." \n";
+ flush();
+
+ $i=0;
+ while($row = $db->db_fetch_object($result))
+ {
+ $row->bild=convert($row->bild);
+ $qry = "UPDATE campus.tbl_veranstaltungskategorie SET bild='".$row->bild."' WHERE veranstaltungskategorie_kurzbz='".addslashes($row->veranstaltungskategorie_kurzbz)."'";
+ $res=$db->db_query($qry);
+ if(!$rows=$db->db_affected_rows($res))
+ {
+ $err=$db->db_last_error();
+ $db->db_query('ROLLBACK');
+ die("Error :" .$err." \n".$qry." \n".' line '. __LINE__ .' ; file ' . __FILE__);
+ }
+ if ($i>0 && !$i%$next_row_counter)
+ {
+ echo " \n";
+ flush();
+ }
+ echo $row->veranstaltungskategorie_kurzbz.", ";
+ flush();
+ $i++;
+ }
+}
+echo " \npublic.tbl_erhalter logo...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()." \n";
flush();
echo " \n";
@@ -477,5 +418,5 @@ else
echo " \nAktualisierung abgeschlossen ".date('Y-m-d H:i:s')."";
#$db->db_query('ROLLBACK');
-
+
?>
\ No newline at end of file
diff --git a/system/update12-20.php b/system/update12-20.php
index 930fec69f..d97664506 100644
--- a/system/update12-20.php
+++ b/system/update12-20.php
@@ -276,6 +276,8 @@ if(!@$db->db_query('SELECT * FROM system.tbl_berechtigung LIMIT 1;'))
GRANT SELECT ON system.tbl_rolle TO GROUP ".DB_CIS_USER_GROUP.";
GRANT SELECT ON system.tbl_rolleberechtigung TO GROUP ".DB_CIS_USER_GROUP.";
+ GRANT SELECT, UPDATE ON system.tbl_benutzerrolle_benutzerberechtigung_id_seq TO GROUP ".DB_FAS_USER_GROUP.";
+ GRANT SELECT, UPDATE ON system.tbl_benutzerrolle_benutzerberechtigung_id_seq TO GROUP ".DB_CIS_USER_GROUP.";
GRANT SELECT, INSERT, UPDATE, DELETE ON system.tbl_benutzerrolle TO GROUP ".DB_FAS_USER_GROUP.";
GRANT SELECT, INSERT, UPDATE, DELETE ON system.tbl_berechtigung TO GROUP ".DB_FAS_USER_GROUP.";
diff --git a/vilesci/stammdaten/benutzerberechtigung_details.php b/vilesci/stammdaten/benutzerberechtigung_details.php
index 03791dc14..9dfdba24e 100644
--- a/vilesci/stammdaten/benutzerberechtigung_details.php
+++ b/vilesci/stammdaten/benutzerberechtigung_details.php
@@ -21,8 +21,7 @@
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
- require_once('../../config/vilesci.config.inc.php');
-
+ require_once('../../config/vilesci.config.inc.php');
require_once('../../include/globals.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
@@ -33,44 +32,37 @@
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
+ $user = get_uid();
- $reloadstr = ""; // neuladen der liste im oberen frame
- $htmlstr = "";
- $errorstr = ""; //fehler beim insert
- $sel = "";
- $chk = "";
- $fb_arr = array();
- $sg_arr = array();
- $b_arr = array();
+ $reloadstr = ''; // neuladen der liste im oberen frame
+ $htmlstr = '';
+ $errorstr = ''; //fehler beim insert
+ $sel = '';
+ $chk = '';
+ $oe_arr = array();
+ $rolle_arr = array();
+ $berechtigung_arr = array();
$st_arr = array();
- $benutzerberechtigung_id = "";
- $art = "";
- $fachbereich_kurzbz = "";
- $studiengang_kz ="";
- $studiengang_kurzbz = "";
- $berechtigung_kurzbz = "";
- $uid = "";
- $studiensemester_kz = "";
- $start = "";
- $ende = "";
+ $benutzerberechtigung_id = '';
+ $art = '';
+ $oe_kurzbz = '';
+ $studiengang_kurzbz = '';
+ $berechtigung_kurzbz = '';
+ $uid = '';
+ $studiensemester_kz = '';
+ $start = '';
+ $ende = '';
$neu = false;
+ $negativ = false;
- if(isset($_POST["del"]))
+ if(isset($_POST['del']))
{
- $benutzerberechtigung_id = $_POST["benutzerberechtigung_id"];
- $art = $_POST["art"];
- $fachbereich_kurzbz = $_POST["fachbereich_kurzbz"];
- $studiengang_kz = $_POST["studiengang_kz"];
- $berechtigung_kurzbz = $_POST["berechtigung_kurzbz"];
- $uid = $_POST["uid"];
- $studiensemester_kurzbz = $_POST["studiensemester_kurzbz"];
- $start = $_POST["start"];
- $ende = $_POST["ende"];
+ $benutzerberechtigung_id = $_POST['benutzerberechtigung_id'];
$ber = new benutzerberechtigung();
if(!$ber->delete($benutzerberechtigung_id))
- $errorstr .= "Datensatz konnte nicht gelöscht werden!";
+ $errorstr .= 'Datensatz konnte nicht gelöscht werden!';
$reloadstr .= "
@@ -323,36 +337,6 @@ function unmarkier(id)
document.getElementById(id).style.background = "#eeeeee";
}
-function unchanged()
-{
- document.studiengangform.reset();
- document.studiengangform.schick.disabled = true;
- document.getElementById("submsg").style.visibility="hidden";
- checkmail();
- checkdate(document.studiengangform.bescheidvom);
- checkdate(document.studiengangform.titelbescheidvom);
- checkrequired(document.studiengangform.kurzbz);
- checkrequired(document.studiengangform.bezeichnung);
- checkrequired(document.studiengangform.studiengang_kz);
-}
-
-function checkmail()
-{
- if((document.studiengangform.email.value != "")&&(!emailCheck(document.studiengangform.email.value)))
- {
- //document.studiengangform.schick.disabled = true;
- document.studiengangform.email.className="input_error";
- return false;
- }
- else
- {
- document.studiengangform.email.className = "input_ok";
- //document.studiengangform.schick.disabled = false;
- //document.getElementById("submsg").style.visibility="visible";
- return true;
- }
-}
-
function checkdate(feld)
{
if ((feld.value != "") && (!dateCheck(feld)))
@@ -384,27 +368,9 @@ function checkrequired(feld)
return true;
}
}
-
-function submitable()
+function setnull(id)
{
- mail = checkmail();
- date1 = checkdate(document.studiengangform.bescheidvom);
- date2 = checkdate(document.studiengangform.titelbescheidvom);
- required1 = checkrequired(document.studiengangform.kurzbz);
- required2 = checkrequired(document.studiengangform.bezeichnung);
- required3 = checkrequired(document.studiengangform.studiengang_kz);
-
- if((!mail) || (!date1) || (!date2) || (!required1) || (!required2) || (!required3))
- {
- document.studiengangform.schick.disabled = true;
- document.getElementById("submsg").style.visibility="hidden";
- }
- else
- {
- document.studiengangform.schick.disabled = false;
- document.getElementById("submsg").style.visibility="visible";
-
- }
+ document.getElementById(id).selectedIndex=0;
}
diff --git a/vilesci/stammdaten/benutzerberechtigung_uebersicht.php b/vilesci/stammdaten/benutzerberechtigung_uebersicht.php
index 6bfb11751..5a4ea200b 100644
--- a/vilesci/stammdaten/benutzerberechtigung_uebersicht.php
+++ b/vilesci/stammdaten/benutzerberechtigung_uebersicht.php
@@ -20,28 +20,29 @@
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
-
- require_once('../../config/vilesci.config.inc.php');
- require_once('../../include/basis_db.class.php');
- if (!$db = new basis_db())
- die('Es konnte keine Verbindung zum Server aufgebaut werden.');
-
-
- require_once('../../include/functions.inc.php');
+ require_once('../../config/vilesci.config.inc.php');
+ require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
+ if (!$db = new basis_db())
+ die('Es konnte keine Verbindung zum Server aufgebaut werden.');
+
$htmlstr = "";
- $sql_query = "select distinct(tbl_benutzerberechtigung.uid), tbl_person.nachname, tbl_person.vorname from tbl_benutzerberechtigung, tbl_benutzer, tbl_person where tbl_benutzerberechtigung.uid = tbl_benutzer.uid and tbl_benutzer.person_id = tbl_person.person_id order by tbl_benutzerberechtigung.uid";
+ $sql_query = "SELECT distinct(tbl_benutzerrolle.uid), tbl_person.nachname, tbl_person.vorname
+ FROM system.tbl_benutzerrolle, public.tbl_benutzer, public.tbl_person
+ WHERE tbl_benutzerrolle.uid = tbl_benutzer.uid
+ AND tbl_benutzer.person_id = tbl_person.person_id
+ ORDER BY tbl_benutzerrolle.uid";
if(!$erg=$db->db_query($sql_query))
{
- $htmlstr='Fehler beim laden der Berechtigungen';
+ $htmlstr='Fehler beim Laden der Berechtigungen';
}
else
{
- //$htmlstr = "\n";
+ $htmlstr .= "";
$htmlstr .= "";
$htmlstr .= "";
$htmlstr .= " ";
@@ -67,7 +68,7 @@
?>
-Studiengänge Uebersicht
+Berechtigungen Uebersicht
diff --git a/vilesci/stammdaten/berechtigungrolle.php b/vilesci/stammdaten/berechtigungrolle.php
new file mode 100644
index 000000000..392e0d601
--- /dev/null
+++ b/vilesci/stammdaten/berechtigungrolle.php
@@ -0,0 +1,160 @@
+
+ * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
+ * Rudolf Hangl < rudolf.hangl@technikum-wien.at >
+ * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
+ */
+ require_once('../../config/vilesci.config.inc.php');
+ require_once('../../include/functions.inc.php');
+ require_once('../../include/berechtigung.class.php');
+ require_once('../../include/benutzerberechtigung.class.php');
+
+ $user = get_uid();
+
+ /*
+ $rechte = new benutzerberechtigung();
+ $rechte->getBerechtigungen($user);
+
+ if(!$rechte->isBerechtigt('admin'))
+ die('Sie müssen Administratorrechte besitzen, um diese Seite anzuzeigen');
+ */
+?>
+
+
+Berechtigungen Uebersicht
+
+
+
+
+
+
+
+Berechtigung - Rolle - Übersicht
+
+rolle_kurzbz = $rolle_kurzbz;
+ $berechtigung->berechtigung_kurzbz = $berechtigung_kurzbz;
+ $berechtigung->art = $art;
+
+ if($berechtigung->saveRolleBerechtigung())
+ {
+ echo 'Zuteilung gespeichert';
+ }
+ else
+ {
+ echo 'Fehler beim Speichern der Zuteilung:',$berechtigung->errormsg;
+ }
+ }
+ }
+
+ if(isset($_GET['delete']))
+ {
+ $berechtigung = new berechtigung();
+ if(!$berechtigung->deleteRolleBerechtigung($rolle_kurzbz, $berechtigung_kurzbz))
+ echo 'Fehler beim Löschen: ',$berechtigung->errormsg;
+ else
+ echo 'Berechtigung gelöscht!';
+ }
+
+ echo ' Zurück';
+ echo 'RolleBerechtigung "',$rolle_kurzbz,'":';
+
+ $berechtigung = new berechtigung();
+ $berechtigung->getBerechtigungen();
+
+ echo '';
+
+
+ echo '
+
+
+ | Kurzbz |
+ Art |
+ Beschreibung |
+ |
+
+
+ ';
+
+ $berechtigung = new berechtigung();
+ $berechtigung->getRolleBerechtigung($rolle_kurzbz);
+
+ foreach($berechtigung->result as $rolle)
+ {
+ echo '';
+ echo '| ',$rolle->berechtigung_kurzbz,' | ';
+ echo '',$rolle->art,' | ';
+ echo '',$rolle->beschreibung,' | ';
+ echo 'entfernen | ';
+ echo '';
+ }
+ echo ' ';
+
+}
+else
+{
+ //Tabelle mit Rollen anzeigen
+ $berechtigung = new berechtigung();
+ $berechtigung->getRollen();
+
+ echo 'Rollen:';
+ echo '
+
+
+ | Kurzbz |
+ Beschreibung |
+ Berechtigungen zuordnen |
+
+ ';
+
+ foreach($berechtigung->result as $rolle)
+ {
+ echo '';
+ echo '| ',$rolle->rolle_kurzbz,' | ';
+ echo '',$rolle->beschreibung,' | ';
+ echo 'bearbeiten | ';
+ echo '';
+ }
+ echo ' ';
+}
+?>
+
+
+
|