diff --git a/content/student/studentdetailoverlay.xul.php b/content/student/studentdetailoverlay.xul.php
index b9e38eb85..ffa372562 100644
--- a/content/student/studentdetailoverlay.xul.php
+++ b/content/student/studentdetailoverlay.xul.php
@@ -335,7 +335,7 @@ echo '';
@@ -375,6 +375,45 @@ echo '';
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php
index dfb6af8f5..381b3ec34 100644
--- a/content/student/studentoverlay.js.php
+++ b/content/student/studentoverlay.js.php
@@ -549,6 +549,23 @@ function StudentAuswahl()
document.getElementById('student-prestudent-textbox-prestudent_id').value=prestudent_id;
document.getElementById('student-prestudent-checkbox-new').checked=false;
document.getElementById('student-prestudent-textbox-studiengang_kz').value=studiengang_kz;
+
+
+ rollentree = document.getElementById('student-prestudent-tree-rolle');
+ url='rdf/prestudentrolle.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp();
+
+ //Alte DS entfernen
+ var oldDatasources = rollentree.database.GetDataSources();
+ while(oldDatasources.hasMoreElements())
+ {
+ rollentree.database.RemoveDataSource(oldDatasources.getNext());
+ }
+ //Refresh damit die entfernten DS auch wirklich entfernt werden
+ 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);
}
// ****
diff --git a/include/prestudent.class.php b/include/prestudent.class.php
index 9005c95c4..17e473974 100644
--- a/include/prestudent.class.php
+++ b/include/prestudent.class.php
@@ -42,6 +42,15 @@ class prestudent extends person
var $punkte;
var $bismelden;
+ var $rolle_kurzbz;
+ var $studiensemester_kurzbz;
+ var $ausbildungssemester;
+ var $datum;
+ var $insertamum;
+ var $insertvon;
+ var $updateamum;
+ var $updatevon;
+
// ErgebnisArray
var $result=array();
var $num_rows=0;
@@ -57,15 +66,18 @@ class prestudent extends person
{
$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';
- 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';
+ return false;
+ }
}
if($prestudent_id != null)
@@ -293,5 +305,50 @@ class prestudent extends person
}
}
+
+ // ********
+ // * Laedt die Rolle(n) eines Prestudenten
+ // ********
+ function getPrestudentRolle($prestudent_id, $rolle_kurzbz=null, $studiensemester_kurzbz=null)
+ {
+ 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'";
+ if($rolle_kurzbz!=null)
+ $qry.= " AND rolle_kurzbz='".addslashes($rolle_kurzbz)."'";
+ if($studiensemester_kurzbz!=null)
+ $qry.= " AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
+ $qry.= " ORDER BY datum, insertamum";
+
+ if($result = pg_query($this->conn, $qry))
+ {
+ while($row = pg_fetch_object($result))
+ {
+ $rolle = new prestudent($this->conn, null, null);
+
+ $rolle->prestudent_id = $row->prestudent_id;
+ $rolle->rolle_kurzbz = $row->rolle_kurzbz;
+ $rolle->studiensemester_kurzbz = $row->studiensemester_kurzbz;
+ $rolle->ausbildungssemester = $row->ausbildungssemester;
+ $rolle->datum = $row->datum;
+ $rolle->insertamum = $row->insertamum;
+ $rolle->insertvon = $row->insertvon;
+ $rolle->updateamum = $row->updateamum;
+ $rolle->updatevon = $row->updatevon;
+
+ $this->result[] = $rolle;
+ }
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim laden der PrestudentDaten';
+ return false;
+ }
+ }
}
-?>
+?>
\ No newline at end of file
diff --git a/rdf/aufnahmeschluessel.rdf.php b/rdf/aufnahmeschluessel.rdf.php
index ef20a7705..3c391cbd7 100644
--- a/rdf/aufnahmeschluessel.rdf.php
+++ b/rdf/aufnahmeschluessel.rdf.php
@@ -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 '';
// DAO
@@ -53,7 +53,8 @@ if(isset($_GET['optional']) && $_GET['optional']=='true')
echo '
- -- keine Auswahl --
+
+ -- keine Auswahl --
';
@@ -67,6 +68,7 @@ if($result = pg_query($conn, $qry))
aufnahmeschluessel; ?>]]>
+ aufnahmeschluessel; ?>]]>
';
// DAO
diff --git a/rdf/lehreinheit.rdf.php b/rdf/lehreinheit.rdf.php
index de57e1610..3d77fc891 100644
--- a/rdf/lehreinheit.rdf.php
+++ b/rdf/lehreinheit.rdf.php
@@ -11,7 +11,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 '';
// DAO
diff --git a/rdf/lehrveranstaltung.rdf.php b/rdf/lehrveranstaltung.rdf.php
index 274c5cb22..490ca1c8c 100644
--- a/rdf/lehrveranstaltung.rdf.php
+++ b/rdf/lehrveranstaltung.rdf.php
@@ -11,7 +11,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 '';
// DAO
diff --git a/rdf/lvinfo.rdf.php b/rdf/lvinfo.rdf.php
index 27f8f62ac..d623d7b92 100644
--- a/rdf/lvinfo.rdf.php
+++ b/rdf/lvinfo.rdf.php
@@ -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 '';
// DAO
diff --git a/rdf/prestudent.rdf.php b/rdf/prestudent.rdf.php
index f196db432..741c09db5 100644
--- a/rdf/prestudent.rdf.php
+++ b/rdf/prestudent.rdf.php
@@ -25,7 +25,8 @@ 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/vnd.mozilla.xul+xml");
+header("Content-type: application/xhtml+xml");
// xml
echo '';
// DAO
diff --git a/rdf/prestudentrolle.rdf.php b/rdf/prestudentrolle.rdf.php
new file mode 100644
index 000000000..0783110b7
--- /dev/null
+++ b/rdf/prestudentrolle.rdf.php
@@ -0,0 +1,69 @@
+';
+// DAO
+require_once('../vilesci/config.inc.php');
+require_once('../include/person.class.php');
+require_once('../include/prestudent.class.php');
+
+// 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/prestudentrolle';
+
+?>
+
+
+
+
+
+
+getPrestudentRolle($prestudent_id, $rolle_kurzbz, $studiensemester_kurzbz);
+
+foreach($ps->result as $row)
+{
+?>
+
+
+ prestudent_id; ?>]]>
+ rolle_kurzbz; ?>]]>
+ studiensemester_kurzbz; ?>]]>
+ ausbildungssemester; ?>]]>
+ datum; ?>]]>
+
+
+
+
+
\ No newline at end of file
diff --git a/rdf/reihungstest.rdf.php b/rdf/reihungstest.rdf.php
index 9abff9f91..577d81fc4 100644
--- a/rdf/reihungstest.rdf.php
+++ b/rdf/reihungstest.rdf.php
@@ -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 '';
// DAO
diff --git a/rdf/zgvmaster.rdf.php b/rdf/zgvmaster.rdf.php
index a996cb6a4..780027afb 100644
--- a/rdf/zgvmaster.rdf.php
+++ b/rdf/zgvmaster.rdf.php
@@ -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 '';
// DAO