diff --git a/cis/private/.htaccess b/cis/private/.htaccess index fcf4467c8..41e0f3b5d 100644 --- a/cis/private/.htaccess +++ b/cis/private/.htaccess @@ -1,6 +1,8 @@ AuthName "Technikum-Wien" -AuthType Basic -AuthLDAPURL ldap://pdc1.technikum-wien.at/ou=People,dc=technikum-wien,dc=at?uid?one?objectClass=posixAccount +AuthType Basic +AuthLDAPURL ldap://ldap.technikum-wien.at/ou=People,dc=technikum-wien,dc=at?uid?one?objectclass=posixAccount +AuthLDAPGroupAttributeIsDN Off +AuthLDAPGroupAttribute memberuid require group cn=fhadmin,ou=Group,dc=technikum-wien,dc=at require user trob require user wahl @@ -33,5 +35,4 @@ require user kubicka require user lehner require user schwarzl require user horauer -require user nestlang -require user ruhan +require user me diff --git a/cis/private/menu.php b/cis/private/menu.php index 56462b185..56349b8ed 100644 --- a/cis/private/menu.php +++ b/cis/private/menu.php @@ -19,7 +19,6 @@ * Andreas Oesterreicher and * Rudolf Hangl . */ -echo 'test'; require_once('../config.inc.php'); require_once('../../include/globals.inc.php'); require_once('../../include/functions.inc.php'); diff --git a/content/bildupload.php b/content/bildupload.php index ce6794506..3e9b45e93 100644 --- a/content/bildupload.php +++ b/content/bildupload.php @@ -26,6 +26,7 @@ require_once('../include/functions.inc.php'); require_once('../include/person.class.php'); require_once('../include/benutzerberechtigung.class.php'); +$PHP_SELF = $_SERVER['PHP_SELF']; echo ""; //wandelt einen String in HEX-Werte um function strhex($string) diff --git a/content/fas.xul.php b/content/fas.xul.php index b425f502f..4c67d515c 100644 --- a/content/fas.xul.php +++ b/content/fas.xul.php @@ -24,6 +24,7 @@ echo ''; require_once('../vilesci/config.inc.php'); require_once('../include/functions.inc.php'); require_once('../include/fas/benutzer.class.php'); +require_once('../include/benutzerberechtigung.class.php'); // Testumgebung $user=get_uid(); @@ -38,6 +39,10 @@ $error_msg.=loadVariables($conn,$user); $benutzer = new benutzer($conn); if(!$benutzer->loadVariables($user)) $error_msg = $benutzer->errormsg; + +$rechte = new benutzerberechtigung($conn); +$rechte->getBerechtigungen($user); + /*echo '';*/ echo ''; echo ''; @@ -211,14 +216,32 @@ echo ''; - - - + isBerechtigt('admin') || $rechte->isBerechtigt('lva-verwaltung')) + { + echo ''; + echo ''; + echo ''; + } + if($rechte->isBerechtigt('admin','0') || $rechte->isBerechtigt('mitarbeiter')) + { + echo ''; + } + ?> - - - + isBerechtigt('admin') || $rechte->isBerechtigt('lva-verwaltung')) + { + echo ''; + echo ''; + echo ''; + } + if($rechte->isBerechtigt('admin','0') || $rechte->isBerechtigt('mitarbeiter')) + { + echo ''; + } + ?> @@ -229,7 +252,7 @@ echo ''; - + diff --git a/content/fasDBDML.php b/content/fasDBDML.php index 18df220ec..6d007f4de 100644 --- a/content/fasDBDML.php +++ b/content/fasDBDML.php @@ -53,7 +53,7 @@ $error = false; //Berechtigungen laden $rechte = new benutzerberechtigung($conn); $rechte->getBerechtigungen($user); -if(!$rechte->isBerechtigt('admin')) +if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter')) { $return = false; $errormsg = 'Keine Berechtigung'; diff --git a/content/fasoverlay.xul.php b/content/fasoverlay.xul.php index d0ad5963a..e0b929ac9 100644 --- a/content/fasoverlay.xul.php +++ b/content/fasoverlay.xul.php @@ -22,11 +22,22 @@ header("Content-type: application/vnd.mozilla.xul+xml"); echo ''; -include('../vilesci/config.inc.php'); +require_once('../vilesci/config.inc.php'); +require_once('../include/functions.inc.php'); +require_once('../include/benutzerberechtigung.class.php'); + +if(!$conn = pg_pconnect(CONN_STRING)) + die('Fehler beim Herstellen der DB Verbindung'); + +$user = get_uid(); + +$rechte = new benutzerberechtigung($conn); +$rechte->getBerechtigungen($user); echo ''; echo ''; echo ''; +echo ''; /*echo ''; echo ''; echo '';*/ @@ -36,7 +47,7 @@ echo '';*/ - @@ -169,6 +180,90 @@ echo '';*/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -177,17 +272,37 @@ echo '';*/ - - - + isBerechtigt('admin') || $rechte->isBerechtigt('lva-verwaltung')) + { + echo ''; + echo ''; + echo ''; + } + if($rechte->isBerechtigt('admin','0') || $rechte->isBerechtigt('mitarbeiter')) + { + echo ''; + } + ?> - - - - - - + isBerechtigt('admin') || $rechte->isBerechtigt('lva-verwaltung')) + { + echo ' + + + + + + + '; + } + if($rechte->isBerechtigt('admin','0') || $rechte->isBerechtigt('mitarbeiter')) + { + echo ''; + } + ?> diff --git a/content/mitarbeiter/mitarbeiterDBDML.php b/content/mitarbeiter/mitarbeiterDBDML.php new file mode 100644 index 000000000..4e894bb21 --- /dev/null +++ b/content/mitarbeiter/mitarbeiterDBDML.php @@ -0,0 +1,146 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +// **************************************** +// * Script sorgt fuer den Datenbanzugriff +// * der folgender FASonline Daten: +// * +// * - Adressen +// * - Kontakte +// * - Bankverbindungen +// **************************************** + +require_once('../../vilesci/config.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/log.class.php'); +require_once('../../include/person.class.php'); +require_once('../../include/benutzer.class.php'); +require_once('../../include/mitarbeiter.class.php'); + +$user = get_uid(); + +// Datenbank Verbindung +if (!$conn = pg_pconnect(CONN_STRING)) + $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; + +$return = false; +$errormsg = 'unknown'; +$data = ''; +$error = false; + +//Berechtigungen laden +$rechte = new benutzerberechtigung($conn); +$rechte->getBerechtigungen($user); +if(!$rechte->isBerechtigt('admin','0') && !$rechte->isBerechtigt('mitarbeiter')) +{ + $return = false; + $errormsg = 'Keine Berechtigung'; + $data = ''; + $error = true; +} + +if(!$error) +{ + //in der Variable type wird die auszufuehrende Aktion mituebergeben + if(isset($_POST['type']) && $_POST['type']=='mitarbeitersave') + { + //Speichert die Mitarbeiterdaten + $mitarbeiter = new mitarbeiter($conn, null, true); + + if($mitarbeiter->load($_POST['uid'])) + { + //Werte zuweisen + $mitarbeiter->anrede = $_POST['anrede']; + $mitarbeiter->titelpre = $_POST['titelpre']; + $mitarbeiter->titelpost = $_POST['titelpost']; + $mitarbeiter->vorname = $_POST['vorname']; + $mitarbeiter->vornamen = $_POST['vornamen']; + $mitarbeiter->nachname = $_POST['nachname']; + $mitarbeiter->gebdatum = $_POST['geburtsdatum']; + $mitarbeiter->gebort = $_POST['geburtsort']; + $mitarbeiter->gebzeit = $_POST['geburtszeit']; + $mitarbeiter->anmerkungen = $_POST['anmerkungen']; + $mitarbeiter->homepage = $_POST['homepage']; + $mitarbeiter->svnr = $_POST['svnr']; + $mitarbeiter->ersatzkennzeichen = $_POST['ersatzkennzeichen']; + $mitarbeiter->familienstand = $_POST['familienstand']; + $mitarbeiter->geschlecht = $_POST['geschlecht']; + $mitarbeiter->aktiv = ($_POST['aktiv']=='true'?true:false); + $mitarbeiter->anzahlkinder = $_POST['anzahlderkinder']; + $mitarbeiter->staatsbuergerschaft = $_POST['staatsbuergerschaft']; + $mitarbeiter->geburtsnation = $_POST['geburtsnation']; + $mitarbeiter->sprache = $_POST['sprache']; + $mitarbeiter->kurzbz = $_POST['kurzbezeichnung']; + $mitarbeiter->stundensatz = $_POST['stundensatz']; + $mitarbeiter->telefonklappe = $_POST['telefonklappe']; + $mitarbeiter->lektor = ($_POST['lektor']=='true'?true:false); + $mitarbeiter->fixangestellt = ($_POST['fixangestellt']=='true'?true:false); + $mitarbeiter->ausbildungcode = $_POST['ausbildung']; + $mitarbeiter->anmerkung = $_POST['anmerkung']; + $mitarbeiter->ort_kurzbz = $_POST['ort_kurzbz']; + $mitarbeiter->standort_kurzbz = $_POST['standort_kurzbz']; + $mitarbeiter->alias = $_POST['alias']; + + if($mitarbeiter->save()) + { + $return = true; + } + else + { + $errormsg = $mitarbeiter->errormsg; + $return = false; + } + } + else + { + $errormsg = $mitarbeiter->errormsg; + $return = false; + } + } + else + { + $return = false; + $errormsg = 'Unkown type'; + $data = ''; + } +} + +//RDF mit den Returnwerden ausgeben +echo ' + + + + + '.($return?'true':'false').' + + + + + + +'; +?> \ No newline at end of file diff --git a/content/mitarbeiter/mitarbeiterdetailoverlay.xul.php b/content/mitarbeiter/mitarbeiterdetailoverlay.xul.php new file mode 100644 index 000000000..46190c528 --- /dev/null +++ b/content/mitarbeiter/mitarbeiterdetailoverlay.xul.php @@ -0,0 +1,267 @@ +'; + +?> + + + + + + + + +