This commit is contained in:
Andreas Österreicher
2007-04-26 13:43:37 +00:00
parent 9f7d7229b6
commit 4939f4ea64
12 changed files with 204 additions and 19 deletions
+40 -1
View File
@@ -335,7 +335,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/aufnahmeschluessel/rdf#aufnahmeschluessel"
label="rdf:http://www.technikum-wien.at/aufnahmeschluessel/rdf#aufnahmeschluessel"
label="rdf:http://www.technikum-wien.at/aufnahmeschluessel/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
@@ -375,6 +375,45 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<label value="Bismelden" control="student-prestudent-checkbox-bismelden"/>
<checkbox id="student-prestudent-checkbox-bismelden" checked="true" disabled="true"/>
</row>
<row>
<label value="Rollen" control="student-prestudent-tree-rolle"/>
<tree id="student-prestudent-tree-rolle" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/prestudentrolle/liste"
style="margin:0px;" enableColumnDrag="true" height="100px"
>
<treecols>
<treecol id="student-prestudent-tree-rolle-rolle_kurzbz" label="Kurzbz" flex="2" hidden="false" primary="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#rolle_kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-studiensemester_kurzbz" label="StSem" flex="5" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studiensemester_kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-ausbildungssemester" label="Semester" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester" />
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-datum" label="Datum" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#rolle_kurzbz"/>
<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"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</row>
</rows>
</grid>
</hbox>
+17
View File
@@ -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='<?php echo APP_ROOT;?>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);
}
// ****
+66 -9
View File
@@ -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;
}
}
}
?>
?>
+4 -2
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
@@ -53,7 +53,8 @@ if(isset($_GET['optional']) && $_GET['optional']=='true')
echo '
<RDF:li>
<RDF:Description id="" about="'.$rdf_url.'/" >
<AS:aufnahmeschluessel>-- keine Auswahl --</AS:aufnahmeschluessel>
<AS:aufnahmeschluessel></AS:aufnahmeschluessel>
<AS:bezeichnung>-- keine Auswahl --</AS:bezeichnung>
</RDF:Description>
</RDF:li>
';
@@ -67,6 +68,7 @@ if($result = pg_query($conn, $qry))
<RDF:li>
<RDF:Description id="<?php echo $row->aufnahmeschluessel; ?>" about="<?php echo $rdf_url.'/'.$row->aufnahmeschluessel; ?>" >
<AS:aufnahmeschluessel><![CDATA[<?php echo $row->aufnahmeschluessel; ?>]]></AS:aufnahmeschluessel>
<AS:bezeichnung><![CDATA[<?php echo $row->aufnahmeschluessel; ?>]]></AS:bezeichnung>
</RDF:Description>
</RDF:li>
<?php
+1 -1
View File
@@ -6,7 +6,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
+1 -1
View File
@@ -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 '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
+1 -1
View File
@@ -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 '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
// DAO
+1 -1
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
+2 -1
View File
@@ -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 '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
+69
View File
@@ -0,0 +1,69 @@
<?php
// 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 '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// 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';
?>
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ROLLE="<?php echo $rdf_url; ?>/rdf#"
>
<RDF:Seq about="<?php echo $rdf_url ?>/liste">
<?php
if(isset($_GET['prestudent_id']) && is_numeric($_GET['prestudent_id']))
$prestudent_id = $_GET['prestudent_id'];
else
die('Prestudent_id muss angegeben werden');
if(isset($_GET['rolle_kurzbz']))
$rolle_kurzbz = $_GET['rolle_kurzbz'];
else
$rolle_kurzbz=null;
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
else
$studiensemester_kurzbz=null;
$ps = new prestudent($conn);
$ps->getPrestudentRolle($prestudent_id, $rolle_kurzbz, $studiensemester_kurzbz);
foreach($ps->result as $row)
{
?>
<RDF:li>
<RDF:Description id="<?php echo $row->prestudent_id.'/'.$row->rolle_kurzbz.'/'.$row->studiensemester_kurzbz; ?>" about="<?php echo $rdf_url.'/'.$row->prestudent_id.'/'.$row->rolle_kurzbz.'/'.$row->studiensemester_kurzbz; ?>" >
<ROLLE:prestudent_id><![CDATA[<?php echo $row->prestudent_id; ?>]]></ROLLE:prestudent_id>
<ROLLE:rolle_kurzbz><![CDATA[<?php echo $row->rolle_kurzbz; ?>]]></ROLLE:rolle_kurzbz>
<ROLLE:studiensemester_kurzbz><![CDATA[<?php echo $row->studiensemester_kurzbz; ?>]]></ROLLE:studiensemester_kurzbz>
<ROLLE:ausbildungssemester><![CDATA[<?php echo $row->ausbildungssemester; ?>]]></ROLLE:ausbildungssemester>
<ROLLE:datum><![CDATA[<?php echo $row->datum; ?>]]></ROLLE:datum>
</RDF:Description>
</RDF:li>
<?php
}
?>
</RDF:Seq>
</RDF:RDF>
+1 -1
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
+1 -1
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