This commit is contained in:
Andreas Österreicher
2007-10-23 14:21:17 +00:00
parent bf235ae54f
commit 68460be312
11 changed files with 276 additions and 53 deletions
+2
View File
@@ -184,6 +184,8 @@
<hr>
<h2>Erledigte Anforderungen</h2>
<ul>
<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>
22.10.2007 oesi<br><br></li>
<li>Mail an Mitarbeiter senden wenn das <b>aktiv</b>-Feld veraendert wird<br>
+5
View File
@@ -114,6 +114,11 @@ var studentDDObserver=
{
col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
uid = tree.view.getCellText(v,col);
if(uid=='')
{
alert('Es koennen nur Personen mit UID (Studenten/Mitarbeiter) verschoben werden');
return false;
}
paramList += ';'+uid;
}
}
+1 -1
View File
@@ -479,7 +479,7 @@ echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz'))
{
echo '<tree id="tree-verband" />';
echo '<tree id="tree-fachbereich" />';
echo '<vbox id="vbox-fachbereich" />';
echo '<tree id="tree-lektor" />';
}
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('mitarbeiter'))
+41 -7
View File
@@ -407,14 +407,25 @@ function onFachbereichSelect(event)
if(row.value!=tree.currentIndex)
return;
col = tree.columns ? tree.columns["kurzbz"] : "kurzbz";
col = tree.columns ? tree.columns["fachbereich-treecol-kurzbz"] : "fachbereich-treecol-kurzbz";
var kurzbz=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["fachbereich-treecol-uid"] : "fachbereich-treecol-uid";
var uid=tree.view.getCellText(tree.currentIndex,col);
//Wenn auf einen Mitarbeiter geklickt wird, dann die kurzbz vom uebergeordneten
//Fachbereich holen
if(uid!='')
{
idx = tree.view.getParentIndex(tree.currentIndex);
col = tree.columns ? tree.columns["fachbereich-treecol-kurzbz"] : "fachbereich-treecol-kurzbz";
var kurzbz=tree.view.getCellText(idx,col);
}
// Lehrveranstaltung
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
try
{
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?fachbereich_kurzbz='+kurzbz+'&'+gettimestamp();
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?fachbereich_kurzbz='+kurzbz+'&uid='+uid+'&'+gettimestamp();
var treeLV=document.getElementById('lehrveranstaltung-tree');
//Alte DS entfernen
@@ -503,11 +514,6 @@ function onLektorSelect(event)
//Alte DS entfernen
var oldDatasources = treeLV.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeLV.database.RemoveDataSource(oldDatasources.getNext());
}
try
{
LvTreeDatasource.removeXMLSinkObserver(LvTreeSinkObserver);
@@ -515,6 +521,11 @@ function onLektorSelect(event)
}
catch(e)
{}
while(oldDatasources.hasMoreElements())
{
treeLV.database.RemoveDataSource(oldDatasources.getNext());
}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
LvTreeDatasource = rdfService.GetDataSource(url);
@@ -1080,4 +1091,27 @@ function PrintAccountInfoBlatt()
{
alert('Bitte zuerst Personen Auswaehlen');
}
}
// ****
// * Aktualisiert den Fachbereich Tree
// ****
function FachbereichTreeRefresh()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
tree = document.getElementById('tree-fachbereich');
var oldDatasources = tree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
tree.database.RemoveDataSource(oldDatasources.getNext());
}
tree.builder.rebuild();
url = '<?php echo APP_ROOT; ?>rdf/fachbereich_menue.rdf.php?'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var fb_datasource = rdfService.GetDataSource(url);
fb_datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
fb_datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
tree.database.AddDataSource(fb_datasource);
}
+39 -28
View File
@@ -108,34 +108,45 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';*/
</template>
</tree>
<tree id="tree-fachbereich" onmouseup="onFachbereichSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/fachbereich.rdf.php" ref="http://www.technikum-wien.at/fachbereich/liste">
<treecols>
<treecol id="bezeichnung" label="Bezeichnung" flex="3" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="kurzbz" label="Kurzbz" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="farbe" label="Farbe" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stg_kz_fb" label="Stg_kz" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#farbe"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#studiengang_kz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox id="vbox-fachbereich">
<hbox>
<spacer flex="1" />
<toolbarbutton label="Laden/Aktualisieren" image="../skin/images/refresh.png" tooltiptext="Liste neu laden" oncommand="FachbereichTreeRefresh()"/>
<spacer flex="1" />
</hbox>
<tree id="tree-fachbereich" onmouseup="onFachbereichSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/fachbereich/liste">
<!--<?php echo APP_ROOT;?>rdf/fachbereich_menue.rdf.php-->
<treecols>
<treecol id="fachbereich-treecol-bezeichnung" label="Bezeichnung" flex="3" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="fachbereich-treecol-kurzbz" label="Kurzbz" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="fachbereich-treecol-farbe" label="Farbe" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="fachbereich-treecol-stg_kz" label="Stg_kz" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="fachbereich-treecol-uid" label="UID" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#farbe"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#studiengang_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#uid"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1"
+51 -12
View File
@@ -74,12 +74,18 @@ if(!$error)
if(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_save')
{
//Lehreinheitmitarbeiter Zuteilung
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE lehreinheit_id='".addslashes($_POST['lehreinheit_id'])."'";
$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'])."'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz) &&
!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz))
{
$error = true;
$return = false;
@@ -149,12 +155,18 @@ if(!$error)
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_add')
{
//neue Lehreinheitmitarbeiterzuteilung anlegen
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE lehreinheit_id='".addslashes($_POST['lehreinheit_id'])."'";
$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'])."'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz) &&
!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz))
{
$error = true;
$return = false;
@@ -269,12 +281,18 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_del')
{
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE lehreinheit_id='".addslashes($_POST['lehreinheit_id'])."'";
$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'])."'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz) &&
!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz))
{
$error = true;
$return = false;
@@ -340,12 +358,18 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_gruppe_del')
{
$qry = "SELECT tbl_lehrveranstaltung.studiengang_kz FROM lehre.tbl_lehreinheitgruppe JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE lehreinheitgruppe_id='".addslashes($_POST['lehreinheitgruppe_id'])."'";
$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'])."'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz) &&
!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz))
{
$error = true;
$return = false;
@@ -391,12 +415,18 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_gruppe_add')
{
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE lehreinheit_id='".addslashes($_POST['lehreinheit_id'])."'";
$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'])."'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
if(!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid') &&
!$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz) &&
!$rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid', $row->fachbereich_kurzbz))
{
$error = true;
$return = false;
@@ -453,7 +483,10 @@ if(!$error)
{
//Lehreinheit anlegen/aktualisieren
if($_POST['lehreinheit_id']!='')
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE lehreinheit_id='".addslashes($_POST['lehreinheit_id'])."'";
$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'])."'";
else
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id='".addslashes($_POST['lehrveranstaltung'])."'";
@@ -462,6 +495,9 @@ if(!$error)
if($row = pg_fetch_object($result))
{
$studiengang_kz = $row->studiengang_kz;
$fachbereich_kurzbz = 0;
if(isset($row->fachbereich_kurzbz))
$fachbereich_kurzbz = $row->fachbereich_kurzbz;
}
else
{
@@ -491,7 +527,10 @@ if(!$error)
$errormsg = 'Fehler beim Laden der Lehreinheit';
}
if(!$rechte->isBerechtigt('admin', $studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid'))
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))
{
$error = true;
$return = false;
@@ -848,12 +848,12 @@ function MitarbeiterDetailgetSpaltenname(id)
if(id=='mitarbeiter-treecol-geschlecht') return 'geschlecht';
if(id=='mitarbeiter-treecol-ort_kurzbz') return 'ort_kurzbz';
if(id=='mitarbeiter-treecol-telefonklappe') return 'telefonklappe';
if(id=='mitarbeiter-treecol-aktiv') return 'aktiv';
if(id=='mitarbeiter-treecol-aktiv') return 'bnaktiv';
if(id=='mitarbeiter-treecol-person_id') return 'person_id';
if(id=='mitarbeiter-treecol-fixangestellt') return 'fixangestellt';
if(id=='mitarbeiter-treecol-lektor') return 'lektor';
if(id=='mitarbeiter-treecol-insertamum') return 'insertamum';
if(id=='mitarbeiter-treecol-insertamum_iso') return 'insertamum_iso';
if(id=='mitarbeiter-treecol-insertamum_iso') return 'insertamum';
if(id=='mitarbeiter-treecol-insertvon') return 'insertvon';
if(id=='mitarbeiter-treecol-updateamum') return 'updateamum';
if(id=='mitarbeiter-treecol-updateamum_iso') return 'updateamum';
@@ -165,7 +165,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterfunktionove
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updateamum_iso" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-updatevonvon" label="Geaendert von" flex="1" persist="hidden, width, ordinal" hidden="true"
<treecol id="mitarbeiter-treecol-updatevon" label="Geaendert von" flex="1" persist="hidden, width, ordinal" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#updatevon" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>