mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-18 07:22:17 +00:00
pruefungsanmeldung.json.php changed for eine_uid
This commit is contained in:
@@ -16,9 +16,10 @@
|
||||
* 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 >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >,
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
@@ -165,9 +166,10 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
|
||||
$pr = new Pruefung();
|
||||
|
||||
$student = new student($student_uid);//TODO EINE
|
||||
// Wenn eine Pruefung angelegt wird, wird zuerst eine Pruefung mit 1. Termin angelegt
|
||||
// und dort die Zeugnisnote gespeichert
|
||||
if($pr->getPruefungen($student_uid, "Termin1", $lvid, $stsem))
|
||||
if($pr->getPruefungen($student->prestudent_id, "Termin1", $lvid, $stsem))
|
||||
{
|
||||
if ($pr->result)
|
||||
$termin1 = 1;
|
||||
@@ -210,8 +212,9 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
$prTermin2 = new Pruefung();
|
||||
$pr_2 = new Pruefung();
|
||||
|
||||
$student = new student($student_uid);//TODO EINE
|
||||
// Die Pruefung wird als Termin2 eingetragen
|
||||
if ($prTermin2->getPruefungen($student_uid, $typ, $lvid, $stsem))
|
||||
if ($prTermin2->getPruefungen($student->prestudent_id, $typ, $lvid, $stsem))
|
||||
{
|
||||
if ($prTermin2->result)
|
||||
{
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -236,58 +236,58 @@ function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid,
|
||||
$student = new student($student_uid);
|
||||
|
||||
global $p;
|
||||
$pruefungCis = new pruefungCis($pruefung_id);
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
$lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid);
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->new = true;
|
||||
if(!empty($lehreinheiten))
|
||||
{
|
||||
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
|
||||
$pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id);
|
||||
|
||||
$pruefung->lehreinheit_id = $lehreinheiten[0];
|
||||
$pruefung->prestudent_id = $student->prestudent_id;
|
||||
$pruefung->mitarbeiter_uid = $mitarbeiter_uid;
|
||||
$pruefung->note = $note;
|
||||
$pruefung->pruefungstyp_kurzbz = $pruefungsanmeldung->pruefungstyp_kurzbz;
|
||||
$pruefung->datum = $datum;
|
||||
$pruefung->anmerkung = $anmerkung;
|
||||
$pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id;
|
||||
$pruefung->insertvon = $uid;
|
||||
$pruefung->insertamum = date('Y-m-d H:i:s');
|
||||
|
||||
$datum = new datum();
|
||||
// var_dump(date("Y-m-d", time()));
|
||||
// var_dump($pruefungstermin->von);
|
||||
if($datum->between("", date("Y-m-d", time()), $pruefungstermin->von))
|
||||
$pruefungCis = new pruefungCis($pruefung_id);
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
$lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid);
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->new = true;
|
||||
if(!empty($lehreinheiten))
|
||||
{
|
||||
if($pruefung->save())
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
|
||||
$pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id);
|
||||
|
||||
$pruefung->lehreinheit_id = $lehreinheiten[0];
|
||||
$pruefung->prestudent_id = $student->prestudent_id;
|
||||
$pruefung->mitarbeiter_uid = $mitarbeiter_uid;
|
||||
$pruefung->note = $note;
|
||||
$pruefung->pruefungstyp_kurzbz = $pruefungsanmeldung->pruefungstyp_kurzbz;
|
||||
$pruefung->datum = $datum;
|
||||
$pruefung->anmerkung = $anmerkung;
|
||||
$pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id;
|
||||
$pruefung->insertvon = $uid;
|
||||
$pruefung->insertamum = date('Y-m-d H:i:s');
|
||||
|
||||
$datum = new datum();
|
||||
// var_dump(date("Y-m-d", time()));
|
||||
// var_dump($pruefungstermin->von);
|
||||
if($datum->between("", date("Y-m-d", time()), $pruefungstermin->von))
|
||||
{
|
||||
if($pruefung->save())
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$p->t('pruefung/terminNichtInDerVergangenheit');
|
||||
//$data['errormsg']='Nicht in der Vergangenheit';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$p->t('pruefung/terminNichtInDerVergangenheit');
|
||||
//$data['errormsg']='Nicht in der Vergangenheit';
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$p->t('pruefung/keineLehreinheitenVorhanden');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$p->t('pruefung/keineLehreinheitenVorhanden');
|
||||
}
|
||||
|
||||
return $data;
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -34,6 +34,7 @@ require_once('../../../include/lvregel.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
require_once('../../../include/student.class.php');
|
||||
require_once('../../../include/zeugnisnote.class.php');
|
||||
require_once('../../../include/lvangebot.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
@@ -104,7 +105,8 @@ if(isset($_GET['getAnmeldung']))
|
||||
//Pruefen ob genug Credit Points zur Verfuegung stehen zur Anmeldung
|
||||
|
||||
$konto = new konto();
|
||||
$cp = $konto->getCreditPoints($uid, $stsem);
|
||||
$student = new student($uid); // TODO EINE
|
||||
$cp = $konto->getCreditPoints($student->prestudent_id, $stsem);
|
||||
if($cp===false || $cp>=$lv->ects)
|
||||
echo '<br><input type="radio" value="'.$lvid.'" name="lv"/>'.$lv->bezeichnung.' (Anmeldung bis '.$datum->formatDatum($angebot->anmeldefenster_ende,"d.m.Y").')';
|
||||
else
|
||||
@@ -203,7 +205,8 @@ if(isset($_POST['action']) && $_POST['action']=='anmeldung')
|
||||
|
||||
// Pruefen ob genug CP zur Verfuegung stehen falls diese reduziert sind
|
||||
$konto = new konto();
|
||||
$cp = $konto->getCreditPoints($uid, $stsem);
|
||||
$student = new student($uid); // TODO EINE
|
||||
$cp = $konto->getCreditPoints($student->prestudent_id, $stsem);
|
||||
if($cp===false || $cp>=$lv->ects)
|
||||
{
|
||||
$bngruppe->uid = $uid;
|
||||
@@ -349,7 +352,8 @@ foreach($stsem_arr as $stsem)
|
||||
|
||||
echo $stsem;
|
||||
$konto = new konto();
|
||||
$cp = $konto->getCreditPoints($uid, $stsem);
|
||||
$student = new student($uid); // TODO EINE
|
||||
$cp = $konto->getCreditPoints($student->prestudent_id, $stsem);
|
||||
if($cp!==false)
|
||||
echo '<span title="'.$p->t('studienplan/reduzierteCP',array($cp)).'" ><br><img src="../../../skin/images/information.png" alt="Information"/></span>';
|
||||
echo '</th>';
|
||||
|
||||
+3
-2
@@ -16,8 +16,9 @@
|
||||
* 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>.
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>,
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
|
||||
@@ -17,8 +17,9 @@
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
|
||||
+473
-473
@@ -1,473 +1,473 @@
|
||||
<?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>.
|
||||
*/
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
loadVariables($user);
|
||||
|
||||
?>
|
||||
// ********** GLOBALE VARIABLEN ********** //
|
||||
var FunktionenTreeDatasource=''; // Datasource des Adressen Trees
|
||||
var FunktionenSelectID='';
|
||||
var FunktionenUID=null;
|
||||
var FunktionBezeichnungChanged=false;
|
||||
|
||||
<?php
|
||||
|
||||
// JS-Variable anlegen mit einer Uebersetzungstabellle
|
||||
// Studiengang zu Organisationseinheit
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->getAll();
|
||||
|
||||
echo 'var organisationseinheit = {';
|
||||
$content = '';
|
||||
foreach ($stg_obj->result as $stg)
|
||||
$content .= '"'.$stg->studiengang_kz.'":"'.$stg->oe_kurzbz.'",';
|
||||
echo substr($content, 0, mb_strlen($content)-1).'};';
|
||||
|
||||
?>
|
||||
// ********** LISTENER UND OBSERVER ********** //
|
||||
|
||||
// ****
|
||||
// * Observer fuer Adressen Tree
|
||||
// * startet Rebuild nachdem das Refresh
|
||||
// * der Datasource fertig ist
|
||||
// ****
|
||||
var FunktionenTreeSinkObserver =
|
||||
{
|
||||
onBeginLoad : function(pSink) {},
|
||||
onInterrupt : function(pSink) {},
|
||||
onResume : function(pSink) {},
|
||||
onError : function(pSink, pStatus, pError) {},
|
||||
onEndLoad : function(pSink)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
document.getElementById('funktion-tree').builder.rebuild();
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Nach dem Rebuild wird der Eintrag wieder
|
||||
// * markiert
|
||||
// ****
|
||||
var FunktionenTreeListener =
|
||||
{
|
||||
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(FunktionenTreeSelectID,10);
|
||||
}
|
||||
};
|
||||
|
||||
// ********** FUNKTIONEN ********** //
|
||||
|
||||
// ****
|
||||
// * Laedt die Trees
|
||||
// ****
|
||||
function loadFunktionen(uid)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
FunktionenUID = uid;
|
||||
|
||||
//Adressen laden
|
||||
url = "<?php echo APP_ROOT; ?>rdf/benutzerfunktion.rdf.php?uid="+uid+"&"+gettimestamp();
|
||||
var tree=document.getElementById('funktion-tree');
|
||||
|
||||
try
|
||||
{
|
||||
FunktionenTreeDatasource.removeXMLSinkObserver(FunktionenTreeSinkObserver);
|
||||
tree.builder.removeListener(FunktionenTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = tree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
tree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
FunktionenTreeDatasource = rdfService.GetDataSource(url);
|
||||
FunktionenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
FunktionenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
tree.database.AddDataSource(FunktionenTreeDatasource);
|
||||
FunktionenTreeDatasource.addXMLSinkObserver(FunktionenTreeSinkObserver);
|
||||
tree.builder.addListener(FunktionenTreeListener);
|
||||
FunktionDisableFields(false);
|
||||
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Selectiert eine Funktion nachdem der Tree
|
||||
// * rebuildet wurde.
|
||||
// ****
|
||||
function FunktionenTreeSelectID()
|
||||
{
|
||||
var tree=document.getElementById('funktion-tree');
|
||||
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
|
||||
//In der globalen Variable ist die zu selektierende Adresse gespeichert
|
||||
if(FunktionenSelectID!=null)
|
||||
{
|
||||
for(var i=0;i<items;i++)
|
||||
{
|
||||
//ID der row holen
|
||||
col = tree.columns ? tree.columns["funktion-treecol-benutzerfunktion_id"] : "funktion-treecol-benutzerfunktion_id";
|
||||
id=tree.view.getCellText(i,col);
|
||||
|
||||
if(id == FunktionenSelectID)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
|
||||
tree.treeBoxObject.ensureRowIsVisible(i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
FunktionenSelectID=null;
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Deaktiviert die Felder und setzt den Neu status
|
||||
// ****
|
||||
function FunktionNeu()
|
||||
{
|
||||
FunktionDetailResetFields();
|
||||
FunktionDetailDisableFields(false);
|
||||
document.getElementById('funktion-checkbox-neu').checked=true;
|
||||
document.getElementById('funktion-textbox-benutzerfunktion_id').value='';
|
||||
|
||||
//Wenn die aktuelle Person ein Student ist,
|
||||
//dann wird Studiengang und 'Studentenvertreter' vorausgewaehlt
|
||||
if(window.parent.document.getElementById('main-content-tabs').selectedItem==window.parent.document.getElementById('tab-mitarbeiter'))
|
||||
oe_kurzbz='';
|
||||
else
|
||||
oe_kurzbz = organisationseinheit[ window.parent.document.getElementById('student-prestudent-menulist-studiengang_kz').value ];
|
||||
|
||||
if(oe_kurzbz!='')
|
||||
{
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').value=oe_kurzbz;
|
||||
document.getElementById('funktion-menulist-funktion').value='stdv';
|
||||
}
|
||||
|
||||
var Datum = new Date()
|
||||
var Jahr = Datum.getFullYear()
|
||||
var Tag = Datum.getDate()
|
||||
var Monat = Datum.getMonth()+1
|
||||
|
||||
document.getElementById('funktion-box-datum_von').value=Tag+'.'+Monat+'.'+Jahr;
|
||||
document.getElementById('funktion-box-datum_bis').value='';
|
||||
document.getElementById('funktion-textbox-bezeichnung').value='';
|
||||
document.getElementById('funktion-textbox-wochenstunden').value='';
|
||||
FunktionToggleFachbereich();
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Loescht eine Funktion
|
||||
// ****
|
||||
function FunktionDelete()
|
||||
{
|
||||
tree = document.getElementById('funktion-tree');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
{
|
||||
alert('Bitte zuerst eine Funktion auswaehlen');
|
||||
return;
|
||||
}
|
||||
|
||||
//Ausgewaehlte ID holen
|
||||
var col = tree.columns ? tree.columns["funktion-treecol-benutzerfunktion_id"] : "funktion-treecol-benutzerfunktion_id";
|
||||
var benutzerfunktion_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Bei Mitarbeitern wird kein Studiengang mitgeschickt
|
||||
if(window.parent.document.getElementById('main-content-tabs').selectedItem==window.parent.document.getElementById('tab-mitarbeiter'))
|
||||
studiengang_kz='';
|
||||
else
|
||||
studiengang_kz = window.parent.document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
|
||||
if(confirm('Soll diese Funktion wirklich geloescht werden?'))
|
||||
{
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'funktiondelete');
|
||||
|
||||
req.add('benutzerfunktion_id', benutzerfunktion_id);
|
||||
req.add('studiengang_kz', studiengang_kz);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
FunktionenTreeDatasource.Refresh(false);
|
||||
FunktionDetailResetFields();
|
||||
FunktionDetailDisableFields(true);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Speichert die Daten
|
||||
// ****
|
||||
function FunktionDetailSpeichern()
|
||||
{
|
||||
var funktion_kurzbz = document.getElementById('funktion-menulist-funktion').value;
|
||||
var oe_kurzbz = document.getElementById('funktion-menulist-oe_kurzbz').value;
|
||||
var semester = document.getElementById('funktion-menulist-semester').value;
|
||||
var fachbereich_kurzbz = document.getElementById('funktion-menulist-fachbereich').value;
|
||||
var neu = document.getElementById('funktion-checkbox-neu').checked;
|
||||
var benutzerfunktion_id = document.getElementById('funktion-textbox-benutzerfunktion_id').value;
|
||||
var datum_von = document.getElementById('funktion-box-datum_von').value;
|
||||
var datum_bis = document.getElementById('funktion-box-datum_bis').value;
|
||||
var bezeichnung = document.getElementById('funktion-textbox-bezeichnung').value;
|
||||
var wochenstunden = document.getElementById('funktion-textbox-wochenstunden').value;
|
||||
|
||||
//Bei Mitarbeitern wird kein Studiengang mitgeschickt
|
||||
if(window.parent.document.getElementById('main-content-tabs').selectedItem==window.parent.document.getElementById('tab-mitarbeiter'))
|
||||
studiengang_kz_berecht='';
|
||||
else
|
||||
studiengang_kz_berecht = window.parent.document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
//Wenn Fachbereich ausgeblendet ist, dann sicherheitshalber auf '' setzen
|
||||
if(document.getElementById('funktion-menulist-fachbereich').hidden==true)
|
||||
fachbereich_kurzbz='';
|
||||
|
||||
req.add('type', 'funktionsave');
|
||||
|
||||
req.add('funktion_kurzbz', funktion_kurzbz);
|
||||
req.add('oe_kurzbz', oe_kurzbz);
|
||||
req.add('semester', semester);
|
||||
req.add('studiengang_kz_berecht', studiengang_kz_berecht);
|
||||
req.add('fachbereich_kurzbz', fachbereich_kurzbz);
|
||||
req.add('uid', FunktionenUID);
|
||||
req.add('neu', neu);
|
||||
req.add('benutzerfunktion_id', benutzerfunktion_id);
|
||||
req.add('datum_von', ConvertDateToISO(datum_von));
|
||||
req.add('datum_bis', ConvertDateToISO(datum_bis));
|
||||
req.add('bezeichnung', bezeichnung);
|
||||
req.add('wochenstunden', wochenstunden);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
FunktionBezeichnungChanged=false;
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
FunktionenSelectID=val.dbdml_data;
|
||||
FunktionenTreeDatasource.Refresh(false);
|
||||
document.getElementById('funktion-checkbox-neu').checked=false;
|
||||
document.getElementById('funktion-textbox-benutzerfunktion_id').value=FunktionenSelectID;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Daten zum Bearbeiten laden
|
||||
// ****
|
||||
function FunktionBearbeiten()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
tree = document.getElementById('funktion-tree');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return;
|
||||
|
||||
//Ausgewaehlte Nr holen
|
||||
var col = tree.columns ? tree.columns["funktion-treecol-benutzerfunktion_id"] : "funktion-treecol-benutzerfunktion_id";
|
||||
var benutzerfunktion_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Daten holen
|
||||
var url = '<?php echo APP_ROOT ?>rdf/benutzerfunktion.rdf.php?benutzerfunktion_id='+benutzerfunktion_id+'&'+gettimestamp();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
|
||||
getService(Components.interfaces.nsIRDFService);
|
||||
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/bnfunktion/"+benutzerfunktion_id);
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/bnfunktion/rdf";
|
||||
|
||||
//Daten holen
|
||||
var fachbereich_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#fachbereich_kurzbz" ));
|
||||
var uid = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#uid" ));
|
||||
var oe_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#oe_kurzbz" ));
|
||||
var semester = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#semester" ));
|
||||
var funktion_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#funktion_kurzbz" ));
|
||||
var datum_von = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum_von" ));
|
||||
var datum_bis = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum_bis" ));
|
||||
var bezeichnung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bezeichnung" ));
|
||||
var wochenstunden = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#wochenstunden" ));
|
||||
|
||||
document.getElementById('funktion-menulist-fachbereich').value=fachbereich_kurzbz;
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').value=oe_kurzbz;
|
||||
document.getElementById('funktion-menulist-semester').value=semester;
|
||||
document.getElementById('funktion-menulist-funktion').value=funktion_kurzbz;
|
||||
document.getElementById('funktion-textbox-benutzerfunktion_id').value=benutzerfunktion_id;
|
||||
document.getElementById('funktion-checkbox-neu').checked = false;
|
||||
document.getElementById('funktion-box-datum_von').value=datum_von;
|
||||
document.getElementById('funktion-box-datum_bis').value=datum_bis;
|
||||
document.getElementById('funktion-textbox-bezeichnung').value=bezeichnung;
|
||||
document.getElementById('funktion-textbox-wochenstunden').value=wochenstunden;
|
||||
|
||||
FunktionBezeichnungChanged=true;
|
||||
FunktionDetailDisableFields(false);
|
||||
FunktionToggleFachbereich();
|
||||
}
|
||||
|
||||
// ****
|
||||
// * De-/Aktiviert die Buttons
|
||||
// ****
|
||||
function FunktionDisableFields(val)
|
||||
{
|
||||
document.getElementById('funktion-button-neu').disabled=val;
|
||||
document.getElementById('funktion-button-loeschen').disabled=val;
|
||||
|
||||
if(val)
|
||||
FunktionDetailDisableFields(val);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * De-/Aktiviert die DetailFelder
|
||||
// ****
|
||||
function FunktionDetailDisableFields(val)
|
||||
{
|
||||
document.getElementById('funktion-menulist-fachbereich').disabled=val;
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').disabled=val;
|
||||
document.getElementById('funktion-menulist-semester').disabled=val;
|
||||
document.getElementById('funktion-menulist-funktion').disabled=val;
|
||||
document.getElementById('funktion-button-speichern').disabled=val;
|
||||
document.getElementById('funktion-box-datum_von').disabled=val;
|
||||
document.getElementById('funktion-box-datum_bis').disabled=val;
|
||||
document.getElementById('funktion-textbox-bezeichnung').disabled=val;
|
||||
document.getElementById('funktion-textbox-wochenstunden').disabled=val;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Setzt Defaultwerte fuer die Felder
|
||||
// ****
|
||||
function FunktionDetailResetFields()
|
||||
{
|
||||
document.getElementById('funktion-menulist-fachbereich').value='';
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').selectedIndex=0;
|
||||
document.getElementById('funktion-menulist-semester').value='';
|
||||
document.getElementById('funktion-menulist-funktion').value='ass';
|
||||
|
||||
var Datum = new Date();
|
||||
var Jahr = Datum.getFullYear();
|
||||
var Tag = Datum.getDate();
|
||||
var Monat = Datum.getMonth()+1;
|
||||
|
||||
document.getElementById('funktion-box-datum_von').value=Tag+'.'+Monat+'.'+Jahr;
|
||||
document.getElementById('funktion-box-datum_bis').value='';
|
||||
document.getElementById('funktion-textbox-bezeichnung').value='';
|
||||
document.getElementById('funktion-textbox-wochenstunden').value='';
|
||||
FunktionBezeichnungChanged=false;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Fachbereichs und Semester DropDown nur Anzeigen, wenn die entsprechenden Attribute
|
||||
// * der Funktion auf true gesetzt sind
|
||||
// ****
|
||||
function FunktionToggleFachbereich()
|
||||
{
|
||||
var menulist = document.getElementById('funktion-menulist-funktion');
|
||||
|
||||
//ersten selektierten Eintrag holen
|
||||
var children = menulist.getElementsByAttribute('selected','true');
|
||||
children = children[0];
|
||||
|
||||
//Attribute semester und fachbereich auslesen
|
||||
var semester = children.getAttribute('semester');
|
||||
var fachbereich = children.getAttribute('fachbereich');
|
||||
var bezeichnung = children.label;
|
||||
|
||||
//wenn in der Bezeichung noch nichts drinnen steht, dann die Funktion in die Bezeichnung schreiben
|
||||
var tbbezeichnung = document.getElementById('funktion-textbox-bezeichnung')
|
||||
|
||||
if(!FunktionBezeichnungChanged)
|
||||
{
|
||||
tbbezeichnung.value=bezeichnung;
|
||||
}
|
||||
|
||||
//Felder sichtbar/unsichtbar setzen
|
||||
var semesterhidden=false;
|
||||
var fachbereichhidden=false;
|
||||
|
||||
if(semester=='true')
|
||||
semesterhidden=false;
|
||||
else
|
||||
semesterhidden=true;
|
||||
|
||||
if(fachbereich=='true')
|
||||
fachbereichhidden=false;
|
||||
else
|
||||
fachbereichhidden=true;
|
||||
|
||||
document.getElementById('funktion-menulist-fachbereich').hidden=fachbereichhidden;
|
||||
document.getElementById('funktion-label-fachbereich').hidden=fachbereichhidden;
|
||||
|
||||
document.getElementById('funktion-menulist-semester').hidden=semesterhidden;
|
||||
document.getElementById('funktion-label-semester').hidden=semesterhidden;
|
||||
|
||||
}
|
||||
|
||||
function FunktionBezeichnungChange()
|
||||
{
|
||||
FunktionBezeichnungChanged=true;
|
||||
}
|
||||
<?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>.
|
||||
*/
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
loadVariables($user);
|
||||
|
||||
?>
|
||||
// ********** GLOBALE VARIABLEN ********** //
|
||||
var FunktionenTreeDatasource=''; // Datasource des Adressen Trees
|
||||
var FunktionenSelectID='';
|
||||
var FunktionenUID=null;
|
||||
var FunktionBezeichnungChanged=false;
|
||||
|
||||
<?php
|
||||
|
||||
// JS-Variable anlegen mit einer Uebersetzungstabellle
|
||||
// Studiengang zu Organisationseinheit
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->getAll();
|
||||
|
||||
echo 'var organisationseinheit = {';
|
||||
$content = '';
|
||||
foreach ($stg_obj->result as $stg)
|
||||
$content .= '"'.$stg->studiengang_kz.'":"'.$stg->oe_kurzbz.'",';
|
||||
echo substr($content, 0, mb_strlen($content)-1).'};';
|
||||
|
||||
?>
|
||||
// ********** LISTENER UND OBSERVER ********** //
|
||||
|
||||
// ****
|
||||
// * Observer fuer Adressen Tree
|
||||
// * startet Rebuild nachdem das Refresh
|
||||
// * der Datasource fertig ist
|
||||
// ****
|
||||
var FunktionenTreeSinkObserver =
|
||||
{
|
||||
onBeginLoad : function(pSink) {},
|
||||
onInterrupt : function(pSink) {},
|
||||
onResume : function(pSink) {},
|
||||
onError : function(pSink, pStatus, pError) {},
|
||||
onEndLoad : function(pSink)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
document.getElementById('funktion-tree').builder.rebuild();
|
||||
}
|
||||
};
|
||||
|
||||
// ****
|
||||
// * Nach dem Rebuild wird der Eintrag wieder
|
||||
// * markiert
|
||||
// ****
|
||||
var FunktionenTreeListener =
|
||||
{
|
||||
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(FunktionenTreeSelectID,10);
|
||||
}
|
||||
};
|
||||
|
||||
// ********** FUNKTIONEN ********** //
|
||||
|
||||
// ****
|
||||
// * Laedt die Trees
|
||||
// ****
|
||||
function loadFunktionen(uid)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
FunktionenUID = uid;
|
||||
|
||||
//Adressen laden
|
||||
url = "<?php echo APP_ROOT; ?>rdf/benutzerfunktion.rdf.php?uid="+uid+"&"+gettimestamp();
|
||||
var tree=document.getElementById('funktion-tree');
|
||||
|
||||
try
|
||||
{
|
||||
FunktionenTreeDatasource.removeXMLSinkObserver(FunktionenTreeSinkObserver);
|
||||
tree.builder.removeListener(FunktionenTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = tree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
tree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
FunktionenTreeDatasource = rdfService.GetDataSource(url);
|
||||
FunktionenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
FunktionenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
tree.database.AddDataSource(FunktionenTreeDatasource);
|
||||
FunktionenTreeDatasource.addXMLSinkObserver(FunktionenTreeSinkObserver);
|
||||
tree.builder.addListener(FunktionenTreeListener);
|
||||
FunktionDisableFields(false);
|
||||
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Selectiert eine Funktion nachdem der Tree
|
||||
// * rebuildet wurde.
|
||||
// ****
|
||||
function FunktionenTreeSelectID()
|
||||
{
|
||||
var tree=document.getElementById('funktion-tree');
|
||||
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
|
||||
//In der globalen Variable ist die zu selektierende Adresse gespeichert
|
||||
if(FunktionenSelectID!=null)
|
||||
{
|
||||
for(var i=0;i<items;i++)
|
||||
{
|
||||
//ID der row holen
|
||||
col = tree.columns ? tree.columns["funktion-treecol-benutzerfunktion_id"] : "funktion-treecol-benutzerfunktion_id";
|
||||
id=tree.view.getCellText(i,col);
|
||||
|
||||
if(id == FunktionenSelectID)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
|
||||
tree.treeBoxObject.ensureRowIsVisible(i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
FunktionenSelectID=null;
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Deaktiviert die Felder und setzt den Neu status
|
||||
// ****
|
||||
function FunktionNeu()
|
||||
{
|
||||
FunktionDetailResetFields();
|
||||
FunktionDetailDisableFields(false);
|
||||
document.getElementById('funktion-checkbox-neu').checked=true;
|
||||
document.getElementById('funktion-textbox-benutzerfunktion_id').value='';
|
||||
|
||||
//Wenn die aktuelle Person ein Student ist,
|
||||
//dann wird Studiengang und 'Studentenvertreter' vorausgewaehlt
|
||||
if(window.parent.document.getElementById('main-content-tabs').selectedItem==window.parent.document.getElementById('tab-mitarbeiter'))
|
||||
oe_kurzbz='';
|
||||
else
|
||||
oe_kurzbz = organisationseinheit[ window.parent.document.getElementById('student-prestudent-menulist-studiengang_kz').value ];
|
||||
|
||||
if(oe_kurzbz!='')
|
||||
{
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').value=oe_kurzbz;
|
||||
document.getElementById('funktion-menulist-funktion').value='stdv';
|
||||
}
|
||||
|
||||
var Datum = new Date()
|
||||
var Jahr = Datum.getFullYear()
|
||||
var Tag = Datum.getDate()
|
||||
var Monat = Datum.getMonth()+1
|
||||
|
||||
document.getElementById('funktion-box-datum_von').value=Tag+'.'+Monat+'.'+Jahr;
|
||||
document.getElementById('funktion-box-datum_bis').value='';
|
||||
document.getElementById('funktion-textbox-bezeichnung').value='';
|
||||
document.getElementById('funktion-textbox-wochenstunden').value='';
|
||||
FunktionToggleFachbereich();
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Loescht eine Funktion
|
||||
// ****
|
||||
function FunktionDelete()
|
||||
{
|
||||
tree = document.getElementById('funktion-tree');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
{
|
||||
alert('Bitte zuerst eine Funktion auswaehlen');
|
||||
return;
|
||||
}
|
||||
|
||||
//Ausgewaehlte ID holen
|
||||
var col = tree.columns ? tree.columns["funktion-treecol-benutzerfunktion_id"] : "funktion-treecol-benutzerfunktion_id";
|
||||
var benutzerfunktion_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Bei Mitarbeitern wird kein Studiengang mitgeschickt
|
||||
if(window.parent.document.getElementById('main-content-tabs').selectedItem==window.parent.document.getElementById('tab-mitarbeiter'))
|
||||
studiengang_kz='';
|
||||
else
|
||||
studiengang_kz = window.parent.document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
|
||||
if(confirm('Soll diese Funktion wirklich geloescht werden?'))
|
||||
{
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'funktiondelete');
|
||||
|
||||
req.add('benutzerfunktion_id', benutzerfunktion_id);
|
||||
req.add('studiengang_kz', studiengang_kz);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
FunktionenTreeDatasource.Refresh(false);
|
||||
FunktionDetailResetFields();
|
||||
FunktionDetailDisableFields(true);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Speichert die Daten
|
||||
// ****
|
||||
function FunktionDetailSpeichern()
|
||||
{
|
||||
var funktion_kurzbz = document.getElementById('funktion-menulist-funktion').value;
|
||||
var oe_kurzbz = document.getElementById('funktion-menulist-oe_kurzbz').value;
|
||||
var semester = document.getElementById('funktion-menulist-semester').value;
|
||||
var fachbereich_kurzbz = document.getElementById('funktion-menulist-fachbereich').value;
|
||||
var neu = document.getElementById('funktion-checkbox-neu').checked;
|
||||
var benutzerfunktion_id = document.getElementById('funktion-textbox-benutzerfunktion_id').value;
|
||||
var datum_von = document.getElementById('funktion-box-datum_von').value;
|
||||
var datum_bis = document.getElementById('funktion-box-datum_bis').value;
|
||||
var bezeichnung = document.getElementById('funktion-textbox-bezeichnung').value;
|
||||
var wochenstunden = document.getElementById('funktion-textbox-wochenstunden').value;
|
||||
|
||||
//Bei Mitarbeitern wird kein Studiengang mitgeschickt
|
||||
if(window.parent.document.getElementById('main-content-tabs').selectedItem==window.parent.document.getElementById('tab-mitarbeiter'))
|
||||
studiengang_kz_berecht='';
|
||||
else
|
||||
studiengang_kz_berecht = window.parent.document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
//Wenn Fachbereich ausgeblendet ist, dann sicherheitshalber auf '' setzen
|
||||
if(document.getElementById('funktion-menulist-fachbereich').hidden==true)
|
||||
fachbereich_kurzbz='';
|
||||
|
||||
req.add('type', 'funktionsave');
|
||||
|
||||
req.add('funktion_kurzbz', funktion_kurzbz);
|
||||
req.add('oe_kurzbz', oe_kurzbz);
|
||||
req.add('semester', semester);
|
||||
req.add('studiengang_kz_berecht', studiengang_kz_berecht);
|
||||
req.add('fachbereich_kurzbz', fachbereich_kurzbz);
|
||||
req.add('uid', FunktionenUID);
|
||||
req.add('neu', neu);
|
||||
req.add('benutzerfunktion_id', benutzerfunktion_id);
|
||||
req.add('datum_von', ConvertDateToISO(datum_von));
|
||||
req.add('datum_bis', ConvertDateToISO(datum_bis));
|
||||
req.add('bezeichnung', bezeichnung);
|
||||
req.add('wochenstunden', wochenstunden);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
FunktionBezeichnungChanged=false;
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
FunktionenSelectID=val.dbdml_data;
|
||||
FunktionenTreeDatasource.Refresh(false);
|
||||
document.getElementById('funktion-checkbox-neu').checked=false;
|
||||
document.getElementById('funktion-textbox-benutzerfunktion_id').value=FunktionenSelectID;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Daten zum Bearbeiten laden
|
||||
// ****
|
||||
function FunktionBearbeiten()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
tree = document.getElementById('funktion-tree');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return;
|
||||
|
||||
//Ausgewaehlte Nr holen
|
||||
var col = tree.columns ? tree.columns["funktion-treecol-benutzerfunktion_id"] : "funktion-treecol-benutzerfunktion_id";
|
||||
var benutzerfunktion_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Daten holen
|
||||
var url = '<?php echo APP_ROOT ?>rdf/benutzerfunktion.rdf.php?benutzerfunktion_id='+benutzerfunktion_id+'&'+gettimestamp();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
|
||||
getService(Components.interfaces.nsIRDFService);
|
||||
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/bnfunktion/"+benutzerfunktion_id);
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/bnfunktion/rdf";
|
||||
|
||||
//Daten holen
|
||||
var fachbereich_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#fachbereich_kurzbz" ));
|
||||
var uid = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#uid" ));
|
||||
var oe_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#oe_kurzbz" ));
|
||||
var semester = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#semester" ));
|
||||
var funktion_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#funktion_kurzbz" ));
|
||||
var datum_von = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum_von" ));
|
||||
var datum_bis = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum_bis" ));
|
||||
var bezeichnung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bezeichnung" ));
|
||||
var wochenstunden = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#wochenstunden" ));
|
||||
|
||||
document.getElementById('funktion-menulist-fachbereich').value=fachbereich_kurzbz;
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').value=oe_kurzbz;
|
||||
document.getElementById('funktion-menulist-semester').value=semester;
|
||||
document.getElementById('funktion-menulist-funktion').value=funktion_kurzbz;
|
||||
document.getElementById('funktion-textbox-benutzerfunktion_id').value=benutzerfunktion_id;
|
||||
document.getElementById('funktion-checkbox-neu').checked = false;
|
||||
document.getElementById('funktion-box-datum_von').value=datum_von;
|
||||
document.getElementById('funktion-box-datum_bis').value=datum_bis;
|
||||
document.getElementById('funktion-textbox-bezeichnung').value=bezeichnung;
|
||||
document.getElementById('funktion-textbox-wochenstunden').value=wochenstunden;
|
||||
|
||||
FunktionBezeichnungChanged=true;
|
||||
FunktionDetailDisableFields(false);
|
||||
FunktionToggleFachbereich();
|
||||
}
|
||||
|
||||
// ****
|
||||
// * De-/Aktiviert die Buttons
|
||||
// ****
|
||||
function FunktionDisableFields(val)
|
||||
{
|
||||
document.getElementById('funktion-button-neu').disabled=val;
|
||||
document.getElementById('funktion-button-loeschen').disabled=val;
|
||||
|
||||
if(val)
|
||||
FunktionDetailDisableFields(val);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * De-/Aktiviert die DetailFelder
|
||||
// ****
|
||||
function FunktionDetailDisableFields(val)
|
||||
{
|
||||
document.getElementById('funktion-menulist-fachbereich').disabled=val;
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').disabled=val;
|
||||
document.getElementById('funktion-menulist-semester').disabled=val;
|
||||
document.getElementById('funktion-menulist-funktion').disabled=val;
|
||||
document.getElementById('funktion-button-speichern').disabled=val;
|
||||
document.getElementById('funktion-box-datum_von').disabled=val;
|
||||
document.getElementById('funktion-box-datum_bis').disabled=val;
|
||||
document.getElementById('funktion-textbox-bezeichnung').disabled=val;
|
||||
document.getElementById('funktion-textbox-wochenstunden').disabled=val;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Setzt Defaultwerte fuer die Felder
|
||||
// ****
|
||||
function FunktionDetailResetFields()
|
||||
{
|
||||
document.getElementById('funktion-menulist-fachbereich').value='';
|
||||
document.getElementById('funktion-menulist-oe_kurzbz').selectedIndex=0;
|
||||
document.getElementById('funktion-menulist-semester').value='';
|
||||
document.getElementById('funktion-menulist-funktion').value='ass';
|
||||
|
||||
var Datum = new Date();
|
||||
var Jahr = Datum.getFullYear();
|
||||
var Tag = Datum.getDate();
|
||||
var Monat = Datum.getMonth()+1;
|
||||
|
||||
document.getElementById('funktion-box-datum_von').value=Tag+'.'+Monat+'.'+Jahr;
|
||||
document.getElementById('funktion-box-datum_bis').value='';
|
||||
document.getElementById('funktion-textbox-bezeichnung').value='';
|
||||
document.getElementById('funktion-textbox-wochenstunden').value='';
|
||||
FunktionBezeichnungChanged=false;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Fachbereichs und Semester DropDown nur Anzeigen, wenn die entsprechenden Attribute
|
||||
// * der Funktion auf true gesetzt sind
|
||||
// ****
|
||||
function FunktionToggleFachbereich()
|
||||
{
|
||||
var menulist = document.getElementById('funktion-menulist-funktion');
|
||||
|
||||
//ersten selektierten Eintrag holen
|
||||
var children = menulist.getElementsByAttribute('selected','true');
|
||||
children = children[0];
|
||||
|
||||
//Attribute semester und fachbereich auslesen
|
||||
var semester = children.getAttribute('semester');
|
||||
var fachbereich = children.getAttribute('fachbereich');
|
||||
var bezeichnung = children.label;
|
||||
|
||||
//wenn in der Bezeichung noch nichts drinnen steht, dann die Funktion in die Bezeichnung schreiben
|
||||
var tbbezeichnung = document.getElementById('funktion-textbox-bezeichnung')
|
||||
|
||||
if(!FunktionBezeichnungChanged)
|
||||
{
|
||||
tbbezeichnung.value=bezeichnung;
|
||||
}
|
||||
|
||||
//Felder sichtbar/unsichtbar setzen
|
||||
var semesterhidden=false;
|
||||
var fachbereichhidden=false;
|
||||
|
||||
if(semester=='true')
|
||||
semesterhidden=false;
|
||||
else
|
||||
semesterhidden=true;
|
||||
|
||||
if(fachbereich=='true')
|
||||
fachbereichhidden=false;
|
||||
else
|
||||
fachbereichhidden=true;
|
||||
|
||||
document.getElementById('funktion-menulist-fachbereich').hidden=fachbereichhidden;
|
||||
document.getElementById('funktion-label-fachbereich').hidden=fachbereichhidden;
|
||||
|
||||
document.getElementById('funktion-menulist-semester').hidden=semesterhidden;
|
||||
document.getElementById('funktion-label-semester').hidden=semesterhidden;
|
||||
|
||||
}
|
||||
|
||||
function FunktionBezeichnungChange()
|
||||
{
|
||||
FunktionBezeichnungChanged=true;
|
||||
}
|
||||
|
||||
@@ -469,9 +469,9 @@ function draw_content($row)
|
||||
|
||||
//Spezialgruppen
|
||||
$grps='';
|
||||
$qry_1 = "SELECT gruppe_kurzbz FROM public.tbl_student JOIN public.tbl_benutzergruppe ON (student_uid=uid)
|
||||
WHERE tbl_student.prestudent_id='".addslashes($row->prestudent_id)."'
|
||||
AND tbl_benutzergruppe.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
|
||||
$qry_1 = "SELECT gruppe_kurzbz FROM public.tbl_prestudent JOIN public.tbl_benutzergruppe USING(prestudent_id)
|
||||
WHERE tbl_prestudent.prestudent_id=".$db->db_add_param($row->prestudent_id, FHC_INTEGER)."
|
||||
AND tbl_benutzergruppe.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
|
||||
if($db->db_query($qry_1))
|
||||
{
|
||||
while($row_1 = $db->db_fetch_object())
|
||||
|
||||
@@ -3199,7 +3199,6 @@ if(!$error)
|
||||
|
||||
if($_POST['pruefungstyp_kurzbz']=='Termin2')
|
||||
{
|
||||
|
||||
//Wenn ein 2. Termin angelegt wird, und kein 1. Termin vorhanden ist,
|
||||
//dann wird auch ein 1. Termin angelegt mit der derzeitigen Zeugnisnote
|
||||
$qry = "SELECT * FROM lehre.tbl_pruefung WHERE
|
||||
@@ -3211,7 +3210,7 @@ if(!$error)
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$qry = "SELECT note,punkte, benotungsdatum FROM lehre.tbl_zeugnisnote JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE
|
||||
prestudent_id=".$db->db_add_param($student->prestudent_id, FHC_INTEGER)." AND
|
||||
prestudent_id=".$db->db_add_param($_POST["prestudent_id"], FHC_INTEGER)." AND
|
||||
tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($_POST['lehreinheit_id'], FHC_INTEGER)." AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz = tbl_zeugnisnote.studiensemester_kurzbz";
|
||||
if($result = $db->db_query($qry))
|
||||
@@ -3225,7 +3224,7 @@ if(!$error)
|
||||
$ersttermin->insertamum = date('Y-m-d H:i:s');
|
||||
$ersttermin->insertvon = $user;
|
||||
$ersttermin->lehreinheit_id = $_POST['lehreinheit_id'];
|
||||
$ersttermin->prestudent_id = $student->prestudent_id;
|
||||
$ersttermin->prestudent_id = $_POST["prestudent_id"];
|
||||
$ersttermin->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
|
||||
$ersttermin->note = $row->note;
|
||||
$ersttermin->punkte = $row->punkte;
|
||||
|
||||
@@ -1378,7 +1378,7 @@ function StudentAuswahl()
|
||||
}
|
||||
|
||||
if(parseInt(prestudent_id))
|
||||
{alert(prestudent_id + " zeugnisnote/lvgesamtnote"); // TODO EINE
|
||||
{
|
||||
// *** ZeugnisNoten ***
|
||||
notentree = document.getElementById('student-noten-tree');
|
||||
|
||||
@@ -4307,7 +4307,7 @@ function StudentPruefungAuswahl()
|
||||
StudentPruefungDetailDisableFields(false);
|
||||
|
||||
//Ausgewaehlte Nr holen
|
||||
var col = tree.columns ? tree.columns["student-pruefung-tree-pruefung_id"] : "student-pruefung-tree-pruefung_id";
|
||||
var col = tree.columns ? tree.columns["student-pruefung-tree-pruefung_id"] : "student-pruefung-tree-pruefung_id";
|
||||
var pruefung_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Daten holen
|
||||
|
||||
+485
-485
@@ -1,485 +1,485 @@
|
||||
<?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>.
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
?>
|
||||
var menuUndoDatasource=0;
|
||||
var STPLlastDetailUrl='leer';
|
||||
var addon = Array();
|
||||
//Speichert die Position der Scrollbalken in der Wochenuebersicht
|
||||
TimeTableWeekPositionX=0;
|
||||
TimeTableWeekPositionY=0;
|
||||
|
||||
// ----------------------------------------------------------
|
||||
// ------- CLASS Progressmeter ------------------------------
|
||||
function Progressmeter(progress_id)
|
||||
{
|
||||
var id=progress_id;
|
||||
var runningprogress=0;
|
||||
this.StopPM=StopPM;
|
||||
this.StartPM=StartPM;
|
||||
|
||||
function StartPM()
|
||||
{
|
||||
// Progressmeter starten.
|
||||
document.getElementById(id).setAttribute('mode','undetermined');
|
||||
runningprogress++;
|
||||
}
|
||||
|
||||
function StopPM()
|
||||
{
|
||||
runningprogress--;
|
||||
if(runningprogress<0)
|
||||
runningprogress=0;
|
||||
|
||||
// Progressmeter stoppen wenn alle fertig sind
|
||||
if(runningprogress==0)
|
||||
document.getElementById(id).setAttribute('mode','determined');
|
||||
}
|
||||
}
|
||||
// ------ EndOf CLASS Progressmeter ------------------------------
|
||||
|
||||
var globalProgressmeter=new Progressmeter('statusbar-progressmeter');
|
||||
//globalProgressmeter.StartPM();
|
||||
|
||||
function closeWindow()
|
||||
{
|
||||
//Warnung wenn Daten veraendert aber noch nicht gespeichert wurden
|
||||
if(MitarbeiterDetailValueChanged)
|
||||
{
|
||||
if(!confirm('Achtung! Mitarbeiterdaten wurden veraendert aber noch nicht gespeichert. Programm wirklich beenden? \n(Die geaenderten Daten gehen dabei verloren)'))
|
||||
return false;
|
||||
}
|
||||
|
||||
MitarbeiterDetailValueChanged=false;
|
||||
|
||||
window.close();
|
||||
}
|
||||
|
||||
function onLoad()
|
||||
{
|
||||
try
|
||||
{
|
||||
initLektorTree();
|
||||
//Studenten Tab beim starten markieren
|
||||
//document.getElementById('main-content-tabs').selectedItem=document.getElementById('tab-studenten');
|
||||
|
||||
for(i in addon)
|
||||
{
|
||||
addon[i].init();
|
||||
}
|
||||
//Funktion ueberschreiben damit sie nicht nochmal aufgerufen wird
|
||||
//wenn zb ein IFrame geladen wird
|
||||
onLoad=function() {return false};
|
||||
|
||||
|
||||
if(document.getElementById('statusbarpanel-ignore_kollision'))
|
||||
{
|
||||
// Anzeige von DBTable und Ignorekoll. aktualisieren
|
||||
window.setTimeout(updateignorekollision,20);
|
||||
window.setTimeout(updatedbstpltable,20);
|
||||
}
|
||||
|
||||
//Notizen des Users laden
|
||||
notiz = document.getElementById('box-notizen');
|
||||
if(notiz)
|
||||
notiz.LoadNotizTree('','','','','','','', getUsername(),'');
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
debug('catched'+e);
|
||||
onLoad=function() {return false};
|
||||
}
|
||||
}
|
||||
|
||||
function loadRightFrame()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
function loadURL(event)
|
||||
{
|
||||
var contentFrame = document.getElementById('contentFrame');
|
||||
var url = event.target.getAttribute('value');
|
||||
|
||||
if (url) contentFrame.setAttribute('src', url);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Aendert die Stundenplantabelle
|
||||
// ****
|
||||
function stpltableChange(db_stpl_table)
|
||||
{
|
||||
variableChange('db_stpl_table', null, db_stpl_table);
|
||||
return true;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Wechselt von Studiensemester 'stsem' um 'wert' Studiensemester vor bzw zurueck
|
||||
// ****
|
||||
function studiensemesterChange(stsem, wert)
|
||||
{
|
||||
if(typeof(wert)=='undefined')
|
||||
{
|
||||
wert=0;
|
||||
if(typeof(stsem)=='undefined')
|
||||
{
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].id=='menu-properies-studiensemester-name' && items[i].getAttribute("checked")=='true')
|
||||
stsem = items[i].label;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
stsem = getStudiensemester();
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'variablechange');
|
||||
req.add('stsem', stsem);
|
||||
req.add('wert', wert);
|
||||
|
||||
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
|
||||
{
|
||||
//Statusbar setzen
|
||||
document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
|
||||
document.getElementById("statusbarpanel-semester").label = val.dbdml_data;
|
||||
//Menue setzen
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].label==val.dbdml_data && items[i].id=='menu-properies-studiensemester-name')
|
||||
{
|
||||
items[i].setAttribute('checked',true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//MitarbeiterDetailStudiensemester_id = dbdml_errormsg;
|
||||
//Ansichten Refreshen
|
||||
try
|
||||
{
|
||||
StudentTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
try
|
||||
{
|
||||
LvTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet ein Fenster zum Aendern eines Variablenwertes
|
||||
// ****
|
||||
function variableChangeValue(variable)
|
||||
{
|
||||
var variablevalue = getvariable(variable);
|
||||
|
||||
if(variablevalue = prompt('Bitte geben Sie den neuen Wert fuer '+variable+' ein', variablevalue))
|
||||
{
|
||||
variableChange(variable, '', variablevalue);
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Aendert den Wert der Variable IgnoreKollision
|
||||
// ****
|
||||
function toggleIgnoreKollision()
|
||||
{
|
||||
if(getvariable('ignore_kollision')=='true')
|
||||
variableChange('ignore_kollision','menu-prefs-ignore_kollision', 'false');
|
||||
else
|
||||
variableChange('ignore_kollision','menu-prefs-ignore_kollision', 'true');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Sendet einen Request zum Aendern einer Variable
|
||||
// ****
|
||||
function variableChange(variable, id, wert)
|
||||
{
|
||||
if(id!=null)
|
||||
item = document.getElementById(id);
|
||||
|
||||
if(typeof(wert)==='undefined')
|
||||
{
|
||||
if(item.getAttribute('checked')=='true')
|
||||
checked='true';
|
||||
else
|
||||
checked='false';
|
||||
}
|
||||
else
|
||||
checked=wert;
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'variablechange');
|
||||
req.add('name', variable);
|
||||
req.add('wert', checked);
|
||||
|
||||
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
|
||||
{
|
||||
if(variable=='ignore_kollision')
|
||||
updateignorekollision();
|
||||
if(variable=='db_stpl_table')
|
||||
{
|
||||
document.getElementById("statusbarpanel-db_table").label = wert;
|
||||
updatedbstpltable();
|
||||
}
|
||||
//Statusbar setzen
|
||||
document.getElementById("statusbarpanel-text").label = "Variable erfolgreich geaendert";
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Aktualisiert die IngnoreKollision Anzeige
|
||||
// * sowohl in der Toolbar als auch im Menue
|
||||
// ****
|
||||
function updateignorekollision()
|
||||
{
|
||||
var panel = document.getElementById('statusbarpanel-ignore_kollision');
|
||||
if(getvariable('ignore_kollision')=='true')
|
||||
{
|
||||
panel.label='Kollisionscheck AUS';
|
||||
panel.style.backgroundColor='#FF0000';
|
||||
panel.style.MozAppearance = "none"
|
||||
document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','true');
|
||||
}
|
||||
else
|
||||
{
|
||||
panel.label='Kollisionscheck AN';
|
||||
panel.style.backgroundColor='';
|
||||
panel.style.MozAppearance = "none"
|
||||
document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','false');
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Markiert den Eintrag in der Statusleiste rot wenn auf die
|
||||
// * echte stpl tabelle zugegriffen wird
|
||||
// ****
|
||||
function updatedbstpltable()
|
||||
{
|
||||
var panel = document.getElementById('statusbarpanel-db_table');
|
||||
|
||||
if(panel.label=='stundenplan')
|
||||
{
|
||||
panel.style.backgroundColor='#FF0000';
|
||||
panel.style.MozAppearance = "none"
|
||||
}
|
||||
else
|
||||
{
|
||||
panel.style.backgroundColor='';
|
||||
panel.style.MozAppearance = "none"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Liefert das eingestellte Studiensemester
|
||||
// ****
|
||||
function getStudiensemesterVariable()
|
||||
{
|
||||
if(stsem = getvariable('semester_aktuell'))
|
||||
{
|
||||
//Statusbar setzen
|
||||
document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
|
||||
document.getElementById("statusbarpanel-semester").label = stsem;
|
||||
//Menue setzen
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].label==stsem && items[i].id=='menu-properies-studiensemester-name')
|
||||
{
|
||||
items[i].setAttribute('checked',true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//Ansichten Refreshen
|
||||
try
|
||||
{
|
||||
StudentTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
try
|
||||
{
|
||||
LvTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Laedt das Undo Menue Neu
|
||||
// ****
|
||||
function loadUndoList()
|
||||
{
|
||||
menu = document.getElementById('menu-edit-undo');
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
if(menuUndoDatasource==0)
|
||||
{
|
||||
//Wenn noch keine Datasource angegeben ist, dann wird eine neue hinzugefuegt
|
||||
var url = '<?php echo APP_ROOT; ?>rdf/undo.rdf.php?'+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = menu.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
menu.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
menuUndoDatasource = rdfService.GetDataSource(url);
|
||||
menuUndoDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
menu.database.AddDataSource(menuUndoDatasource);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wenn die Datasource bereits geladen wurde dann nur neu laden
|
||||
menuUndoDatasource.Refresh(true); //blocking
|
||||
menu.builder.rebuild();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Fuehrt den Undo Befehl aus
|
||||
// ****
|
||||
function UnDo(log_id, bezeichnung)
|
||||
{
|
||||
if(confirm('Wollen Sie folgenden Befehl wirklich Rueckgaengig machen: '+bezeichnung))
|
||||
{
|
||||
//Request absetzen
|
||||
var req = new phpRequest('tempusDBDML.php','','');
|
||||
|
||||
req.add('type','undo');
|
||||
req.add('log_id',log_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
alert(val.dbdml_errormsg)
|
||||
}
|
||||
else
|
||||
{
|
||||
LvTreeRefresh();
|
||||
onJumpDate(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Zeigt das Fenster zur Kollisionspruefung auf Studentenebene an
|
||||
// ****
|
||||
function KollisionStudentShow()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/stpl_benutzer_kollision_frameset.html', 'Kollision Student');
|
||||
}
|
||||
// ****
|
||||
// * Zeigt das Fenster zur LVPlanWartung
|
||||
// ****
|
||||
function LVPlanWartungShow()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/lvplanwartung.php', 'LVPLanWartung');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Zeigt das Fenster zur Kollisionspruefung mit Reservierungen
|
||||
// ****
|
||||
function ResCheckShow()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/check/res_check.php', 'KollisionReservierung');
|
||||
}
|
||||
// ****
|
||||
// * Zeigt das Fenster zur Kollisionspruefung mit Reservierungen
|
||||
// ****
|
||||
function SyncLVPlan()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/lvplan_custom_sync.php', 'LVPlan Sync');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet das Handbuch
|
||||
// ****
|
||||
function OpenManualTempus()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT ?>content/Tempus.pdf','Manual');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet den About Dialog
|
||||
// ****
|
||||
function OpenAboutDialog()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT ?>content/about.xul.php','About','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
<?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>.
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
?>
|
||||
var menuUndoDatasource=0;
|
||||
var STPLlastDetailUrl='leer';
|
||||
var addon = Array();
|
||||
//Speichert die Position der Scrollbalken in der Wochenuebersicht
|
||||
TimeTableWeekPositionX=0;
|
||||
TimeTableWeekPositionY=0;
|
||||
|
||||
// ----------------------------------------------------------
|
||||
// ------- CLASS Progressmeter ------------------------------
|
||||
function Progressmeter(progress_id)
|
||||
{
|
||||
var id=progress_id;
|
||||
var runningprogress=0;
|
||||
this.StopPM=StopPM;
|
||||
this.StartPM=StartPM;
|
||||
|
||||
function StartPM()
|
||||
{
|
||||
// Progressmeter starten.
|
||||
document.getElementById(id).setAttribute('mode','undetermined');
|
||||
runningprogress++;
|
||||
}
|
||||
|
||||
function StopPM()
|
||||
{
|
||||
runningprogress--;
|
||||
if(runningprogress<0)
|
||||
runningprogress=0;
|
||||
|
||||
// Progressmeter stoppen wenn alle fertig sind
|
||||
if(runningprogress==0)
|
||||
document.getElementById(id).setAttribute('mode','determined');
|
||||
}
|
||||
}
|
||||
// ------ EndOf CLASS Progressmeter ------------------------------
|
||||
|
||||
var globalProgressmeter=new Progressmeter('statusbar-progressmeter');
|
||||
//globalProgressmeter.StartPM();
|
||||
|
||||
function closeWindow()
|
||||
{
|
||||
//Warnung wenn Daten veraendert aber noch nicht gespeichert wurden
|
||||
if(MitarbeiterDetailValueChanged)
|
||||
{
|
||||
if(!confirm('Achtung! Mitarbeiterdaten wurden veraendert aber noch nicht gespeichert. Programm wirklich beenden? \n(Die geaenderten Daten gehen dabei verloren)'))
|
||||
return false;
|
||||
}
|
||||
|
||||
MitarbeiterDetailValueChanged=false;
|
||||
|
||||
window.close();
|
||||
}
|
||||
|
||||
function onLoad()
|
||||
{
|
||||
try
|
||||
{
|
||||
initLektorTree();
|
||||
//Studenten Tab beim starten markieren
|
||||
//document.getElementById('main-content-tabs').selectedItem=document.getElementById('tab-studenten');
|
||||
|
||||
for(i in addon)
|
||||
{
|
||||
addon[i].init();
|
||||
}
|
||||
//Funktion ueberschreiben damit sie nicht nochmal aufgerufen wird
|
||||
//wenn zb ein IFrame geladen wird
|
||||
onLoad=function() {return false};
|
||||
|
||||
|
||||
if(document.getElementById('statusbarpanel-ignore_kollision'))
|
||||
{
|
||||
// Anzeige von DBTable und Ignorekoll. aktualisieren
|
||||
window.setTimeout(updateignorekollision,20);
|
||||
window.setTimeout(updatedbstpltable,20);
|
||||
}
|
||||
|
||||
//Notizen des Users laden
|
||||
notiz = document.getElementById('box-notizen');
|
||||
if(notiz)
|
||||
notiz.LoadNotizTree('','','','','','','', getUsername(),'');
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
debug('catched'+e);
|
||||
onLoad=function() {return false};
|
||||
}
|
||||
}
|
||||
|
||||
function loadRightFrame()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
function loadURL(event)
|
||||
{
|
||||
var contentFrame = document.getElementById('contentFrame');
|
||||
var url = event.target.getAttribute('value');
|
||||
|
||||
if (url) contentFrame.setAttribute('src', url);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Aendert die Stundenplantabelle
|
||||
// ****
|
||||
function stpltableChange(db_stpl_table)
|
||||
{
|
||||
variableChange('db_stpl_table', null, db_stpl_table);
|
||||
return true;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Wechselt von Studiensemester 'stsem' um 'wert' Studiensemester vor bzw zurueck
|
||||
// ****
|
||||
function studiensemesterChange(stsem, wert)
|
||||
{
|
||||
if(typeof(wert)=='undefined')
|
||||
{
|
||||
wert=0;
|
||||
if(typeof(stsem)=='undefined')
|
||||
{
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].id=='menu-properies-studiensemester-name' && items[i].getAttribute("checked")=='true')
|
||||
stsem = items[i].label;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
stsem = getStudiensemester();
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'variablechange');
|
||||
req.add('stsem', stsem);
|
||||
req.add('wert', wert);
|
||||
|
||||
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
|
||||
{
|
||||
//Statusbar setzen
|
||||
document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
|
||||
document.getElementById("statusbarpanel-semester").label = val.dbdml_data;
|
||||
//Menue setzen
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].label==val.dbdml_data && items[i].id=='menu-properies-studiensemester-name')
|
||||
{
|
||||
items[i].setAttribute('checked',true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//MitarbeiterDetailStudiensemester_id = dbdml_errormsg;
|
||||
//Ansichten Refreshen
|
||||
try
|
||||
{
|
||||
StudentTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
try
|
||||
{
|
||||
LvTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet ein Fenster zum Aendern eines Variablenwertes
|
||||
// ****
|
||||
function variableChangeValue(variable)
|
||||
{
|
||||
var variablevalue = getvariable(variable);
|
||||
|
||||
if(variablevalue = prompt('Bitte geben Sie den neuen Wert fuer '+variable+' ein', variablevalue))
|
||||
{
|
||||
variableChange(variable, '', variablevalue);
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Aendert den Wert der Variable IgnoreKollision
|
||||
// ****
|
||||
function toggleIgnoreKollision()
|
||||
{
|
||||
if(getvariable('ignore_kollision')=='true')
|
||||
variableChange('ignore_kollision','menu-prefs-ignore_kollision', 'false');
|
||||
else
|
||||
variableChange('ignore_kollision','menu-prefs-ignore_kollision', 'true');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Sendet einen Request zum Aendern einer Variable
|
||||
// ****
|
||||
function variableChange(variable, id, wert)
|
||||
{
|
||||
if(id!=null)
|
||||
item = document.getElementById(id);
|
||||
|
||||
if(typeof(wert)==='undefined')
|
||||
{
|
||||
if(item.getAttribute('checked')=='true')
|
||||
checked='true';
|
||||
else
|
||||
checked='false';
|
||||
}
|
||||
else
|
||||
checked=wert;
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'variablechange');
|
||||
req.add('name', variable);
|
||||
req.add('wert', checked);
|
||||
|
||||
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
|
||||
{
|
||||
if(variable=='ignore_kollision')
|
||||
updateignorekollision();
|
||||
if(variable=='db_stpl_table')
|
||||
{
|
||||
document.getElementById("statusbarpanel-db_table").label = wert;
|
||||
updatedbstpltable();
|
||||
}
|
||||
//Statusbar setzen
|
||||
document.getElementById("statusbarpanel-text").label = "Variable erfolgreich geaendert";
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Aktualisiert die IngnoreKollision Anzeige
|
||||
// * sowohl in der Toolbar als auch im Menue
|
||||
// ****
|
||||
function updateignorekollision()
|
||||
{
|
||||
var panel = document.getElementById('statusbarpanel-ignore_kollision');
|
||||
if(getvariable('ignore_kollision')=='true')
|
||||
{
|
||||
panel.label='Kollisionscheck AUS';
|
||||
panel.style.backgroundColor='#FF0000';
|
||||
panel.style.MozAppearance = "none"
|
||||
document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','true');
|
||||
}
|
||||
else
|
||||
{
|
||||
panel.label='Kollisionscheck AN';
|
||||
panel.style.backgroundColor='';
|
||||
panel.style.MozAppearance = "none"
|
||||
document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','false');
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Markiert den Eintrag in der Statusleiste rot wenn auf die
|
||||
// * echte stpl tabelle zugegriffen wird
|
||||
// ****
|
||||
function updatedbstpltable()
|
||||
{
|
||||
var panel = document.getElementById('statusbarpanel-db_table');
|
||||
|
||||
if(panel.label=='stundenplan')
|
||||
{
|
||||
panel.style.backgroundColor='#FF0000';
|
||||
panel.style.MozAppearance = "none"
|
||||
}
|
||||
else
|
||||
{
|
||||
panel.style.backgroundColor='';
|
||||
panel.style.MozAppearance = "none"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Liefert das eingestellte Studiensemester
|
||||
// ****
|
||||
function getStudiensemesterVariable()
|
||||
{
|
||||
if(stsem = getvariable('semester_aktuell'))
|
||||
{
|
||||
//Statusbar setzen
|
||||
document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
|
||||
document.getElementById("statusbarpanel-semester").label = stsem;
|
||||
//Menue setzen
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].label==stsem && items[i].id=='menu-properies-studiensemester-name')
|
||||
{
|
||||
items[i].setAttribute('checked',true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//Ansichten Refreshen
|
||||
try
|
||||
{
|
||||
StudentTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
try
|
||||
{
|
||||
LvTreeRefresh();
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Laedt das Undo Menue Neu
|
||||
// ****
|
||||
function loadUndoList()
|
||||
{
|
||||
menu = document.getElementById('menu-edit-undo');
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
if(menuUndoDatasource==0)
|
||||
{
|
||||
//Wenn noch keine Datasource angegeben ist, dann wird eine neue hinzugefuegt
|
||||
var url = '<?php echo APP_ROOT; ?>rdf/undo.rdf.php?'+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = menu.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
menu.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
menuUndoDatasource = rdfService.GetDataSource(url);
|
||||
menuUndoDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
menu.database.AddDataSource(menuUndoDatasource);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wenn die Datasource bereits geladen wurde dann nur neu laden
|
||||
menuUndoDatasource.Refresh(true); //blocking
|
||||
menu.builder.rebuild();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Fuehrt den Undo Befehl aus
|
||||
// ****
|
||||
function UnDo(log_id, bezeichnung)
|
||||
{
|
||||
if(confirm('Wollen Sie folgenden Befehl wirklich Rueckgaengig machen: '+bezeichnung))
|
||||
{
|
||||
//Request absetzen
|
||||
var req = new phpRequest('tempusDBDML.php','','');
|
||||
|
||||
req.add('type','undo');
|
||||
req.add('log_id',log_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
alert(val.dbdml_errormsg)
|
||||
}
|
||||
else
|
||||
{
|
||||
LvTreeRefresh();
|
||||
onJumpDate(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Zeigt das Fenster zur Kollisionspruefung auf Studentenebene an
|
||||
// ****
|
||||
function KollisionStudentShow()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/stpl_benutzer_kollision_frameset.html', 'Kollision Student');
|
||||
}
|
||||
// ****
|
||||
// * Zeigt das Fenster zur LVPlanWartung
|
||||
// ****
|
||||
function LVPlanWartungShow()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/lvplanwartung.php', 'LVPLanWartung');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Zeigt das Fenster zur Kollisionspruefung mit Reservierungen
|
||||
// ****
|
||||
function ResCheckShow()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/check/res_check.php', 'KollisionReservierung');
|
||||
}
|
||||
// ****
|
||||
// * Zeigt das Fenster zur Kollisionspruefung mit Reservierungen
|
||||
// ****
|
||||
function SyncLVPlan()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT;?>vilesci/lehre/lvplan_custom_sync.php', 'LVPlan Sync');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet das Handbuch
|
||||
// ****
|
||||
function OpenManualTempus()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT ?>content/Tempus.pdf','Manual');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet den About Dialog
|
||||
// ****
|
||||
function OpenAboutDialog()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT ?>content/about.xul.php','About','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
@@ -761,14 +761,15 @@ class konto extends basis_db
|
||||
* Die Gegenbuchung wird nicht beruecksichtigt.
|
||||
* @return Anzahl der Verfuegbaren CreditPoints oder false falls unbeschraenkt
|
||||
*/
|
||||
public function getCreditPoints($uid, $studiensemester_kurzbz)
|
||||
public function getCreditPoints($prestudent_id, $studiensemester_kurzbz)
|
||||
{
|
||||
$qry = "SELECT sum(credit_points) as cp
|
||||
FROM
|
||||
public.tbl_konto
|
||||
JOIN public.tbl_benutzer USING(person_id)
|
||||
JOIN public.tbl_prestudent USING(uid)
|
||||
WHERE
|
||||
uid=".$this->db_add_param($uid)."
|
||||
prestudent_id=".$this->db_add_param($prestudent_id)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
AND buchungsnr_verweis is null
|
||||
AND credit_points is not null";
|
||||
@@ -783,7 +784,7 @@ class konto extends basis_db
|
||||
{
|
||||
// Bereits verwendete CreditPoints ermitteln
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
$verwendet = $lehrveranstaltung->getUsedECTS($uid, $studiensemester_kurzbz);
|
||||
$verwendet = $lehrveranstaltung->getUsedECTS($prestudent_id, $studiensemester_kurzbz);
|
||||
return ($creditpoints-($verwendet));
|
||||
}
|
||||
else
|
||||
|
||||
@@ -527,7 +527,7 @@ class lehrveranstaltung extends basis_db
|
||||
WHERE lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM campus.vw_student_lehrveranstaltung
|
||||
WHERE prestudent_id=" . $this->db_add_param($prestudent_id);
|
||||
if($studiensemester_kurzbz !== NULL)
|
||||
$qry .= " AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
$qry .= " AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
$qry .= ") OR lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM lehre.tbl_zeugnisnote WHERE prestudent_id=" . $this->db_add_param($prestudent_id);
|
||||
if($studiensemester_kurzbz !== NULL)
|
||||
$qry .= ' AND studiensemester_kurzbz='.$this->db_add_param ($studiensemester_kurzbz);
|
||||
@@ -1907,7 +1907,7 @@ class lehrveranstaltung extends basis_db
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
WHERE
|
||||
uid=".$this->db_add_param($uid)."
|
||||
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
UNION
|
||||
SELECT
|
||||
@@ -1939,86 +1939,83 @@ class lehrveranstaltung extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* lädt die Lehrveranstaltungen zum zugehörigen Mitarbeiter
|
||||
* @param String $uid User ID des Mitarbeiters
|
||||
* @param String $studiensemster_kurzbz Kurzbezeichnung des Studiensemesters
|
||||
*/
|
||||
public function getLVByMitarbeiter($uid, $studiensemester_kurzbz = null)
|
||||
{
|
||||
$qry = 'SELECT DISTINCT tbl_lehrveranstaltung.* FROM lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
|
||||
WHERE
|
||||
mitarbeiter_uid='.$this->db_add_param($uid);
|
||||
/**
|
||||
* lädt die Lehrveranstaltungen zum zugehörigen Mitarbeiter
|
||||
* @param String $uid User ID des Mitarbeiters
|
||||
* @param String $studiensemster_kurzbz Kurzbezeichnung des Studiensemesters
|
||||
*/
|
||||
public function getLVByMitarbeiter($uid, $studiensemester_kurzbz = null)
|
||||
{
|
||||
$qry = 'SELECT DISTINCT tbl_lehrveranstaltung.* FROM lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
|
||||
WHERE
|
||||
mitarbeiter_uid='.$this->db_add_param($uid);
|
||||
|
||||
if($studiensemester_kurzbz != null)
|
||||
{
|
||||
$qry .= ' AND tbl_lehreinheit.studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).';';
|
||||
}
|
||||
if($studiensemester_kurzbz != null)
|
||||
{
|
||||
$qry .= ' AND tbl_lehreinheit.studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).';';
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
|
||||
$lv_obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$lv_obj->studiengang_kz = $row->studiengang_kz;
|
||||
$lv_obj->bezeichnung = $row->bezeichnung;
|
||||
$lv_obj->kurzbz = $row->kurzbz;
|
||||
$lv_obj->lehrform_kurzbz = $row->lehrform_kurzbz;
|
||||
$lv_obj->semester = $row->semester;
|
||||
$lv_obj->ects = $row->ects;
|
||||
$lv_obj->semesterstunden = $row->semesterstunden;
|
||||
$lv_obj->anmerkung = $row->anmerkung;
|
||||
$lv_obj->lehre = $this->db_parse_bool($row->lehre);
|
||||
$lv_obj->lehreverzeichnis = $row->lehreverzeichnis;
|
||||
$lv_obj->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$lv_obj->ext_id = $row->ext_id;
|
||||
$lv_obj->insertamum = $row->insertamum;
|
||||
$lv_obj->insertvon = $row->insertvon;
|
||||
$lv_obj->planfaktor = $row->planfaktor;
|
||||
$lv_obj->planlektoren = $row->planlektoren;
|
||||
$lv_obj->planpersonalkosten = $row->planpersonalkosten;
|
||||
$lv_obj->plankostenprolektor = $row->plankostenprolektor;
|
||||
$lv_obj->updateamum = $row->updateamum;
|
||||
$lv_obj->updatevon = $row->updatevon;
|
||||
$lv_obj->sprache = $row->sprache;
|
||||
$lv_obj->sort = $row->sort;
|
||||
$lv_obj->incoming = $row->incoming;
|
||||
$lv_obj->zeugnis = $this->db_parse_bool($row->zeugnis);
|
||||
$lv_obj->projektarbeit = $this->db_parse_bool($row->projektarbeit);
|
||||
$lv_obj->zeugnis = $row->koordinator;
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$lv_obj->lehrtyp_kurzbz = $row->lehrtyp_kurzbz;
|
||||
$lv_obj->oe_kurzbz = $row->oe_kurzbz;
|
||||
$lv_obj->raumtyp_kurzbz = $row->raumtyp_kurzbz;
|
||||
$lv_obj->anzahlsemester = $row->anzahlsemester;
|
||||
$lv_obj->semesterwochen = $row->semesterwochen;
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
$lv_obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$lv_obj->studiengang_kz = $row->studiengang_kz;
|
||||
$lv_obj->bezeichnung = $row->bezeichnung;
|
||||
$lv_obj->kurzbz = $row->kurzbz;
|
||||
$lv_obj->lehrform_kurzbz = $row->lehrform_kurzbz;
|
||||
$lv_obj->semester = $row->semester;
|
||||
$lv_obj->ects = $row->ects;
|
||||
$lv_obj->semesterstunden = $row->semesterstunden;
|
||||
$lv_obj->anmerkung = $row->anmerkung;
|
||||
$lv_obj->lehre = $this->db_parse_bool($row->lehre);
|
||||
$lv_obj->lehreverzeichnis = $row->lehreverzeichnis;
|
||||
$lv_obj->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$lv_obj->ext_id = $row->ext_id;
|
||||
$lv_obj->insertamum = $row->insertamum;
|
||||
$lv_obj->insertvon = $row->insertvon;
|
||||
$lv_obj->planfaktor = $row->planfaktor;
|
||||
$lv_obj->planlektoren = $row->planlektoren;
|
||||
$lv_obj->planpersonalkosten = $row->planpersonalkosten;
|
||||
$lv_obj->plankostenprolektor = $row->plankostenprolektor;
|
||||
$lv_obj->updateamum = $row->updateamum;
|
||||
$lv_obj->updatevon = $row->updatevon;
|
||||
$lv_obj->sprache = $row->sprache;
|
||||
$lv_obj->sort = $row->sort;
|
||||
$lv_obj->incoming = $row->incoming;
|
||||
$lv_obj->zeugnis = $this->db_parse_bool($row->zeugnis);
|
||||
$lv_obj->projektarbeit = $this->db_parse_bool($row->projektarbeit);
|
||||
$lv_obj->zeugnis = $row->koordinator;
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$lv_obj->lehrtyp_kurzbz = $row->lehrtyp_kurzbz;
|
||||
$lv_obj->oe_kurzbz = $row->oe_kurzbz;
|
||||
$lv_obj->raumtyp_kurzbz = $row->raumtyp_kurzbz;
|
||||
$lv_obj->anzahlsemester = $row->anzahlsemester;
|
||||
$lv_obj->semesterwochen = $row->semesterwochen;
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
|
||||
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
|
||||
if ($lv_obj->bezeichnung_arr['English'] == '')
|
||||
$lv_obj->bezeichnung_arr['English'] = $lv_obj->bezeichnung_arr['German'];
|
||||
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
|
||||
if ($lv_obj->bezeichnung_arr['English'] == '')
|
||||
$lv_obj->bezeichnung_arr['English'] = $lv_obj->bezeichnung_arr['German'];
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Lehrveranstaltungen konnten nicht geladen werden.";
|
||||
}
|
||||
|
||||
}
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
$this->errormsg = "Lehrveranstaltungen konnten nicht geladen werden.";
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Studenten UIDs die die angegebenen LV besuchen (optional mit Studiensemester)
|
||||
|
||||
@@ -26,6 +26,7 @@ require_once(dirname(__FILE__).'/log.class.php');
|
||||
require_once(dirname(__FILE__).'/phrasen.class.php');
|
||||
require_once(dirname(__FILE__).'/globals.inc.php');
|
||||
require_once(dirname(__FILE__).'/sprache.class.php');
|
||||
require_once(dirname(__FILE__).'/authentication.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$lang = new sprache();
|
||||
@@ -1866,4 +1867,48 @@ class prestudent extends person
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Rolle
|
||||
*
|
||||
* @param $studiengang_kz
|
||||
* @return boolean
|
||||
*/
|
||||
public function loadActualFromStg($studiengang_kz)
|
||||
{
|
||||
|
||||
if(!is_numeric($studiengang_kz))
|
||||
{
|
||||
$this->errormsg = 'studiengang_kz ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
|
||||
$auth = new authentication();
|
||||
$uid = $auth->getUser();
|
||||
|
||||
|
||||
$qry = "SELECT prestudent_id FROM tbl_prestudent WHERE uid=".$this->db_add_param($uid)." AND studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER);
|
||||
$result = $this->db_query($qry);
|
||||
$count = $this->db_num_rows($result);
|
||||
|
||||
switch($count)
|
||||
{
|
||||
case 0:
|
||||
$this->errormsg = 'es wurde kein Prestudent gefunden';
|
||||
break;
|
||||
case 1:
|
||||
if(!$row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Ermitteln des Prestudenten';
|
||||
break;
|
||||
}
|
||||
$this->load($row->prestudent_id);
|
||||
return true;
|
||||
default:
|
||||
$this->errormsg = 'der Prestudent ist nicht eindeutig';
|
||||
break;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
+29
-29
@@ -217,36 +217,36 @@ class pruefung extends basis_db
|
||||
return false;
|
||||
}
|
||||
|
||||
if($this->new)
|
||||
{
|
||||
//Neuen Datensatz anlegen
|
||||
$qry = 'BEGIN;INSERT INTO lehre.tbl_pruefung (lehreinheit_id, prestudent_id, mitarbeiter_uid, note, pruefungstyp_kurzbz,
|
||||
datum, anmerkung, insertamum, insertvon, updateamum, updatevon, pruefungsanmeldung_id, vertrag_id, punkte) VALUES ('.
|
||||
$this->db_add_param($this->lehreinheit_id).', '.
|
||||
$this->db_add_param($this->prestudent_id).', '.
|
||||
$this->db_add_param($this->mitarbeiter_uid).', '.
|
||||
$this->db_add_param($this->note).', '.
|
||||
$this->db_add_param($this->pruefungstyp_kurzbz).', '.
|
||||
$this->db_add_param($this->datum).', '.
|
||||
$this->db_add_param($this->anmerkung).', '.
|
||||
$this->db_add_param($this->insertamum).', '.
|
||||
$this->db_add_param($this->insertvon).', '.
|
||||
$this->db_add_param($this->updateamum).', '.
|
||||
$this->db_add_param($this->updatevon).', '.
|
||||
$this->db_add_param($this->pruefungsanmeldung_id).','.
|
||||
$this->db_add_param($this->vertrag_id).','.
|
||||
$this->db_add_param($this->punkte).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
//bestehenden Datensatz akualisieren
|
||||
if($this->new)
|
||||
{
|
||||
//Neuen Datensatz anlegen
|
||||
$qry = 'BEGIN;INSERT INTO lehre.tbl_pruefung (lehreinheit_id, prestudent_id, mitarbeiter_uid, note, pruefungstyp_kurzbz,
|
||||
datum, anmerkung, insertamum, insertvon, updateamum, updatevon, pruefungsanmeldung_id, vertrag_id, punkte) VALUES ('.
|
||||
$this->db_add_param($this->lehreinheit_id).', '.
|
||||
$this->db_add_param($this->prestudent_id).', '.
|
||||
$this->db_add_param($this->mitarbeiter_uid).', '.
|
||||
$this->db_add_param($this->note).', '.
|
||||
$this->db_add_param($this->pruefungstyp_kurzbz).', '.
|
||||
$this->db_add_param($this->datum).', '.
|
||||
$this->db_add_param($this->anmerkung).', '.
|
||||
$this->db_add_param($this->insertamum).', '.
|
||||
$this->db_add_param($this->insertvon).', '.
|
||||
$this->db_add_param($this->updateamum).', '.
|
||||
$this->db_add_param($this->updatevon).', '.
|
||||
$this->db_add_param($this->pruefungsanmeldung_id).','.
|
||||
$this->db_add_param($this->vertrag_id).','.
|
||||
$this->db_add_param($this->punkte).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
//bestehenden Datensatz akualisieren
|
||||
|
||||
//Pruefen ob pruefung_id gueltig ist
|
||||
if(!is_numeric($this->pruefung_id))
|
||||
{
|
||||
$this->errormsg = 'pruefung_id ist ungueltig.';
|
||||
return false;
|
||||
}
|
||||
//Pruefen ob pruefung_id gueltig ist
|
||||
if(!is_numeric($this->pruefung_id))
|
||||
{
|
||||
$this->errormsg = 'pruefung_id ist ungueltig.';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = 'UPDATE lehre.tbl_pruefung SET '.
|
||||
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
|
||||
|
||||
@@ -583,7 +583,7 @@ class pruefungCis extends basis_db
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Lädt alle Prüfungen zur angebenen Lehrveranstaltung
|
||||
* @param String|Array $lehrveranstaltung_IDs einzelne ID einer Lehrveranstaltung oder ein Array von IDs
|
||||
|
||||
@@ -19,28 +19,30 @@
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once(dirname(__FILE__) . '/basis_db.class.php');
|
||||
|
||||
class pruefungsanmeldung extends basis_db {
|
||||
public $new;
|
||||
public $result = array();
|
||||
|
||||
public $pruefungsanmeldung_id; //bigint
|
||||
public $uid; //varchar(32)
|
||||
public $pruefungstermin_id; //bigint
|
||||
public $lehrveranstaltung_id; //bigint
|
||||
public $status_kurzbz; //varchar(32)
|
||||
public $wuensche; //text
|
||||
public $reihung; //smallint
|
||||
public $kommentar; //text
|
||||
public $statusupdatevon; //varchar(32)
|
||||
public $statusupdateamum; //timestamp
|
||||
public $anrechnung_id; //integer
|
||||
public $pruefungstyp_kurzbz; //varchar(32)
|
||||
|
||||
class pruefungsanmeldung extends basis_db
|
||||
{
|
||||
public $new;
|
||||
public $result = array();
|
||||
|
||||
public $pruefungsanmeldung_id; //bigint
|
||||
public $uid; //varchar(32)
|
||||
public $pruefungstermin_id; //bigint
|
||||
public $lehrveranstaltung_id; //bigint
|
||||
public $status_kurzbz; //varchar(32)
|
||||
public $wuensche; //text
|
||||
public $reihung; //smallint
|
||||
public $kommentar; //text
|
||||
public $statusupdatevon; //varchar(32)
|
||||
public $statusupdateamum; //timestamp
|
||||
public $anrechnung_id; //integer
|
||||
public $pruefungstyp_kurzbz; //varchar(32)
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
* @param pruefung_id ID der zu ladenden Prüfung
|
||||
@@ -170,52 +172,52 @@ class pruefungsanmeldung extends basis_db {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Prüfungsanmeldungen eines Studenten
|
||||
* @param type $uid UID eines Studenten
|
||||
* @param type $studiensemester_kurbz Filter nach Studiensemester (zB 'WS2013')
|
||||
* @param type $status_kurzbz Filter nach Status (zB 'angemeldet')
|
||||
* @return boolean|array false, bei Fehler; Array mit Anmeldungen
|
||||
*/
|
||||
public function getAnmeldungenByStudent($uid, $studiensemester_kurbz=null, $status_kurzbz=null)
|
||||
{
|
||||
$qry = 'SELECT * FROM campus.tbl_pruefungsanmeldung pa '
|
||||
. 'JOIN campus.tbl_pruefungstermin pt ON pa.pruefungstermin_id=pt.pruefungstermin_id '
|
||||
. 'JOIN campus.tbl_pruefung p ON p.pruefung_id=pt.pruefung_id '
|
||||
. 'WHERE uid='.$this->db_add_param($uid).';';
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
$this->errormsg = 'Anmeldungen konnten nicht geladen werden.';
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$anmeldungen = array();
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$anmeldung = new stdClass();
|
||||
$anmeldung->pruefungsanmeldung_id = $row->pruefungsanmeldung_id;
|
||||
$anmeldung->uid = $row->uid;
|
||||
$anmeldung->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$anmeldung->status_kurzbz = $row->status_kurzbz;
|
||||
$anmeldung->pruefungstermin_id = $row->pruefungstermin_id;
|
||||
$anmeldung->pruefung_id = $row->pruefung_id;
|
||||
$anmeldung->von = $row->von;
|
||||
$anmeldung->bis = $row->bis;
|
||||
$anmeldung->reihung = $row->reihung;
|
||||
$anmeldung->wuensche = $row->wuensche;
|
||||
$anmeldung->kommentar = $row->kommentar;
|
||||
$anmeldung->statusupdateamum = $row->statusupdateamum;
|
||||
$anmeldung->statusupdatevon = $row->statusupdatevon;
|
||||
$anmeldung->anrechnung_id = $row->anrechnung_id;
|
||||
$anmeldung->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
|
||||
array_push($anmeldungen, $anmeldung);
|
||||
}
|
||||
return $anmeldungen;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Prüfungsanmeldungen eines Studenten
|
||||
* @param type $uid UID eines Studenten
|
||||
* @param type $studiensemester_kurbz Filter nach Studiensemester (zB 'WS2013')
|
||||
* @param type $status_kurzbz Filter nach Status (zB 'angemeldet')
|
||||
* @return boolean|array false, bei Fehler; Array mit Anmeldungen
|
||||
*/
|
||||
public function getAnmeldungenByStudent($uid, $studiensemester_kurbz=null, $status_kurzbz=null)
|
||||
{
|
||||
$qry = 'SELECT * FROM campus.tbl_pruefungsanmeldung pa '
|
||||
. 'JOIN campus.tbl_pruefungstermin pt ON pa.pruefungstermin_id=pt.pruefungstermin_id '
|
||||
. 'JOIN campus.tbl_pruefung p ON p.pruefung_id=pt.pruefung_id '
|
||||
. 'WHERE uid='.$this->db_add_param($uid).';';
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
$this->errormsg = 'Anmeldungen konnten nicht geladen werden.';
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$anmeldungen = array();
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$anmeldung = new stdClass();
|
||||
$anmeldung->pruefungsanmeldung_id = $row->pruefungsanmeldung_id;
|
||||
$anmeldung->uid = $row->uid;
|
||||
$anmeldung->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$anmeldung->status_kurzbz = $row->status_kurzbz;
|
||||
$anmeldung->pruefungstermin_id = $row->pruefungstermin_id;
|
||||
$anmeldung->pruefung_id = $row->pruefung_id;
|
||||
$anmeldung->von = $row->von;
|
||||
$anmeldung->bis = $row->bis;
|
||||
$anmeldung->reihung = $row->reihung;
|
||||
$anmeldung->wuensche = $row->wuensche;
|
||||
$anmeldung->kommentar = $row->kommentar;
|
||||
$anmeldung->statusupdateamum = $row->statusupdateamum;
|
||||
$anmeldung->statusupdatevon = $row->statusupdatevon;
|
||||
$anmeldung->anrechnung_id = $row->anrechnung_id;
|
||||
$anmeldung->pruefungstyp_kurzbz = $row->pruefungstyp_kurzbz;
|
||||
array_push($anmeldungen, $anmeldung);
|
||||
}
|
||||
return $anmeldungen;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Anmeldungen eines Prüfungstermins
|
||||
@@ -276,33 +278,33 @@ class pruefungsanmeldung extends basis_db {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Löscht eine Prüfungsanmeldung
|
||||
* @param type $pruefungsanmeldung_id ID der Prüfungsanmeldung
|
||||
* @param type $uid UID eines Studenten
|
||||
* @return boolean true, wenn ok; false im Fehlerfall
|
||||
*/
|
||||
public function delete($pruefungsanmeldung_id, $uid=null)
|
||||
{
|
||||
$qry = 'DELETE FROM campus.tbl_pruefungsanmeldung WHERE pruefungsanmeldung_id='.$this->db_add_param($pruefungsanmeldung_id);
|
||||
|
||||
if(!is_null($uid))
|
||||
/**
|
||||
* Löscht eine Prüfungsanmeldung
|
||||
* @param type $pruefungsanmeldung_id ID der Prüfungsanmeldung
|
||||
* @param type $uid UID eines Studenten
|
||||
* @return boolean true, wenn ok; false im Fehlerfall
|
||||
*/
|
||||
public function delete($pruefungsanmeldung_id, $uid=null)
|
||||
{
|
||||
$qry .= ' AND uid='.$this->db_add_param($uid);
|
||||
$qry = 'DELETE FROM campus.tbl_pruefungsanmeldung WHERE pruefungsanmeldung_id='.$this->db_add_param($pruefungsanmeldung_id);
|
||||
|
||||
if(!is_null($uid))
|
||||
{
|
||||
$qry .= ' AND uid='.$this->db_add_param($uid);
|
||||
}
|
||||
|
||||
$qry .= ' ;';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Anmeldung konnte nicht gelöscht werden.';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
$qry .= ' ;';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Anmeldung konnte nicht gelöscht werden.';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* speichert die Reihung eines Anmeldungstermins
|
||||
@@ -342,26 +344,26 @@ class pruefungsanmeldung extends basis_db {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Ändert den Status einer Prüfungsanmeldung
|
||||
* @param type $pruefungsanmeldung_id ID der Prüfungsanmeldung
|
||||
* @param type $status Status auf den geändert werden soll
|
||||
* @return boolean true, wenn ok; false, im Fehlerfall
|
||||
*/
|
||||
public function changeState($pruefungsanmeldung_id, $status, $user)
|
||||
{
|
||||
$qry = 'UPDATE campus.tbl_pruefungsanmeldung SET '
|
||||
. 'status_kurzbz='.$this->db_add_param($status).', '
|
||||
. 'statusupdatevon='.$this->db_add_param($user).', '
|
||||
. 'statusupdateamum=NOW() '
|
||||
. ' WHERE pruefungsanmeldung_id='.$this->db_add_param($pruefungsanmeldung_id).';';
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
|
||||
/**
|
||||
* Ändert den Status einer Prüfungsanmeldung
|
||||
* @param type $pruefungsanmeldung_id ID der Prüfungsanmeldung
|
||||
* @param type $status Status auf den geändert werden soll
|
||||
* @return boolean true, wenn ok; false, im Fehlerfall
|
||||
*/
|
||||
public function changeState($pruefungsanmeldung_id, $status, $user)
|
||||
{
|
||||
$this->errormsg = 'Status konnte nicht geändert werden.';
|
||||
return false;
|
||||
$qry = 'UPDATE campus.tbl_pruefungsanmeldung SET '
|
||||
. 'status_kurzbz='.$this->db_add_param($status).', '
|
||||
. 'statusupdatevon='.$this->db_add_param($user).', '
|
||||
. 'statusupdateamum=NOW() '
|
||||
. ' WHERE pruefungsanmeldung_id='.$this->db_add_param($pruefungsanmeldung_id).';';
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
$this->errormsg = 'Status konnte nicht geändert werden.';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,6 +46,12 @@ require_once('../../include/pdf/fpdf.php');
|
||||
require_once('../../include/pdf.inc.php');
|
||||
|
||||
$getuid=get_uid();
|
||||
/*TODO EINE
|
||||
auf etwa zeile 720: public.tbl_prestudent.uid
|
||||
sollte wohl eher auf die prestudent_id eingeschränkt werden!
|
||||
dazu müsste diese hier mit perstudent->loadActualFromStg($stg_kz) geladen werden
|
||||
hierfür wiederum müsste man hier die stg_kz übergeben
|
||||
*/
|
||||
$datum_obj = new datum();
|
||||
$htmlstr = "";
|
||||
$qualitaet='';
|
||||
|
||||
@@ -323,7 +323,7 @@ if ($xmlformat=='rdf')
|
||||
<RDF:li>
|
||||
<RDF:Description id="'.$row->abschlusspruefung_id.'" about="'.$rdf_url.'/'.$row->abschlusspruefung_id.'" >
|
||||
<ABSCHLUSSPRUEFUNG:abschlusspruefung_id><![CDATA['.$row->abschlusspruefung_id.']]></ABSCHLUSSPRUEFUNG:abschlusspruefung_id>
|
||||
<ABSCHLUSSPRUEFUNG:student_uid><![CDATA['.$row->student_uid.']]></ABSCHLUSSPRUEFUNG:student_uid>
|
||||
<ABSCHLUSSPRUEFUNG:prestudent_id><![CDATA['.$row->prestudent_id.']]></ABSCHLUSSPRUEFUNG:prestudent_id>
|
||||
<ABSCHLUSSPRUEFUNG:vorsitz><![CDATA['.$row->vorsitz.']]></ABSCHLUSSPRUEFUNG:vorsitz>
|
||||
<ABSCHLUSSPRUEFUNG:vorsitz_nachname><![CDATA['.$vorsitz.']]></ABSCHLUSSPRUEFUNG:vorsitz_nachname>
|
||||
<ABSCHLUSSPRUEFUNG:pruefer1><![CDATA['.$row->pruefer1.']]></ABSCHLUSSPRUEFUNG:pruefer1>
|
||||
|
||||
+392
-391
@@ -1,391 +1,392 @@
|
||||
<?php
|
||||
/* Copyright (C) 2013 FH fhcomplete.org
|
||||
*
|
||||
* 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: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Karl Burkhart <burkhart@technikum-wien.at>
|
||||
* Manfred Kindl <manfred.kindl@technikum-wien.at>
|
||||
*/
|
||||
header("Content-type: application/xhtml+xml");
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
require_once('../include/adresse.class.php');
|
||||
require_once('../include/lehrveranstaltung.class.php');
|
||||
require_once('../include/akadgrad.class.php');
|
||||
require_once('../include/studiensemester.class.php');
|
||||
require_once('../include/nation.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
|
||||
$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null);
|
||||
$prestudent_arr = (isset($_REQUEST['prestudent_id'])?$_REQUEST['prestudent_id']:null);
|
||||
|
||||
$uid_arr = explode(";",$uid_arr);
|
||||
$prestudent_arr = explode(";",$prestudent_arr);
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
echo "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>\n";
|
||||
echo "<ausbildungsvertraege>\n";
|
||||
|
||||
$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0];
|
||||
|
||||
$student_help = new student();
|
||||
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
|
||||
if($student_help->load($uid))
|
||||
{
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($student_help->studiengang_kz);
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
}
|
||||
|
||||
foreach($uid_arr as $uid)
|
||||
{
|
||||
if($uid=='')
|
||||
continue;
|
||||
|
||||
echo "\t<ausbildungsvertrag>\n";
|
||||
|
||||
$student = new student();
|
||||
if($student->load($uid))
|
||||
{
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($student->studiengang_kz);
|
||||
$staatsbuergerschaft = new nation();
|
||||
$staatsbuergerschaft->load($student->staatsbuergerschaft);
|
||||
|
||||
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
|
||||
|
||||
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
|
||||
if ($studiengang->studiengang_kz<0)
|
||||
{
|
||||
$stg = new studiengang();
|
||||
$stg->load($studiengang->studiengang_kz);
|
||||
|
||||
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
}
|
||||
else
|
||||
$studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
|
||||
echo "\t\t<quote>1</quote>\n";
|
||||
echo "\t\t<anrede>".$student->anrede."</anrede>\n";
|
||||
echo "\t\t<vorname>".$student->vorname." ".$student->vornamen."</vorname>\n";
|
||||
echo "\t\t<vornamen>".$student->vornamen."</vornamen>\n";
|
||||
echo "\t\t<nachname>".$student->nachname."</nachname>\n";
|
||||
echo "\t\t<titelpre>".$student->titelpre."</titelpre>\n";
|
||||
echo "\t\t<titelpost>".$student->titelpost."</titelpost>\n";
|
||||
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
|
||||
echo "\t\t<gebort>".$student->gebort."</gebort>\n";
|
||||
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
|
||||
echo "\t\t<svnr>".$svnr."</svnr>\n";
|
||||
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
|
||||
echo "\t\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
|
||||
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
|
||||
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
|
||||
|
||||
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
|
||||
|
||||
// check ob Quereinsteiger
|
||||
$prestudent = new prestudent();
|
||||
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'1';
|
||||
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
|
||||
|
||||
$studiensemester_beginn = new studiensemester();
|
||||
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
|
||||
$studiensemester_beginn->load($studienbeginn);
|
||||
|
||||
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
|
||||
|
||||
$studiensemester_endedatum = new studiensemester();
|
||||
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
|
||||
|
||||
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
|
||||
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
|
||||
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
|
||||
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t\t<studiengang_sprache>".$studiengang->sprache."</studiengang_sprache>\n";
|
||||
echo "\t\t<studiengang_maxsemester>".$studiengang->max_semester."</studiengang_maxsemester>\n";
|
||||
echo "\t\t<studiengang_anzahljahre>".($studiengang->max_semester/2)."</studiengang_anzahljahre>\n";
|
||||
|
||||
//Wenn Quereinsteiger stimmt studiengang_maxsemester nicht mit der tatsaechlichen Ausbildungsdauer ueberein
|
||||
$student_maxsemester = ($studiengang->max_semester-$ausbildungssemester)+1;
|
||||
echo "\t\t<student_maxsemester>".$student_maxsemester."</student_maxsemester>\n";
|
||||
echo "\t\t<student_anzahljahre>".($student_maxsemester/2)."</student_anzahljahre>\n";
|
||||
|
||||
$akadgrad = new akadgrad();
|
||||
$akadgrad->getAkadgradStudent($student->uid);
|
||||
|
||||
echo "\t\t<akadgrad>".$akadgrad->titel."</akadgrad>\n";
|
||||
echo "\t\t<akadgrad_kurzbz>".$akadgrad->akadgrad_kurzbz."</akadgrad_kurzbz>\n";
|
||||
|
||||
//für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen
|
||||
$lv_studiengang_kz='';
|
||||
$lv_studiengang_bezeichnung='';
|
||||
$lv_studiengang_typ='';
|
||||
|
||||
$stg_typ=new studiengang();
|
||||
$lv=new lehrveranstaltung();
|
||||
$lv->load_lva_student($student->uid);
|
||||
if(count($lv->lehrveranstaltungen)>0)
|
||||
{
|
||||
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
|
||||
$lv_studiengang=new studiengang();
|
||||
$lv_studiengang->load($lv_studiengang_kz);
|
||||
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
|
||||
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
|
||||
$lv_studiengang_typ=$stg_typ->bezeichnung;
|
||||
}
|
||||
|
||||
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
|
||||
echo "\t\t<lv_studiengang_typ>$lv_studiengang_typ</lv_studiengang_typ>";
|
||||
echo "\t\t<lv_studiengang_bezeichnung>$lv_studiengang_bezeichnung</lv_studiengang_bezeichnung>";
|
||||
|
||||
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
|
||||
|
||||
$adresse = new adresse();
|
||||
$adresse->load_pers($student->person_id);
|
||||
|
||||
foreach($adresse->result as $row_adresse)
|
||||
{
|
||||
if($row_adresse->zustelladresse)
|
||||
{
|
||||
echo "\t\t<strasse>".$row_adresse->strasse."</strasse>\n";
|
||||
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
|
||||
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
|
||||
break;
|
||||
}
|
||||
}
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
|
||||
|
||||
if($prestudent->orgform_kurzbz!='')
|
||||
$orgform = $prestudent->orgform_kurzbz;
|
||||
else
|
||||
$orgform = $studiengang->orgform_kurzbz;
|
||||
echo "\t\t<orgform>".$orgform."</orgform>\n";
|
||||
}
|
||||
echo "\t</ausbildungsvertrag>\n";
|
||||
}
|
||||
|
||||
/////
|
||||
// Wenn auch PrestudentIDs uebergeben werden
|
||||
/////
|
||||
$prest_id = isset($prestudent_arr[1])?$prestudent_arr[1]:$prestudent_arr[0];
|
||||
|
||||
$prestudent_help = new prestudent();
|
||||
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
|
||||
if($prestudent_help->load($prest_id))
|
||||
{
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($prestudent_help->studiengang_kz);
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
}
|
||||
|
||||
foreach($prestudent_arr as $prest_id)
|
||||
{
|
||||
if($prest_id=='')
|
||||
continue;
|
||||
|
||||
echo "\t<ausbildungsvertrag>\n";
|
||||
|
||||
$prestudent = new prestudent();
|
||||
if($prestudent->load($prest_id))
|
||||
{
|
||||
$person = new person();
|
||||
if($person->load($prestudent->person_id))
|
||||
{
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$gebdatum = date('d.m.Y',strtotime($person->gebdatum));
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($prestudent->studiengang_kz);
|
||||
$staatsbuergerschaft = new nation();
|
||||
$staatsbuergerschaft->load($person->staatsbuergerschaft);
|
||||
|
||||
$svnr = ($person->svnr == '')?($person->ersatzkennzeichen != ''?'Ersatzkennzeichen: '.$person->ersatzkennzeichen:''):$person->svnr;
|
||||
|
||||
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
|
||||
if ($studiengang->studiengang_kz<0)
|
||||
{
|
||||
$stg = new studiengang();
|
||||
$stg->load($studiengang->studiengang_kz);
|
||||
|
||||
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
}
|
||||
else
|
||||
$studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
|
||||
echo "\t\t<quote>1</quote>\n";
|
||||
echo "\t\t<anrede>".$person->anrede."</anrede>\n";
|
||||
echo "\t\t<vorname>".$person->vorname." ".$person->vornamen."</vorname>\n";
|
||||
echo "\t\t<vornamen>".$person->vornamen."</vornamen>\n";
|
||||
echo "\t\t<nachname>".$person->nachname."</nachname>\n";
|
||||
echo "\t\t<titelpre>".$person->titelpre."</titelpre>\n";
|
||||
echo "\t\t<titelpost>".$person->titelpost."</titelpost>\n";
|
||||
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
|
||||
echo "\t\t<gebort>".$person->gebort."</gebort>\n";
|
||||
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
|
||||
echo "\t\t<svnr>".$svnr."</svnr>\n";
|
||||
echo "\t\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
|
||||
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
|
||||
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
|
||||
|
||||
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
|
||||
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
|
||||
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
|
||||
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t\t<studiengang_sprache>".$studiengang->sprache."</studiengang_sprache>\n";
|
||||
echo "\t\t<studiengang_maxsemester>".$studiengang->max_semester."</studiengang_maxsemester>\n";
|
||||
echo "\t\t<studiengang_anzahljahre>".($studiengang->max_semester/2)."</studiengang_anzahljahre>\n";
|
||||
|
||||
|
||||
//Bis die Akadgrad-Tabelle an die Studienordnung angepasst ist, wird der Akadgrad hier ermittelt
|
||||
|
||||
$akadgrad_titel = '';
|
||||
$akadgrad_kurzbz = '';
|
||||
|
||||
$qry = "SELECT * FROM lehre.tbl_akadgrad
|
||||
WHERE studiengang_kz=".$db->db_add_param($studiengang->studiengang_kz, FHC_INTEGER)."
|
||||
AND (geschlecht=".$db->db_add_param($person->geschlecht, FHC_STRING)." OR geschlecht IS NULL)
|
||||
LIMIT 1";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object())
|
||||
{
|
||||
$akadgrad_titel = $row->titel;
|
||||
$akadgrad_kurzbz = $row->akadgrad_kurzbz;
|
||||
}
|
||||
}
|
||||
|
||||
echo "\t\t<akadgrad>".$akadgrad_titel."</akadgrad>\n";
|
||||
echo "\t\t<akadgrad_kurzbz>".$akadgrad_kurzbz."</akadgrad_kurzbz>\n";
|
||||
|
||||
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
|
||||
|
||||
$adresse = new adresse();
|
||||
$adresse->load_pers($person->person_id);
|
||||
|
||||
foreach($adresse->result as $row_adresse)
|
||||
{
|
||||
if($row_adresse->zustelladresse)
|
||||
{
|
||||
echo "\t\t<strasse>".$row_adresse->strasse."</strasse>\n";
|
||||
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
|
||||
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
|
||||
break;
|
||||
}
|
||||
}
|
||||
$prestudent_orgform = new prestudent();
|
||||
$prestudent_orgform->getLastStatus($prest_id, null, null);
|
||||
|
||||
if($prestudent_orgform->orgform_kurzbz!='')
|
||||
$orgform = $prestudent_orgform->orgform_kurzbz;
|
||||
else
|
||||
$orgform = $studiengang->orgform_kurzbz;
|
||||
|
||||
echo "\t\t<orgform>".$orgform."</orgform>\n";
|
||||
|
||||
$ausbildungssemester = ($prestudent_orgform->ausbildungssemester!='')?$prestudent_orgform->ausbildungssemester:'1';
|
||||
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
|
||||
}
|
||||
}
|
||||
echo "\t</ausbildungsvertrag>\n";
|
||||
}
|
||||
echo "</ausbildungsvertraege>";
|
||||
|
||||
?>
|
||||
<?php
|
||||
/* Copyright (C) 2013 FH fhcomplete.org
|
||||
*
|
||||
* 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: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Karl Burkhart <burkhart@technikum-wien.at>,
|
||||
* Manfred Kindl <manfred.kindl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
header("Content-type: application/xhtml+xml");
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
require_once('../include/adresse.class.php');
|
||||
require_once('../include/lehrveranstaltung.class.php');
|
||||
require_once('../include/akadgrad.class.php');
|
||||
require_once('../include/studiensemester.class.php');
|
||||
require_once('../include/nation.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
|
||||
$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null);
|
||||
$prestudent_arr = (isset($_REQUEST['prestudent_id'])?$_REQUEST['prestudent_id']:null);
|
||||
|
||||
$uid_arr = explode(";",$uid_arr);
|
||||
$prestudent_arr = explode(";",$prestudent_arr);
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
echo "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>\n";
|
||||
echo "<ausbildungsvertraege>\n";
|
||||
|
||||
$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0];
|
||||
|
||||
$student_help = new student();
|
||||
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
|
||||
if($student_help->load($uid))
|
||||
{
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($student_help->studiengang_kz);
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
}
|
||||
|
||||
foreach($uid_arr as $uid)
|
||||
{
|
||||
if($uid=='')
|
||||
continue;
|
||||
|
||||
echo "\t<ausbildungsvertrag>\n";
|
||||
|
||||
$student = new student();
|
||||
if($student->load($uid))
|
||||
{
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($student->studiengang_kz);
|
||||
$staatsbuergerschaft = new nation();
|
||||
$staatsbuergerschaft->load($student->staatsbuergerschaft);
|
||||
|
||||
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
|
||||
|
||||
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
|
||||
if ($studiengang->studiengang_kz<0)
|
||||
{
|
||||
$stg = new studiengang();
|
||||
$stg->load($studiengang->studiengang_kz);
|
||||
|
||||
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
}
|
||||
else
|
||||
$studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
|
||||
echo "\t\t<quote>1</quote>\n";
|
||||
echo "\t\t<anrede>".$student->anrede."</anrede>\n";
|
||||
echo "\t\t<vorname>".$student->vorname." ".$student->vornamen."</vorname>\n";
|
||||
echo "\t\t<vornamen>".$student->vornamen."</vornamen>\n";
|
||||
echo "\t\t<nachname>".$student->nachname."</nachname>\n";
|
||||
echo "\t\t<titelpre>".$student->titelpre."</titelpre>\n";
|
||||
echo "\t\t<titelpost>".$student->titelpost."</titelpost>\n";
|
||||
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
|
||||
echo "\t\t<gebort>".$student->gebort."</gebort>\n";
|
||||
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
|
||||
echo "\t\t<svnr>".$svnr."</svnr>\n";
|
||||
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
|
||||
echo "\t\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
|
||||
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
|
||||
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
|
||||
|
||||
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
|
||||
|
||||
// check ob Quereinsteiger
|
||||
$prestudent = new prestudent();
|
||||
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'1';
|
||||
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
|
||||
|
||||
$studiensemester_beginn = new studiensemester();
|
||||
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
|
||||
$studiensemester_beginn->load($studienbeginn);
|
||||
|
||||
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
|
||||
|
||||
$studiensemester_endedatum = new studiensemester();
|
||||
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
|
||||
|
||||
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
|
||||
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
|
||||
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
|
||||
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t\t<studiengang_sprache>".$studiengang->sprache."</studiengang_sprache>\n";
|
||||
echo "\t\t<studiengang_maxsemester>".$studiengang->max_semester."</studiengang_maxsemester>\n";
|
||||
echo "\t\t<studiengang_anzahljahre>".($studiengang->max_semester/2)."</studiengang_anzahljahre>\n";
|
||||
|
||||
//Wenn Quereinsteiger stimmt studiengang_maxsemester nicht mit der tatsaechlichen Ausbildungsdauer ueberein
|
||||
$student_maxsemester = ($studiengang->max_semester-$ausbildungssemester)+1;
|
||||
echo "\t\t<student_maxsemester>".$student_maxsemester."</student_maxsemester>\n";
|
||||
echo "\t\t<student_anzahljahre>".($student_maxsemester/2)."</student_anzahljahre>\n";
|
||||
|
||||
$akadgrad = new akadgrad();
|
||||
$akadgrad->getAkadgradStudent($student->uid);
|
||||
|
||||
echo "\t\t<akadgrad>".$akadgrad->titel."</akadgrad>\n";
|
||||
echo "\t\t<akadgrad_kurzbz>".$akadgrad->akadgrad_kurzbz."</akadgrad_kurzbz>\n";
|
||||
|
||||
//für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen
|
||||
$lv_studiengang_kz='';
|
||||
$lv_studiengang_bezeichnung='';
|
||||
$lv_studiengang_typ='';
|
||||
|
||||
$stg_typ=new studiengang();
|
||||
$lv=new lehrveranstaltung();
|
||||
$lv->load_lva_student($student->prestudent_id);
|
||||
if(count($lv->lehrveranstaltungen)>0)
|
||||
{
|
||||
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
|
||||
$lv_studiengang=new studiengang();
|
||||
$lv_studiengang->load($lv_studiengang_kz);
|
||||
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
|
||||
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
|
||||
$lv_studiengang_typ=$stg_typ->bezeichnung;
|
||||
}
|
||||
|
||||
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
|
||||
echo "\t\t<lv_studiengang_typ>$lv_studiengang_typ</lv_studiengang_typ>";
|
||||
echo "\t\t<lv_studiengang_bezeichnung>$lv_studiengang_bezeichnung</lv_studiengang_bezeichnung>";
|
||||
|
||||
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
|
||||
|
||||
$adresse = new adresse();
|
||||
$adresse->load_pers($student->person_id);
|
||||
|
||||
foreach($adresse->result as $row_adresse)
|
||||
{
|
||||
if($row_adresse->zustelladresse)
|
||||
{
|
||||
echo "\t\t<strasse>".$row_adresse->strasse."</strasse>\n";
|
||||
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
|
||||
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
|
||||
break;
|
||||
}
|
||||
}
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
|
||||
|
||||
if($prestudent->orgform_kurzbz!='')
|
||||
$orgform = $prestudent->orgform_kurzbz;
|
||||
else
|
||||
$orgform = $studiengang->orgform_kurzbz;
|
||||
echo "\t\t<orgform>".$orgform."</orgform>\n";
|
||||
}
|
||||
echo "\t</ausbildungsvertrag>\n";
|
||||
}
|
||||
|
||||
/////
|
||||
// Wenn auch PrestudentIDs uebergeben werden
|
||||
/////
|
||||
$prest_id = isset($prestudent_arr[1])?$prestudent_arr[1]:$prestudent_arr[0];
|
||||
|
||||
$prestudent_help = new prestudent();
|
||||
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
|
||||
if($prestudent_help->load($prest_id))
|
||||
{
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($prestudent_help->studiengang_kz);
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
}
|
||||
|
||||
foreach($prestudent_arr as $prest_id)
|
||||
{
|
||||
if($prest_id=='')
|
||||
continue;
|
||||
|
||||
echo "\t<ausbildungsvertrag>\n";
|
||||
|
||||
$prestudent = new prestudent();
|
||||
if($prestudent->load($prest_id))
|
||||
{
|
||||
$person = new person();
|
||||
if($person->load($prestudent->person_id))
|
||||
{
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$gebdatum = date('d.m.Y',strtotime($person->gebdatum));
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($prestudent->studiengang_kz);
|
||||
$staatsbuergerschaft = new nation();
|
||||
$staatsbuergerschaft->load($person->staatsbuergerschaft);
|
||||
|
||||
$svnr = ($person->svnr == '')?($person->ersatzkennzeichen != ''?'Ersatzkennzeichen: '.$person->ersatzkennzeichen:''):$person->svnr;
|
||||
|
||||
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
|
||||
if ($studiengang->studiengang_kz<0)
|
||||
{
|
||||
$stg = new studiengang();
|
||||
$stg->load($studiengang->studiengang_kz);
|
||||
|
||||
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
}
|
||||
else
|
||||
$studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz));
|
||||
|
||||
echo "\t\t<quote>1</quote>\n";
|
||||
echo "\t\t<anrede>".$person->anrede."</anrede>\n";
|
||||
echo "\t\t<vorname>".$person->vorname." ".$person->vornamen."</vorname>\n";
|
||||
echo "\t\t<vornamen>".$person->vornamen."</vornamen>\n";
|
||||
echo "\t\t<nachname>".$person->nachname."</nachname>\n";
|
||||
echo "\t\t<titelpre>".$person->titelpre."</titelpre>\n";
|
||||
echo "\t\t<titelpost>".$person->titelpost."</titelpost>\n";
|
||||
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
|
||||
echo "\t\t<gebort>".$person->gebort."</gebort>\n";
|
||||
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
|
||||
echo "\t\t<svnr>".$svnr."</svnr>\n";
|
||||
echo "\t\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
|
||||
echo "\t\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
|
||||
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
|
||||
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
|
||||
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
|
||||
|
||||
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
|
||||
|
||||
switch($studiengang->typ)
|
||||
{
|
||||
case 'b':
|
||||
$studTyp = 'Bachelor';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$studTyp = 'Master';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$studTyp = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$studTyp ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
|
||||
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
|
||||
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
|
||||
echo "\t\t<studiengang_sprache>".$studiengang->sprache."</studiengang_sprache>\n";
|
||||
echo "\t\t<studiengang_maxsemester>".$studiengang->max_semester."</studiengang_maxsemester>\n";
|
||||
echo "\t\t<studiengang_anzahljahre>".($studiengang->max_semester/2)."</studiengang_anzahljahre>\n";
|
||||
|
||||
|
||||
//Bis die Akadgrad-Tabelle an die Studienordnung angepasst ist, wird der Akadgrad hier ermittelt
|
||||
|
||||
$akadgrad_titel = '';
|
||||
$akadgrad_kurzbz = '';
|
||||
|
||||
$qry = "SELECT * FROM lehre.tbl_akadgrad
|
||||
WHERE studiengang_kz=".$db->db_add_param($studiengang->studiengang_kz, FHC_INTEGER)."
|
||||
AND (geschlecht=".$db->db_add_param($person->geschlecht, FHC_STRING)." OR geschlecht IS NULL)
|
||||
LIMIT 1";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object())
|
||||
{
|
||||
$akadgrad_titel = $row->titel;
|
||||
$akadgrad_kurzbz = $row->akadgrad_kurzbz;
|
||||
}
|
||||
}
|
||||
|
||||
echo "\t\t<akadgrad>".$akadgrad_titel."</akadgrad>\n";
|
||||
echo "\t\t<akadgrad_kurzbz>".$akadgrad_kurzbz."</akadgrad_kurzbz>\n";
|
||||
|
||||
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
|
||||
|
||||
$adresse = new adresse();
|
||||
$adresse->load_pers($person->person_id);
|
||||
|
||||
foreach($adresse->result as $row_adresse)
|
||||
{
|
||||
if($row_adresse->zustelladresse)
|
||||
{
|
||||
echo "\t\t<strasse>".$row_adresse->strasse."</strasse>\n";
|
||||
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
|
||||
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
|
||||
break;
|
||||
}
|
||||
}
|
||||
$prestudent_orgform = new prestudent();
|
||||
$prestudent_orgform->getLastStatus($prest_id, null, null);
|
||||
|
||||
if($prestudent_orgform->orgform_kurzbz!='')
|
||||
$orgform = $prestudent_orgform->orgform_kurzbz;
|
||||
else
|
||||
$orgform = $studiengang->orgform_kurzbz;
|
||||
|
||||
echo "\t\t<orgform>".$orgform."</orgform>\n";
|
||||
|
||||
$ausbildungssemester = ($prestudent_orgform->ausbildungssemester!='')?$prestudent_orgform->ausbildungssemester:'1';
|
||||
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
|
||||
}
|
||||
}
|
||||
echo "\t</ausbildungsvertrag>\n";
|
||||
}
|
||||
echo "</ausbildungsvertraege>";
|
||||
|
||||
?>
|
||||
|
||||
@@ -17,8 +17,9 @@
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at>.
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
// header für no cache
|
||||
header("Cache-Control: no-cache");
|
||||
@@ -160,4 +161,4 @@ function draw_row($row)
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
</RDF:RDF>
|
||||
|
||||
@@ -36,6 +36,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/lehrveranstaltung.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
|
||||
$uid=get_uid();
|
||||
|
||||
@@ -73,7 +74,11 @@ else
|
||||
$lehrveranstaltung=new lehrveranstaltung();
|
||||
|
||||
if($student_uid!='')
|
||||
$lehrveranstaltung->load_lva_student($student_uid);
|
||||
{
|
||||
//TODO EINE
|
||||
$student = new student($student_uid);
|
||||
$lehrveranstaltung->load_lva_student($student->prestudent_id);
|
||||
}
|
||||
elseif($lehrveranstaltung_kompatibel_id!='')
|
||||
{
|
||||
// Laedt die Lehrveranstaltung und alle die dazu kompatibel sind
|
||||
|
||||
@@ -42,9 +42,9 @@ if(!$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('admin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
if(!isset($_GET['prestudent_id']))
|
||||
die('Es wurde keine prestudent_id übergeben!');
|
||||
|
||||
$prestudent_id = $_GET["prestudent_id"];
|
||||
$prestudent_id = "";
|
||||
else
|
||||
$prestudent_id = $_GET["prestudent_id"];
|
||||
|
||||
|
||||
if(isset($_GET['pruefung_id']))
|
||||
|
||||
+1
-1
@@ -760,7 +760,7 @@ else
|
||||
$lv_studiengang_art='';
|
||||
|
||||
$lv=new lehrveranstaltung();
|
||||
$lv->load_lva_student($student->uid);
|
||||
$lv->load_lva_student($student->prestudent_id);
|
||||
if(count($lv->lehrveranstaltungen)>0)
|
||||
{
|
||||
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
|
||||
|
||||
@@ -15,9 +15,10 @@
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Karl Burkhart <burkhart@technikum-wien.at>
|
||||
* Manfred Kindl <kindlm@technikum-wien.at>
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Karl Burkhart <burkhart@technikum-wien.at>,
|
||||
* Manfred Kindl <manfred.kindl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
header("Content-type: application/xhtml+xml");
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
@@ -264,7 +265,7 @@ foreach($uid_arr as $uid)
|
||||
|
||||
$stg_typ=new studiengang();
|
||||
$lv=new lehrveranstaltung();
|
||||
$lv->load_lva_student($student->uid);
|
||||
$lv->load_lva_student($student->prestudent_id);
|
||||
if(count($lv->lehrveranstaltungen)>0)
|
||||
{
|
||||
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
|
||||
@@ -337,4 +338,4 @@ foreach($uid_arr as $uid)
|
||||
}
|
||||
echo "</studienblaetter>";
|
||||
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -1163,7 +1163,7 @@ $qry="SELECT *, tbl_lehreinheit.studiensemester_kurzbz, tbl_projektarbeit.prestu
|
||||
JOIN lehre.tbl_lehrveranstaltung ON(tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
|
||||
JOIN public.tbl_fachbereich ON(lehrfach.oe_kurzbz=tbl_fachbereich.oe_kurzbz)
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_lehreinheit.studiensemester_kurzbz AND tbl_projektarbeit.student_uid=tbl_zeugnisnote.student_uid)
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_lehreinheit.studiensemester_kurzbz AND tbl_projektarbeit.prestudent_id=tbl_zeugnisnote.prestudent_id)
|
||||
WHERE ((tbl_projektarbeit.note>0 AND tbl_projektarbeit.note<5) OR (tbl_zeugnisnote.note>0 AND tbl_zeugnisnote.note<5)) AND projekttyp_kurzbz='Diplom'
|
||||
AND to_char(tbl_projektarbeit.abgabedatum,'YYYYMMDD')>'".date('Ymd',mktime(0, 0, 0, date('m')-6, date('d'), date('Y')))."'
|
||||
AND (tbl_projektarbeit.freigegeben OR (to_char(tbl_projektarbeit.gesperrtbis,'YYYYMMDD')<'".date('Ymd',mktime(0, 0, 0, date('m'), date('d'), date('Y')))."'))";
|
||||
|
||||
@@ -64,7 +64,7 @@ if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('a
|
||||
|
||||
function showFarbcodes()
|
||||
{
|
||||
$farbcodes = '';
|
||||
$farbcodes = '';
|
||||
|
||||
$farbcodes.= "<table>";
|
||||
$farbcodes.="<tr><td style=\"background-color:#FFFFFF; width:35px;\"></td><td style=\"padding-left:5px;\">Termin noch mehr als 12 Tage entfernt</tr>";
|
||||
@@ -75,7 +75,7 @@ function showFarbcodes()
|
||||
$farbcodes.="</table>";
|
||||
return $farbcodes;
|
||||
}
|
||||
|
||||
|
||||
$trenner = new variable();
|
||||
$trenner->loadVariables($getuid);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user