diff --git a/cis/menu.html b/cis/menu.html
index 1e8c921e4..d4658ec1d 100644
--- a/cis/menu.html
+++ b/cis/menu.html
@@ -419,10 +419,10 @@
|
-
+
| |
SS 2007 |
diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php
index 837e1feca..af99a0bc0 100644
--- a/content/student/studentDBDML.php
+++ b/content/student/studentDBDML.php
@@ -50,6 +50,8 @@ require_once('../../include/zeugnisnote.class.php');
require_once('../../include/lvgesamtnote.class.php');
require_once('../../include/pruefung.class.php');
require_once('../../include/abschlusspruefung.class.php');
+require_once('../../include/projektarbeit.class.php');
+require_once('../../include/projektbetreuer.class.php');
$user = get_uid();
@@ -1500,6 +1502,164 @@ if(!$error)
$errormsg = 'Fehlerhafte Parameteruebergabe';
}
}
+ elseif(isset($_POST['type']) && $_POST['type']=='saveprojektarbeit') // **** Projektarbeit **** //
+ {
+ $projektarbeit = new projektarbeit($conn, null, true);
+
+ if($_POST['neu']=='false')
+ {
+ if($projektarbeit->load($_POST['projektarbeit_id']))
+ {
+ $projektarbeit->new = false;
+ }
+ else
+ {
+ $error = true;
+ $return = false;
+ $errormsg = $projektarbeit->errormsg;
+ }
+ }
+ else
+ {
+ $projektarbeit->new = true;
+ $projektarbeit->insertamum = date('Y-m-d H:i:s');
+ $projektarbeit->insertvon = $user;
+ }
+
+ $projektarbeit->projekttyp_kurzbz = $_POST['projekttyp_kurzbz'];
+ $projektarbeit->titel = $_POST['titel'];
+ $projektarbeit->lehreinheit_id = $_POST['lehreinheit_id'];
+ $projektarbeit->student_uid = $_POST['student_uid'];
+ $projektarbeit->firma_id = $_POST['firma_id'];
+ $projektarbeit->note = $_POST['note'];
+ $projektarbeit->punkte = str_replace(',','.',$_POST['punkte']);
+ $projektarbeit->beginn = $_POST['beginn'];
+ $projektarbeit->ende = $_POST['ende'];
+ $projektarbeit->faktor = str_replace(',','.',$_POST['faktor']);
+ $projektarbeit->freigegeben = ($_POST['freigegeben']=='true'?true:false);
+ $projektarbeit->gesperrtbis = $_POST['gesperrtbis'];
+ $projektarbeit->stundensatz = str_replace(',','.',$_POST['stundensatz']);
+ $projektarbeit->gesamtstunden = $_POST['gesamtstunden'];
+ $projektarbeit->themenbereich = $_POST['themenbereich'];
+ $projektarbeit->anmerkung = $_POST['anmerkung'];
+ $projektarbeit->updateamum = date('Y-m-d H:i:s');
+ $projektarbeit->updatevon = $user;
+
+ if(!$error)
+ {
+ if($projektarbeit->save())
+ {
+ $return = true;
+ $data = $projektarbeit->projektarbeit_id;
+ }
+ else
+ {
+ $return = false;
+ $errormsg = $projektarbeit->errormsg;
+ }
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='deleteprojektarbeit')
+ {
+ //Loescht einen Projektarbeit Eintrag
+ if(isset($_POST['projektarbeit_id']) && is_numeric($_POST['projektarbeit_id']))
+ {
+ $projektarbeit = new projektarbeit($conn);
+
+ if($projektarbeit->delete($_POST['projektarbeit_id']))
+ {
+ $return = true;
+ }
+ else
+ {
+ $errormsg = $projektarbeit->errormsg;
+ $return = false;
+ }
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'Fehlerhafte Parameteruebergabe';
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='saveprojektbetreuer') // **** Projektbetreuer **** //
+ {
+ $projektbetreuer = new projektbetreuer($conn, null, null, true);
+
+ if($_POST['neu']=='false')
+ {
+ if($projektbetreuer->load($_POST['person_id_old'], $_POST['projektarbeit_id']))
+ {
+ $projektbetreuer->new = false;
+ }
+ else
+ {
+ $error = true;
+ $return = false;
+ $errormsg = $projektbetreuer->errormsg;
+ }
+ }
+ else
+ {
+ if($projektbetreuer->load($_POST['person_id'], $_POST['projektarbeit_id']))
+ {
+ $error = true;
+ $errormsg = 'Dieser Betreuer ist bereits zugeteilt';
+ }
+ $projektbetreuer->new = true;
+ $projektbetreuer->insertamum = date('Y-m-d H:i:s');
+ $projektbetreuer->insertvon = $user;
+ }
+
+ $projektbetreuer->person_id = $_POST['person_id'];
+ $projektbetreuer->person_id_old = $_POST['person_id_old'];
+ $projektbetreuer->projektarbeit_id = $_POST['projektarbeit_id'];
+ $projektbetreuer->note = $_POST['note'];
+ $projektbetreuer->faktor = str_replace(',','.', $_POST['faktor']);
+ $projektbetreuer->name = $_POST['name'];
+ $projektbetreuer->punkte = str_replace(',','.', $_POST['punkte']);
+ $projektbetreuer->stunden = str_replace(',','.', $_POST['stunden']);
+ $projektbetreuer->stundensatz = str_replace(',','.', $_POST['stundensatz']);
+ $projektbetreuer->betreuerart_kurzbz = $_POST['betreuerart_kurzbz'];
+ $projektbetreuer->updateamum = date('Y-m-d H:i:s');
+ $projektbetreuer->updatevon = $user;
+
+ if(!$error)
+ {
+ if($projektbetreuer->save())
+ {
+ $return = true;
+ }
+ else
+ {
+ $return = false;
+ $errormsg = $projektbetreuer->errormsg;
+ }
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='deleteprojektbetreuer')
+ {
+ //Loescht einen Projektbetreuer Eintrag
+ if(isset($_POST['person_id']) && is_numeric($_POST['person_id']))
+ {
+ $projektbetreuer = new projektbetreuer($conn, null, null, true);
+
+ if($projektbetreuer->delete($_POST['person_id'], $_POST['projektarbeit_id']))
+ {
+ $return = true;
+ }
+ else
+ {
+ $errormsg = $projektbetreuer->errormsg;
+ $return = false;
+ }
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'Fehlerhafte Parameteruebergabe';
+ }
+ }
else
{
$return = false;
diff --git a/content/student/studentabschlusspruefung.js.php b/content/student/studentabschlusspruefung.js.php
index e402eb30e..4ffd9503f 100644
--- a/content/student/studentabschlusspruefung.js.php
+++ b/content/student/studentabschlusspruefung.js.php
@@ -397,7 +397,7 @@ function StudentAbschlusspruefungSpeichern()
if(sponsion!='' && !CheckDatum(sponsion))
{
- alert('Datum ist ungueltig');
+ alert('Sponsionsdatum ist ungueltig');
return false;
}
diff --git a/content/student/studentenoverlay.xul.php b/content/student/studentenoverlay.xul.php
index fef86f64e..392e20110 100644
--- a/content/student/studentenoverlay.xul.php
+++ b/content/student/studentenoverlay.xul.php
@@ -37,6 +37,7 @@ echo '';
echo '';
echo '';
+echo '';
?>
@@ -190,6 +191,7 @@ echo '
+
@@ -202,6 +204,7 @@ echo '
+
diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php
index c5ba342e6..a1e46cb79 100644
--- a/content/student/studentoverlay.js.php
+++ b/content/student/studentoverlay.js.php
@@ -1137,6 +1137,11 @@ function StudentAuswahl()
// ****** Abschlusspruefung ******** //
StudentAbschlusspruefungDetailDisableFields(true);
StudentAbschlusspruefungTreeLoad(uid);
+
+ // ****** Projektarbeit ********* //
+ StudentProjektarbeitDetailDisableFields(true);
+ StudentProjektbetreuerDisableFields(true);
+ StudentProjektarbeitTreeLoad(uid);
}
// ****
diff --git a/content/student/studentprojektarbeit.js.php b/content/student/studentprojektarbeit.js.php
new file mode 100644
index 000000000..baeca8068
--- /dev/null
+++ b/content/student/studentprojektarbeit.js.php
@@ -0,0 +1,861 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+
+require_once('../../vilesci/config.inc.php');
+require_once('../../include/functions.inc.php');
+
+$conn = pg_pconnect(CONN_STRING);
+
+$user = get_uid();
+loadVariables($conn, $user);
+?>
+// *********** Globale Variablen *****************//
+var StudentProjektarbeitSelectID=null; //Id der Projektarbeit die nach dem Rebuild markiert werden soll
+var StudentProjektarbeitTreeDatasource=null; //Datasource des Projektarbeit Trees
+var StudentProjektbetreuerTreeDatasource=null; //Datasource des Projektbetreuer Trees
+var StudentProjektbetreuerSelectPersonID=null;
+var StudentProjektbetreuerSelectProjektarbeitID=null;
+// ********** Observer und Listener ************* //
+
+// ****
+// * Observer fuer Projektarbeit Tree
+// * startet Rebuild nachdem das Refresh
+// * der Datasource fertig ist
+// ****
+var StudentProjektarbeitTreeSinkObserver =
+{
+ 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-projektarbeit-tree').builder.rebuild();
+ }
+};
+
+// ****
+// * Nach dem Rebuild wird die Projektarbeit wieder
+// * markiert
+// ****
+var StudentProjektarbeitTreeListener =
+{
+ willRebuild : function(builder) { },
+ didRebuild : function(builder)
+ {
+ //timeout nur bei Mozilla notwendig da sonst die rows
+ //noch keine values haben. Ab Seamonkey funktionierts auch
+ //ohne dem setTimeout
+ window.setTimeout(StudentProjektarbeitTreeSelectID,10);
+ }
+};
+
+// ****
+// * Observer fuer Projektbetreuer Tree
+// * startet Rebuild nachdem das Refresh
+// * der Datasource fertig ist
+// ****
+var StudentProjektbetreuerTreeSinkObserver =
+{
+ 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-projektbetreuer-tree').builder.rebuild();
+ }
+};
+
+// ****
+// * Nach dem Rebuild wird die Projektbetreuer wieder
+// * markiert
+// ****
+var StudentProjektbetreuerTreeListener =
+{
+ willRebuild : function(builder) { },
+ didRebuild : function(builder)
+ {
+ //timeout nur bei Mozilla notwendig da sonst die rows
+ //noch keine values haben. Ab Seamonkey funktionierts auch
+ //ohne dem setTimeout
+ window.setTimeout(StudentProjektbetreuerTreeSelectID,10);
+ }
+};
+// ****************** FUNKTIONEN ************************** //
+
+// ****
+// * Laedt die Daten fuer den Projektarbeiten Tree
+// ****
+function StudentProjektarbeitTreeLoad(uid)
+{
+ var tree = document.getElementById('student-projektarbeit-tree');
+ var url='rdf/projektarbeit.rdf.php?student_uid='+uid+"&"+gettimestamp();
+
+ //Alte DS entfernen
+ var oldDatasources = tree.database.GetDataSources();
+ while(oldDatasources.hasMoreElements())
+ {
+ tree.database.RemoveDataSource(oldDatasources.getNext());
+ }
+ //Refresh damit die entfernten DS auch wirklich entfernt werden
+ tree.builder.rebuild();
+
+ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
+ StudentProjektarbeitTreeDatasource = rdfService.GetDataSource(url);
+ StudentProjektarbeitTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
+ StudentProjektarbeitTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
+ tree.database.AddDataSource(StudentProjektarbeitTreeDatasource);
+ StudentProjektarbeitTreeDatasource.addXMLSinkObserver(StudentProjektarbeitTreeSinkObserver);
+ tree.builder.addListener(StudentProjektarbeitTreeListener);
+
+ StudentProjektarbeitDisableFields(false);
+}
+
+// ****
+// * De-/Aktiviert die ProjektarbeitFelder
+// ****
+function StudentProjektarbeitDisableFields(val)
+{
+ document.getElementById('student-projektarbeit-button-neu').disabled=val;
+ document.getElementById('student-projektarbeit-button-loeschen').disabled=val;
+
+ if(val)
+ StudentProjektarbeitDetailDisableFields(val);
+}
+
+// ****
+// * De-/Aktiviert die ProjektarbeitDetailFelder
+// ****
+function StudentProjektarbeitDetailDisableFields(val)
+{
+ document.getElementById('student-projektarbeit-button-speichern').disabled=val;
+ document.getElementById('student-projektarbeit-menulist-projekttyp').disabled=val;
+ document.getElementById('student-projektarbeit-menulist-lehrveranstaltung').disabled=val;
+ document.getElementById('student-projektarbeit-menulist-lehreinheit').disabled=val;
+ document.getElementById('student-projektarbeit-menulist-firma').disabled=val;
+ document.getElementById('student-projektarbeit-menulist-note').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-titel').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-punkte').disabled=val;
+ document.getElementById('student-projektarbeit-datum-beginn').disabled=val;
+ document.getElementById('student-projektarbeit-datum-ende').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-faktor').disabled=val;
+ document.getElementById('student-projektarbeit-checkbox-freigegeben').disabled=val;
+ document.getElementById('student-projektarbeit-datum-gesperrtbis').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-stundensatz').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-gesamtstunden').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-themenbereich').disabled=val;
+ document.getElementById('student-projektarbeit-textbox-anmerkung').disabled=val;
+
+ if(val)
+ StudentProjektarbeitResetFields();
+}
+
+// ****
+// * Resetet die ProjektarbeitDetailFelder
+// ****
+function StudentProjektarbeitResetFields()
+{
+ document.getElementById('student-projektarbeit-textbox-titel').value='';
+ document.getElementById('student-projektarbeit-textbox-punkte').value='0.0';
+ document.getElementById('student-projektarbeit-datum-beginn').value='';
+ document.getElementById('student-projektarbeit-datum-ende').value='';
+ document.getElementById('student-projektarbeit-textbox-faktor').value='0.0';
+ document.getElementById('student-projektarbeit-checkbox-freigegeben').checked=false;
+ document.getElementById('student-projektarbeit-datum-gesperrtbis').value='';
+ document.getElementById('student-projektarbeit-textbox-stundensatz').value='0.0';
+ document.getElementById('student-projektarbeit-textbox-gesamtstunden').value='0.0';
+ document.getElementById('student-projektarbeit-textbox-themenbereich').value='';
+ document.getElementById('student-projektarbeit-textbox-anmerkung').value='';
+}
+
+// *****
+// * Markiert einen Datensatz im Tree
+// *****
+function StudentProjektarbeitTreeSelectID()
+{
+ var tree=document.getElementById('student-projektarbeit-tree');
+ if(tree.view)
+ var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
+ else
+ return false;
+
+ //In der globalen Variable ist die zu selektierende Eintrag gespeichert
+ if(StudentProjektarbeitSelectID!=null)
+ {
+ for(var i=0;i2)
+ {
+ var url = 'rdf/person.rdf.php?filter='+v+'&'+gettimestamp();
+
+ var oldDatasources = menulist.database.GetDataSources();
+ while(oldDatasources.hasMoreElements())
+ {
+ menulist.database.RemoveDataSource(oldDatasources.getNext());
+ }
+ //Refresh damit die entfernten DS auch wirklich entfernt werden
+ menulist.builder.rebuild();
+
+ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
+ if(typeof(filter)=='undefined')
+ var datasource = rdfService.GetDataSource(url);
+ else
+ var datasource = rdfService.GetDataSourceBlocking(url);
+ datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
+ datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
+ menulist.database.AddDataSource(datasource);
+ if(typeof(filter)!='undefined')
+ menulist.builder.rebuild();
+ }
+}
+
+// ****
+// * Speichert die Projektbetreuer Daten
+// ****
+function StudentProjektbetreuerSpeichern()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ person_id = MenulistGetSelectedValue('student-projektbetreuer-menulist-person');
+ note = document.getElementById('student-projektbetreuer-menulist-note').value;
+ faktor = document.getElementById('student-projektbetreuer-textbox-faktor').value;
+ name = document.getElementById('student-projektbetreuer-textbox-name').value;
+ punkte = document.getElementById('student-projektbetreuer-textbox-punkte').value;
+ stunden = document.getElementById('student-projektbetreuer-textbox-stunden').value;
+ stundensatz = document.getElementById('student-projektbetreuer-textbox-stundensatz').value;
+ betreuerart_kurzbz = document.getElementById('student-projektbetreuer-menulist-betreuerart').value;
+ person_id_old = document.getElementById('student-projektbetreuer-textbox-person_id').value;
+ neu = document.getElementById('student-projektbetreuer-checkbox-neu').checked;
+
+ var tree = document.getElementById('student-projektarbeit-tree');
+
+ if (tree.currentIndex==-1)
+ {
+ alert('Projektarbeit muss ausgewaehlt sein');
+ return;
+ }
+ var col = tree.columns ? tree.columns["student-projektarbeit-tree-projektarbeit_id"] : "student-projektarbeit-tree-projektarbeit_id";
+ var projektarbeit_id=tree.view.getCellText(tree.currentIndex,col);
+
+ var url = 'content/student/studentDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'saveprojektbetreuer');
+
+ req.add('person_id', person_id);
+ req.add('note', note);
+ req.add('faktor', faktor);
+ req.add('name', name);
+ req.add('punkte', punkte);
+ req.add('stunden', stunden);
+ req.add('stundensatz', stundensatz);
+ req.add('betreuerart_kurzbz', betreuerart_kurzbz);
+ req.add('projektarbeit_id', projektarbeit_id);
+ req.add('person_id_old', person_id_old);
+ req.add('neu', neu);
+
+ 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
+ {
+ StudentProjektbetreuerSelectPersonID=person_id;
+ StudentProjektbetreuerSelectProjektarbeitID=projektarbeit_id;
+ StudentProjektbetreuerTreeDatasource.Refresh(false); //non blocking
+ SetStatusBarText('Daten wurden gespeichert');
+ StudentProjektbetreuerDetailDisableFields(true);
+ }
+}
+
+// ****
+// * Deaktiviert die Detailfelder um einen Neuen Datensatz zu erstellen
+// ****
+function StudentProjektbetreuerNeu()
+{
+ StudentProjektbetreuerDetailReset();
+ document.getElementById('student-projektbetreuer-checkbox-neu').checked=true;
+ StudentProjektbetreuerDetailDisableFields(false);
+}
+
+// ****
+// * Loescht einen Projektbetreuer
+// ****
+function StudentProjektbetreuerLoeschen()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ var tree = document.getElementById('student-projektbetreuer-tree');
+
+ if (tree.currentIndex==-1)
+ {
+ alert('Projektbetreuer muss ausgewaehlt sein');
+ return;
+ }
+ var col = tree.columns ? tree.columns["student-projektbetreuer-tree-projektarbeit_id"] : "student-projektbetreuer-tree-projektarbeit_id";
+ var projektarbeit_id=tree.view.getCellText(tree.currentIndex,col);
+ var col = tree.columns ? tree.columns["student-projektbetreuer-tree-person_id"] : "student-projektbetreuer-tree-person_id";
+ var person_id=tree.view.getCellText(tree.currentIndex,col);
+
+ var url = 'content/student/studentDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'deleteprojektbetreuer');
+
+ req.add('person_id', person_id);
+ req.add('projektarbeit_id', projektarbeit_id);
+
+ 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
+ {
+ StudentProjektbetreuerSelectPersonID=null;
+ StudentProjektbetreuerSelectProjektarbeitID=null;
+ StudentProjektbetreuerTreeDatasource.Refresh(false); //non blocking
+ SetStatusBarText('Daten wurden geloescht');
+ StudentProjektbetreuerDetailDisableFields(true);
+ }
+}
\ No newline at end of file
diff --git a/content/student/studentprojektarbeitoverlay.xul.php b/content/student/studentprojektarbeitoverlay.xul.php
index 9002847ce..b4564ad6c 100644
--- a/content/student/studentprojektarbeitoverlay.xul.php
+++ b/content/student/studentprojektarbeitoverlay.xul.php
@@ -34,164 +34,448 @@ echo '';
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/include/person.class.php b/include/person.class.php
index c2705571f..0ea2ba12c 100644
--- a/include/person.class.php
+++ b/include/person.class.php
@@ -70,16 +70,18 @@ class person
function person($conn, $person_id=null, $unicode=false)
{
$this->conn = $conn;
-
- if($unicode)
- $qry = "SET CLIENT_ENCODING TO 'UNICODE';";
- else
- $qry = "SET CLIENT_ENCODING TO 'LATIN9';";
-
- if(!pg_query($conn,$qry))
+ if(!$unicode==null)
{
- $this->errormsg = "Encoding konnte nicht gesetzt werden\n";
- return false;
+ if($unicode)
+ $qry = "SET CLIENT_ENCODING TO 'UNICODE';";
+ else
+ $qry = "SET CLIENT_ENCODING TO 'LATIN9';";
+
+ if(!pg_query($conn,$qry))
+ {
+ $this->errormsg = "Encoding konnte nicht gesetzt werden\n";
+ return false;
+ }
}
if($person_id != null)
diff --git a/include/projektarbeit.class.php b/include/projektarbeit.class.php
index 01547081d..d42698936 100644
--- a/include/projektarbeit.class.php
+++ b/include/projektarbeit.class.php
@@ -46,7 +46,7 @@ class projektarbeit
var $freigegeben; // @var boolean
var $gesperrtbis; // @var date
var $stundensatz; // @var numeric(6,2)
- var $gesamtstunden; // @var integer
+ var $gesamtstunden; // @var numeric(8,2)
var $themenbereich; // @var sting
var $anmerkung; // @var string
var $ext_id; // @var integer
@@ -64,30 +64,81 @@ class projektarbeit
function projektarbeit($conn,$projektarbeit_id=null, $unicode=false)
{
$this->conn = $conn;
- if ($unicode)
+
+ if($unicode!=null)
{
- $qry = "SET CLIENT_ENCODING TO 'UNICODE';";
+ if ($unicode)
+ {
+ $qry = "SET CLIENT_ENCODING TO 'UNICODE';";
+ }
+ else
+ {
+ $qry="SET CLIENT_ENCODING TO 'LATIN9';";
+ }
+ if(!pg_query($conn,$qry))
+ {
+ $this->errormsg = "Encoding konnte nicht gesetzt werden";
+ return false;
+ }
}
- else
- {
- $qry="SET CLIENT_ENCODING TO 'LATIN9';";
- }
- if(!pg_query($conn,$qry))
- {
- $this->errormsg = "Encoding konnte nicht gesetzt werden";
- return false;
- }
- //if($projektarbeit_id != null) $this->load($projektarbeit_id);
+ if($projektarbeit_id != null)
+ $this->load($projektarbeit_id);
}
/**
- * Laedt die Funktion mit der ID $projektarbeit_id
- * @param $projektarbeit_id ID der zu ladenden Funktion
+ * Laedt die Projektarbeit mit der ID $projektarbeit_id
+ * @param $projektarbeit_id ID der zu ladenden Projektarbeit
* @return true wenn ok, false im Fehlerfall
*/
function load($projektarbeit_id)
{
- //noch nicht implementiert
+ if(!is_numeric($projektarbeit_id))
+ {
+ $this->errormsg = 'Projektarbeit_id muss eine gueltige Zahl sein';
+ return false;
+ }
+
+ $qry = "SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='$projektarbeit_id'";
+
+ if($result = pg_query($this->conn, $qry))
+ {
+ if($row = pg_fetch_object($result))
+ {
+ $this->projektarbeit_id = $row->projektarbeit_id;
+ $this->projekttyp_kurzbz = $row->projekttyp_kurzbz;
+ $this->titel = $row->titel;
+ $this->lehreinheit_id = $row->lehreinheit_id;
+ $this->student_uid = $row->student_uid;
+ $this->firma_id = $row->firma_id;
+ $this->note = $row->note;
+ $this->punkte = $row->punkte;
+ $this->beginn = $row->beginn;
+ $this->ende = $row->ende;
+ $this->faktor = $row->faktor;
+ $this->freigegeben = ($row->freigegeben=='t'?true:false);
+ $this->gesperrtbis = $row->gesperrtbis;
+ $this->stundensatz = $row->stundensatz;
+ $this->gesamtstunden = $row->gesamtstunden;
+ $this->themenbereich = $row->themenbereich;
+ $this->anmerkung = $row->anmerkung;
+ $this->ext_id = $row->ext_id;
+ $this->insertamum = $row->insertamum;
+ $this->insertvon = $row->insertvon;
+ $this->updateamum = $row->updateamum;
+ $this->updatevon = $row->updatevon;
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Datensatz wurde nicht gefunden';
+ return false;
+ }
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Daten';
+ return false;
+ }
}
/**
@@ -99,17 +150,17 @@ class projektarbeit
//Gesamtlaenge pruefen
//$this->errormsg='Eine der Gesamtlaengen wurde ueberschritten';
- if ($this->projektarbeit_kurzbz=null)
+ if ($this->projekttyp_kurzbz==null)
{
- $this->errormsg='Projektarbeit_kurzbz darf nicht NULL sein! - student_uid: '.$this->student_uid;
+ $this->errormsg='Projekttyp_kurzbz darf nicht NULL sein! - student_uid: '.$this->student_uid;
}
- if ($this->lehreinheit_id=null)
+ if ($this->lehreinheit_id==null)
{
$this->errormsg='Lehreinheit_id darf nicht NULL sein! - student_uid: '.$this->student_uid;
}
- if(strlen($this->projektarbeit_kurzbz)>16)
+ if(strlen($this->projekttyp_kurzbz)>16)
{
- $this->errormsg = 'Projektarbeit_kurzbz darf nicht länger als 16 Zeichen sein - student_uid: '.$this->student_uid;
+ $this->errormsg = 'Projektyp_kurzbz darf nicht länger als 16 Zeichen sein - student_uid: '.$this->student_uid;
return false;
}
if(strlen($this->titel)>256)
@@ -177,17 +228,20 @@ class projektarbeit
* andernfalls wird der Datensatz mit der ID in $projektarbeit_id aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
- function save()
+ function save($new=null)
{
//Variablen pruefen
if(!$this->checkvars())
return false;
- if($this->new)
+ if($new==null)
+ $new = $this->new;
+
+ if($new)
{
//Neuen Datensatz einfuegen
- $qry='INSERT INTO lehre.tbl_projektarbeit (projekttyp_kurzbz, titel, lehreinheit_id, student_uid, firma_id, note, punkte,
+ $qry='BEGIN; INSERT INTO lehre.tbl_projektarbeit (projekttyp_kurzbz, titel, lehreinheit_id, student_uid, firma_id, note, punkte,
beginn, ende, faktor, freigegeben, gesperrtbis, stundensatz, gesamtstunden, themenbereich, anmerkung,
ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('.
$this->addslashes($this->projekttyp_kurzbz).', '.
@@ -238,31 +292,40 @@ class projektarbeit
'gesamtstunden='.$this->addslashes($this->gesamtstunden).', '.
'themenbereich='.$this->addslashes($this->themenbereich).', '.
'anmerkung='.$this->addslashes($this->anmerkung).', '.
- 'updateamum= now(), '.
- 'updatevon='.$this->addslashes($this->updatevon).' '.
- //'firmentyp='.$this->addslashes($this->firmentyp_kurzbz).' '.
+ 'updateamum= now(), '.
+ 'updatevon='.$this->addslashes($this->updatevon).' '.
'WHERE projektarbeit_id='.$this->addslashes($this->projektarbeit_id).';';
}
- //echo $qry;
+
if(pg_query($this->conn,$qry))
{
- //Log schreiben
- /*$sql = $qry;
- $qry = "SELECT nextval('log_seq') as id;";
- if(!$row = pg_fetch_object(pg_query($this->conn, $qry)))
+ if($new)
{
- $this->errormsg = 'Fehler beim Auslesen der Log-Sequence';
- return false;
+ //Sequence auslesen
+ $qry = "SELECT currval('lehre.tbl_projektarbeit_projektarbeit_id_seq') as id;";
+ if($result = pg_query($this->conn, $qry))
+ {
+ if($row = pg_fetch_object($result))
+ {
+ $this->projektarbeit_id = $row->id;
+ pg_query($this->conn, 'COMMIT');
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Auslesen der Sequence';
+ pg_query($this->conn, 'ROLLBACK;');
+ return false;
+ }
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Auslesen der Sequence';
+ pg_query($this->conn, 'ROLLBACK;');
+ return false;
+ }
}
-
- $qry = "INSERT INTO log(log_pk, creationdate, creationuser, sql) VALUES('$row->id', now(), '$this->updatevon', '".addslashes($sql)."')";
- if(pg_query($this->conn, $qry))
- return true;
- else
- {
- $this->errormsg = 'Fehler beim Speichern des Log-Eintrages';
- return false;
- } */
+
return true;
}
else
@@ -279,7 +342,72 @@ class projektarbeit
*/
function delete($projektarbeit_id)
{
- //noch nicht implementiert!
+ if(!is_numeric($projektarbeit_id))
+ {
+ $this->errormsg = 'Projektarbeit_id ist ungueltig';
+ return true;
+ }
+
+ $qry = "DELETE FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='$projektarbeit_id'";
+
+ if(pg_query($this->conn, $qry))
+ {
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Loeschen des Datensatzes';
+ return false;
+ }
+ }
+
+ // ********************************************
+ // * Laedt alle Projektarbeiten eines Studenten
+ // * @param student_uid
+ // * @return true wenn ok, false wenn Fehler
+ // ********************************************
+ function getProjektarbeit($student_uid)
+ {
+ $qry = "SELECT * FROM lehre.tbl_projektarbeit WHERE student_uid='".addslashes($student_uid)."'";
+
+ if($result = pg_query($this->conn, $qry))
+ {
+ while($row = pg_fetch_object($result))
+ {
+ $obj = new projektarbeit($this->conn, null, null);
+
+ $obj->projektarbeit_id = $row->projektarbeit_id;
+ $obj->projekttyp_kurzbz = $row->projekttyp_kurzbz;
+ $obj->titel = $row->titel;
+ $obj->lehreinheit_id = $row->lehreinheit_id;
+ $obj->student_uid = $row->student_uid;
+ $obj->firma_id = $row->firma_id;
+ $obj->note = $row->note;
+ $obj->punkte = $row->punkte;
+ $obj->beginn = $row->beginn;
+ $obj->ende = $row->ende;
+ $obj->faktor = $row->faktor;
+ $obj->freigegeben = ($row->freigegeben=='t'?true:false);
+ $obj->gesperrtbis = $row->gesperrtbis;
+ $obj->stundensatz = $row->stundensatz;
+ $obj->gesamtstunden = $row->gesamtstunden;
+ $obj->themenbereich = $row->themenbereich;
+ $obj->anmerkung = $row->anmerkung;
+ $obj->ext_id = $row->ext_id;
+ $obj->insertamum = $row->insertamum;
+ $obj->insertvon = $row->insertvon;
+ $obj->updateamum = $row->updateamum;
+ $obj->updatevon = $row->updatevon;
+
+ $this->result[] = $obj;
+ }
+
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Daten';
+ return false;
+ }
}
}
?>
\ No newline at end of file
diff --git a/include/projektbetreuer.class.php b/include/projektbetreuer.class.php
index b86cf94f4..2893d46a4 100644
--- a/include/projektbetreuer.class.php
+++ b/include/projektbetreuer.class.php
@@ -32,21 +32,22 @@ class projektbetreuer
var $result = array(); // @var adresse Objekt
//Tabellenspalten
- var $person_id; // @var integer
+ var $person_id; // @var integer
var $projektarbeit_id; // @var integer
- var $note; // @var integer
- var $betreuerart; // @var character(1) b-Bachelorarbeitsbetreuer, d-Diplomarbeitsbetreuer, g-Diplomarbeitsbegutachter
+ var $note; // @var integer
+ var $betreuerart_kurzbz;// @var varchar
var $faktor; // @var numeric(3,2)
- var $name; // @var string
+ var $name; // @var string
var $punkte; // @var numeric(6,2)
- var $stunden; // @var integer
+ var $stunden; // @var numeric(8,4)
var $stundensatz; // @var numeric(6,2)
var $ext_id; // @var integer
var $insertamum; // @var timestamp
- var $insertvon; // @var bigint
+ var $insertvon; // @var bigint
var $updateamum; // @var timestamp
- var $updatevon; // @var bigint
+ var $updatevon; // @var bigint
+ var $person_id_old;
/**
* Konstruktor
@@ -56,20 +57,24 @@ class projektbetreuer
function projektbetreuer($conn, $person_id=null, $projektarbeit_id=null, $unicode=false)
{
$this->conn = $conn;
- if ($unicode)
+ if($unicode!=null)
{
- $qry = "SET CLIENT_ENCODING TO 'UNICODE';";
+ if ($unicode)
+ {
+ $qry = "SET CLIENT_ENCODING TO 'UNICODE';";
+ }
+ else
+ {
+ $qry="SET CLIENT_ENCODING TO 'LATIN9';";
+ }
+ if(!pg_query($conn,$qry))
+ {
+ $this->errormsg = "Encoding konnte nicht gesetzt werden";
+ return false;
+ }
}
- else
- {
- $qry="SET CLIENT_ENCODING TO 'LATIN9';";
- }
- if(!pg_query($conn,$qry))
- {
- $this->errormsg = "Encoding konnte nicht gesetzt werden";
- return false;
- }
- //if($projektarbeit_id != null && $person_id!=null) $this->load($person_id, $projektarbeit_id);
+ if($projektarbeit_id != null && $person_id!=null)
+ $this->load($person_id, $projektarbeit_id);
}
/**
@@ -80,7 +85,51 @@ class projektbetreuer
*/
function load($person_id, $projektarbeit_id)
{
- //noch nicht implementiert
+ if(!is_numeric($person_id))
+ {
+ $this->errormsg = 'Person_id muss eine gueltige Zahl sein';
+ return false;
+ }
+
+ if(!is_numeric($projektarbeit_id))
+ {
+ $this->errormsg = 'Projektarbeit_id muss eine gueltige Zahl sein';
+ return false;
+ }
+
+ $qry = "SELECT * FROM lehre.tbl_projektbetreuer WHERE person_id='$person_id' AND projektarbeit_id='$projektarbeit_id'";
+
+ if($result = pg_query($this->conn, $qry))
+ {
+ if($row = pg_fetch_object($result))
+ {
+ $this->person_id = $row->person_id;
+ $this->projektarbeit_id = $row->projektarbeit_id;
+ $this->note = $row->note;
+ $this->betreuerart_kurzbz = $row->betreuerart_kurzbz;
+ $this->faktor = $row->faktor;
+ $this->name = $row->name;
+ $this->punkte = $row->punkte;
+ $this->stunden = $row->stunden;
+ $this->stundensatz = $row->stundensatz;
+ $this->updateamum = $row->updateamum;
+ $this->updatevon = $row->updatevon;
+ $this->insertamum = $row->insertamum;
+ $this->insertvon = $row->insertvon;
+ $this->ext_id = $row->ext_id;
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Datensatz wurde nicht gefunden';
+ return false;
+ }
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Daten';
+ return false;
+ }
}
/**
@@ -93,9 +142,9 @@ class projektbetreuer
//Gesamtlaenge pruefen
//$this->errormsg='Eine der Gesamtlaengen wurde ueberschritten';
- if(strlen($this->betreuerart)>1)
+ if(strlen($this->betreuerart_kurzbz)>16)
{
- $this->errormsg = 'betreuerart darf nicht länger als 1 Zeichen sein - person_id/projektarbeit: '.$this->person_id.'/'.$this->projektarbeit_id;
+ $this->errormsg = 'betreuerart darf nicht länger als 16 Zeichen sein - person_id/projektarbeit: '.$this->person_id.'/'.$this->projektarbeit_id;
return false;
}
if(strlen($this->name)>32)
@@ -109,7 +158,7 @@ class projektbetreuer
$this->errormsg = 'Note muß ein numerischer Wert sein - person_id/projektarbeit: '.$this->person_id.'/'.$this->projektarbeit_id;
return false;
}
- if(!is_numeric($this->Punkte))
+ if(!is_numeric($this->punkte))
{
$this->errormsg = 'Punkte muß ein numerischer Wert sein - person_id/projektarbeit: '.$this->person_id.'/'.$this->projektarbeit_id;
}
@@ -128,6 +177,7 @@ class projektbetreuer
$this->errormsg = '';
return true;
}
+
// ************************************************
// * wenn $var '' ist wird "null" zurueckgegeben
// * wenn $var !='' ist werden datenbankkritische
@@ -138,28 +188,31 @@ class projektbetreuer
{
return ($var!=''?"'".addslashes($var)."'":'null');
}
+
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
- function save()
+ function save($new=null)
{
+ if($new==null)
+ $new = $this->new;
+
//Variablen pruefen
if(!$this->checkvars())
return false;
- if($this->new)
+ if($new)
{
- //Neuen Datensatz einfuegen
-
- $qry='INSERT INTO lehre.tbl_projektbetreuer (person_id, projektarbeit_id, note, betreuerart, faktor, name,
+ //Neuen Datensatz einfuegen
+ $qry='INSERT INTO lehre.tbl_projektbetreuer (person_id, projektarbeit_id, note, betreuerart_kurzbz, faktor, name,
punkte, stunden, stundensatz, ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('.
$this->addslashes($this->person_id).', '.
$this->addslashes($this->projektarbeit_id).', '.
$this->addslashes($this->note).', '.
- $this->addslashes($this->betreuerart).', '.
+ $this->addslashes($this->betreuerart_kurzbz).', '.
$this->addslashes($this->faktor).', '.
$this->addslashes($this->name).', '.
$this->addslashes($this->punkte).', '.
@@ -172,6 +225,8 @@ class projektbetreuer
else
{
//Updaten des bestehenden Datensatzes
+ if($this->person_id_old=='')
+ $this->person_id_old = $this->person_id;
//Pruefen ob projektarbeit_id eine gueltige Zahl ist
if(!is_numeric($this->projektarbeit_id))
@@ -179,6 +234,7 @@ class projektbetreuer
$this->errormsg = 'projektarbeit_id muss eine gueltige Zahl sein';
return false;
}
+
//Pruefen ob person_id eine gueltige Zahl ist
if(!is_numeric($this->person_id))
{
@@ -188,39 +244,20 @@ class projektbetreuer
$qry='UPDATE lehre.tbl_projektbetreuer SET '.
'person_id='.$this->addslashes($this->person_id).', '.
- 'projektarbeit_id='.$this->addslashes($this->projektarbeit_id).', '.
'note='.$this->addslashes($this->note).', '.
- 'betreuerart='.$this->addslashes($this->betreuerart).', '.
+ 'betreuerart_kurzbz='.$this->addslashes($this->betreuerart_kurzbz).', '.
'faktor='.$this->addslashes($this->faktor).', '.
'name='.$this->addslashes($this->name).', '.
- 'punkte'.$this->addslashes($this->punkte).', '.
+ 'punkte='.$this->addslashes($this->punkte).', '.
'stunden='.$this->addslashes($this->stunden).', '.
'stundensatz='.$this->addslashes($this->stundensatz).', '.
- 'updateamum= now(), '.
- 'updatevon='.$this->addslashes($this->updatevon).' '.
- 'firmentyp='.$this->addslashes($this->firmentyp_kurzbz).' '.
- 'WHERE projektarbeit_id='.$this->addslashes($this->projektarbeit_id).';';
+ 'updateamum='.$this->addslashes($this->updateamum).', '.
+ 'updatevon='.$this->addslashes($this->updatevon).' '.
+ "WHERE projektarbeit_id='".addslashes($this->projektarbeit_id)."' AND person_id='".addslashes($this->person_id_old)."';";
}
//echo $qry;
if(pg_query($this->conn,$qry))
- {
- //Log schreiben
- /*$sql = $qry;
- $qry = "SELECT nextval('log_seq') as id;";
- if(!$row = pg_fetch_object(pg_query($this->conn, $qry)))
- {
- $this->errormsg = 'Fehler beim Auslesen der Log-Sequence';
- return false;
- }
-
- $qry = "INSERT INTO log(log_pk, creationdate, creationuser, sql) VALUES('$row->id', now(), '$this->updatevon', '".addslashes($sql)."')";
- if(pg_query($this->conn, $qry))
- return true;
- else
- {
- $this->errormsg = 'Fehler beim Speichern des Log-Eintrages';
- return false;
- } */
+ {
return true;
}
else
@@ -238,7 +275,69 @@ class projektbetreuer
*/
function delete($person_id, $projektarbeit_id)
{
- //noch nicht implementiert!
+ if(!is_numeric($person_id))
+ {
+ $this->errormsg = 'Person_id muss eine gueltige Zahl sein';
+ return false;
+ }
+
+ if(!is_numeric($projektarbeit_id))
+ {
+ $this->errormsg = 'Projektarbeit_id muss eine gueltige Zahl sein';
+ return false;
+ }
+
+ $qry = "DELETE FROM lehre.tbl_projektbetreuer WHERE person_id='".$person_id."' AND projektarbeit_id='".$projektarbeit_id."';";
+
+ if(pg_query($this->conn, $qry))
+ {
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Loeschen des Datensatzes';
+ return false;
+ }
+ }
+
+ // ************************************************
+ // * Liefert alle Betreuer zu einer Projektarbeit
+ // * @param projektarbeit_id
+ // ************************************************
+ function getProjektbetreuer($projektarbeit_id)
+ {
+ if(!is_numeric($projektarbeit_id))
+ {
+ $this->errormsg = 'Projektarbeit_id muss eine gueltige Zahl sein';
+ return false;
+ }
+
+ $qry = "SELECT * FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id='".$projektarbeit_id."' ORDER BY name";
+
+ if($result = pg_query($this->conn, $qry))
+ {
+ while($row = pg_fetch_object($result))
+ {
+ $obj = new projektbetreuer($this->conn, null, null, null);
+
+ $obj->person_id = $row->person_id;
+ $obj->projektarbeit_id = $row->projektarbeit_id;
+ $obj->note = $row->note;
+ $obj->betreuerart_kurzbz = $row->betreuerart_kurzbz;
+ $obj->faktor = $row->faktor;
+ $obj->name = $row->name;
+ $obj->punkte = $row->punkte;
+ $obj->stunden = $row->stunden;
+ $obj->stundensatz = $row->stundensatz;
+ $obj->updateamum = $row->updateamum;
+ $obj->updatevon = $row->updatevon;
+ $obj->insertamum = $row->insertamum;
+ $obj->insertvon = $row->insertvon;
+ $obj->ext_id = $row->ext_id;
+
+ $this->result[] = $obj;
+ }
+ }
}
}
?>
\ No newline at end of file
diff --git a/rdf/betreuerart.rdf.php b/rdf/betreuerart.rdf.php
new file mode 100644
index 000000000..8a0f2f4d6
--- /dev/null
+++ b/rdf/betreuerart.rdf.php
@@ -0,0 +1,67 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+// header für no cache
+header("Cache-Control: no-cache");
+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/xhtml+xml");
+// xml
+echo '';
+// DAO
+require_once('../vilesci/config.inc.php');
+
+// Datenbank Verbindung
+if (!$conn = pg_pconnect(CONN_STRING))
+ die('Es konnte keine Verbindung zum Server aufgebaut werden!');
+
+$rdf_url='http://www.technikum-wien.at/betreuerart';
+
+echo '
+
+
+
+';
+
+$qry = "SELECT * FROM lehre.tbl_betreuerart ORDER BY betreuerart_kurzbz";
+
+if($result = pg_query($conn, $qry))
+{
+ while($row = pg_fetch_object($result))
+ {
+ echo '
+
+
+ betreuerart_kurzbz.']]>
+ beschreibung.']]>
+
+
+ ';
+ }
+}
+?>
+
+
\ No newline at end of file
diff --git a/rdf/projektarbeit.rdf.php b/rdf/projektarbeit.rdf.php
new file mode 100644
index 000000000..2623c9a8f
--- /dev/null
+++ b/rdf/projektarbeit.rdf.php
@@ -0,0 +1,108 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+// header für no cache
+header("Cache-Control: no-cache");
+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/xhtml+xml");
+// xml
+echo '';
+// DAO
+require_once('../vilesci/config.inc.php');
+require_once('../include/projektarbeit.class.php');
+require_once('../include/datum.class.php');
+require_once('../include/lehreinheit.class.php');
+
+// Datenbank Verbindung
+if (!$conn = pg_pconnect(CONN_STRING))
+ die('Es konnte keine Verbindung zum Server aufgebaut werden!');
+
+$rdf_url='http://www.technikum-wien.at/projektarbeit';
+
+echo '
+
+
+
+';
+
+$datum_obj = new datum();
+$projektarbeit = new projektarbeit($conn, null, true);
+
+if(isset($_GET['student_uid']))
+{
+ $projektarbeit->getProjektarbeit($_GET['student_uid']);
+
+ foreach ($projektarbeit->result as $row)
+ draw_content($row);
+}
+elseif(isset($_GET['projektarbeit_id']) && is_numeric($_GET['projektarbeit_id']))
+{
+ if($projektarbeit->load($_GET['projektarbeit_id']))
+ draw_content($projektarbeit);
+ else
+ die('Eintrag wurde nicht gefunden');
+}
+else
+ die('Student_uid oder Projektarbeit_id muss uebergeben werden');
+
+
+function draw_content($row)
+{
+ global $conn, $rdf_url, $datum_obj;
+ $lehreinheit = new lehreinheit($conn, $row->lehreinheit_id);
+ echo '
+
+
+ projektarbeit_id.']]>
+ projekttyp_kurzbz.']]>
+ titel.']]>
+ lehreinheit_id.']]>
+ studiensemester_kurzbz.']]>
+ lehrveranstaltung_id.']]>
+ student_uid.']]>
+ firma_id.']]>
+ note.']]>
+ punkte.']]>
+ convertISODate($row->beginn).']]>
+ beginn.']]>
+ convertISODate($row->ende).']]>
+ ende.']]>
+ faktor.']]>
+ freigegeben?'Ja':'Nein').']]>
+ convertISODate($row->gesperrtbis).']]>
+ gesperrtbis.']]>
+ stundensatz.']]>
+ gesamtstunden.']]>
+ themenbereich.']]>
+ anmerkung.']]>
+
+
+ ';
+}
+?>
+
+
\ No newline at end of file
diff --git a/rdf/projektbetreuer.rdf.php b/rdf/projektbetreuer.rdf.php
new file mode 100644
index 000000000..285c35c76
--- /dev/null
+++ b/rdf/projektbetreuer.rdf.php
@@ -0,0 +1,96 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+// header für no cache
+header("Cache-Control: no-cache");
+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/xhtml+xml");
+// xml
+echo '';
+// DAO
+require_once('../vilesci/config.inc.php');
+require_once('../include/projektbetreuer.class.php');
+require_once('../include/datum.class.php');
+require_once('../include/person.class.php');
+
+// Datenbank Verbindung
+if (!$conn = pg_pconnect(CONN_STRING))
+ die('Es konnte keine Verbindung zum Server aufgebaut werden!');
+
+$rdf_url='http://www.technikum-wien.at/projektbetreuer';
+
+echo '
+
+
+
+';
+
+$datum_obj = new datum();
+$projektbetreuer = new projektbetreuer($conn, null, null, true);
+
+if(isset($_GET['projektarbeit_id']) && !isset($_GET['person_id']))
+{
+ $projektbetreuer->getProjektbetreuer($_GET['projektarbeit_id']);
+
+ foreach ($projektbetreuer->result as $row)
+ draw_content($row);
+}
+elseif(isset($_GET['person_id']) && is_numeric($_GET['person_id']) && isset($_GET['projektarbeit_id']) && is_numeric($_GET['projektarbeit_id']))
+{
+ if($projektbetreuer->load($_GET['person_id'], $_GET['projektarbeit_id']))
+ draw_content($projektbetreuer);
+ else
+ die('Eintrag wurde nicht gefunden');
+}
+else
+ die('Projektarbeit_id muss uebergeben werden');
+
+function draw_content($row)
+{
+ global $conn, $rdf_url, $datum_obj;
+ $person=new person($conn, $row->person_id, null);
+ echo '
+
+
+ projektarbeit_id.']]>
+ person_id.']]>
+ nachname.']]>
+ vorname.']]>
+ note.']]>
+ faktor.']]>
+ name.']]>
+ punkte.']]>
+ stunden.']]>
+ stundensatz.']]>
+ betreuerart_kurzbz.']]>
+
+
+ ';
+}
+?>
+
+
\ No newline at end of file
diff --git a/rdf/projekttyp.rdf.php b/rdf/projekttyp.rdf.php
new file mode 100644
index 000000000..1b0fe279b
--- /dev/null
+++ b/rdf/projekttyp.rdf.php
@@ -0,0 +1,67 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+
+// header für no cache
+header("Cache-Control: no-cache");
+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/xhtml+xml");
+require_once('../vilesci/config.inc.php');
+require_once('../include/functions.inc.php');
+
+echo '';
+
+// Datenbank Verbindung
+if (!$conn = pg_pconnect(CONN_STRING))
+ $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
+
+$rdf_url='http://www.technikum-wien.at/projekttyp';
+
+echo '
+
+
+';
+
+//Daten holen
+$qry = "SET CLIENT_ENCODING TO 'UNICODE';SELECT * FROM lehre.tbl_projekttyp ORDER BY bezeichnung";
+
+if($result = pg_query($conn, $qry))
+{
+ while($row = pg_fetch_object($result))
+ {
+ echo '
+
+
+ projekttyp_kurzbz.']]>
+ bezeichnung.']]>
+
+ ';
+ }
+}
+?>
+
+
\ No newline at end of file
|