- Notenspiegel zur Notenliste auf CIS hinzugefügt

- bei LVPlan Hilfe werden die Bilder wieder angezeigt
Tempus: 
- Beim Neu laden des LVA-Trees wird die vorher markierte LVA wieder markiert.
- DBDML Script liefert jetzt nicht mehr PlainText sondern RDF zurück
This commit is contained in:
Andreas Österreicher
2007-03-12 15:47:01 +00:00
parent 1c55e58883
commit b9b7cc6904
10 changed files with 420 additions and 250 deletions
+6
View File
@@ -156,6 +156,12 @@ if (!$conn = pg_pconnect(CONN_STRING))
}
}
//Notenschluessel
$worksheet->write(++$lines,0,'Notenschlüssel: 1-Sehr Gut, 2-Gut, 3-Befriedigend, 4-Genügend,');
$worksheet->write(++$lines,0,'5-Nicht Genügend, 6-Angerechnet, 7-nicht beurteilt,');
$worksheet->write(++$lines,0,'8-teilgenommen, 9-noch nicht eingetragen, 10-bestanden,');
$worksheet->write(++$lines,0,'11-approbiert, 12-erfolgreich absolviert, 13-nicht erfolgreich absolviert');
$worksheet->setColumn(0, 0, 5);
$worksheet->setColumn(1, 1, 25);
$worksheet->setColumn(2, 2, 25);
+7 -7
View File
@@ -4,7 +4,7 @@
<meta http-equiv="CONTENT-TYPE"
content="text/html; charset=windows-1252">
<title>Outlook Import</title>
<link href="../../../skin/cis.css" rel="stylesheet"
<link href="../../../../skin/cis.css" rel="stylesheet"
type="text/css">
</head>
<body class="background_main">
@@ -13,7 +13,7 @@
zuerst aus dem Stundenplansystem exportieren. <br>
Hierfür klicken Sie im Stundenplansystem auf das Outlook-Symbol und
speichern die Datei auf Ihre Festplatte. </p>
<p align="center"><img alt="Outlookimport" src="../../../skin/images/Outlookimport.png"
<p align="center"><img alt="Outlookimport" src="../../../../skin/images/Outlookimport.png"
style="width: 989px; height: 461px;"><br>
</p>
<p>Nachfolgend werden die nächsten Schritte anhand von Screenshots
@@ -22,19 +22,19 @@ erkl
<p>Starten Sie dazu Microsoft Outlook.<br>
</p>
<div align="center"> <img
src="../../../skin/images/OutlookImpMenu.gif" name="Menu"><br>
src="../../../../skin/images/OutlookImpMenu.gif" name="Menu"><br>
<br>
<img src="../../../skin/images/OutlookImpImport.png" name="Import"><br>
<img src="../../../../skin/images/OutlookImpImport.png" name="Import"><br>
<br>
<img src="../../../skin/images/OutlookImpKomma.png" name="Komma"><br>
<img src="../../../../skin/images/OutlookImpKomma.png" name="Komma"><br>
<br>
Suchen Sie nun bei "Durchsuchen" die Anfangs gespeicherte csv-Datei auf
Ihrer Festplatte<br>
<br>
<img src="../../../skin/images/OutlookImpDuplikate.png"
<img src="../../../../skin/images/OutlookImpDuplikate.png"
name="Duplikate"><br>
<br>
<img src="../../../skin/images/OutlookImpKalender.png" name="Kalender">
<img src="../../../../skin/images/OutlookImpKalender.png" name="Kalender">
</div>
<hr>
<div class="footer">Seite erstellt am 30.3.2003 von <a
-73
View File
@@ -1,73 +0,0 @@
function lehrstunde(type,stg_kz,sem,ver,grp)
{
this.type=type;
this.stg_kz=stg_kz;
this.sem=sem;
this.ver=ver;
this.grp=grp;
}
var listObserver=
{
onDragStart: function (evt,transferData,action)
{
var elemID=evt.target.getAttribute("elem");
var paramList=evt.target.getAttribute("paramList");
var transferObjekt=new lehrstunde(elemID,paramList,elemID,elemID,elemID);
transferData.data=new TransferData();
//transferData.data.addDataForFlavour("text/unicode",transferObjekt);
transferData.data.addDataForFlavour("text/unicode",paramList);
}
};
/***** Drag Observer fuer Gruppen *****/
var grpObserver=
{
onDragStart: function (evt,transferData,action)
{
var stg_kz=evt.target.getAttribute("stg_kz");
var sem=evt.target.getAttribute("sem");
var ver=evt.target.getAttribute("ver");
var grp=evt.target.getAttribute("grp");
var einheit=evt.target.getAttribute("gruppe");
var paramList= stg_kz+'&'+sem+'&'+ver+'&'+grp+'&'+gruppe;
transferData.data=new TransferData();
transferData.data.addDataForFlavour("gruppe",paramList);
}
};
var boardObserver=
{
/*canHandleMultipleItems : function()
{
var canHandleMultipleItems=false;
},*/
getSupportedFlavours : function ()
{
var flavours = new FlavourSet();
flavours.appendFlavour("text/unicode");
return flavours;
},
onDragOver: function (evt,flavour,session)
{
},
onDrop: function (evt,dropdata,session)
{
if (dropdata.data!="")
{
var dragElement=document.getElementById(dropdata.data);
var contentFrame=document.getElementById('iframeTimeTableWeek');
var stunde=evt.target.getAttribute("stunde");
var datum=evt.target.getAttribute("datum");
/*//var elem=document.createElement("label");*/
/*evt.target.appendChild(elem); */
var paramList=dragElement.getAttribute("paramList");
/*elem.setAttribute("value",dropdata.data + paramList); */
var url=location.href;//contentFrame.getAttribute('src');
url+=paramList+"&new_stunde="+stunde+"&new_datum="+datum+'&aktion=stplverschieben';
//contentFrame.setAttribute('src', url);
location.href=url;
}
}
};
+10 -4
View File
@@ -152,9 +152,12 @@ var LeLvbgrpDDObserver=
req.add('gruppe_kurzbz', gruppe);
var response = req.executePOST();
if (response!='ok')
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
alert(response);
alert(val.dbdml_errormsg)
}
else
{
@@ -258,9 +261,12 @@ var LeLektorDDObserver=
req.add('bismelden', 'true');
var response = req.executePOST();
if (response!='ok')
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
alert(response);
alert(val.dbdml_errormsg)
}
else
{
+31 -1
View File
@@ -32,7 +32,8 @@ function getTargetHelper(dsource,subj,predi)
if (dsource.hasArcOut(subj, predi))
{
var target = dsource.GetTarget(subj, predi, true);
if (target instanceof Components.interfaces.nsIRDFLiteral)
if (target instanceof Components.interfaces.nsIRDFLiteral ||
target instanceof Components.interfaces.nsIRDFInt)
{
return target.Value;
}
@@ -63,4 +64,33 @@ function gettimestamp()
ret = ret + now.getSeconds()*60;
ret = ret + now.getMilliseconds();
return ret;
}
// ****
// * Parst die Returnwerte der DBDML Scripte
// * @param response ... RDF Response des DBDML Scripts
// *
// * obj.dbdml_return ... Returnwert des Scripts
// * obj.dbdml_errormsg ... Errormessage
// * obj.dbdml_data ... zusaetzliche Daten vom Script. zB ID des angelegten Datansatzes
// ****
function ParseReturnValue(response)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// Returnwerte aus RDF abfragen
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/dbdml');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var subject = rdfService.GetResource("http://www.technikum-wien.at/dbdml/0");
var predicateNS = "http://www.technikum-wien.at/dbdml/rdf";
retval = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#return" ));
if(retval=='true')
this.dbdml_return = true;
else
this.dbdml_return = false;
this.dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" ));
this.dbdml_data = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#data" ));
}
+252 -144
View File
@@ -42,171 +42,279 @@ require_once('../include/benutzerberechtigung.class.php');
$user = get_uid();
error_reporting(0);
// Datenbank Verbindung
if (!$conn = @pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$return = false;
$errormsg = 'Unknown Error';
$data = '';
$error = false;
//Berechtigungen laden
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Keine Berechtigung');
$leDAO=new lehreinheit($conn);
{
$return = false;
$errormsg = 'Keine Berechtigung';
$data = '';
$error = true;
}
if(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_add')
if(!$error)
{
//Lehreinheitmitarbeiter Zuteilung
//wenn do=update dann wird aktualisiert
//wenn do=create wird ein neuer datensatz angelegt
if (!isset($_POST['do']))
die('Fehlerhafte Parameteruebergabe');
if(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_add')
{
//Lehreinheitmitarbeiter Zuteilung
//wenn do=update dann wird aktualisiert
//wenn do=create wird ein neuer datensatz angelegt
if (!isset($_POST['do']))
{
$return = false;
$errormsg = 'Fehlerhafte Parameteruebergabe';
$data = '';
$error = true;
}
if(!$error)
{
$lem = new lehreinheitmitarbeiter($conn);
$lem = new lehreinheitmitarbeiter($conn);
if($_POST['do']=='update')
if(!$lem->load($_POST['lehreinheit_id'],$_POST['mitarbeiter_uid_old']))
die('Fehler beim laden:'.$lem->errormsg);
$lem->lehreinheit_id = $_POST['lehreinheit_id'];
$lem->lehrfunktion_kurzbz = $_POST['lehrfunktion_kurzbz'];
$lem->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
if($_POST['do']=='update')
$lem->mitarbeiter_uid_old = $_POST['mitarbeiter_uid_old'];
$lem->semesterstunden = $_POST['semesterstunden'];
$lem->planstunden = $_POST['planstunden'];
$lem->stundensatz = $_POST['stundensatz'];
$lem->faktor = $_POST['faktor'];
$lem->anmerkung = $_POST['anmerkung'];
$lem->bismelden = $_POST['bismelden'];
$lem->updateamum = date('Y-m-d H:i:s');
$lem->updatevon = $user;
if($_POST['do']=='update')
{
$lem->new=false;
if($_POST['do']=='update')
{
if(!$lem->load($_POST['lehreinheit_id'],$_POST['mitarbeiter_uid_old']))
{
$return = false;
$errormsg = 'Fehler beim laden:'.$lem->errormsg;
$error = true;
}
}
if(!$error)
{
$lem->lehreinheit_id = $_POST['lehreinheit_id'];
$lem->lehrfunktion_kurzbz = $_POST['lehrfunktion_kurzbz'];
$lem->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
if($_POST['do']=='update')
$lem->mitarbeiter_uid_old = $_POST['mitarbeiter_uid_old'];
$lem->semesterstunden = $_POST['semesterstunden'];
$lem->planstunden = $_POST['planstunden'];
$lem->stundensatz = $_POST['stundensatz'];
$lem->faktor = $_POST['faktor'];
$lem->anmerkung = $_POST['anmerkung'];
$lem->bismelden = $_POST['bismelden'];
$lem->updateamum = date('Y-m-d H:i:s');
$lem->updatevon = $user;
if($_POST['do']=='update')
{
$lem->new=false;
}
elseif($_POST['do']=='create')
{
$lem->new=true;
$lem->updateamum = date('Y-m-d H:i:s');
$lem->updatevon = $user;
$lem->insertamum = date('Y-m-d H:i:s');
$lem->insertvon = $user;
}
else
{
$return = false;
$errormsg = 'Fehlerhafte Parameteruebergabe';
$error = true;
}
if(!$error)
{
if($lem->save())
{
$return = true;
$error=false;
}
else
{
$return = false;
$errormsg = $lem->errormsg;
$error = true;
}
}
}
}
}
elseif($_POST['do']=='create')
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_del')
{
$lem->new=true;
$lem->updateamum = date('Y-m-d H:i:s');
$lem->updatevon = $user;
$lem->insertamum = date('Y-m-d H:i:s');
$lem->insertvon = $user;
}
else
die('Fehlerhafte Parameteruebergabe');
if($lem->save())
echo 'ok';
else
echo $lem->errormsg;
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_mitarbeiter_del')
{
//Lehreinheitmitarbeiterzuteilung loeschen
if(isset($_POST['lehreinheit_id']) && is_numeric($_POST['lehreinheit_id']) && isset($_POST['mitarbeiter_uid']))
{
$leg = new lehreinheitmitarbeiter($conn);
if($leg->delete($_POST['lehreinheit_id'], $_POST['mitarbeiter_uid']))
echo 'ok';
else
echo $leg->errormsg;
}
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_gruppe_del')
{
//Lehreinheitgruppezuteilung loeschen
if(isset($_POST['lehreinheitgruppe_id']) && is_numeric($_POST['lehreinheitgruppe_id']))
{
$leg = new lehreinheitgruppe($conn);
if($leg->delete($_POST['lehreinheitgruppe_id']))
echo 'ok';
else
echo $leg->errormsg;
}
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_gruppe_add')
{
//Lehreinheitgruppezuteilung anlegen
if(isset($_POST['lehreinheit_id']) && is_numeric($_POST['lehreinheit_id']))
{
$leg = new lehreinheitgruppe($conn);
$leg->lehreinheit_id = $_POST['lehreinheit_id'];
$leg->studiengang_kz = $_POST['studiengang_kz'];
$leg->semester = $_POST['semester'];
$leg->verband = $_POST['verband'];
$leg->gruppe = $_POST['gruppe'];
$leg->gruppe_kurzbz = $_POST['gruppe_kurzbz'];
if($leg->save(true))
//Lehreinheitmitarbeiterzuteilung loeschen
if(isset($_POST['lehreinheit_id']) && is_numeric($_POST['lehreinheit_id']) && isset($_POST['mitarbeiter_uid']))
{
echo 'ok';
$leg = new lehreinheitmitarbeiter($conn);
if($leg->delete($_POST['lehreinheit_id'], $_POST['mitarbeiter_uid']))
{
$return = true;
}
else
{
$return = false;
$errormsg = $leg->errormsg;
}
}
else
echo $leg->errormsg;
}
else
echo "Lehreinheit_id ist ungueltig";
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit')
{
//Lehreinheit anlegen/aktualisieren
if ($_POST['do']=='create' || ($_POST['do']=='update'))
{
if($_POST['do']=='update')
if(!$leDAO->load($_POST['lehreinheit_id']))
die('Fehler beim laden');
$leDAO->lehrveranstaltung_id=$_POST['lehrveranstaltung'];
$leDAO->studiensemester_kurzbz=$_POST['studiensemester_kurzbz'];
$leDAO->lehrfach_id=$_POST['lehrfach_id'];
$leDAO->lehrform_kurzbz=$_POST['lehrform'];
$leDAO->stundenblockung=$_POST['stundenblockung'];
$leDAO->wochenrythmus=$_POST['wochenrythmus'];
if (isset($_POST['start_kw'])) $leDAO->start_kw=$_POST['start_kw'];
$leDAO->raumtyp=$_POST['raumtyp'];
$leDAO->raumtypalternativ=$_POST['raumtypalternativ'];
$leDAO->sprache=$_POST['sprache'];
if (isset($_POST['lehre'])) $leDAO->lehre=($_POST['lehre']=='true'?true:false);
if (isset($_POST['anmerkung'])) $leDAO->anmerkung=$_POST['anmerkung'];
$leDAO->lvnr=(isset($_POST['lvnr'])?$_POST['lvnr']:'');
$leDAO->unr=(isset($_POST['unr'])?$_POST['unr']:'');
$leDAO->updateamum=date('Y-m-d H:i:s');
$leDAO->updatevon=$user;
if ($_POST['do']=='create')
{
// LE neu anlegen
$leDAO->new=true;
$leDAO->insertamum=date('Y-m-d H:i:s');
$leDAO->insertvon=$user;
if ($leDAO->save())
echo 'ok';
$return = false;
$errormsg = 'Fehler beim loeschen der Zuordnung';
}
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_gruppe_del')
{
//Lehreinheitgruppezuteilung loeschen
if(isset($_POST['lehreinheitgruppe_id']) && is_numeric($_POST['lehreinheitgruppe_id']))
{
$leg = new lehreinheitgruppe($conn);
if($leg->delete($_POST['lehreinheitgruppe_id']))
{
$return = true;
}
else
{
$return = false;
$errormsg = $leg->errormsg;
}
}
else
{
$return = false;
$errormsg = 'Fehler beim loeschen der Zuordnung';
}
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit_gruppe_add')
{
//Lehreinheitgruppezuteilung anlegen
if(isset($_POST['lehreinheit_id']) && is_numeric($_POST['lehreinheit_id']))
{
$leg = new lehreinheitgruppe($conn);
$leg->lehreinheit_id = $_POST['lehreinheit_id'];
$leg->studiengang_kz = $_POST['studiengang_kz'];
$leg->semester = $_POST['semester'];
$leg->verband = $_POST['verband'];
$leg->gruppe = $_POST['gruppe'];
$leg->gruppe_kurzbz = $_POST['gruppe_kurzbz'];
if($leg->save(true))
{
$return = true;
}
else
echo $leDAO->errormsg;
{
$return = false;
$errormsg = $leg->errormsg;
}
}
else
{
$return = false;
$errormsg = 'Bitte zuerst eine Lehreinheit auswaehlen';
}
}
elseif(isset($_POST['type']) && $_POST['type']=='lehreinheit')
{
//Lehreinheit anlegen/aktualisieren
$leDAO=new lehreinheit($conn);
if ($_POST['do']=='create' || ($_POST['do']=='update'))
{
if($_POST['do']=='update')
{
if(!$leDAO->load($_POST['lehreinheit_id']))
{
$return = false;
$error = true;
$errormsg = 'Fehler beim laden der lehreinheit';
}
}
if(!$error)
{
$leDAO->lehrveranstaltung_id=$_POST['lehrveranstaltung'];
$leDAO->studiensemester_kurzbz=$_POST['studiensemester_kurzbz'];
$leDAO->lehrfach_id=$_POST['lehrfach_id'];
$leDAO->lehrform_kurzbz=$_POST['lehrform'];
$leDAO->stundenblockung=$_POST['stundenblockung'];
$leDAO->wochenrythmus=$_POST['wochenrythmus'];
if (isset($_POST['start_kw'])) $leDAO->start_kw=$_POST['start_kw'];
$leDAO->raumtyp=$_POST['raumtyp'];
$leDAO->raumtypalternativ=$_POST['raumtypalternativ'];
$leDAO->sprache=$_POST['sprache'];
if (isset($_POST['lehre'])) $leDAO->lehre=($_POST['lehre']=='true'?true:false);
if (isset($_POST['anmerkung'])) $leDAO->anmerkung=$_POST['anmerkung'];
$leDAO->lvnr=(isset($_POST['lvnr'])?$_POST['lvnr']:'');
$leDAO->unr=(isset($_POST['unr'])?$_POST['unr']:'');
$leDAO->updateamum=date('Y-m-d H:i:s');
$leDAO->updatevon=$user;
if ($_POST['do']=='create')
{
// LE neu anlegen
$leDAO->new=true;
$leDAO->insertamum=date('Y-m-d H:i:s');
$leDAO->insertvon=$user;
}
else if ($_POST['do']=='update')
{
// LE aktualisieren
$leDAO->new=false;
}
if ($leDAO->save())
{
$return = true;
}
else
{
$return = false;
$errormsg = $leDAO->errormsg;
}
}
}
else if ($_POST['do']=='update')
{
// LE aktualisieren
$leDAO->new=false;
if ($leDAO->save())
echo 'ok';
else if ($_POST['do']=='delete') //Lehreinheit loeschen
{
// LE loeschen
if ($leDAO->delete($_POST['lehreinheit_id']))
{
$return = true;
}
else
echo $leDAO->errormsg;
{
$return = false;
$errormsg = $leDAO->errormsg;
}
}
}
else if ($_POST['do']=='delete') //Lehreinheit loeschen
{
// LE loeschen
if ($leDAO->delete($_POST['lehreinheit_id']))
echo 'ok';
else
echo $leDAO->errormsg;
}
else
{
$return = false;
$errormsg = 'Unkown type';
$data = '';
}
}
else
echo "Unkown type";
?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:NC="http://home.netscape.com/NC-rdf#"
xmlns:DBDML="http://www.technikum-wien.at/dbdml/rdf#"
>
<RDF:Seq RDF:about="http://www.technikum-wien.at/dbdml/msg">
<RDF:li>
<RDF:Description RDF:about="http://www.technikum-wien.at/dbdml/0" >
<DBDML:return><?php echo ($return?'true':'false'); ?></DBDML:return>
<DBDML:errormsg><![CDATA[<?php echo $errormsg; ?>]]></DBDML:errormsg>
<DBDML:data><!CDATA[<?php echo $data ?>]]></DBDML:data>
</RDF:Description>
</RDF:li>
</RDF:Seq>
</RDF:RDF>
@@ -194,7 +194,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/lehrveranstaltung.css\" type=\
</row>
<row>
<!-- ************* GRUPPEN ************** -->
<label value="Gruppen" />
<label id="lehrveranstaltung-detail-label-lehreinheitgruppe" value="Gruppen" />
<vbox height="150" flex="1">
<hbox flex="1">
<tree id="lehrveranstaltung-detail-tree-lehreinheitgruppe" seltype="single" hidecolumnpicker="false" flex="1" disabled="true"
+104 -14
View File
@@ -28,9 +28,10 @@ $conn = pg_pconnect(CONN_STRING);
$user = get_uid();
loadVariables($conn, $user);
?>
var LeDetailLehrfach_id;
var LeDetailGruppeDatasource;
var LeDetailLektorDatasource;
var LeDetailLehrfach_id; //Lehrfach_id die nach dem Laden markiert werden soll
var LeDetailGruppeDatasource; //Datasource fuer Gruppen DropDown
var LeDetailLektorDatasource; //Datasource fuer Lektren DropDown
var LvSelectLehreinheit_id; //Lehreinheit_id die nach dem Rebuild des Trees markiert werden soll
// ****
// * Observer fuer LV Tree
@@ -48,7 +49,23 @@ var LvTreeSinkObserver =
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('lehrveranstaltung-tree').builder.rebuild();
}
}
};
// ****
// * Nach dem Rebuild wird die Lehreinheit wieder
// * markiert
// ****
var LvTreeListener =
{
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(LvTreeSelectLehreinheit,10);
}
};
// ****
// * Asynchroner (Nicht blockierender) Refresh des LV Trees
@@ -56,6 +73,12 @@ var LvTreeSinkObserver =
function LvTreeRefresh()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//markierte Lehreinheit global speichern damit diese LE nach dem
//refresh wieder markiert werden kann.
var tree = document.getElementById('lehrveranstaltung-tree');
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehreinheit_id"] : "lehrveranstaltung-treecol-lehreinheit_id";
LvSelectLehreinheit_id=tree.view.getCellText(tree.currentIndex,col);
LvTreeDatasource.Refresh(false); //non blocking
}
@@ -74,6 +97,10 @@ function LeNeu()
//Details zuruecksetzen
LeDetailReset();
document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe').hidden=true;
document.getElementById('lehrveranstaltung-detail-label-lehreinheitgruppe').hidden=true;
document.getElementById('lehrveranstaltung-tab-lektor').hidden=true;
//Lehrveranstaltungs_id holen
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
@@ -110,6 +137,48 @@ function LeNeu()
document.getElementById('lehrveranstaltung-detail-checkbox-new').checked=true;
}
// ****
// * Selectiert die Lehreinheit nachdem der Tree
// * rebuildet wurde.
// ****
function LvTreeSelectLehreinheit()
{
var tree=document.getElementById('lehrveranstaltung-tree');
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
//In der globalen Variable ist die zu selektierende Lehreinheit gespeichert
if(LvSelectLehreinheit_id!=null)
{
//Alle subtrees oeffnen weil rowCount nur die Anzahl der sichtbaren
//Zeilen zurueckliefert
for(var i=items-1;i>=0;i--)
{
tree.view.toggleOpenState(i);
}
//Jetzt die wirkliche Anzahl (aller) Zeilen holen
items = tree.view.rowCount;
for(var i=0;i<items;i++)
{
//Lehreinheit_id der row holen
col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehreinheit_id"] : "lehrveranstaltung-treecol-lehreinheit_id";
lehreinheit_id=tree.view.getCellText(i,col);
//Wenn Lehreinheit_id leer ist, dann kann es sein, dass der Tree noch nicht fertig geladen ist
//dann muss beim Listener das Timeout erhoeht werden
//wenn dies die zu selektierende Zeile
if(lehreinheit_id == LvSelectLehreinheit_id)
{
//Zeile markieren
tree.view.selection.select(i);
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
tree.treeBoxObject.ensureRowIsVisible(i);
return true;
}
}
}
}
// ****
// * Lehreinheit loeschen
// ****
@@ -144,8 +213,10 @@ function LeDelete()
req.add('do','delete');
req.add('lehreinheit_id',lehreinheit_id);
var response = req.executePOST();
if (response!='ok')
alert(response);
var val = new ParseReturnValue(response)
if(!val.dbdml_return)
alert(val.dbdml_errormsg)
LvTreeRefresh();
LeDetailReset();
@@ -292,9 +363,12 @@ function LeDetailSave()
req.add('anmerkung', anmerkung);
var response = req.executePOST();
if (response!='ok')
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
alert(response);
alert(val.dbdml_errormsg)
}
else
{
@@ -319,6 +393,16 @@ function LeAuswahl()
//Felder bei Lektorenzuordnung deaktivieren
LeMitarbeiterDisableFields(true);
document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe').hidden=false;
document.getElementById('lehrveranstaltung-detail-label-lehreinheitgruppe').hidden=false;
document.getElementById('lehrveranstaltung-tab-lektor').hidden=false;
//Hack damit der DetailTab als erstes angezeigt wird (sonst wird nach aus- und wieder einblenden
//der LektorenTab vor dem DetailTab angezeigt)
document.getElementById('lehrveranstaltung-tab-detail').hidden=true;
document.getElementById('lehrveranstaltung-tab-detail').hidden=false;
//endHack
if (tree.currentIndex==-1) return;
try
{
@@ -532,9 +616,11 @@ function LeMitarbeiterSave()
req.add('lehreinheit_id', lehreinheit_id);
var response = req.executePOST();
if (response!='ok')
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
alert(response);
alert(val.dbdml_errormsg)
}
else
{
@@ -581,9 +667,11 @@ function LeMitarbeiterDel()
req.add('mitarbeiter_uid', uid);
var response = req.executePOST();
if (response!='ok')
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
alert(response);
alert(val.dbdml_errormsg)
}
else
{
@@ -769,9 +857,11 @@ function LeGruppeDel()
req.add('lehreinheitgruppe_id', lehreinheitgruppe_id);
var response = req.executePOST();
if (response!='ok')
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
alert(response);
alert(val.dbdml_errormsg)
}
else
{
+7 -5
View File
@@ -48,9 +48,11 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lehrveranstaltungdetailoverlay.xul
<vbox id="LehrveranstaltungEditor" flex="1">
<toolbox>
<toolbar id="nav-toolbar">
<toolbarbutton id="lehrveranstaltung-toolbar-neu" label="Neue Lehreinheit" oncommand="LeNeu();" disabled="true"/>
<toolbarbutton id="lehrveranstaltung-toolbar-del" label="Löschen" oncommand="LeDelete();" disabled="true"/>
<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Neu laden" oncommand="LvTreeRefresh()" disabled="false"/>
<toolbarbutton id="lehrveranstaltung-toolbar-neu" label="Neue Lehreinheit" oncommand="LeNeu();" disabled="true" image="../skin/images/NeuDokument.png" tooltiptext="Neue Lehreinheit anlegen" />
<toolbarbutton id="lehrveranstaltung-toolbar-del" label="Löschen" oncommand="LeDelete();" disabled="true" image="../skin/images/DeleteIcon.png" tooltiptext="Lehreinheiten löschen"/>
<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Neu laden" oncommand="LvTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<!--<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Load" oncommand="debugload()" disabled="false"/>-->
</toolbar>
</toolbox>
@@ -179,9 +181,9 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lehrveranstaltungdetailoverlay.xul
<tab id="lehrveranstaltung-tab-detail" label="Details" />
<tab id="lehrveranstaltung-tab-lektor" label="Lektorenzuteilung" />
</tabs>
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
<vbox id="lehrveranstaltung-detail" />
<vbox id="lehrveranstaltung-lektorzuteilung" />
<vbox id="lehrveranstaltung-lektorzuteilung" />
</tabpanels>
</tabbox>
</vbox>
+2 -1
View File
@@ -78,7 +78,7 @@ function onVerbandSelect()
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
try
{
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe;
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe+'&'+gettimestamp();
var treeLFVT=document.getElementById('lehrveranstaltung-tree');
//Alte DS entfernen
@@ -94,6 +94,7 @@ function onVerbandSelect()
LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeLFVT.database.AddDataSource(LvTreeDatasource);
LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver);
treeLFVT.builder.addListener(LvTreeListener);
}
catch(e)
{