mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-24 02:12:17 +00:00
Pruefungs Tab
This commit is contained in:
@@ -35,6 +35,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentkontooverlay.xul.ph
|
||||
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentbetriebsmitteloverlay.xul.php"?>';
|
||||
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentiooverlay.xul.php"?>';
|
||||
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentnotenoverlay.xul.php"?>';
|
||||
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentpruefungoverlay.xul.php"?>';
|
||||
?>
|
||||
<!DOCTYPE overlay >
|
||||
|
||||
@@ -186,6 +187,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentnotenoverlay.xul.ph
|
||||
<tab id="student-tab-io" label="Incoming/Outgoing" />
|
||||
<tab id="student-tab-noten" label="Noten" />
|
||||
<tab id="student-tab-kontakt" label="Kontakt" />
|
||||
<tab id="student-tab-pruefung" label="Prüfung" />
|
||||
</tabs>
|
||||
<tabpanels id="student-tabpanels-main" flex="1">
|
||||
<vbox id="student-detail" style="margin-top:10px;" />
|
||||
@@ -196,6 +198,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentnotenoverlay.xul.ph
|
||||
<vbox id="student-io" style="margin-top:10px;" />
|
||||
<vbox id="student-noten" style="margin-top:10px;" />
|
||||
<iframe id="student-kontakt" src="" style="margin-top:10px;" />
|
||||
<vbox id="student-pruefung" style="margin-top:10px;" />
|
||||
</tabpanels>
|
||||
</tabbox>
|
||||
</vbox>
|
||||
|
||||
@@ -42,6 +42,8 @@ var StudentNotenTreeDatasource; //Datasource des Noten Trees
|
||||
var StudentNotenSelectLehrveranstaltungID=null; //LehreinheitID des Noten Eintrages der nach dem Refresh markiert werden soll
|
||||
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
|
||||
|
||||
// ********** Observer und Listener ************* //
|
||||
|
||||
@@ -252,6 +254,39 @@ var StudentLvGesamtNotenTreeListener =
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Observer fuer Pruefung Tree
|
||||
// * startet Rebuild nachdem das Refresh
|
||||
// * der datasource fertig ist
|
||||
// ****
|
||||
var StudentPruefungTreeSinkObserver =
|
||||
{
|
||||
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-pruefung-tree').builder.rebuild();
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Nach dem Rebuild wird der Eintrag wieder
|
||||
// * markiert
|
||||
// ****
|
||||
var StudentPruefungTreeListener =
|
||||
{
|
||||
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(StudentPruefungTreeSelectID,10);
|
||||
}
|
||||
};
|
||||
// ***************** KEY Events ************************* //
|
||||
|
||||
// ****
|
||||
@@ -1016,8 +1051,38 @@ function StudentAuswahl()
|
||||
StudentLvGesamtNotenTreeDatasource.addXMLSinkObserver(StudentLvGesamtNotenTreeSinkObserver);
|
||||
lvgesamtnotentree.builder.addListener(StudentLvGesamtNotenTreeListener);
|
||||
|
||||
// KONTAKTE
|
||||
// ***** KONTAKTE *****
|
||||
document.getElementById('student-kontakt').setAttribute('src','kontakt.xul.php?person_id='+person_id);
|
||||
|
||||
// ***** Pruefungen *****
|
||||
pruefungtree = document.getElementById('student-pruefung-tree');
|
||||
|
||||
url='<?php echo APP_ROOT;?>rdf/pruefung.rdf.php?student_uid='+uid+"&"+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = pruefungtree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
pruefungtree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
//Refresh damit die entfernten DS auch wirklich entfernt werden
|
||||
pruefungtree.builder.rebuild();
|
||||
|
||||
try
|
||||
{
|
||||
StudentPruefungTreeDatasource.removeXMLSinkObserver(StudentPruefungTreeSinkObserver);
|
||||
pruefungtree.builder.removeListener(StudentPruefungTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
StudentPruefungTreeDatasource = rdfService.GetDataSource(url);
|
||||
StudentPruefungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
StudentPruefungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
pruefungtree.database.AddDataSource(StudentPruefungTreeDatasource);
|
||||
StudentPruefungTreeDatasource.addXMLSinkObserver(StudentPruefungTreeSinkObserver);
|
||||
pruefungtree.builder.addListener(StudentPruefungTreeListener);
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -2579,4 +2644,42 @@ function StudentNotenMove()
|
||||
SetStatusBarText('Daten wurden gespeichert');
|
||||
StudentNoteDetailDisableFields(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// **************** PRUEFUNG ************** //
|
||||
|
||||
// ****
|
||||
// * Selectiert den Pruefung Eintrag nachdem der Tree
|
||||
// * rebuildet wurde.
|
||||
// ****
|
||||
function StudentPruefungTreeSelectID()
|
||||
{
|
||||
var tree=document.getElementById('student-pruefung-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(StudentPruefungSelectID!=null)
|
||||
{
|
||||
for(var i=0;i<items;i++)
|
||||
{
|
||||
//ID der row holen
|
||||
col = tree.columns ? tree.columns["student-pruefung-tree-pruefung_id"] : "student-pruefung-tree-pruefung_id";
|
||||
var pruefung_id=tree.view.getCellText(i,col);
|
||||
|
||||
//wenn dies die zu selektierende Zeile
|
||||
if(pruefung_id == StudentPruefungSelectLehrveranstaltugnID)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
|
||||
tree.treeBoxObject.ensureRowIsVisible(i);
|
||||
StudentPruefungSelectID=null;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,231 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
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");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
require_once('../../vilesci/config.inc.php');
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
?>
|
||||
|
||||
<overlay id="StudentPruefung"
|
||||
xmlns:html="http://www.w3.org/1999/xhtml"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
>
|
||||
<!-- Pruefung Overlay -->
|
||||
<vbox id="student-pruefung" style="margin:0px;" flex="1">
|
||||
<popupset>
|
||||
<popup id="student-pruefung-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="StudentPruefungDelete();" id="student-pruefung-tree-popup-delete" hidden="false"/>
|
||||
</popup>
|
||||
</popupset>
|
||||
<hbox flex="1">
|
||||
<grid id="student-pruefung-grid-detail" style="overflow:auto;margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<tree id="student-pruefung-tree" seltype="multi" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/pruefung/liste"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
onselect="StudentPruefungAuswahl()"
|
||||
context="student-pruefung-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
|
||||
<treecols>
|
||||
<treecol id="student-pruefung-tree-datum" label="Datum" flex="2" hidden="false" primary="true"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#datum_iso"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-lehreinheit_bezeichnung" label="Lehreinheit" flex="5" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#lehreinheit_bezeichnung"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-note_bezeichnung" label="Note" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/konto/rdf#note_bezeichnung" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-anmerkung" label="Anmerkung" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#anmerkung" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-typ" label="Typ" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#pruefungstyp_kurzbz" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-pruefung_id" label="PruefungID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#pruefung_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-lehreinheit_id" label="LehreinheitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#lehreinheit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-student_uid" label="StudentUID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#student_uid" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-pruefung-tree-mitarbeiter_uid" label="mitarbeiter_uid" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#mitarbeiter_uid" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#datum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#lehrveranstaltung_bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#note_bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#anmerkung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#pruefungstyp_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#pruefung_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#lehreinheit_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#student_uid"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#mitarbeiter_uid"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<hbox>
|
||||
<button id="student-pruefung-button-neu" label="Neu" oncommand="StudentPruefungNeu();" disabled="true"/>
|
||||
<button id="student-pruefung-button-loeschen" label="Loeschen" oncommand="StudentPruefungDelete();" disabled="true"/>
|
||||
</hbox>
|
||||
<vbox hidden="true">
|
||||
<label value="Pruefung_id" control="student-pruefung-textbox-pruefung_id"/>
|
||||
<textbox id="student-pruefung-textbox-pruefung_id" disabled="true"/>
|
||||
</vbox>
|
||||
<groupbox id="student-pruefung-groupbox" flex="1">
|
||||
<caption label="Details"/>
|
||||
<grid id="student-pruefung-grid-detail" style="overflow:auto;margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Lehrveranstaltung" control="student-pruefung-menulist-lehrveranstaltung"/>
|
||||
<menulist id="student-pruefung-menulist-lehrveranstaltung" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/lehrveranstaltung/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#lehrveranstaltung_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<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" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehreinheit/rdf#lehreinheit_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehreinheit/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Mitarbeiter" control="student-pruefung-menulist-mitarbeiter"/>
|
||||
<menulist id="student-pruefung-menulist-mitarbeiter" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/mitarbeiter/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#mitarbeiter_uid"
|
||||
label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Typ" control="student-pruefung-menulist-typ"/>
|
||||
<menulist id="student-pruefung-menulist-typ" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/pruefungstyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#pruefungstyp_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Note" control="student-pruefung-menulist-note"/>
|
||||
<menulist id="student-pruefung-menulist-note" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Datum" control="student-pruefung-textbox-datum"/>
|
||||
<hbox>
|
||||
<box class="Datum" id="student-pruefung-textbox-datum" disabled="true"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Anmerkung" control="student-pruefung-textbox-anmerkung"/>
|
||||
<textbox id="student-pruefung-textbox-anmerkung" disabled="true" maxlength="256"/>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-pruefung-button-speichern" oncommand="StudentPruefungDetailSpeichern()" label="Speichern" disabled="true"/>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</hbox>
|
||||
<spacer flex="1" />
|
||||
</vbox>
|
||||
</overlay>
|
||||
Reference in New Issue
Block a user