mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-26 09:04:28 +00:00
Terminliste und Export bei Studierenden, Mitarbeitern und Lehrveranstaltungen/Lehreinheiten
This commit is contained in:
@@ -759,6 +759,12 @@ function LeAuswahl()
|
|||||||
document.getElementById('lehrveranstaltung-tab-lvangebot').collapsed=false;
|
document.getElementById('lehrveranstaltung-tab-lvangebot').collapsed=false;
|
||||||
LvAngebotLoad(lehrveranstaltung_id);
|
LvAngebotLoad(lehrveranstaltung_id);
|
||||||
|
|
||||||
|
if(document.getElementById('lehrveranstaltung-tabs').selectedItem==document.getElementById('lehrveranstaltung-tab-termine'))
|
||||||
|
{
|
||||||
|
// Termine Laden
|
||||||
|
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehrveranstaltung_id='+lehrveranstaltung_id);
|
||||||
|
}
|
||||||
|
|
||||||
LeDetailDisableFields(true);
|
LeDetailDisableFields(true);
|
||||||
//Details zuruecksetzen
|
//Details zuruecksetzen
|
||||||
LeDetailReset();
|
LeDetailReset();
|
||||||
@@ -779,6 +785,12 @@ function LeAuswahl()
|
|||||||
//LV-Angebot Tab ausblenden
|
//LV-Angebot Tab ausblenden
|
||||||
document.getElementById('lehrveranstaltung-tab-lvangebot').collapsed=true;
|
document.getElementById('lehrveranstaltung-tab-lvangebot').collapsed=true;
|
||||||
|
|
||||||
|
if(document.getElementById('lehrveranstaltung-tabs').selectedItem==document.getElementById('lehrveranstaltung-tab-termine'))
|
||||||
|
{
|
||||||
|
// Termine Laden
|
||||||
|
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehreinheit_id='+lehreinheit_id);
|
||||||
|
}
|
||||||
|
|
||||||
document.getElementById('lehrveranstaltung-toolbar-neu').disabled=true;
|
document.getElementById('lehrveranstaltung-toolbar-neu').disabled=true;
|
||||||
document.getElementById('lehrveranstaltung-toolbar-del').disabled=false;
|
document.getElementById('lehrveranstaltung-toolbar-del').disabled=false;
|
||||||
|
|
||||||
@@ -2327,3 +2339,29 @@ function LvAngebotNew()
|
|||||||
LvAngebotReset();
|
LvAngebotReset();
|
||||||
LvAngebotGruppeTreeRefresh();
|
LvAngebotGruppeTreeRefresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Laedt die Termine einer Lehrveranstaltung/Lehreinheit wenn auf den Tab gewechselt wird
|
||||||
|
*/
|
||||||
|
function LehrveranstaltungTermineIFrameLoad()
|
||||||
|
{
|
||||||
|
var tree = document.getElementById('lehrveranstaltung-tree');
|
||||||
|
|
||||||
|
if (tree.currentIndex==-1)
|
||||||
|
return;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
//Ausgewaehlte Lehreinheit holen
|
||||||
|
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehreinheit_id"] : "lehrveranstaltung-treecol-lehreinheit_id";
|
||||||
|
var lehreinheit_id=tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
|
||||||
|
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
if(lehreinheit_id!='')
|
||||||
|
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehreinheit_id='+lehreinheit_id);
|
||||||
|
else
|
||||||
|
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehrveranstaltung_id='+lehrveranstaltung_id);
|
||||||
|
}
|
||||||
|
catch(e)
|
||||||
|
{}
|
||||||
|
}
|
||||||
|
|||||||
@@ -248,6 +248,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungnotenov
|
|||||||
<tab id="lehrveranstaltung-tab-noten" label="Noten" />
|
<tab id="lehrveranstaltung-tab-noten" label="Noten" />
|
||||||
<tab id="lehrveranstaltung-tab-notizen" label="Notizen" />
|
<tab id="lehrveranstaltung-tab-notizen" label="Notizen" />
|
||||||
<tab id="lehrveranstaltung-tab-lvangebot" label="LV-Angebot" />
|
<tab id="lehrveranstaltung-tab-lvangebot" label="LV-Angebot" />
|
||||||
|
<tab id="lehrveranstaltung-tab-termine" label="Termine" onclick="LehrveranstaltungTermineIFrameLoad()"/>
|
||||||
</tabs>
|
</tabs>
|
||||||
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
|
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
|
||||||
<vbox id="lehrveranstaltung-detail" />
|
<vbox id="lehrveranstaltung-detail" />
|
||||||
@@ -257,6 +258,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungnotenov
|
|||||||
<box class="Notiz" flex="1" id="lehrveranstaltung-box-notizen"/>
|
<box class="Notiz" flex="1" id="lehrveranstaltung-box-notizen"/>
|
||||||
</vbox>
|
</vbox>
|
||||||
<vbox id="lehrveranstaltung-lvangebot" />
|
<vbox id="lehrveranstaltung-lvangebot" />
|
||||||
|
<iframe id="lehrveranstaltung-termine" src="" style="margin-top:10px;" />
|
||||||
</tabpanels>
|
</tabpanels>
|
||||||
</tabbox>
|
</tabbox>
|
||||||
</vbox>
|
</vbox>
|
||||||
|
|||||||
@@ -601,6 +601,13 @@ function MitarbeiterAuswahl()
|
|||||||
// ***** BETRIEBSMITTEL *****
|
// ***** BETRIEBSMITTEL *****
|
||||||
document.getElementById('mitarbeiter-betriebsmittel').setAttribute('src','betriebsmitteloverlay.xul.php?person_id='+person_id+'&uid='+uid);
|
document.getElementById('mitarbeiter-betriebsmittel').setAttribute('src','betriebsmitteloverlay.xul.php?person_id='+person_id+'&uid='+uid);
|
||||||
|
|
||||||
|
|
||||||
|
if(document.getElementById('mitarbeiter-tabs').selectedItem==document.getElementById('mitarbeiter-tab-termine'))
|
||||||
|
{
|
||||||
|
// ***** Termine *****
|
||||||
|
document.getElementById('mitarbeiter-termine').setAttribute('src','termine.xul.php?mitarbeiter_uid='+uid);
|
||||||
|
}
|
||||||
|
|
||||||
// **** VERWENDUNG ****
|
// **** VERWENDUNG ****
|
||||||
verwendungtree = document.getElementById('mitarbeiter-tree-verwendung');
|
verwendungtree = document.getElementById('mitarbeiter-tree-verwendung');
|
||||||
url='<?php echo APP_ROOT;?>rdf/bisverwendung.rdf.php?uid='+uid+"&"+gettimestamp();
|
url='<?php echo APP_ROOT;?>rdf/bisverwendung.rdf.php?uid='+uid+"&"+gettimestamp();
|
||||||
@@ -1885,3 +1892,13 @@ function MitarbeiterShowPersonendetails()
|
|||||||
person_id = document.getElementById('mitarbeiter-detail-textbox-person_id').value;
|
person_id = document.getElementById('mitarbeiter-detail-textbox-person_id').value;
|
||||||
window.open('<?php echo APP_ROOT ?>vilesci/personen/personendetails.php?id='+person_id,'Personendetails','');
|
window.open('<?php echo APP_ROOT ?>vilesci/personen/personendetails.php?id='+person_id,'Personendetails','');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function MitarbeiterTermineIFrameLoad()
|
||||||
|
{
|
||||||
|
uid = document.getElementById('mitarbeiter-detail-textbox-uid').value;
|
||||||
|
if(uid!='')
|
||||||
|
{
|
||||||
|
url = 'termine.xul.php?mitarbeiter_uid='+uid+'&ts='+gettimestamp();
|
||||||
|
document.getElementById('mitarbeiter-termine').setAttribute('src',url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -258,6 +258,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
|
|||||||
echo '<tab id="mitarbeiter-tab-vertrag" label="Verträge" />';
|
echo '<tab id="mitarbeiter-tab-vertrag" label="Verträge" />';
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
<tab id="mitarbeiter-tab-termine" label="Termine" onclick="MitarbeiterTermineIFrameLoad()" />
|
||||||
</tabs>
|
</tabs>
|
||||||
<tabpanels id="mitarbeiter-tabpanels-main" flex="1">
|
<tabpanels id="mitarbeiter-tabpanels-main" flex="1">
|
||||||
<vbox id="mitarbeiter-detail-stammdaten" style="margin-top:10px;" />
|
<vbox id="mitarbeiter-detail-stammdaten" style="margin-top:10px;" />
|
||||||
@@ -271,6 +272,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
|
|||||||
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
|
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
|
||||||
echo '<vbox id="mitarbeiter-vertrag" style="margin-top:10px;" />';
|
echo '<vbox id="mitarbeiter-vertrag" style="margin-top:10px;" />';
|
||||||
?>
|
?>
|
||||||
|
<iframe id="mitarbeiter-termine" src="" style="margin-top:10px;" />
|
||||||
</tabpanels>
|
</tabpanels>
|
||||||
</tabbox>
|
</tabbox>
|
||||||
</vbox>
|
</vbox>
|
||||||
|
|||||||
@@ -0,0 +1,128 @@
|
|||||||
|
<?php
|
||||||
|
/* Copyright (C) 2015 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 <[email protected]>
|
||||||
|
*/
|
||||||
|
/**
|
||||||
|
* Exportiert die Termine von Lehreinheiten/Lehrveranstaltung/Studierenden/Mitarbeitern
|
||||||
|
*/
|
||||||
|
require_once('../../config/vilesci.config.inc.php');
|
||||||
|
require_once('../../include/rdf.class.php');
|
||||||
|
require_once('../../include/basis_db.class.php');
|
||||||
|
require_once('../../include/functions.inc.php');
|
||||||
|
require_once('../../include/benutzerberechtigung.class.php');
|
||||||
|
require_once('../../include/variable.class.php');
|
||||||
|
require_once('../../include/lehrstunde.class.php');
|
||||||
|
require_once('../../include/datum.class.php');
|
||||||
|
require_once('../../include/stunde.class.php');
|
||||||
|
require_once('../../include/Excel/excel.php');
|
||||||
|
|
||||||
|
$user = get_uid();
|
||||||
|
$variable = new variable();
|
||||||
|
$variable->loadVariables($user);
|
||||||
|
|
||||||
|
$rechte = new benutzerberechtigung();
|
||||||
|
$rechte->getBerechtigungen($user);
|
||||||
|
|
||||||
|
if(!$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('lvplan') && !$rechte->isBerechtigt('admin'))
|
||||||
|
die($rechte->errormsg);
|
||||||
|
|
||||||
|
$stunde = new stunde();
|
||||||
|
$stunde->loadAll();
|
||||||
|
|
||||||
|
$stunden_arr=array();
|
||||||
|
foreach($stunde->stunden as $row)
|
||||||
|
{
|
||||||
|
$stunden_arr[$row->stunde]['beginn']=$row->beginn->format('H:i');
|
||||||
|
$stunden_arr[$row->stunde]['ende']=$row->ende->format('H:i');
|
||||||
|
}
|
||||||
|
$datum_obj = new datum();
|
||||||
|
|
||||||
|
$lehrveranstaltung_id = filter_input(INPUT_GET, 'lehrveranstaltung_id');
|
||||||
|
$lehreinheit_id = filter_input(INPUT_GET, 'lehreinheit_id');
|
||||||
|
$mitarbeiter_uid = filter_input(INPUT_GET,'mitarbeiter_uid');
|
||||||
|
$student_uid = filter_input(INPUT_GET,'student_uid');
|
||||||
|
|
||||||
|
$db = new basis_db();
|
||||||
|
|
||||||
|
$lehrstunde = new lehrstunde();
|
||||||
|
//$variable->variable->db_stpl_table
|
||||||
|
$lehrstunde->getStundenplanData('stundenplan', $lehrveranstaltung_id, $variable->variable->semester_aktuell, $lehreinheit_id, $mitarbeiter_uid, $student_uid);
|
||||||
|
|
||||||
|
function writecol($zeile, $i, $content)
|
||||||
|
{
|
||||||
|
global $worksheet, $maxlength;
|
||||||
|
$worksheet->write($zeile, $i, $content);
|
||||||
|
if(mb_strlen($content)>$maxlength[$i])
|
||||||
|
$maxlength[$i]=mb_strlen($content);
|
||||||
|
}
|
||||||
|
|
||||||
|
$maxlength= array();
|
||||||
|
$zeile=1;
|
||||||
|
|
||||||
|
// Creating a workbook
|
||||||
|
$workbook = new Spreadsheet_Excel_Writer();
|
||||||
|
|
||||||
|
// sending HTTP headers
|
||||||
|
$workbook->send("Termine". "_" . date("d_m_Y") . ".xls");
|
||||||
|
$workbook->setVersion(8);
|
||||||
|
// Creating a worksheet
|
||||||
|
$worksheet =& $workbook->addWorksheet("Termine");
|
||||||
|
$worksheet->setInputEncoding('utf-8');
|
||||||
|
|
||||||
|
$format_bold =& $workbook->addFormat();
|
||||||
|
$format_bold->setBold();
|
||||||
|
|
||||||
|
$format_title =& $workbook->addFormat();
|
||||||
|
$format_title->setBold();
|
||||||
|
// let's merge
|
||||||
|
$format_title->setAlign('merge');
|
||||||
|
|
||||||
|
//Zeilenueberschriften ausgeben
|
||||||
|
$headline=array('Datum','Von','Bis','Ort','Lektoren','Gruppen','Lehrfach','StundeVon','StundeBis');
|
||||||
|
|
||||||
|
$i=0;
|
||||||
|
foreach ($headline as $title)
|
||||||
|
{
|
||||||
|
$worksheet->write(0,$i,$title, $format_bold);
|
||||||
|
$maxlength[$i]=mb_strlen($title);
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach($lehrstunde->result as $row)
|
||||||
|
{
|
||||||
|
$i=0;
|
||||||
|
|
||||||
|
writecol($zeile, $i++, $datum_obj->formatDatum($row->datum,'d.m.Y'));
|
||||||
|
writecol($zeile, $i++, $stunden_arr[$row->stundevon]['beginn']);
|
||||||
|
writecol($zeile, $i++, $stunden_arr[$row->stundebis]['ende']);
|
||||||
|
writecol($zeile, $i++, implode(',',$row->orte));
|
||||||
|
writecol($zeile, $i++, implode(',',$row->lektoren));
|
||||||
|
writecol($zeile, $i++, implode(',',$row->gruppen));
|
||||||
|
writecol($zeile, $i++, $row->lehrfach_bezeichnung);
|
||||||
|
writecol($zeile, $i++, $row->stundevon);
|
||||||
|
writecol($zeile, $i++, $row->stundebis);
|
||||||
|
|
||||||
|
$zeile++;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Die Breite der Spalten setzen
|
||||||
|
foreach($maxlength as $i=>$breite)
|
||||||
|
$worksheet->setColumn($i, $i, $breite+2);
|
||||||
|
|
||||||
|
$workbook->close();
|
||||||
|
?>
|
||||||
@@ -369,6 +369,7 @@ else
|
|||||||
<tab id="student-tab-gruppen" label="Gruppen" onclick="StudentGruppenLoadData();"/>
|
<tab id="student-tab-gruppen" label="Gruppen" onclick="StudentGruppenLoadData();"/>
|
||||||
<tab id="student-tab-funktionen" label="Funktionen" onclick="StudentFunktionIFrameLoad();"/>
|
<tab id="student-tab-funktionen" label="Funktionen" onclick="StudentFunktionIFrameLoad();"/>
|
||||||
<tab id="student-tab-notizen" label="Notizen"/>
|
<tab id="student-tab-notizen" label="Notizen"/>
|
||||||
|
<tab id="student-tab-termine" label="Termine" onclick="StudentTermineIFrameLoad();"/>
|
||||||
</tabs>
|
</tabs>
|
||||||
<tabpanels id="student-tabpanels-main" flex="1">
|
<tabpanels id="student-tabpanels-main" flex="1">
|
||||||
<vbox id="student-detail" style="margin-top:10px;" />
|
<vbox id="student-detail" style="margin-top:10px;" />
|
||||||
@@ -392,6 +393,7 @@ else
|
|||||||
<vbox id="student-box-notiz">
|
<vbox id="student-box-notiz">
|
||||||
<box class="Notiz" flex="1" id="student-box-notizen"/>
|
<box class="Notiz" flex="1" id="student-box-notizen"/>
|
||||||
</vbox>
|
</vbox>
|
||||||
|
<iframe id="student-termine" src="" style="margin-top:10px;" />
|
||||||
</tabpanels>
|
</tabpanels>
|
||||||
</tabbox>
|
</tabbox>
|
||||||
</vbox>
|
</vbox>
|
||||||
|
|||||||
@@ -1525,6 +1525,13 @@ function StudentAuswahl()
|
|||||||
url = '<?php echo APP_ROOT; ?>content/funktionen.xul.php?uid='+uid;
|
url = '<?php echo APP_ROOT; ?>content/funktionen.xul.php?uid='+uid;
|
||||||
document.getElementById('student-funktionen').setAttribute('src',url);
|
document.getElementById('student-funktionen').setAttribute('src',url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ***** Termine *****
|
||||||
|
if(document.getElementById('student-content-tabs').selectedItem==document.getElementById('student-tab-termine'))
|
||||||
|
{
|
||||||
|
document.getElementById('student-termine').setAttribute('src','termine.xul.php?student_uid='+uid);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Notizen laden
|
// Notizen laden
|
||||||
@@ -5289,6 +5296,19 @@ function StudentFunktionIFrameLoad()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ****
|
||||||
|
// * Laedt den Termine IFrame
|
||||||
|
// ****
|
||||||
|
function StudentTermineIFrameLoad()
|
||||||
|
{
|
||||||
|
uid = document.getElementById('student-detail-textbox-uid').value;
|
||||||
|
if(uid!='')
|
||||||
|
{
|
||||||
|
url = 'termine.xul.php?student_uid='+uid+'&ts='+gettimestamp();
|
||||||
|
document.getElementById('student-termine').setAttribute('src',url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ****
|
// ****
|
||||||
// * Funktionen IFrame ins leere zeigen lassen
|
// * Funktionen IFrame ins leere zeigen lassen
|
||||||
// ****
|
// ****
|
||||||
|
|||||||
@@ -0,0 +1,75 @@
|
|||||||
|
<?php
|
||||||
|
/* Copyright (C) 2015 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 <[email protected]>
|
||||||
|
*/
|
||||||
|
require_once('../config/vilesci.config.inc.php');
|
||||||
|
?>
|
||||||
|
// ********** FUNKTIONEN ********** //
|
||||||
|
var TermineLehreinheitID='';
|
||||||
|
var TermineLehrveranstaltungID='';
|
||||||
|
var TermineMitarbeiterUID='';
|
||||||
|
var TermineStudentUID='';
|
||||||
|
|
||||||
|
// ****
|
||||||
|
// * Laedt die Trees
|
||||||
|
// ****
|
||||||
|
function loadTermine(lehreinheit_id, lehrveranstaltung_id, mitarbeiter_uid, student_uid)
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
|
||||||
|
TermineLehreinheitID=lehreinheit_id;
|
||||||
|
TermineLehrveranstaltungID=lehrveranstaltung_id;
|
||||||
|
TermineMitarbeiterUID=mitarbeiter_uid;
|
||||||
|
TermineStudentUID=student_uid;
|
||||||
|
|
||||||
|
//Termine laden
|
||||||
|
url = "<?php echo APP_ROOT; ?>rdf/termine.rdf.php?ts="+gettimestamp();
|
||||||
|
|
||||||
|
if(lehreinheit_id!='')
|
||||||
|
url=url+"&lehreinheit_id="+lehreinheit_id;
|
||||||
|
if(lehrveranstaltung_id!='')
|
||||||
|
url=url+"&lehrveranstaltung_id="+lehrveranstaltung_id;
|
||||||
|
if(mitarbeiter_uid!='')
|
||||||
|
url=url+"&mitarbeiter_uid="+mitarbeiter_uid;
|
||||||
|
if(student_uid!='')
|
||||||
|
url=url+"&student_uid="+student_uid;
|
||||||
|
|
||||||
|
var treeTermine=document.getElementById('termine-tree');
|
||||||
|
|
||||||
|
//Alte DS entfernen
|
||||||
|
var oldDatasources = treeTermine.database.GetDataSources();
|
||||||
|
while(oldDatasources.hasMoreElements())
|
||||||
|
{
|
||||||
|
treeTermine.database.RemoveDataSource(oldDatasources.getNext());
|
||||||
|
}
|
||||||
|
|
||||||
|
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||||
|
var TerminTreeDatasource = rdfService.GetDataSource(url);
|
||||||
|
TerminTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||||
|
treeTermine.database.AddDataSource(TerminTreeDatasource);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exportiert die Termine
|
||||||
|
*/
|
||||||
|
function TermineExport()
|
||||||
|
{
|
||||||
|
var url = 'statistik/termine.xls.php?lehreinheit_id='+TermineLehreinheitID+'&lehrveranstaltung_id='+TermineLehrveranstaltungID+'&mitarbeiter_uid='+TermineMitarbeiterUID+'&student_uid='+TermineStudentUID;
|
||||||
|
window.open(url);
|
||||||
|
}
|
||||||
@@ -0,0 +1,130 @@
|
|||||||
|
<?php
|
||||||
|
/* Copyright (C) 2015 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 <[email protected]>
|
||||||
|
*/
|
||||||
|
header("Cache-Control: no-cache");
|
||||||
|
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||||
|
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||||
|
header("Pragma: no-cache");
|
||||||
|
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||||
|
|
||||||
|
require_once('../config/vilesci.config.inc.php');
|
||||||
|
|
||||||
|
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
|
||||||
|
|
||||||
|
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||||
|
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
|
||||||
|
|
||||||
|
$lehreinheit_id = filter_input(INPUT_GET, 'lehreinheit_id');
|
||||||
|
$lehrveranstaltung_id = filter_input(INPUT_GET, 'lehrveranstaltung_id');
|
||||||
|
$mitarbeiter_uid = filter_input(INPUT_GET,'mitarbeiter_uid');
|
||||||
|
$student_uid = filter_input(INPUT_GET,'student_uid');
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<window id="termine-window" title="termine"
|
||||||
|
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||||
|
onload="loadTermine(<?php echo "'".$lehreinheit_id."','".$lehrveranstaltung_id."','".$mitarbeiter_uid."','".$student_uid."'"; ?>);"
|
||||||
|
>
|
||||||
|
|
||||||
|
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/termine.js.php" />
|
||||||
|
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
|
||||||
|
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
|
||||||
|
|
||||||
|
<vbox flex="1">
|
||||||
|
<groupbox id="termine-groupbox-termine" flex="1">
|
||||||
|
<caption label="Termine" />
|
||||||
|
<hbox flex="1">
|
||||||
|
<tree id="termine-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||||
|
datasources="rdf:null" ref="http://www.technikum-wien.at/termine"
|
||||||
|
persist="hidden, height"
|
||||||
|
>
|
||||||
|
<treecols>
|
||||||
|
<treecol id="termine-treecol-datum" label="Datum" flex="1" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#datum_iso" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-stundevon" label="Stunde Von" flex="1" hidden="true"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#stundevon" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-stundebis" label="Stunde Bis" flex="1" hidden="true"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#stundebis" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-uhrzeitvon" label="Von" flex="1" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#uhrzeitvon" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-uhrzeitbis" label="Bis" flex="1" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#uhrzeitbis" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-gruppen" label="Gruppen" flex="3" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#gruppen" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-ort" label="Ort" flex="2" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#ort" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-lektor" label="Lektor" flex="2" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#lektor" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-lehrfach" label="Lehrfach" flex="4" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#lehrfach" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-anwesend" label="Anwesend" flex="1" hidden="false"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#anwesend" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
<treecol id="termine-treecol-datum_iso" label="DatumISO" flex="1" hidden="true"
|
||||||
|
class="sortDirectionIndicator"
|
||||||
|
sort="rdf:http://www.technikum-wien.at/termine/rdf#datum_iso" onclick="termineTreeSort()"/>
|
||||||
|
<splitter class="tree-splitter"/>
|
||||||
|
</treecols>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<rule>
|
||||||
|
<treechildren>
|
||||||
|
<treeitem uri="rdf:*">
|
||||||
|
<treerow>
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#datum" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#stundevon" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#stundebis" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#uhrzeitvon" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#uhrzeitbis" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#gruppen" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#ort" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#lektor" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#lehrfach" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#anwesend" />
|
||||||
|
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#datum_iso" />
|
||||||
|
</treerow>
|
||||||
|
</treeitem>
|
||||||
|
</treechildren>
|
||||||
|
</rule>
|
||||||
|
</template>
|
||||||
|
</tree>
|
||||||
|
</hbox>
|
||||||
|
</groupbox>
|
||||||
|
<button label="Exportieren" oncommand="TermineExport()"/>
|
||||||
|
</vbox>
|
||||||
|
</window>
|
||||||
@@ -349,4 +349,39 @@ class anwesenheit extends basis_db
|
|||||||
return 'green';
|
return 'green';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prueft ob Anwesenheiten erfasst wurden
|
||||||
|
* @param $lehreinheit_id ID der Lehreinheit
|
||||||
|
* @param $datum Datum
|
||||||
|
* @param $uid UID des Studierenden
|
||||||
|
* @return boolean true wenn vorhanden, sonst false
|
||||||
|
*/
|
||||||
|
public function AnwesenheitExists($lehreinheit_id, $datum, $uid=null)
|
||||||
|
{
|
||||||
|
$qry = "SELECT
|
||||||
|
1
|
||||||
|
FROM
|
||||||
|
campus.tbl_anwesenheit
|
||||||
|
WHERE
|
||||||
|
anwesend=true
|
||||||
|
AND lehreinheit_id=".$this->db_add_param($lehreinheit_id)."
|
||||||
|
AND datum=".$this->db_add_param($datum);
|
||||||
|
|
||||||
|
if($uid!='')
|
||||||
|
$qry.=" AND uid=".$this->db_add_param($uid);
|
||||||
|
|
||||||
|
if($result = $this->db_query($qry))
|
||||||
|
{
|
||||||
|
if($this->db_num_rows($result)>0)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ abstract class db extends basis
|
|||||||
abstract function db_parse_bool($var);
|
abstract function db_parse_bool($var);
|
||||||
abstract function db_implode4SQL($var);
|
abstract function db_implode4SQL($var);
|
||||||
abstract function db_getResultJSON($result = null);
|
abstract function db_getResultJSON($result = null);
|
||||||
|
abstract function db_parse_array($var);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -891,6 +891,82 @@ class lehrstunde extends basis_db
|
|||||||
}
|
}
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getStundenplanData($db_stpl_table, $lehrveranstaltung_id=null, $studiensemester_kurzbz=null, $lehreinheit_id=null, $mitarbeiter_uid=null, $student_uid=null)
|
||||||
|
{
|
||||||
|
|
||||||
|
$qry = "SELECT
|
||||||
|
stpl.datum, min(stpl.stunde) as stundevon, max(stpl.stunde) as stundebis,
|
||||||
|
stpl.lehreinheit_id, lehrfach.bezeichnung as lehrfach_bezeichnung,
|
||||||
|
array_agg(
|
||||||
|
CASE WHEN gruppe_kurzbz is not null THEN gruppe_kurzbz
|
||||||
|
ELSE (SELECT UPPER(typ || kurzbz) FROM public.tbl_studiengang WHERE studiengang_kz=stpl.studiengang_kz) || COALESCE(stpl.semester,'0') || COALESCE(stpl.verband,'') || COALESCE(stpl.gruppe,'')
|
||||||
|
END) as gruppen, array_agg(mitarbeiter_uid) as lektoren,
|
||||||
|
array_agg(ort_kurzbz) as orte
|
||||||
|
FROM
|
||||||
|
lehre.tbl_".$db_stpl_table." as stpl
|
||||||
|
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||||
|
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
|
||||||
|
WHERE ";
|
||||||
|
|
||||||
|
if($lehrveranstaltung_id!='')
|
||||||
|
{
|
||||||
|
$qry.=" lehreinheit_id in(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit
|
||||||
|
WHERE lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id)."
|
||||||
|
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz).")";
|
||||||
|
|
||||||
|
}
|
||||||
|
elseif($lehreinheit_id!='')
|
||||||
|
{
|
||||||
|
$qry.=" lehreinheit_id=".$this->db_add_param($lehreinheit_id);
|
||||||
|
}
|
||||||
|
elseif($mitarbeiter_uid!='')
|
||||||
|
{
|
||||||
|
$qry.=" mitarbeiter_uid=".$this->db_add_param($mitarbeiter_uid)." AND lehreinheit_id IN(
|
||||||
|
SELECT
|
||||||
|
lehreinheit_id
|
||||||
|
FROM
|
||||||
|
lehre.tbl_lehreinheitmitarbeiter
|
||||||
|
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||||
|
WHERE mitarbeiter_uid=".$this->db_add_param($mitarbeiter_uid)." AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz).")";
|
||||||
|
}
|
||||||
|
elseif($student_uid!='')
|
||||||
|
{
|
||||||
|
$qry.=" lehreinheit_id in (
|
||||||
|
SELECT
|
||||||
|
lehreinheit_id
|
||||||
|
FROM
|
||||||
|
campus.vw_student_lehrveranstaltung
|
||||||
|
WHERE
|
||||||
|
uid=".$this->db_add_param($student_uid)." AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz).")";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
|
||||||
|
$qry.="GROUP BY stpl.datum, stpl.unr, stpl.lehreinheit_id, lehrfach.bezeichnung
|
||||||
|
ORDER BY stpl.datum, min(stpl.stunde), stpl.unr, stpl.lehreinheit_id";
|
||||||
|
if($result = $this->db_query($qry))
|
||||||
|
{
|
||||||
|
while($row = $this->db_fetch_object($result))
|
||||||
|
{
|
||||||
|
$obj = new stdClass();
|
||||||
|
|
||||||
|
$obj->datum = $row->datum;
|
||||||
|
$obj->stundevon = $row->stundevon;
|
||||||
|
$obj->stundebis = $row->stundebis;
|
||||||
|
$obj->gruppen = array_unique($this->db_parse_array($row->gruppen));
|
||||||
|
$obj->lektoren = array_unique($this->db_parse_array($row->lektoren));
|
||||||
|
$obj->orte = array_unique($this->db_parse_array($row->orte));
|
||||||
|
$obj->lehrfach_bezeichnung = $row->lehrfach_bezeichnung;
|
||||||
|
$obj->lehreinheit_id = $row->lehreinheit_id;
|
||||||
|
|
||||||
|
$this->result[] = $obj;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
@@ -342,5 +342,23 @@ class basis_db extends db
|
|||||||
}
|
}
|
||||||
return $string;
|
return $string;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Erstellt aus einem DB Array ein PHP Array
|
||||||
|
* @param $var DB Result Array Spalte
|
||||||
|
* @return php array
|
||||||
|
*/
|
||||||
|
public function db_parse_array($var)
|
||||||
|
{
|
||||||
|
if ($var == '')
|
||||||
|
return;
|
||||||
|
preg_match_all('/(?<=^\{|,)(([^,"{]*)|\s*"((?:[^"\\\\]|\\\\(?:.|[0-9]+|x[0-9a-f]+))*)"\s*)(,|(?<!^\{)(?=\}$))/i', $var, $matches, PREG_SET_ORDER);
|
||||||
|
$values = [];
|
||||||
|
foreach ($matches as $match)
|
||||||
|
{
|
||||||
|
$values[] = $match[3] != '' ? stripcslashes($match[3]) : (strtolower($match[2]) == 'null' ? null : $match[2]);
|
||||||
|
}
|
||||||
|
return $values;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|||||||
@@ -0,0 +1,97 @@
|
|||||||
|
<?php
|
||||||
|
/* Copyright (C) 2015 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 <[email protected]>
|
||||||
|
*/
|
||||||
|
require_once('../config/vilesci.config.inc.php');
|
||||||
|
require_once('../include/rdf.class.php');
|
||||||
|
require_once('../include/basis_db.class.php');
|
||||||
|
require_once('../include/functions.inc.php');
|
||||||
|
require_once('../include/benutzerberechtigung.class.php');
|
||||||
|
require_once('../include/variable.class.php');
|
||||||
|
require_once('../include/lehrstunde.class.php');
|
||||||
|
require_once('../include/datum.class.php');
|
||||||
|
require_once('../include/stunde.class.php');
|
||||||
|
require_once('../include/anwesenheit.class.php');
|
||||||
|
|
||||||
|
$user = get_uid();
|
||||||
|
|
||||||
|
$rechte = new benutzerberechtigung();
|
||||||
|
$rechte->getBerechtigungen($user);
|
||||||
|
if(!$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('lvplan') && !$rechte->isBerechtigt('admin'))
|
||||||
|
die($rechte->errormsg);
|
||||||
|
|
||||||
|
$variable = new variable();
|
||||||
|
$variable->loadVariables($user);
|
||||||
|
|
||||||
|
$stunde = new stunde();
|
||||||
|
$stunde->loadAll();
|
||||||
|
|
||||||
|
$stunden_arr=array();
|
||||||
|
foreach($stunde->stunden as $row)
|
||||||
|
{
|
||||||
|
$stunden_arr[$row->stunde]['beginn']=$row->beginn->format('H:i');
|
||||||
|
$stunden_arr[$row->stunde]['ende']=$row->ende->format('H:i');
|
||||||
|
}
|
||||||
|
$datum_obj = new datum();
|
||||||
|
|
||||||
|
$oRdf = new rdf('TERMINE','http://www.technikum-wien.at/termine');
|
||||||
|
|
||||||
|
$lehrveranstaltung_id = filter_input(INPUT_GET, 'lehrveranstaltung_id');
|
||||||
|
$lehreinheit_id = filter_input(INPUT_GET, 'lehreinheit_id');
|
||||||
|
$mitarbeiter_uid = filter_input(INPUT_GET,'mitarbeiter_uid');
|
||||||
|
$student_uid = filter_input(INPUT_GET,'student_uid');
|
||||||
|
|
||||||
|
$oRdf->sendHeader();
|
||||||
|
$db = new basis_db();
|
||||||
|
|
||||||
|
$lehrstunde = new lehrstunde();
|
||||||
|
//$variable->variable->db_stpl_table
|
||||||
|
$lehrstunde->getStundenplanData('stundenplan', $lehrveranstaltung_id, $variable->variable->semester_aktuell, $lehreinheit_id, $mitarbeiter_uid, $student_uid);
|
||||||
|
|
||||||
|
$i=0;
|
||||||
|
if(isset($lehrstunde->result) && is_array($lehrstunde->result))
|
||||||
|
{
|
||||||
|
foreach($lehrstunde->result as $row)
|
||||||
|
{
|
||||||
|
$i=$oRdf->newObjekt($i);
|
||||||
|
$oRdf->obj[$i]->setAttribut('datum',$datum_obj->formatDatum($row->datum,'d.m.Y'),true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('stundevon',$row->stundevon,true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('stundebis',$row->stundebis,true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('uhrzeitvon',$stunden_arr[$row->stundevon]['beginn'],true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('uhrzeitbis',$stunden_arr[$row->stundebis]['ende'],true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('gruppen',implode(',',$row->gruppen),true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('lektor',implode(',',$row->lektoren),true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('ort',implode(',',$row->orte),true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('lehrfach',$row->lehrfach_bezeichnung,true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('lehreinheit_id',$row->lehreinheit_id,true);
|
||||||
|
|
||||||
|
$anwesenheit = new anwesenheit();
|
||||||
|
if($anwesenheit->AnwesenheitExists($row->lehreinheit_id, $row->datum, $student_uid))
|
||||||
|
$anwesend='Ja';
|
||||||
|
else
|
||||||
|
$anwesend='Nein';
|
||||||
|
$oRdf->obj[$i]->setAttribut('anwesend',$anwesend,true);
|
||||||
|
$oRdf->obj[$i]->setAttribut('datum_iso',$row->datum,true);
|
||||||
|
|
||||||
|
|
||||||
|
$oRdf->addSequence($i);
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$oRdf->sendRdfText();
|
||||||
|
?>
|
||||||
Reference in New Issue
Block a user