- Pruefungs Modul FASo

- Loeschen von Rollen jetzt moeglich
- InteressentenImport wird jetzt Studiengang uebergeben
This commit is contained in:
Andreas Österreicher
2007-06-25 15:14:08 +00:00
parent 4cd9f38afe
commit 41bb750276
16 changed files with 378 additions and 80 deletions
+10 -7
View File
@@ -12,16 +12,10 @@ Auflistung nach Priorit&auml;t (h&ouml;chste oben).<br>
<li>Nach dem sortieren einiger Trees ist danach ein anderer Datensatz
markiert als vorher</li>
<li>Im Filter aufgenommene Bewerber kommen auch abgewiesene vor.</li>
<li>Rolle sollte vom Anleger wieder gel&ouml;scht werden k&ouml;nnen.</li>
</ul>
<br>
<h2>Fehler</h2>
<h3>Dokumente</h3>
<ul>
<li>LVA Liste fuer Gesch&auml;ftsstelle fehlt noch.</li>
<li>Bei "Interessent Neu" wird der Studiengang nicht &uuml;bernommen.<br>
</li>
</ul>
<h3>Listen</h3>
<ul>
<li> Anzahl: Anzahl stimmt nicht immer? </li>
@@ -79,6 +73,15 @@ allen auf einmal setzbar</li>
<hr>
<h2>Erledigte Anforderungen</h2>
<ul>
<li>Bei "Interessent Neu" wird der Studiengang nicht &uuml;bernommen.<br>
25.06.2007 oesi <br><br>
</li>
<li>Rolle sollte vom Anleger wieder gel&ouml;scht werden k&ouml;nnen.<br>
25.06.2007 oesi <br><br>
</li>
<li>LVA Liste fuer Gesch&auml;ftsstelle fehlt noch.<br>
20.06.2007 oesi<br><br>
</li>
<li> Import: Studiensemester ist ausw&auml;hlbar. Vorgew&auml;hlt ist
das n&auml;chste. <br>
19.06.2007 oesi<br>
+14 -14
View File
@@ -76,61 +76,61 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/interessentkontooverlay.xu
persist="hidden, height"
>
<treecols>
<treecol id="interessent-treecol-titelpre" label="TitelPre" flex="1" hidden="false"
<treecol id="interessent-treecol-titelpre" label="TitelPre" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#titelpre" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-anrede" label="Anrede" flex="1" hidden="false"
<treecol id="interessent-treecol-anrede" label="Anrede" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#anrede" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-vorname" label="Vorname" flex="1" hidden="false"
<treecol id="interessent-treecol-vorname" label="Vorname" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#vorname" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-vornamen" label="Vornamen" flex="1" hidden="true"
<treecol id="interessent-treecol-vornamen" label="Vornamen" flex="1" hidden="true" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#vornamen" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-nachname" label="Nachname" flex="2" hidden="false" primary="true"
<treecol id="interessent-treecol-nachname" label="Nachname" flex="2" hidden="false" primary="true" persist="width"
sortActive="true"
sortDirection="ascending"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#nachname" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-titelpost" label="TitelPost" flex="1" hidden="false"
<treecol id="interessent-treecol-titelpost" label="TitelPost" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#titelpost" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-geburtsdatum" label="Geburtsdatum" flex="1" hidden="false"
<treecol id="interessent-treecol-geburtsdatum" label="Geburtsdatum" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#geburtsdatum_iso" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-svnr" label="SVNR" flex="1" hidden="false"
<treecol id="interessent-treecol-svnr" label="SVNR" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#svnr" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-ersatzkennzeichen" label="ErsatzKz" flex="1" hidden="false"
<treecol id="interessent-treecol-ersatzkennzeichen" label="ErsatzKz" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#ersazkennzeichen" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-geschlecht" label="Geschlecht" flex="1" hidden="true"
<treecol id="interessent-treecol-geschlecht" label="Geschlecht" flex="1" hidden="true" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#geschlecht" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-status" label="Status" flex="1" hidden="true"
<treecol id="interessent-treecol-status" label="Status" flex="1" hidden="false" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#status" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-studiengang_kz" label="StudiengangKz" flex="1" hidden="true"
<treecol id="interessent-treecol-studiengang_kz" label="StudiengangKz" flex="1" hidden="true" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#studiengang_kz" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-prestudent_id" label="PreStudentID" flex="1" hidden="true"
<treecol id="interessent-treecol-prestudent_id" label="PreStudentID" flex="1" hidden="true" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#prestudent_id" onclick="InteressentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="interessent-treecol-person_id" label="PersonID" flex="1" hidden="true"
<treecol id="interessent-treecol-person_id" label="PersonID" flex="1" hidden="true" persist="width"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/interessent/rdf#person_id" onclick="InteressentTreeSort()"/>
</treecols>
+5 -1
View File
@@ -231,7 +231,11 @@ function InteressentTreeRefresh()
// ****
function InteressentNeu()
{
window.open('<?php echo APP_ROOT; ?>vilesci/personen/import/interessentenimport.php','Interessent anlegen', 'height=768,width=1024,resizable=yes,status=yes,scrollbars=yes,toolbar=yes,location=yes,menubar=yes');
var verband_tree=document.getElementById('tree-verband');
var col = verband_tree.columns ? verband_tree.columns["stg_kz"] : "stg_kz";
var stg_kz=verband_tree.view.getCellText(verband_tree.currentIndex,col);
window.open('<?php echo APP_ROOT; ?>vilesci/personen/import/interessentenimport.php?studiengang_kz='+stg_kz,'Interessent anlegen', 'height=768,width=1024,resizable=yes,status=yes,scrollbars=yes,toolbar=yes,location=yes,menubar=yes');
}
// ****
+42
View File
@@ -435,6 +435,48 @@ if(!$error)
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='deleterolle')
{
//Loescht eine Prestudentrolle
//Kann nur geloescht werden wenn die Berechtigung ADMIN ist oder der
//Datensatz selbst angelegt wurde
if(isset($_POST['studiensemester_kurzbz']) && isset($_POST['rolle_kurzbz']) &&
isset($_POST['prestudent_id']) && is_numeric($_POST['prestudent_id']))
{
$rolle = new prestudent($conn, null, true);
if($rolle->load_rolle($_POST['prestudent_id'],$_POST['rolle_kurzbz'],$_POST['studiensemester_kurzbz']))
{
if($rechte->isBerechtigt('admin',0) || $rolle->insertvon == $user)
{
if($rolle->delete_rolle($_POST['prestudent_id'],$_POST['rolle_kurzbz'],$_POST['studiensemester_kurzbz']))
{
$return = true;
}
else
{
$return = false;
$errormsg = $rolle->errormsg;
}
}
else
{
$return = false;
$errormsg = 'Sie haben keine Berechtigung zum Loeschen dieser Rolle';
}
}
else
{
$return = false;
$errormsg = $rolle->errormsg;
}
}
else
{
$return = false;
$errormsg = 'Fehlerhafte Parameteruebergabe';
}
}
elseif(isset($_POST['type']) && $_POST['type']=='BewerberZuStudent')
{
// macht aus einem Bewerber einen Studenten
+11 -1
View File
@@ -222,7 +222,11 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<!-- STUDENT PREStudent -->
<vbox id="student-prestudent" style="margin:0px;" flex="1">
<popupset>
<popup id="student-prestudent-rolle-tree-popup">
<menuitem label="Entfernen" oncommand="StudentPrestudentRolleDelete();" id="student-prestudent-rolle-tree-popup-delete" hidden="false"/>
</popup>
</popupset>
<vbox hidden="true">
<label value="Neu"/>
<checkbox id="student-prestudent-checkbox-new" checked="false" />
@@ -433,6 +437,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
datasources="rdf:null" ref="http://www.technikum-wien.at/prestudentrolle/liste"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100px" enableColumnDrag="true"
flags="dont-build-content"
context="student-prestudent-rolle-tree-popup"
>
<treecols>
<treecol id="student-prestudent-tree-rolle-rolle_kurzbz" label="Kurzbz" flex="2" hidden="false" primary="true"
@@ -451,6 +456,10 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum" />
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-prestudent_id" label="PrestudentID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#prestudent_id" />
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -462,6 +471,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#prestudent_id"/>
</treerow>
</treeitem>
</treechildren>
+97 -33
View File
@@ -44,6 +44,7 @@ var StudentLvGesamtNotenTreeDatasource; //Datasource des Noten Trees
var StudentLvGesamtNotenSelectLehrveranstaltungID=null; //LehreinheitID des Noten Eintrages der nach dem Refresh markiert werden soll
var StudentPruefungTreeDatasource; //Datasource des Pruefung Trees
var StudentPruefungSelectID=null; //ID der Pruefung die nach dem Refresh markiert werden soll
var StudentDetailRolleTreeDatasource=null; //Datasource fuer denn PrestudentRolleTree
// ********** Observer und Listener ************* //
@@ -87,6 +88,24 @@ var StudentTreeListener =
}
};
// ****
// * Observer fuer PrestudentRolleTree
// * startet Rebuild nachdem das Refresh
// * der datasource fertig ist
// ****
var StudentDetailRolleTreeSinkObserver =
{
onBeginLoad : function(pSink) {},
onInterrupt : function(pSink) {},
onResume : function(pSink) {},
onError : function(pSink, pStatus, pError) {},
onEndLoad : function(pSink)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('student-prestudent-tree-rolle').builder.rebuild();
}
};
// ****
// * Observer fuer Konto Tree
// * startet Rebuild nachdem das Refresh
@@ -889,9 +908,12 @@ function StudentAuswahl()
rollentree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSource(url);
rollentree.database.AddDataSource(datasource);
StudentDetailRolleTreeDatasource = rdfService.GetDataSource(url);
StudentDetailRolleTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentDetailRolleTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
rollentree.database.AddDataSource(StudentDetailRolleTreeDatasource);
StudentDetailRolleTreeDatasource.addXMLSinkObserver(StudentDetailRolleTreeSinkObserver);
// *** Konto ***
kontotree = document.getElementById('student-konto-tree');
filter = document.getElementById('student-konto-button-filter').value;
@@ -1215,6 +1237,53 @@ function StudentPrestudentSave()
}
}
function StudentPrestudentRolleDelete()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-prestudent-tree-rolle');
if (tree.currentIndex==-1) return;
//Ausgewaehlte Nr holen
var col = tree.columns ? tree.columns["student-prestudent-tree-rolle-rolle_kurzbz"] : "student-prestudent-tree-rolle-rolle_kurzbz";
var rolle_kurzbz=tree.view.getCellText(tree.currentIndex,col);
var col = tree.columns ? tree.columns["student-prestudent-tree-rolle-studiensemester_kurzbz"] : "student-prestudent-tree-rolle-studiensemester_kurzbz";
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
var col = tree.columns ? tree.columns["student-prestudent-tree-rolle-prestudent_id"] : "student-prestudent-tree-rolle-prestudent_id";
var prestudent_id=tree.view.getCellText(tree.currentIndex,col);
if(confirm('Diese Rolle wirklich loeschen?'))
{
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'deleterolle');
req.add('rolle_kurzbz', rolle_kurzbz);
req.add('prestudent_id', prestudent_id);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
StudentDetailRolleTreeDatasource.Refresh(false);
SetStatusBarText('Daten wurden geloescht');
}
}
}
// ****
// * Anmeldungsdatum fuer den RT wird auf das Aktuelle Datum gesetzt
// ****
@@ -2431,7 +2500,7 @@ function StudentNotenTreeSelectID()
var lehrveranstaltung_id=tree.view.getCellText(i,col);
//wenn dies die zu selektierende Zeile
if(lehrveranstaltung_id == StudentNotenSelectLehrveranstaltugnID)
if(lehrveranstaltung_id == StudentNotenSelectLehrveranstaltungID)
{
//Zeile markieren
tree.view.selection.select(i);
@@ -2467,7 +2536,7 @@ function StudentLvGesamtNotenTreeSelectID()
var lehrveranstaltung_id=tree.view.getCellText(i,col);
//wenn dies die zu selektierende Zeile
if(lehrveranstaltung_id == StudentLvGesamtNotenSelectLehrveranstaltugnID)
if(lehrveranstaltung_id == StudentLvGesamtNotenSelectLehrveranstaltungID)
{
//Zeile markieren
tree.view.selection.select(i);
@@ -2677,7 +2746,7 @@ function StudentPruefungTreeSelectID()
var pruefung_id=tree.view.getCellText(i,col);
//wenn dies die zu selektierende Zeile
if(pruefung_id == StudentPruefungSelectLehrveranstaltugnID)
if(pruefung_id == StudentPruefungSelectID)
{
//Zeile markieren
tree.view.selection.select(i);
@@ -2825,21 +2894,10 @@ function StudentPruefungLVAChange()
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSource(url);
LEDropDown.database.AddDataSource(datasource);
}
// ****
// * Wenn die Lehrvernastaltung der Pruefung geaendert wird, dann wird die Liste der Lehreinheiten neu geladen
// ****
function StudentPruefungLEChange()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var leid = document.getElementById('student-pruefung-menulist-lehreinheit').value;
//Lehreinheiten Drop Down laden
//Mitarbeiter Drop Down laden
var MADropDown = document.getElementById('student-pruefung-menulist-mitarbeiter');
url='<?php echo APP_ROOT;?>rdf/mitarbeiter.rdf.php?lehreinheit_id='+leid+"&"+gettimestamp();
url='<?php echo APP_ROOT;?>rdf/mitarbeiter.rdf.php?lehrveranstaltung_id='+lvid+"&optional=true&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = MADropDown.database.GetDataSources();
@@ -2933,8 +2991,7 @@ function StudentPruefungAuswahl()
if (tree.currentIndex==-1) return;
StudentPruefungDetailDisableFields(false);
document.getElementById('student-pruefung-checkbox-neu').checked=false;
//Ausgewaehlte Nr holen
var col = tree.columns ? tree.columns["student-pruefung-tree-pruefung_id"] : "student-pruefung-tree-pruefung_id";
var pruefung_id=tree.view.getCellText(tree.currentIndex,col);
@@ -2960,7 +3017,7 @@ function StudentPruefungAuswahl()
pruefungstyp_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#pruefungstyp_kurzbz" ));
datum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum" ));
anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
studiensemester_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiensemester_kurzbz" ));
var verband_tree=document.getElementById('tree-verband');
@@ -2971,7 +3028,7 @@ function StudentPruefungAuswahl()
//Lehrveranstaltung Drop Down laden
var LVDropDown = document.getElementById('student-pruefung-menulist-lehrveranstaltung');
url='<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?stg_kz='+stg_kz+"&sem="+sem+"&"+gettimestamp();
url='<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?stg_kz='+stg_kz+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = LVDropDown.database.GetDataSources();
@@ -2984,15 +3041,15 @@ function StudentPruefungAuswahl()
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSourceBlocking(url);
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
LVDropDown.database.AddDataSource(datasource);
debug('Lehrveranstaltung geladen:'+url);
var stsem = getStudiensemester();
LVDropDown.builder.rebuild();
//Lehreinheiten Drop Down laden
var LEDropDown = document.getElementById('student-pruefung-menulist-lehreinheit');
url='<?php echo APP_ROOT;?>rdf/lehreinheit.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+"&studiensemester_kurzbz="+stsem+"&"+gettimestamp();
url='<?php echo APP_ROOT;?>rdf/lehreinheit.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+"&studiensemester_kurzbz="+studiensemester_kurzbz+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = LEDropDown.database.GetDataSources();
@@ -3005,13 +3062,15 @@ function StudentPruefungAuswahl()
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSourceBlocking(url);
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
LEDropDown.database.AddDataSource(datasource);
debug('Lehreinheit geladen');
LEDropDown.builder.rebuild();
//Lehreinheiten Drop Down laden
//Mitarbeiter Drop Down laden
var MADropDown = document.getElementById('student-pruefung-menulist-mitarbeiter');
url='<?php echo APP_ROOT;?>rdf/mitarbeiter.rdf.php?lehreinheit_id='+lehreinheit_id+"&"+gettimestamp();
url='<?php echo APP_ROOT;?>rdf/mitarbeiter.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+"&optional=true&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = MADropDown.database.GetDataSources();
@@ -3024,9 +3083,12 @@ function StudentPruefungAuswahl()
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSourceBlocking(url);
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
MADropDown.database.AddDataSource(datasource);
debug('Mitarbeiter geladen');
MADropDown.builder.rebuild();
document.getElementById('student-pruefung-menulist-lehrveranstaltung').value=lehrveranstaltung_id;
document.getElementById('student-pruefung-menulist-lehreinheit').value=lehreinheit_id;
document.getElementById('student-pruefung-menulist-mitarbeiter').value=mitarbeiter_uid;
@@ -3034,4 +3096,6 @@ function StudentPruefungAuswahl()
document.getElementById('student-pruefung-menulist-note').value=note;
document.getElementById('student-pruefung-textbox-datum').value=datum;
document.getElementById('student-pruefung-textbox-anmerkung').value=anmerkung;
document.getElementById('student-pruefung-checkbox-neu').checked=false;
document.getElementById('student-pruefung-textbox-pruefung_id').value=pruefung_id;
}
@@ -142,7 +142,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#lehrveranstaltung_id"
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung"
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung Semester rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#semester"
uri="rdf:*"/>
</menupopup>
</template>
@@ -152,8 +152,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<label value="Lehreinheit" control="student-pruefung-menulist-lehreinheit"/>
<menulist id="student-pruefung-menulist-lehreinheit" disabled="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/lehreinheit/liste"
oncommand="StudentPruefungLEChange()">
ref="http://www.technikum-wien.at/lehreinheit/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/lehreinheit/rdf#lehreinheit_id"
+1 -1
View File
@@ -81,7 +81,7 @@ if(!$error)
{
$log = new log($conn, null, null, true);
if($log->undo($log_id))
if($log->undo($_POST['log_id']))
{
$return = true;
}
+1 -1
View File
@@ -239,7 +239,7 @@ class log
{
if(!is_numeric($log_id))
{
$this->errormsg = 'Log_id ist ungueltig';
$this->errormsg = 'Log_id ist ungueltig'.$log_id;
return false;
}
pg_query($this->conn, 'BEGIN;');
+41
View File
@@ -469,5 +469,46 @@ class mitarbeiter extends benutzer
return false;
}
}
// *************************************************
// * Laedt alle Mitarbeiter einer Lehrveranstaltung
// * @param lehrveranstaltung_id
// * @return true wenn ok, false wenn Fehler
// *************************************************
function getMitarbeiterFromLehrveranstaltung($lehrveranstaltung_id)
{
if(!is_numeric($lehrveranstaltung_id))
{
$this->errormsg = 'Lehrveranstaltung_id ist ungueltig';
return false;
}
$qry = "SELECT uid, vorname, vornamen, nachname, titelpre, titelpost, kurzbz FROM lehre.tbl_lehreinheitmitarbeiter, campus.vw_mitarbeiter, lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id='$lehrveranstaltung_id' AND mitarbeiter_uid=uid AND tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id";
if($result = pg_query($this->conn, $qry))
{
while($row = pg_fetch_object($result))
{
$obj = new mitarbeiter($this->conn, null, null);
$obj->uid = $row->uid;
$obj->vorname = $row->vorname;
$obj->nachname = $row->nachname;
$obj->titelpre = $row->titelpre;
$obj->titelpost = $row->titelpost;
$obj->kurzbz = $row->kurzbz;
$obj->vornamen = $row->vornamen;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+110 -6
View File
@@ -130,7 +130,7 @@ class prestudent extends person
}
else
{
$this->errormsg = "Fehler beim laden: $qry";
$this->errormsg = "Fehler beim Laden: $qry";
return false;
}
}
@@ -239,7 +239,7 @@ class prestudent extends person
}
else
{
$this->errormsg = 'Fehler beim auslesen der Sequence';
$this->errormsg = 'Fehler beim Auslesen der Sequence';
pg_query($this->conn, 'ROLLBACK;');
return false;
}
@@ -375,7 +375,45 @@ class prestudent extends person
}
else
{
$this->errormsg = 'Fehler beim laden der PrestudentDaten';
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
}
}
// ********
// * Laedt die Rolle(n) eines Prestudenten
// ********
function load_rolle($prestudent_id, $rolle_kurzbz, $studiensemester_kurzbz)
{
if(!is_numeric($prestudent_id))
{
$this->errormsg = 'Prestudent_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM public.tbl_prestudentrolle WHERE prestudent_id='$prestudent_id'".
" AND rolle_kurzbz='".addslashes($rolle_kurzbz)."'".
" AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
if($result = pg_query($this->conn, $qry))
{
if($row = pg_fetch_object($result))
{
$this->prestudent_id = $row->prestudent_id;
$this->rolle_kurzbz = $row->rolle_kurzbz;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->ausbildungssemester = $row->ausbildungssemester;
$this->datum = $row->datum;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
}
}
@@ -535,13 +573,13 @@ class prestudent extends person
}
else
{
$this->errormsg = 'Fehler beim laden der Daten';
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim laden der Daten';
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
@@ -586,6 +624,72 @@ class prestudent extends person
}
}
// ******************************************
// * Loescht eine Rolle
// * @param $prestudent_id
// * $rolle_kurzbz
// * $studiensemester_kurzbz
// * @return true wenn ok, false wenn Fehler
// ******************************************
function delete_rolle($prestudent_id, $rolle_kurzbz, $studiensemester_kurzbz)
{
if(!is_numeric($prestudent_id))
{
$this->errormsg = 'Prestudent_id ist ungueltig';
return false;
}
$qry = "DELETE FROM public.tbl_prestudentrolle WHERE prestudent_id='$prestudent_id' AND rolle_kurzbz='".addslashes($rolle_kurzbz)."' AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
if($this->load_rolle($prestudent_id, $rolle_kurzbz, $studiensemester_kurzbz))
{
pg_query($this->conn, 'BEGIN;');
$log = new log($this->conn, null, null);
$log->executetime = date('Y-m-d H:i:s');
$log->beschreibung = 'Loeschen der Rolle '.$rolle_kurzbz.' bei '.$prestudent_id;
$log->mitarbeiter_uid = get_uid();
$log->sql = $qry;
$log->sqlundo = 'INSERT INTO public.tbl_prestudentrolle(prestudent_id, rolle_kurzbz, studiensemester_kurzbz,'.
' ausbildungssemester, datum, insertamum, insertvon, updateamum, updatevon, ext_id) VALUES('.
$this->addslashes($this->prestudent_id).','.
$this->addslashes($this->rolle_kurzbz).','.
$this->addslashes($this->studiensemester_kurzbz).','.
$this->addslashes($this->ausbildungssemester).','.
$this->addslashes($this->datum).','.
$this->addslashes($this->insertamum).','.
$this->addslashes($this->insertvon).','.
$this->addslashes($this->updateamum).','.
$this->addslashes($this->updatevon).','.
$this->addslashes($this->ext_id).');';
if($log->save(true))
{
if(pg_query($this->conn, $qry))
{
pg_query($this->conn, 'COMMIT');
return true;
}
else
{
pg_query($this->conn, 'ROLLBACK');
$this->errormsg = 'Fehler beim Loeschen der Daten';
return false;
}
}
else
{
pg_query($this->conn, 'ROLLBACK');
$this->errormsg = 'Fehler beim Speichern des Log-Eintrages';
return false;
}
}
else
{
return false;
}
}
function getLastStatus($prestudent_id)
{
$qry = "SELECT * FROM public.tbl_prestudentrolle WHERE prestudent_id='$prestudent_id' ORDER BY datum DESC LIMIT 1";
@@ -612,7 +716,7 @@ class prestudent extends person
}
else
{
$this->errormsg = 'Fehler beim laden der PrestudentDaten';
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
}
}
+6 -2
View File
@@ -46,6 +46,7 @@ class pruefung
var $lehrveranstaltung_id;
var $note_bezeichnung;
var $pruefungstyp_beschreibung;
var $studiensemester_kurzbz;
// **************************************************************
// * Konstruktor
@@ -89,7 +90,8 @@ class pruefung
return false;
}
$qry = "SELECT tbl_pruefung.*, tbl_lehreinheit.lehrveranstaltung_id FROM lehre.tbl_pruefung JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) WHERE pruefung_id=$pruefung_id";
$qry = "SELECT tbl_pruefung.*, tbl_lehreinheit.lehrveranstaltung_id, tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz
FROM lehre.tbl_pruefung JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) WHERE pruefung_id=$pruefung_id";
if($res = pg_query($this->conn, $qry))
{
@@ -109,6 +111,7 @@ class pruefung
$this->updatevon=$row->updatevon;
$this->ext_id=$row->ext_id;
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
}
}
else
@@ -319,7 +322,7 @@ class pruefung
function getPruefungen($student_uid)
{
$qry = "SELECT tbl_pruefung.*, tbl_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung, tbl_lehrveranstaltung.lehrveranstaltung_id,
tbl_note.bezeichnung as note_bezeichnung, tbl_pruefungstyp.beschreibung as typ_beschreibung
tbl_note.bezeichnung as note_bezeichnung, tbl_pruefungstyp.beschreibung as typ_beschreibung, tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz
FROM lehre.tbl_pruefung, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_note, lehre.tbl_pruefungstyp
WHERE student_uid='".addslashes($student_uid)."'
AND tbl_pruefung.lehreinheit_id=tbl_lehreinheit.lehreinheit_id
@@ -349,6 +352,7 @@ class pruefung
$obj->updatevon = $row->updatevon;
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->result[] = $obj;
}
+32 -8
View File
@@ -26,8 +26,7 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
// DAO
include('../vilesci/config.inc.php');
require_once('../include/person.class.php');
@@ -64,13 +63,21 @@ if (isset($_GET['user']))
$user=$_GET['user'];
else
$user=false;
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id']))
$lehreinheit_id = $_GET['lehreinheit_id'];
if(isset($_GET['lehrveranstaltung_id']) && is_numeric($_GET['lehrveranstaltung_id']))
{
$lehrveranstaltung_id = $_GET['lehrveranstaltung_id'];
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
$mitarbeiter=new mitarbeiter($conn, null, true);
}
else
$lehreinheit_id=null;
{
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
$lehrveranstaltung_id=null;
$mitarbeiter=new mitarbeiter($conn);
}
// Mitarbeiter holen
$mitarbeiter=new mitarbeiter($conn);
$rdf_url='http://www.technikum-wien.at/mitarbeiter/';
echo '
@@ -98,7 +105,7 @@ function draw_row($mitarbeiter)
';
}
if($lehreinheit_id==null)
if($lehrveranstaltung_id==null)
{
$ma=$mitarbeiter->getMitarbeiter($lektor,$fixangestellt,$stg_kz,$fachbereich_id);
@@ -176,7 +183,24 @@ if($lehreinheit_id==null)
else
{
echo "<RDF:Seq about=\"".$rdf_url."liste\" >";
$mitarbeiter->getMitarbeiterFromLehreinheit($lehreinheit_id);
if(isset($_GET['optional']) && $_GET['optional']=='true')
{
echo '
<RDF:li>
<RDF:Description about="" >
<MITARBEITER:uid><![CDATA[]]></MITARBEITER:uid>
<MITARBEITER:titelpre><![CDATA[]]></MITARBEITER:titelpre>
<MITARBEITER:titelpost><![CDATA[]]></MITARBEITER:titelpost>
<MITARBEITER:vornamen><![CDATA[]]></MITARBEITER:vornamen>
<MITARBEITER:vorname><![CDATA[]]></MITARBEITER:vorname>
<MITARBEITER:nachname><![CDATA[-- Keine Auswahl --]]></MITARBEITER:nachname>
<MITARBEITER:kurzbz><![CDATA[]]></MITARBEITER:kurzbz>
<MITARBEITER:studiengang_kz></MITARBEITER:studiengang_kz>
</RDF:Description>
</RDF:li>
';
}
$mitarbeiter->getMitarbeiterFromLehrveranstaltung($lehrveranstaltung_id);
foreach ($mitarbeiter->result as $row)
{
echo '<RDF:li>';
+1
View File
@@ -94,6 +94,7 @@ function draw_rdf($row)
<PRUEFUNG:lehrveranstaltung_bezeichnung><![CDATA['.$row->lehrveranstaltung_bezeichnung.']]></PRUEFUNG:lehrveranstaltung_bezeichnung>
<PRUEFUNG:pruefungstyp_beschreibung><![CDATA['.$row->pruefungstyp_beschreibung.']]></PRUEFUNG:pruefungstyp_beschreibung>
<PRUEFUNG:lehrveranstaltung_id><![CDATA['.$row->lehrveranstaltung_id.']]></PRUEFUNG:lehrveranstaltung_id>
<PRUEFUNG:studiensemester_kurzbz><![CDATA['.$row->studiensemester_kurzbz.']]></PRUEFUNG:studiensemester_kurzbz>
</RDF:Description>
</RDF:li>
';
+3 -3
View File
@@ -25,7 +25,7 @@ header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/vnd.mozilla.xul+xml");
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
@@ -34,7 +34,7 @@ require_once('../include/log.class.php');
require_once('../include/functions.inc.php');
// Datenbank Verbindung
if (!$conn = @pg_pconnect(CONN_STRING))
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$log = new log($conn, null, true);
@@ -56,7 +56,7 @@ foreach ($log->logs as $row)
?>
<RDF:li>
<RDF:Description id="<?php echo $row->log_id; ?>" about="<?php echo $rdf_url.'/'.$row->log_id; ?>" >
<UNDO:log_id><?php echo $row->log_id ?></UNDO:log_id>
<UNDO:log_id><![CDATA[<?php echo $row->log_id ?>]]></UNDO:log_id>
<UNDO:beschreibung><![CDATA[<?php echo $row->beschreibung ?>]]></UNDO:beschreibung>
</RDF:Description>
</RDF:li>
@@ -102,6 +102,8 @@ $letzteausbildung = (isset($_POST['letzteausbildung'])?$_POST['letzteausbildung'
$ausbildungsart = (isset($_POST['ausbildungsart'])?$_POST['ausbildungsart']:'');
$anmerkungen = (isset($_POST['anmerkungen'])?$_POST['anmerkungen']:'');
$studiengang_kz = (isset($_POST['studiengang_kz'])?$_POST['studiengang_kz']:'');
if($studiengang_kz=='' && isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
$person_id = (isset($_POST['person_id'])?$_POST['person_id']:'');
$ueberschreiben = (isset($_POST['ueberschreiben'])?$_POST['ueberschreiben']:'');
$studiensemester_kurzbz = (isset($_POST['studiensemester_kurzbz'])?$_POST['studiensemester_kurzbz']:'');