This commit is contained in:
Andreas Österreicher
2007-10-24 12:19:58 +00:00
parent 577cb170e8
commit 63afde0bd5
12 changed files with 111 additions and 63 deletions
+7 -7
View File
@@ -63,16 +63,16 @@
$short_short_name = $lv->lehreverzeichnis;
$rechte = new benutzerberechtigung($sql_conn);
$rechte->getBerechtigungen($user);
//Handbuch ausliefern
$rechte->getBerechtigungen($user);
//Handbuch ausliefern
if (isset($_GET["handbuch"])){
$filename = BENOTUNGSTOOL_PATH."handbuch_benotungstool.pdf";
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="handbuch_benotungstool.pdf"');
readfile($filename);
exit;
}
}
?>
<html>
@@ -144,7 +144,7 @@
<td class="tdvertical" align="center">
<?php
//Berechtigungen auf Fachbereichsebene
$qry = "SELECT distinct fachbereich_kurzbz FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehrfach USING (lehrfach_id) WHERE lehrveranstaltung_id='$lvid'";
$qry = "SELECT distinct fachbereich_kurzbz, studiengang_kz FROM campus.vw_lehreinheit WHERE lehrveranstaltung_id='$lvid'";
if(isset($angezeigtes_stsem) && $angezeigtes_stsem!='')
$qry .= " AND studiensemester_kurzbz='$angezeigtes_stsem'";
@@ -152,7 +152,7 @@
{
while($row = pg_fetch_object($result))
{
if($rechte->isBerechtigt('lehre',null,null,$row->fachbereich_kurzbz))
if($rechte->isBerechtigt('lehre',null,null,$row->fachbereich_kurzbz) || $rechte->isBerechtigt('assistenz',$row->studiengang_kz))
$user_is_allowed_to_upload=true;
}
}
@@ -489,7 +489,7 @@
?>
<a href="benotungstool/verwaltung.php?<?php echo "lvid=$lvid$studiensem"?>" >
<img src="../../../skin/images/button_kt.jpg" width="67" height="45"><br>
<strong>Benotungstool<br>("Kreuzerl"-Tool)</strong></a><br>
<strong>Benotungstool<br>("Kreuzerl"-Tool)</strong></a><br>
<a href="lesson.php?handbuch=1&<?php echo "lvid=$lvid$studiensem"?>">Handbuch [PDF]</a>
<?php } else { ?>
<a href="benotungstool/studentenansicht.php?<?php echo "lvid=$lvid"?>" >
+35 -6
View File
@@ -161,7 +161,7 @@ A:hover {
echo '<td align="middle" class="MarkLine" colSpan="5" height="49">';
echo '<form method="post" action="" enctype="multipart/form-data">';
if(!($num_rows_lector_dispatch > 0) && !$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre'))
if(!($num_rows_lector_dispatch > 0) && !$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre') && !$rechte->isBerechtigt('assistenz'))
{
die('<p align="center"><strong>Es konnten keine Studieng&auml;nge definiert werden!</strong></p>');
}
@@ -239,7 +239,36 @@ A:hover {
$stg_arr[$row->studiengang_kz]=$row->kurzbz;
}
}
//Assistenz Berechtigungen auf Studiengangsebene
if($rechte->isBerechtigt('assistenz'))
{
$arr = $rechte->getStgKz('assistenz');
if(isset($arr[0]) && $arr[0]==0) //Berechtigt fuer alle Stg
{
$sql_query="SELECT studiengang_kz, kurzbzlang, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kurzbz FROM public.tbl_studiengang WHERE studiengang_kz<>0 ORDER BY kurzbz";
$result_stg=pg_exec($sql_conn,$sql_query);
while($row = pg_fetch_object($result_stg))
if(!array_key_exists($row->studiengang_kz,$stg_arr))
$stg_arr[$row->studiengang_kz]=$row->kurzbz;
}
else //Berechtigt fuer einen Teil der Studiengaenge
{
$ids='-1';
foreach ($arr as $elem)
$ids.=",'$elem'";
$sql_query = "SELECT studiengang_kz, kurzbzlang, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kurzbz FROM public.tbl_studiengang WHERE studiengang_kz IN(".$ids.")";
$result_stg_kurzbzlang=pg_exec($sql_conn, $sql_query);
while($row = pg_fetch_object($result_stg_kurzbzlang))
if(!array_key_exists($row->studiengang_kz,$stg_arr))
$stg_arr[$row->studiengang_kz]=$row->kurzbz;
}
}
//Lehre Berechtigung auf Fachbereichsebnene
if($rechte->isBerechtigt('lehre') || $rechte->isBerechtigt('admin'))
{
@@ -311,7 +340,7 @@ A:hover {
$num_rows_lector_dispatch = pg_num_rows($result_lector_dispatch);
if(!($num_rows_lector_dispatch > 0) && !$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre'))
if(!($num_rows_lector_dispatch > 0) && !$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre') && !$rechte->isBerechtigt('assistenz'))
die('<p align="center"><strong<font size="2" face="Arial, Helvetica, sans-serif">Es konnten keine Semester definiert werden!</font></p>');
@@ -325,7 +354,7 @@ A:hover {
$sem_arr[]=$row->semester;
//Alle Semester mit admin oder lehre Rechten
if($rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id))
if($rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id)|| $rechte->isBerechtigt('assistenz',$course_id))
{
$sql_query= "SELECT max_semester FROM public.tbl_studiengang WHERE studiengang_kz=".$course_id;
$result_studiengang_semester=pg_exec($sql_conn, $sql_query);
@@ -397,12 +426,12 @@ A:hover {
tbl_lehrveranstaltung.semester='$term_id' AND
tbl_lehrveranstaltung.studiengang_kz='$course_id' AND tbl_lehrveranstaltung.lehre=true";
//Admin und Lehreberechtigung
if($rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id) || $rechte->isBerechtigt('lehre',null,null,'0'))
if($rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id) || $rechte->isBerechtigt('lehre',null,null,'0') || $rechte->isBerechtigt('assistenz',$course_id))
{
$sql_query = "SELECT DISTINCT lehreverzeichnis AS kuerzel, bezeichnung FROM lehre.tbl_lehrveranstaltung WHERE studiengang_kz='$course_id' AND semester='$term_id' AND tbl_lehrveranstaltung.lehre=true AND tbl_lehrveranstaltung.lehreverzeichnis<>''";
}
//Fachbereichsberechtigung
if($rechte->isBerechtigt('lehre') || $rechte->isBerechtigt('admin'))
if($rechte->isBerechtigt('lehre') || $rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz'))
{
$arr=$rechte->getFbKz();
$ids='-1';
@@ -706,7 +735,7 @@ A:hover {
<?php
echo "<table class='tabcontent'>";
echo " <tr>";
echo " <td align=\"right\" width=\"59%\">";
echo " <td align=\"right\" width=\"59%\">";
echo "<span style='font-size:8pt;'>Max. Uploadgröße (alle Dateien): <b>8 MB</b></span>";
echo " <input id=\"btnupload\" type=\"submit\" name=\"upload\" value=\"Upload\">";
echo " </td>";
+4
View File
@@ -184,6 +184,10 @@
<hr>
<h2>Erledigte Anforderungen</h2>
<ul>
<li>Berechtigungsfehler beim Zuordnen eines Lektors zu einem Studiengang und beim Anlegen von Firmenbetreuern<br>
24.10.2007 oesi<br><br></li>
<li>Beim Zuordnen eines Interessenten/Bewerbers zu einer Spezialgruppe erscheint nun eine Fehlermeldung<br>
23.10.2007 oesi<br><br></li>
<li>Fehler beim Export der Mitarbeiterdaten behoben (Fehler beim Export der Spalte "Geaendert Von")<br>
22.10.2007 oesi<br><br></li>
<li>Neuer Menüpunkt Extras->Lehrveranstaltungsverwaltung zur Verwaltung der LV-Daten und FBK auf LV-Ebene<br>
+1 -1
View File
@@ -74,7 +74,7 @@ $user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz'))
die('Keine Berechtigung');
//Bei Upload des Bildes
if(isset($_POST['submitbild']))
+5 -5
View File
@@ -361,7 +361,7 @@ if(!$error)
$qry = "SELECT tbl_lehrveranstaltung.studiengang_kz, fachbereich_kurzbz
FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND lehreinheit_id='".addslashes($_POST['lehreinheit_id'])."'";
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND lehreinheit_id=(SELECT lehreinheit_id FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id='".addslashes($_POST['lehreinheitgruppe_id'])."')";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
@@ -512,7 +512,7 @@ if(!$error)
$return = false;
$errormsg = 'Lehreinheit wurde nicht gefunden';
}
if(!$error)
{
$leDAO=new lehreinheit($conn, null, true);
@@ -529,13 +529,13 @@ if(!$error)
if(!$rechte->isBerechtigt('admin', $studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz) &&
!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz))
!$rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid', $fachbereich_kurzbz)) /*&&
!$rechte->isBerechtigt('admin', $studiengang_kz, 'suid', $fachbereich_kurzbz))*/
{
$error = true;
$return = false;
$errormsg = 'Keine Berechtigung';
}
}
}
else
{
+1 -1
View File
@@ -54,7 +54,7 @@ $error = false;
//Berechtigungen laden
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin','0') && !$rechte->isBerechtigt('mitarbeiter','0'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter'))
{
$return = false;
$errormsg = 'Sie haben keine Berechtigung zum Speichern';
+49 -37
View File
@@ -20,18 +20,9 @@
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
// ****************************************
// * Insert/Update/Delete
// * der Lehreinheiten
// *
// * Script sorgt fuer den Datenbanzugriff
// * fuer das XUL - Lehreinheiten-Modul
// *
// * Derzeitige Funktionen:
// * - Lehreinheitmitarbeiter Zuteilung hinzufuegen/bearbeiten/loeschen
// * - Lehreinheitgruppe Zutelung hinzufuegen/loeschen
// * - Lehreinheit anlegen/bearbeiten/loeschen
// ****************************************
// *********************************************
// * Datenbankschnittstelle fuer FAS und Tempus
// *********************************************
require_once('../vilesci/config.inc.php');
require_once('../include/functions.inc.php');
@@ -55,7 +46,7 @@ $error = false;
//Berechtigungen laden
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz'))
{
$return = false;
$errormsg = 'Keine Berechtigung';
@@ -97,23 +88,33 @@ if(!$error)
//Fuegt eine Lkt Funktion zu einem Studiengang/Mitarbeiter hinzu
if(isset($_POST['uid']) && isset($_POST['studiengang_kz']))
{
$obj = new benutzerfunktion($conn);
$obj->uid = $_POST['uid'];
$obj->studiengang_kz = $_POST['studiengang_kz'];
$obj->funktion_kurzbz = 'lkt';
$obj->updateamum = date('Y-m-d H:i:s');
$obj->updatevon = $user;
$obj->insertamum = date('Y-m-d H:i:s');
$obj->insertvon = $user;
if($obj->save(true))
if(!$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'],'suid'))
{
$return = true;
$return = false;
$error = true;
$errormsg = 'keine Berechtigung';
}
else
{
$return = false;
$errormsg = $obj->errormsg;
$obj = new benutzerfunktion($conn);
$obj->uid = $_POST['uid'];
$obj->studiengang_kz = $_POST['studiengang_kz'];
$obj->funktion_kurzbz = 'lkt';
$obj->updateamum = date('Y-m-d H:i:s');
$obj->updatevon = $user;
$obj->insertamum = date('Y-m-d H:i:s');
$obj->insertvon = $user;
if($obj->save(true))
{
$return = true;
}
else
{
$return = false;
$errormsg = $obj->errormsg;
}
}
}
else
@@ -127,14 +128,30 @@ if(!$error)
//Loescht eine Lektorfunktion
if(isset($_POST['uid']) && isset($_POST['studiengang_kz']))
{
$obj = new benutzerfunktion($conn);
//Benutzerfunktion suchen
if($obj->getBentuzerFunktion($_POST['uid'], 'lkt', $_POST['studiengang_kz']))
if(!$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'],'suid'))
{
//Benutzerfunktion loeschen
if($obj->delete($obj->benutzerfunktion_id))
$return = false;
$error = true;
$errormsg = 'keine Berechtigung';
}
else
{
$obj = new benutzerfunktion($conn);
//Benutzerfunktion suchen
if($obj->getBentuzerFunktion($_POST['uid'], 'lkt', $_POST['studiengang_kz']))
{
$return = true;
//Benutzerfunktion loeschen
if($obj->delete($obj->benutzerfunktion_id))
{
$return = true;
}
else
{
$return = false;
$errormsg = $obj->errormsg;
}
}
else
{
@@ -142,11 +159,6 @@ if(!$error)
$errormsg = $obj->errormsg;
}
}
else
{
$return = false;
$errormsg = $obj->errormsg;
}
}
else
{
+5 -2
View File
@@ -302,7 +302,9 @@ class benutzerberechtigung
if($fachbereich_kurzbz!=null)
{
//Wenn Fachbereichs oder Adminberechtigung
if(($berechtigung == $b->berechtigung_kurzbz || $b->berechtigung_kurzbz == 'admin') && ($b->fachbereich_kurzbz==$fachbereich_kurzbz || is_null($b->fachbereich_kurzbz)))
if(($berechtigung == $b->berechtigung_kurzbz || $b->berechtigung_kurzbz == 'admin')
&& ($b->fachbereich_kurzbz==$fachbereich_kurzbz || is_null($b->fachbereich_kurzbz))
&& (is_null($b->studiengang_kz) || $b->studiengang_kz==$studiengang_kz))
{
if ($b->starttimestamp!=null && $b->endetimestamp!=null)
{
@@ -345,7 +347,8 @@ class benutzerberechtigung
//Wenn Berechtigung mit Studiengang und der richtigen BerechtigungsArt (suid) vorhanden ist
if ($berechtigung==$b->berechtigung_kurzbz
&& ($studiengang_kz==$b->studiengang_kz || is_null($b->studiengang_kz))
&& strstr($b->art,$art))
&& strstr($b->art,$art)
&& is_null($b->fachbereich_kurzbz))
if ($b->starttimestamp!=null && $b->endetimestamp!=null)
{
if ($timestamp>$b->starttimestamp && $timestamp<$b->endetimestamp)
+1 -1
View File
@@ -44,7 +44,7 @@ $rechte->getBerechtigungen($user);
<body>
<h2>Personal - Funktionen - Import</h2>
<?php
if(!$rechte->isBerechtigt('mitarbeiter','0') && !$rechte->isBerechtigt('admin','0'))
if(!$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('admin'))
die('Sie haben nicht die erforderlichen Rechte zum Importieren der Personaldaten');
$anzahl_personen_gesamt=0;
@@ -124,7 +124,7 @@ function GeburtsdatumEintragen()
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin','0') && !$rechte->isBerechtigt('mitarbeiter','0'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter'))
die('Sie haben keine Berechtigung fuer diese Seite');
$where = '';
+1 -1
View File
@@ -63,7 +63,7 @@ td
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung fuer diese Seite');
$person_id = (isset($_GET['person_id'])?$_GET['person_id']:'');
+1 -1
View File
@@ -103,7 +103,7 @@ function disablefields2(val)
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter'))
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung fuer diese Seite');
$where = '';