- Berechtigungskonzept

This commit is contained in:
Andreas Österreicher
2007-10-15 15:43:50 +00:00
parent c64c3992f6
commit 7ad85bbbe3
33 changed files with 2152 additions and 1254 deletions
+290 -186
View File
@@ -55,7 +55,7 @@ $error = false;
//Berechtigungen laden
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz'))
{
$return = false;
$errormsg = 'Keine Berechtigung';
@@ -68,67 +68,108 @@ if(!$error)
//in der Variable type wird die auszufuehrende Aktion mituebergeben
if(isset($_POST['type']) && $_POST['type']=='adressesave') // ***** ADRESSEN ***** //
{
//Speichert die Adressdaten in die Datenbank
$adresse = new adresse($conn, null, true);
if($_POST['neu']=='false')
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$adresse->load($_POST['adresse_id']);
$adresse->new = false;
$return = false;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
else
{
$adresse->insertamum = date('Y-m-d H:i:s');
$adresse->insertvon = $user;
$adresse->new = true;
}
$adresse->adresse_id = $_POST['adresse_id'];
$adresse->person_id = $_POST['person_id'];
$adresse->name = $_POST['name'];
$adresse->strasse = $_POST['strasse'];
$adresse->plz = $_POST['plz'];
$adresse->ort = $_POST['ort'];
$adresse->gemeinde = $_POST['gemeinde'];
$adresse->nation = $_POST['nation'];
$adresse->typ = $_POST['typ'];
$adresse->heimatadresse = ($_POST['heimatadresse']=='true'?true:false);
$adresse->zustelladresse = ($_POST['zustelladresse']=='true'?true:false);
$adresse->firma_id = $_POST['firma_id'];
$adresse->updateamum = date('Y-m-d H:i:s');
$adresse->updatevon = $user;
//Wenn die Nation Oesterreich ist, dann muss die Gemeinde in der Tabelle Gemeinde vorkommen
if($_POST['nation']=='A')
{
$qry = "SELECT * FROM bis.tbl_gemeinde WHERE lower(name)=lower('".addslashes($_POST['gemeinde'])."') AND plz='".addslashes($_POST['plz'])."'";
if($result = pg_query($conn, $qry))
//Speichert die Adressdaten in die Datenbank
$adresse = new adresse($conn, null, true);
if($_POST['neu']=='false')
{
if($row = pg_fetch_object($result))
$adresse->load($_POST['adresse_id']);
$adresse->new = false;
}
else
{
$adresse->insertamum = date('Y-m-d H:i:s');
$adresse->insertvon = $user;
$adresse->new = true;
}
$adresse->adresse_id = $_POST['adresse_id'];
$adresse->person_id = $_POST['person_id'];
$adresse->name = $_POST['name'];
$adresse->strasse = $_POST['strasse'];
$adresse->plz = $_POST['plz'];
$adresse->ort = $_POST['ort'];
$adresse->gemeinde = $_POST['gemeinde'];
$adresse->nation = $_POST['nation'];
$adresse->typ = $_POST['typ'];
$adresse->heimatadresse = ($_POST['heimatadresse']=='true'?true:false);
$adresse->zustelladresse = ($_POST['zustelladresse']=='true'?true:false);
$adresse->firma_id = $_POST['firma_id'];
$adresse->updateamum = date('Y-m-d H:i:s');
$adresse->updatevon = $user;
//Wenn die Nation Oesterreich ist, dann muss die Gemeinde in der Tabelle Gemeinde vorkommen
if($_POST['nation']=='A')
{
$qry = "SELECT * FROM bis.tbl_gemeinde WHERE lower(name)=lower('".addslashes($_POST['gemeinde'])."') AND plz='".addslashes($_POST['plz'])."'";
if($result = pg_query($conn, $qry))
{
$adresse->gemeinde = $row->name;
if($row = pg_fetch_object($result))
{
$adresse->gemeinde = $row->name;
}
else
{
$error = true;
$errormsg = 'Gemeinde ist ungueltig';
$return = false;
}
}
else
{
$error = true;
$errormsg = 'Gemeinde ist ungueltig';
$errormsg = 'Fehler beim Ermitteln der Gemeinde';
$return = false;
}
}
else
if(!$error)
{
$error = true;
$errormsg = 'Fehler beim Ermitteln der Gemeinde';
$return = false;
if($adresse->save())
{
$return = true;
$data = $adresse->adresse_id;
}
else
{
$return = false;
$errormsg = $adresse->errormsg;
}
}
}
if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='adressedelete')
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
if($adresse->save())
$return = false;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
//Loescht Adressen aus der DB
$adresse = new adresse($conn, null, true);
if($adresse->delete($_POST['adresse_id']))
{
$return = true;
$data = $adresse->adresse_id;
}
else
{
@@ -137,196 +178,259 @@ if(!$error)
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='adressedelete')
{
//Loescht Adressen aus der DB
$adresse = new adresse($conn, null, true);
if($adresse->delete($_POST['adresse_id']))
{
$return = true;
}
else
{
$return = false;
$errormsg = $adresse->errormsg;
}
}
elseif(isset($_POST['type']) && $_POST['type']=='kontaktsave') // ***** KONTAKT ***** //
{
//Speichert die Kontaktdaten in die Datenbank
$kontakt = new kontakt($conn, null, true);
if($_POST['neu']=='false')
{
$kontakt->load($_POST['kontakt_id']);
$kontakt->new = false;
}
else
{
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
}
$kontakt->kontakt_id = $_POST['kontakt_id'];
$kontakt->person_id = $_POST['person_id'];
$kontakt->anmerkung = $_POST['anmerkung'];
$kontakt->kontakt = $_POST['kontakt'];
$kontakt->kontakttyp = $_POST['typ'];
$kontakt->zustellung = ($_POST['zustellung']=='true'?true:false);
$kontakt->firma_id = $_POST['firma_id'];
$kontakt->updateamum = date('Y-m-d H:i:s');
$kontakt->updatevon = $user;
if($kontakt->save())
{
$return = true;
$data = $kontakt->kontakt_id;
}
else
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
$errormsg = $kontakt->errormsg;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
//Speichert die Kontaktdaten in die Datenbank
$kontakt = new kontakt($conn, null, true);
if($_POST['neu']=='false')
{
$kontakt->load($_POST['kontakt_id']);
$kontakt->new = false;
}
else
{
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
}
$kontakt->kontakt_id = $_POST['kontakt_id'];
$kontakt->person_id = $_POST['person_id'];
$kontakt->anmerkung = $_POST['anmerkung'];
$kontakt->kontakt = $_POST['kontakt'];
$kontakt->kontakttyp = $_POST['typ'];
$kontakt->zustellung = ($_POST['zustellung']=='true'?true:false);
$kontakt->firma_id = $_POST['firma_id'];
$kontakt->updateamum = date('Y-m-d H:i:s');
$kontakt->updatevon = $user;
if($kontakt->save())
{
$return = true;
$data = $kontakt->kontakt_id;
}
else
{
$return = false;
$errormsg = $kontakt->errormsg;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='kontaktdelete')
{
//Loescht Kontaktdaten aus der Datenbank
$kontakt = new kontakt($conn, null, true);
if($kontakt->delete($_POST['kontakt_id']))
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = true;
$return = false;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
$return = false;
$errormsg = $kontakt->errormsg;
//Loescht Kontaktdaten aus der Datenbank
$kontakt = new kontakt($conn, null, true);
if($kontakt->delete($_POST['kontakt_id']))
{
$return = true;
}
else
{
$return = false;
$errormsg = $kontakt->errormsg;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='bankverbindungsave') // ***** BANKVERBINDUNG ***** //
{
//Speichert die Kontaktdaten in die Datenbank
$bankverbindung = new bankverbindung($conn, null, true);
if($_POST['neu']=='false')
{
$bankverbindung->load($_POST['bankverbindung_id']);
$bankverbindung->new = false;
}
else
{
$bankverbindung->insertamum = date('Y-m-d H:i:s');
$bankverbindung->insertvon = $user;
$bankverbindung->new = true;
}
$bankverbindung->bankverbindung_id = $_POST['bankverbindung_id'];
$bankverbindung->person_id = $_POST['person_id'];
$bankverbindung->name = $_POST['name'];
$bankverbindung->anschrift = $_POST['anschrift'];
$bankverbindung->bic = $_POST['bic'];
$bankverbindung->blz = $_POST['blz'];
$bankverbindung->iban = $_POST['iban'];
$bankverbindung->kontonr = $_POST['kontonr'];
$bankverbindung->typ = $_POST['typ'];
$bankverbindung->verrechnung = ($_POST['verrechnung']=='true'?true:false);
$bankverbindung->updateamum = date('Y-m-d H:i:s');
$bankverbindung->updatevon = $user;
if($bankverbindung->save())
{
$return = true;
$data = $bankverbindung->bankverbindung_id;
}
else
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
$errormsg = $bankverbindung->errormsg;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
//Speichert die Kontaktdaten in die Datenbank
$bankverbindung = new bankverbindung($conn, null, true);
if($_POST['neu']=='false')
{
$bankverbindung->load($_POST['bankverbindung_id']);
$bankverbindung->new = false;
}
else
{
$bankverbindung->insertamum = date('Y-m-d H:i:s');
$bankverbindung->insertvon = $user;
$bankverbindung->new = true;
}
$bankverbindung->bankverbindung_id = $_POST['bankverbindung_id'];
$bankverbindung->person_id = $_POST['person_id'];
$bankverbindung->name = $_POST['name'];
$bankverbindung->anschrift = $_POST['anschrift'];
$bankverbindung->bic = $_POST['bic'];
$bankverbindung->blz = $_POST['blz'];
$bankverbindung->iban = $_POST['iban'];
$bankverbindung->kontonr = $_POST['kontonr'];
$bankverbindung->typ = $_POST['typ'];
$bankverbindung->verrechnung = ($_POST['verrechnung']=='true'?true:false);
$bankverbindung->updateamum = date('Y-m-d H:i:s');
$bankverbindung->updatevon = $user;
if($bankverbindung->save())
{
$return = true;
$data = $bankverbindung->bankverbindung_id;
}
else
{
$return = false;
$errormsg = $bankverbindung->errormsg;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='bankverbindungdelete')
{
//Loescht Bankverbindungen aus der Datenbank
$bankverbindung = new bankverbindung($conn, null, true);
if($bankverbindung->delete($_POST['bankverbindung_id']))
{
$return = true;
}
else
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
$errormsg = $bankverbindung->errormsg;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
//Loescht Bankverbindungen aus der Datenbank
$bankverbindung = new bankverbindung($conn, null, true);
if($bankverbindung->delete($_POST['bankverbindung_id']))
{
$return = true;
}
else
{
$return = false;
$errormsg = $bankverbindung->errormsg;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='funktionsave') // ****************** BENUTZERFUNKTION **************** //
{
$benutzerfunktion = new benutzerfunktion($conn);
if(isset($_POST['neu']) && $_POST['neu']=='true')
if(($_POST['studiengang_kz_berecht']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz_berecht'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz_berecht'], 'suid')) ||
($_POST['studiengang_kz_berecht']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$benutzerfunktion->new = true;
$bentuzerfunktion->insertamum=date('Y-m-d H:i:s');
$benutzerfunktion->insertvon = $user;
$return = false;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
if(isset($_POST['benutzerfunktion_id']))
else
{
$benutzerfunktion = new benutzerfunktion($conn);
if(isset($_POST['neu']) && $_POST['neu']=='true')
{
if($benutzerfunktion->load($_POST['benutzerfunktion_id']))
$benutzerfunktion->new = true;
$bentuzerfunktion->insertamum=date('Y-m-d H:i:s');
$benutzerfunktion->insertvon = $user;
}
else
{
if(isset($_POST['benutzerfunktion_id']))
{
$benutzerfunktion->new = false;
if($benutzerfunktion->load($_POST['benutzerfunktion_id']))
{
$benutzerfunktion->new = false;
}
else
{
$error = true;
$errormsg = 'Fehler beim Laden der Funktion: '.$benutzerfunktion->errormsg;
$return = false;
}
}
else
{
$error = true;
$errormsg = 'Fehler beim Laden der Funktion: '.$benutzerfunktion->errormsg;
$errormsg = 'Benutzerfunktion_id wurde nicht uebergeben';
$return = false;
}
}
else
{
$error = true;
$errormsg = 'Benutzerfunktion_id wurde nicht uebergeben';
$return = false;
}
}
if(!$error)
{
$benutzerfunktion->studiengang_kz = $_POST['studiengang_kz'];
$benutzerfunktion->fachbereich_kurzbz = $_POST['fachbereich_kurzbz'];
$benutzerfunktion->uid = $_POST['uid'];
$benutzerfunktion->funktion_kurzbz = $_POST['funktion_kurzbz'];
$benutzerfunktion->updateamum = date('Y-m-d H:i:s');
$benutzerfunktion->updatevon = $user;
if($benutzerfunktion->save())
if(!$error)
{
$return = true;
$data = $benutzerfunktion->benutzerfunktion_id;
}
else
{
$return = false;
$errormsg = 'Fehler beim Speichern:'.$benutzerfunktion->errormsg.' "'.$_POST['fachbereich_kurzbz'].' "';
$benutzerfunktion->studiengang_kz = $_POST['studiengang_kz'];
$benutzerfunktion->fachbereich_kurzbz = $_POST['fachbereich_kurzbz'];
$benutzerfunktion->uid = $_POST['uid'];
$benutzerfunktion->funktion_kurzbz = $_POST['funktion_kurzbz'];
$benutzerfunktion->updateamum = date('Y-m-d H:i:s');
$benutzerfunktion->updatevon = $user;
if($benutzerfunktion->save())
{
$return = true;
$data = $benutzerfunktion->benutzerfunktion_id;
}
else
{
$return = false;
$errormsg = 'Fehler beim Speichern:'.$benutzerfunktion->errormsg.' "'.$_POST['fachbereich_kurzbz'].' "';
}
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='funktiondelete')
{
if(isset($_POST['benutzerfunktion_id']) && is_numeric($_POST['benutzerfunktion_id']))
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$benutzerfunktion = new benutzerfunktion($conn);
if($benutzerfunktion->delete($_POST['benutzerfunktion_id']))
$return = false;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
else
{
if(isset($_POST['benutzerfunktion_id']) && is_numeric($_POST['benutzerfunktion_id']))
{
$return = true;
}
else
{
$return = false;
$errormsg = 'Fehler beim Loeschen:'.$benutzerfunktion->errormsg;
$benutzerfunktion = new benutzerfunktion($conn);
if($benutzerfunktion->delete($_POST['benutzerfunktion_id']))
{
$return = true;
}
else
{
$return = false;
$errormsg = 'Fehler beim Loeschen:'.$benutzerfunktion->errormsg;
}
}
}
}