This commit is contained in:
kindlm
2015-09-29 15:45:41 +02:00
19 changed files with 1261 additions and 1067 deletions
@@ -21,7 +21,7 @@
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/basis_db.class.php');
require_once('../../../../include/basis_db.class.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/studiengang.class.php');
@@ -41,10 +41,11 @@ require_once('../../../../include/student.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/zeugnisnote.class.php');
require_once('../../../../include/notenschluessel.class.php');
require_once('../../../../include/note.class.php');
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$user = get_uid();
$sprache = getSprache();
@@ -80,8 +81,11 @@ $response='';
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Kopfzeile
$noten_anmerkung=array();
$note_obj = new note();
$note_obj->getAll();
foreach($note_obj->result as $row)
$noten_anmerkung[$row->anmerkung]=$row->note;
//Studiensemester laden
$stsem_obj = new studiensemester();
@@ -95,7 +99,7 @@ if(!$rechte->isBerechtigt('admin',0) &&
!$rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT lehreinheit_id FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=".$db->db_add_param($user);
if($result = $db->db_query($qry))
@@ -103,7 +107,7 @@ if(!$rechte->isBerechtigt('admin',0) &&
if($db->db_num_rows($result)==0)
die($p->t('global/keineBerechtigungFuerDieseSeite'));
}
else
else
{
die('Fehler beim Pruefen der Rechte');
}
@@ -111,7 +115,7 @@ if(!$rechte->isBerechtigt('admin',0) &&
function savenote($db,$lvid, $student_uid, $note, $punkte=null)
{
global $stsem, $user, $p;
global $stsem, $user, $p, $noten_anmerkung;
$jetzt = date("Y-m-d H:i:s");
//Ermitteln ob der Student diesem Kurs zugeteilt ist
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE uid=".$db->db_add_param($student_uid)." AND lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
@@ -132,6 +136,14 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
$note = $notenschluessel->getNote($punkte, $lvid, $stsem);
}
if(!is_numeric($note))
{
// Wenn die Note keine Nummer ist wird anhand der Anmerkung gesucht ob eine passende Note gefunden
// wird damit hier die Noten nb, met, etc auch importiert werden koennen
if(isset($noten_anmerkung[$note]))
$note = $noten_anmerkung[$note];
}
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
@@ -160,14 +172,14 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
if (!$lvgesamtnote->save($new))
return "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
return $lvgesamtnote->errormsg;
else
return $response;
}
@@ -180,7 +192,7 @@ if (isset($_REQUEST["submit"]))
$student_uid = $_REQUEST["student_uid"];
$note = $_REQUEST["note"];
$punkte = (isset($_REQUEST["punkte"])?$_REQUEST["punkte"]:'');
$response = savenote($db,$lvid, $student_uid, $note, $punkte);
echo $response;
}
@@ -214,25 +226,25 @@ if (isset($_REQUEST["submit"]))
$response.="\n".$p->t('benotungstool/studentMitMatrikelnummerExistiertNicht',array($matrikelnummer));
continue;
}
// Hole Zeugnisnote wenn schon eine eingetragen ist
/*
if ($zeugnisnote = new zeugnisnote($lvid, $student_uid, $stsem))
$znote = $zeugnisnote->note;
else
$znote = null;
$znote = null;
*/
$val=savenote($db,$lvid, $student_uid, $note, $punkte);
if($val!='neu' && $val!='update' && $val!='update_f')
$response.=$val;
}
else
else
{
$response.="\n".$p->t('global/fehlerBeiDerParameteruebergabe');
$response.="\n".$p->t('global/fehlerBeiDerParameteruebergabe');
}
}
}
echo $response;
}
}
}
?>
+11 -2
View File
@@ -100,9 +100,18 @@ else
$konto = new konto();
if (($user == $_GET["uid"]) || $rechte->isBerechtigt('admin'))
{
if(($xsl=='Inskription' || $xsl == 'Studienblatt') && (!$konto->checkStudienbeitrag($user, $_GET["ss"])))
$buchungstypen = array();
if(defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
{
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
}
$stsem_zahlung = $konto->getLastStSemBuchungstypen($user, $buchungstypen);
if((($xsl=='Inskription') || ($xsl == 'Studienblatt')) && ($_GET["ss"] != $stsem_zahlung))
{
die('Der Studienbeitrag wurde noch nicht bezahlt');
}
if(isset($_GET['buchungsnummern']))
{
//Beim Drucken von Buchungsbestaetigungen pruefen ob diese Buchungen auch zu diesem Benutzer gehoeren
+9 -2
View File
@@ -136,7 +136,14 @@ echo $p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_ju
$konto = new konto();
if ($konto->checkStudienbeitrag($uid, $stsem))
$buchungstypen = array();
if(defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
{
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
}
$stsem_zahlung = $konto->getLastStSemBuchungstypen($uid, $buchungstypen);
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
{
echo "<a href='../pdfExport.php?xsl=Inskription&xml=student.rdf.php&ss=".$stsem."&uid=".$uid."&xsl_stg_kz=".$xsl_stg_kz."'>".$p->t('tools/inskriptionsbestaetigung')."</a>";
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahltAmDatum',array($stsem, $konto->buchungsdatum));
@@ -148,7 +155,7 @@ echo "<hr>";
if(defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
{
if ($konto->checkStudienbeitrag($uid, $stsem))
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
{
echo "<a href='../pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&ss=".$stsem."&uid=".$uid."'>".$p->t('tools/studienbuchblatt')."</a>";
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahltAmDatum',array($stsem, $konto->buchungsdatum));
+41 -30
View File
@@ -52,23 +52,34 @@ class menu_addon_meinelvkompatibel extends menu_addon
if ($stsemobj = new studiensemester())
{
// Angezeigt wird das Studiensemester das am naehesten ist das davor und das danach
//cis.config.inc.php: Durch den Eintrag CIS_MEINELV_ANZAHL_SEMESTER_PAST können mehrere Semester aus der Vergangenheit angezeigt werden.
$stsem = $stsemobj->getNearest();
$stsem_array[]=$stsemobj->getPreviousFrom($stsem);
$stsem_array[]=$stsem;
$stsem_array[]=$stsemobj->getNextFrom($stsem);
$stsem_array = array();
array_push($stsem_array, $stsem);
array_push($stsem_array, $stsemobj->getNextFrom($stsem));
if(defined('CIS_MEINELV_ANZAHL_SEMESTER_PAST'))
$end = CIS_MEINELV_ANZAHL_SEMESTER_PAST;
else
$end = 1;
for($i=0; $i<$end; $i++)
{
$stsem = $stsemobj->getPreviousFrom($stsem);
array_unshift($stsem_array, $stsem);
}
foreach($stsem_array as $stsem)
{
$qry = "SELECT
lehrfach.bezeichnung, lehrfach.lehrveranstaltung_id as lehrfach_id, vw_student_lehrveranstaltung.lehrveranstaltung_id,
vw_student_lehrveranstaltung.studiengang_kz, vw_student_lehrveranstaltung.semester
FROM
campus.vw_student_lehrveranstaltung
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(vw_student_lehrveranstaltung.lehrfach_id=lehrfach.lehrveranstaltung_id)
FROM
campus.vw_student_lehrveranstaltung
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(vw_student_lehrveranstaltung.lehrfach_id=lehrfach.lehrveranstaltung_id)
WHERE
uid=".$this->db_add_param($user)."
AND studiensemester_kurzbz=".$this->db_add_param($stsem)."
AND studiensemester_kurzbz=".$this->db_add_param($stsem)."
AND vw_student_lehrveranstaltung.lehre=true
AND vw_student_lehrveranstaltung.lehreverzeichnis<>''
ORDER BY
@@ -101,11 +112,11 @@ class menu_addon_meinelvkompatibel extends menu_addon
}
if(count($stsementry)>0)
{
$this->items[] = array('title'=>$stsem,
'target'=>'',
'link'=>'#',
$this->items[] = array('title'=>$stsem,
'target'=>'',
'link'=>'#',
'name'=>$stsem,
'childs'=>$stsementry
'childs'=>$stsementry
);
}
}
@@ -124,18 +135,18 @@ class menu_addon_meinelvkompatibel extends menu_addon
{
if ($stsemobj = new studiensemester())
{
// Angezeigt wird das Studiensemester das am naehesten ist das davor und das danach
$stsem = $stsemobj->getNearest();
$stsem_array[]=$stsemobj->getPreviousFrom($stsem);
$stsem_array[]=$stsem;
$stsem_array[]=$stsemobj->getNextFrom($stsem);
$this->items[] = array('title'=>$p->t("lvaliste/titel"),
'target'=>'content',
'link'=>'private/profile/lva_liste.php',
// Angezeigt wird das Studiensemester das am naehesten ist das davor und das danach
$stsem = $stsemobj->getNearest();
$stsem_array[]=$stsemobj->getPreviousFrom($stsem);
$stsem_array[]=$stsem;
$stsem_array[]=$stsemobj->getNextFrom($stsem);
$this->items[] = array('title'=>$p->t("lvaliste/titel"),
'target'=>'content',
'link'=>'private/profile/lva_liste.php',
'name'=>$p->t("lvaliste/titel"));
foreach($stsem_array as $stsem)
foreach($stsem_array as $stsem)
{
$qry = "SELECT
@@ -183,14 +194,14 @@ class menu_addon_meinelvkompatibel extends menu_addon
);
}
}
if(count($stsementry)>0)
{
$this->items[] = array('title'=>$stsem,
'target'=>'',
'link'=>'#',
'name'=>$stsem,
'childs'=>$stsementry
);
if(count($stsementry)>0)
{
$this->items[] = array('title'=>$stsem,
'target'=>'',
'link'=>'#',
'name'=>$stsem,
'childs'=>$stsementry
);
}
}
else
+6
View File
@@ -211,4 +211,10 @@ define('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN',true);
//User, welcher für das Anlegen von Anrechnungen bei der Prüfungsanmeldung verwendet wird
define('CIS_PRUEFUNGSANMELDUNG_USER','p.pruefungsanmeldung');
//Gibt an, wie viele Semester aus der Vergangenheit unter Meine LV angezeigt werden
define('CIS_MEINELV_ANZAHL_SEMESTER_PAST', 3);
//Gibt an, welche Buchungstypen bei der Überprüfung auf Einzahlung berücksichtigt werden
define('CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN', serialize(array("Studiengebuehr")));
?>
+2
View File
@@ -180,6 +180,8 @@ define('BEWERBERTOOL_BERUFSTAETIGKEIT_ANZEIGEN', true);
// Wenn hier eine Mailadresse angegeben ist, werden die Bewerbungen aus der Onlinebwerbung an diese Adresse gesendet.
// Wenn leer dann wird an die Studiengangsadresse gesendet
define('BEWERBERTOOL_MAILEMPFANG', '');
// Wenn true dann koennen Dokumente nachgereicht werden, wenn false dann nicht
define('BEWERBERTOOL_DOKUMENTE_NACHREICHEN', true);
// Array mit Usern die nicht Kollidieren
define('KOLLISIONSFREIE_USER',serialize(array('_DummyLektor')));
+37 -17
View File
@@ -50,7 +50,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/interessentdokumenteoverla
if(isset($_GET['xulapp']))
$xulapp=$_GET['xulapp'];
else
else
$xulapp='';
?>
<!DOCTYPE overlay >
@@ -74,7 +74,7 @@ else
<menuitem label="EMail senden (privat)" oncommand="StudentSendMailPrivat();" id="student-tree-popup-mailprivat" hidden="false"/>
<menuseparator />
<menuitem label="Personendetails anzeigen" oncommand="StudentShowPersonendetails();" id="student-tree-popup-personendetails" hidden="false"/>
<!--
<!--
<menuitem label="Interessenten löschen" oncommand="StudentDeleteInteressent();" id="student-tree-popup-deleteinteressent" hidden="false"/>
-->
</menupopup>
@@ -82,30 +82,30 @@ else
<hbox>
<toolbox flex="1">
<toolbar id="student-nav-toolbar">
<?php
<?php
if($xulapp!='tempus')
{
?>
<toolbarbutton id="interessent-toolbar-neu" label="Neu" oncommand="InteressentNeu()" disabled="false" image="../skin/images/NeuDokument.png" tooltiptext="Interessent neu anlegen" />
<toolbarbutton id="student-toolbar-buchung" label="Neue Buchung" oncommand="StudentKontoNeu()" disabled="false" tooltiptext="neue Buchung anlegen"/>
<toolbarbutton label="Status ändern " id="student-toolbar-status" type="menu">
<toolbarbutton label="Status ändern " id="student-toolbar-status" type="menu">
<menupopup id="student-status-menu-popup" >
<menuitem id="student-toolbar-abbrecher" label="-> Abbrecher" oncommand="StudentAddRolle('Abbrecher','0')" disabled="false" tooltiptext="Student zum Abbrecher machen" hidden="true"/>
<menuitem id="student-toolbar-unterbrecher" label="-> Unterbrecher" oncommand="StudentAddRolle('Unterbrecher','0')" disabled="false" tooltiptext="Student zum Unterbrecher machen" hidden="true"/>
<menuitem id="student-toolbar-student" label="-> Student" oncommand="StudentUnterbrecherZuStudent()" disabled="false" tooltiptext="Ab/Unterbrecher wieder zum Studenten machen" hidden="true"/>
<menuitem id="student-toolbar-diplomand" label="-> Diplomand" oncommand="StudentAddRolle('Diplomand')" disabled="false" tooltiptext="Studenten zum Diplomanden machen" hidden="true"/>
<menuitem id="student-toolbar-absolvent" label="-> Absolvent" oncommand="StudentAddRolle('Absolvent')" disabled="false" tooltiptext="Studenten zum Absolventen machen" hidden="true"/>
<menuitem id="interessent-toolbar-zubewerber" label="-> Bewerber" oncommand="InteressentzuBewerber()" disabled="false" tooltiptext="Interessent zum Bewerber machen" hidden="true"/>
<menuitem id="interessent-toolbar-aufgenommener" label="-> Aufgenommener" oncommand="InteressentAddRolle('Aufgenommener')" disabled="false" tooltiptext="Interessent zum Aufgenommenen machen" hidden="true"/>
<menuitem id="interessent-toolbar-zustudent" label="-> Student" oncommand="InteressentzuStudent()" disabled="false" tooltiptext="Bewerber zu Studenten machen" hidden="true"/>
<menuitem id="interessent-toolbar-zustudent" label="-> Student" oncommand="InteressentzuStudent()" disabled="false" tooltiptext="Bewerber zu Studenten machen" hidden="true"/>
<menuitem id="interessent-toolbar-warteliste" label="-> Warteliste" oncommand="InteressentAddRolle('Wartender')" disabled="false" tooltiptext="Interessent zum Wartenden machen" hidden="true"/>
<menuitem id="interessent-toolbar-absage" label="-> Absage" oncommand="InteressentAddRolle('Abgewiesener')" disabled="false" tooltiptext="Interessent zum Absager machen" hidden="true"/>
<menuitem id="interessent-toolbar-absage" label="-> Absage" oncommand="InteressentAddRolle('Abgewiesener')" disabled="false" tooltiptext="Interessent zum Absager machen" hidden="true"/>
</menupopup>
</toolbarbutton>
<toolbarbutton id="student-toolbar-export" label="Export" oncommand="StudentExport()" disabled="false" image="../skin/images/ExcelIcon.png" tooltiptext="Daten ins Excel Exportieren"/>
<?php
}
@@ -117,7 +117,7 @@ else
if($xulapp!='tempus')
{
?>
<toolbarbutton label="Filter " id="student-toolbar-filter" type="menu">
<toolbarbutton label="Filter " id="student-toolbar-filter" type="menu">
<menupopup id="student-filter-menu-popup" >
<menuitem id="student-toolbar-filter-dokumente" label="fehlende Dokumente" oncommand="InteressentDokumenteFilter()" disabled="false" tooltiptext="Liste aller Studenten mit Fehlenden Dokumenten"/>
<menuitem id="student-toolbar-filter-offenebuchungen" label="offene Buchungen" oncommand="StudentKontoFilterStudenten('konto')" disabled="false" tooltiptext="Liste aller Studenten mit offenen Buchungen"/>
@@ -141,7 +141,7 @@ else
<vbox>
<tree id="student-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/student/alle"
<?php echo ($xulapp!='tempus'?'onselect="StudentAuswahl();"':'') ?>
<?php echo ($xulapp!='tempus'?'onselect="StudentAuswahl();"':'') ?>
flags="dont-build-content"
enableColumnDrag="true"
style="margin:0px; height:150px"
@@ -227,6 +227,22 @@ else
<treecol id="student-treecol-status" label="Status" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-status" label="Status Datum" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status_datum_iso" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-status" label="Status Bestaetigung" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status_bestaetigung_iso" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-status" label="Status Datum ISO" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status_datum_iso" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-status" label="Status Bestaetigung ISO" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status_bestaetigung_iso" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-mail_privat" label="EMail (Privat)" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
@@ -299,7 +315,7 @@ else
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#titelpre" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#titelpost" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#svnr" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#ersatzkennzeichen" />
@@ -314,6 +330,10 @@ else
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#prestudent_id" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status_datum" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status_bestaetigung" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status_datum_iso" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status_bestaetigung_iso" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#mail_privat" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#mail_intern" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#anmerkungen" />
@@ -360,7 +380,7 @@ else
<tab id="student-tab-noten" label="Noten" />
<tab id="student-tab-zeugnis" label="Archiv" />
<tab id="student-tab-pruefung" label="Prüfung" />
<?php
<?php
if($rechte->isBerechtigt('student/anrechnung'))
echo '<tab id="student-tab-anrechnungen" label="Anrechnungen" />';
?>
@@ -370,9 +390,9 @@ else
<tab id="student-tab-funktionen" label="Funktionen" onclick="StudentFunktionIFrameLoad();"/>
<tab id="student-tab-notizen" label="Notizen"/>
<tab id="student-tab-termine" label="Termine" onclick="StudentTermineIFrameLoad();"/>
<?php
<?php
if($rechte->isBerechtigt('student/anwesenheit'))
echo '<tab id="student-tab-anwesenheit" label="Anwesenheit" onclick="StudentAnwesenheitIFrameLoad();"/>';
echo '<tab id="student-tab-anwesenheit" label="Anwesenheit" onclick="StudentAnwesenheitIFrameLoad();"/>';
?>
</tabs>
@@ -387,7 +407,7 @@ else
<vbox id="student-noten" style="margin-top:10px;" />
<vbox id="student-zeugnis" style="margin-top:10px;" />
<vbox id="student-pruefung" style="margin-top:10px;" />
<?php
<?php
if($rechte->isBerechtigt('student/anrechnung'))
echo '<vbox id="student-anrechnungen" style="margin-top:10px;" />';
?>
@@ -399,7 +419,7 @@ else
<box class="Notiz" flex="1" id="student-box-notizen"/>
</vbox>
<iframe id="student-termine" src="" style="margin-top:10px;" />
<?php
<?php
if($rechte->isBerechtigt('student/anwesenheit'))
echo '<iframe id="student-anwesenheit" src="" style="margin-top:10px;" />';
?>
+2 -1
View File
@@ -473,7 +473,8 @@ class anwesenheit extends basis_db
(
SELECT count(*) anzahl FROM
(SELECT datum, stunde FROM campus.vw_stundenplan
WHERE lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id GROUP BY datum, stunde) as a
WHERE lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
AND vw_stundenplan.titel not like '%Nebenprüfung%' GROUP BY datum, stunde) as a
) as gesamtstunden
FROM
campus.vw_student_lehrveranstaltung
+8 -3
View File
@@ -521,6 +521,9 @@ class frage extends basis_db
$this->frage_id=$this->getNewFrage($gebiet_id, $pruefling_id, $nextlevel);
if($this->frage_id=='')
break;
$this->pruefling_id=$pruefling_id;
//hoechste Nummer holen
@@ -548,7 +551,7 @@ class frage extends basis_db
$this->begintime='';
$this->endtime='';
//PrueflingFrage speichern
if(!$this->save_prueflingfrage(true))
{
@@ -686,8 +689,10 @@ class frage extends basis_db
public function save_prueflingfrage($new=null)
{
if(!$this->validate_prueflingfrage())
{
return false;
}
if(is_null($new))
$new = $this->new;
@@ -763,7 +768,7 @@ class frage extends basis_db
$qry .= " ORDER BY nummer ASC";
$qry .= " LIMIT 1";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
+865 -865
View File
File diff suppressed because it is too large Load Diff
+33 -3
View File
@@ -237,10 +237,10 @@ class studiengang extends basis_db
*/
public function getAllForBewerbung()
{
$qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch '
$qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode '
. 'FROM lehre.vw_studienplan '
. 'WHERE onlinebewerbung IS TRUE '
. 'ORDER BY studiengangbezeichnung ASC';
. 'ORDER BY typ, studiengangbezeichnung ASC';
if(!$result = $this->db_query($qry))
{
@@ -266,7 +266,7 @@ class studiengang extends basis_db
{
while($row = $this->db_fetch_object($result))
{
$this->studiengang_typ_arr[$row->typ]=$row->typ.' - '.$row->bezeichnung;
$this->studiengang_typ_arr[$row->typ]=$row->bezeichnung;
}
}
else
@@ -870,4 +870,34 @@ class studiengang extends basis_db
return false;
}
}
/**
* Laedt die Lehrgangstypen
* @return boolean true wenn ok sonst false
*/
public function getLehrgangstyp()
{
$qry = "SELECT * FROM bis.tbl_lgartcode";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->lgartcode = $row->lgartcode;
$obj->kurzbz = $row->kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->beantragung = $this->db_parse_bool($row->beantragung);
$this->result[]= $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
+48
View File
@@ -1039,5 +1039,53 @@ class vertrag extends basis_db
return false;
}
}
/**
* Liefert alle Vertraege bei denen die Lehraufträgs-Beträge nicht zur Vertragsbetrag passen
* (zB Aufgrund von Honoraraenderung)
* @param $studiensemester_kurzbz
* @return boolean true wenn ok, false im Fehlerfall
*/
public function getFalscheBetraege($studiensemester_kurzbz)
{
$qry = "SELECT
tbl_vertrag.*, tbl_lehreinheitmitarbeiter.mitarbeiter_uid, tbl_lehreinheitmitarbeiter.lehreinheit_id,
tbl_lehreinheitmitarbeiter.stundensatz, tbl_lehreinheitmitarbeiter.semesterstunden
FROM
lehre.tbl_vertrag
JOIN lehre.tbl_lehreinheitmitarbeiter USING(vertrag_id)
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
AND tbl_lehreinheitmitarbeiter.semesterstunden*tbl_lehreinheitmitarbeiter.stundensatz!=tbl_vertrag.betrag";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->vertrag_id = $row->vertrag_id;
$obj->vertragstyp_kurzbz = $row->vertragstyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->betrag = $row->betrag;
$obj->person_id = $row->person_id;
$obj->anmerkung = $row->anmerkung;
$obj->vertragsdatum = $row->vertragsdatum;
$obj->semesterstunden = $row->semesterstunden;
$obj->stundensatz = $row->stundensatz;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
$obj->lehreinheit_id = $row->lehreinheit_id;
$this->result[]=$obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+53 -45
View File
@@ -79,7 +79,7 @@ function checkfilter($row, $filter2, $buchungstyp = null)
$qry.=" AND studiengang_kz='$row->studiengang_kz'";
if($buchungstyp != null && $buchungstyp != "alle")
$qry.=" AND buchungstyp_kurzbz='$buchungstyp'";
if($db->db_query($qry))
if($row_filter = $db->db_fetch_object())
if($row_filter->summe=='0.00' || $row_filter->summe=='' || $row_filter->summe=='0')
@@ -87,14 +87,14 @@ function checkfilter($row, $filter2, $buchungstyp = null)
}
elseif($filter2=='studiengebuehr')
{
// Alle Personen die keine Studiengebuehrbelastung haben
// Alle Personen die keine Studiengebuehrbelastung haben
// Incoming werden nicht beruecksichtigt
$prestudent = new prestudent();
$prestudent->getLastStatus($row->prestudent_id);
$qry = "SELECT count(*) as anzahl FROM public.tbl_konto WHERE
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
person_id='".addslashes($row->person_id)."' AND
$qry = "SELECT count(*) as anzahl FROM public.tbl_konto WHERE
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
person_id='".addslashes($row->person_id)."' AND
buchungstyp_kurzbz='Studiengebuehr'";
if($db->db_query($qry))
if($row_filter = $db->db_fetch_object())
@@ -103,15 +103,15 @@ function checkfilter($row, $filter2, $buchungstyp = null)
}
elseif(strstr($filter2,'buchungstyp;'))
{
// Alle Personen die keine Belastung auf den uebergebenen Buchungstyp haben
// Alle Personen die keine Belastung auf den uebergebenen Buchungstyp haben
// Incoming werden nicht beruecksichtigt
list($filter, $buchungstyp) = explode(';',$filter2);
$prestudent = new prestudent();
$prestudent->getLastStatus($row->prestudent_id);
$qry = "SELECT count(*) as anzahl FROM public.tbl_konto WHERE
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
person_id='".addslashes($row->person_id)."' AND
$qry = "SELECT count(*) as anzahl FROM public.tbl_konto WHERE
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
person_id='".addslashes($row->person_id)."' AND
buchungstyp_kurzbz='$buchungstyp'";
if($db->db_query($qry))
if($row_filter = $db->db_fetch_object())
@@ -129,10 +129,10 @@ function checkfilter($row, $filter2, $buchungstyp = null)
if(($row_filter->zgv_code!='' && $row_filter->zgvdatum=='') ||
($row_filter->zgvmas_code!='' && $row_filter->zgvmadatum==''))
return true;
else
else
return false;
}
}
}
}
return true;
}
@@ -147,7 +147,7 @@ function draw_content_liste($row)
$status = $prestudent->status_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
$studienplan_bezeichnung=$prestudent->studienplan_bezeichnung;
echo '
<RDF:li>
<RDF:Description id="'.$row->prestudent_id.'" about="'.$rdf_url.'/'.$row->prestudent_id.'" >
@@ -164,13 +164,17 @@ function draw_content_liste($row)
<STUDENT:ersatzkennzeichen>'.($row->ersatzkennzeichen==''?'&#xA0;':'<![CDATA['.$row->ersatzkennzeichen.']]>').'</STUDENT:ersatzkennzeichen>
<STUDENT:geburtsdatum><![CDATA['.$datum_obj->convertISODate($row->gebdatum).']]></STUDENT:geburtsdatum>
<STUDENT:geburtsdatum_iso><![CDATA['.$row->gebdatum.']]></STUDENT:geburtsdatum_iso>
<STUDENT:semester><![CDATA['.(isset($row->semester)?$row->semester:'').']]></STUDENT:semester>
<STUDENT:semester><![CDATA['.(isset($row->semester)?$row->semester:'').']]></STUDENT:semester>
<STUDENT:verband><![CDATA['.(isset($row->verband)?$row->verband:'').']]></STUDENT:verband>
<STUDENT:gruppe><![CDATA['.(isset($row->gruppe)?$row->gruppe:'').']]></STUDENT:gruppe>
<STUDENT:matrikelnummer><![CDATA['.(isset($row->matrikelnr)?$row->matrikelnr:'').']]></STUDENT:matrikelnummer>
<STUDENT:matrikelnummer><![CDATA['.(isset($row->matrikelnr)?$row->matrikelnr:'').']]></STUDENT:matrikelnummer>
<STUDENT:mail_privat><![CDATA['.$row->email_privat.']]></STUDENT:mail_privat>
<STUDENT:mail_intern><![CDATA['.(isset($row->uid)?$row->uid.'@'.DOMAIN:'').']]></STUDENT:mail_intern>
<STUDENT:status><![CDATA['.$status.']]></STUDENT:status>
<STUDENT:status><![CDATA['.$status.']]></STUDENT:status>
<STUDENT:status_datum><![CDATA['.$datum_obj->formatDatum($prestudent->datum,'d.m.Y').']]></STUDENT:status_datum>
<STUDENT:status_bestaetigung><![CDATA['.($prestudent->bestaetigtam!=''?$datum_obj->formatDatum($prestudent->bestaetigtam,'d.m.Y'):'-').']]></STUDENT:status_bestaetigung>
<STUDENT:status_datum_iso><![CDATA['.$datum_obj->formatDatum($prestudent->datum,'Y-m-d').']]></STUDENT:status_datum_iso>
<STUDENT:status_bestaetigung_iso><![CDATA['.($prestudent->bestaetigtam!=''?$datum_obj->formatDatum($prestudent->bestaetigtam,'Y-m-d'):'-').']]></STUDENT:status_bestaetigung_iso>
<STUDENT:anmerkungen>'.($row->anmerkungen==''?'&#xA0;':'<![CDATA['.$row->anmerkungen.']]>').'</STUDENT:anmerkungen>
<STUDENT:anmerkungpre>'.($row->anmerkung==''?'&#xA0;':'<![CDATA['.$row->anmerkung.']]>').'</STUDENT:anmerkungpre>
<STUDENT:studiengang_kz><![CDATA['.$row->studiengang_kz.']]></STUDENT:studiengang_kz>
@@ -206,7 +210,7 @@ function draw_content($row)
$mail_privat = $row_mail->kontakt;
}
}
$aktiv = "-";
if(isset($row->bnaktiv))
{
@@ -222,7 +226,7 @@ function draw_content($row)
$aktiv = "-";
}
}
$studiengang = new studiengang();
$stgleiter = $studiengang->getLeitung($row->studiengang_kz);
$stgl='';
@@ -241,10 +245,10 @@ function draw_content($row)
$status = $prestudent->status_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
$studienplan_bezeichnung=$prestudent->studienplan_bezeichnung;
if($status=='Aufgenommener' || $status=='Bewerber' || $status=='Wartender' || $status=='Interessent')
$semester_prestudent = $prestudent->ausbildungssemester;
else
else
$semester_prestudent = '';
echo '
<RDF:li>
@@ -271,6 +275,10 @@ function draw_content($row)
<STUDENT:geburtsnation><![CDATA['.$row->geburtsnation.']]></STUDENT:geburtsnation>
<STUDENT:sprache><![CDATA['.$row->sprache.']]></STUDENT:sprache>
<STUDENT:status><![CDATA['.$status.']]></STUDENT:status>
<STUDENT:status_datum><![CDATA['.$datum_obj->formatDatum($prestudent->datum,'d.m.Y').']]></STUDENT:status_datum>
<STUDENT:status_datum_iso><![CDATA['.$datum_obj->formatDatum($prestudent->datum,'Y-m-d').']]></STUDENT:status_datum_iso>
<STUDENT:status_bestaetigung><![CDATA['.($prestudent->bestaetigtam!=''?$datum_obj->formatDatum($prestudent->bestaetigtam,'d.m.Y'):'-').']]></STUDENT:status_bestaetigung>
<STUDENT:status_bestaetigung_iso><![CDATA['.($prestudent->bestaetigtam!=''?$datum_obj->formatDatum($prestudent->bestaetigtam,'Y-m-d'):'-').']]></STUDENT:status_bestaetigung_iso>
<STUDENT:orgform><![CDATA['.$orgform.']]></STUDENT:orgform>
<STUDENT:studienplan_bezeichnung><![CDATA['.$studienplan_bezeichnung.']]></STUDENT:studienplan_bezeichnung>
<STUDENT:mail_privat><![CDATA['.$mail_privat.']]></STUDENT:mail_privat>
@@ -421,7 +429,7 @@ if($xmlformat=='rdf')
$where.=" AND tbl_studentlehrverband.verband='".$verband."'";
if ($gruppe!=null)
$where.=" AND tbl_studentlehrverband.gruppe='".$gruppe."'";
//Wenn eine Orgform uebergeben wird nur das Semester ausgewaehlt ist, dann
//nach der Orgform filtern. Bei Verbaenden, Gruppen und Spezialgruppen wird auf
//die Orgform keine ruecksicht genommen
@@ -439,7 +447,7 @@ if($xmlformat=='rdf')
$sql_query="SELECT p.person_id, tbl_student.prestudent_id, tbl_benutzer.uid, titelpre, titelpost, vorname, vornamen, geschlecht,
nachname, gebdatum, tbl_prestudent.anmerkung,ersatzkennzeichen,svnr, tbl_student.matrikelnr, p.anmerkung as anmerkungen,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
tbl_student.studiengang_kz, aufmerksamdurch_kurzbz, mentor, public.tbl_benutzer.aktiv AS bnaktiv,
tbl_student.studiengang_kz, aufmerksamdurch_kurzbz, mentor, public.tbl_benutzer.aktiv AS bnaktiv,
( SELECT kontakt
FROM public.tbl_kontakt
WHERE kontakttyp='email' AND person_id=p.person_id AND zustellung
@@ -451,13 +459,13 @@ if($xmlformat=='rdf')
(SELECT rt_punkte2 as punkte FROM public.tbl_prestudent WHERE prestudent_id=tbl_student.prestudent_id) as rt_punkte2,
(SELECT rt_punkte3 as punkte FROM public.tbl_prestudent WHERE prestudent_id=tbl_student.prestudent_id) as rt_punkte3,
tbl_prestudent.dual as dual, p.matr_nr
FROM public.tbl_student
FROM public.tbl_student
JOIN public.tbl_benutzer ON (student_uid=uid) JOIN public.tbl_person p USING (person_id) JOIN public.tbl_prestudent USING(prestudent_id) ";
if($gruppe_kurzbz!=null)
$sql_query.= "JOIN public.tbl_benutzergruppe USING (uid) ";
$sql_query.="LEFT JOIN public.tbl_studentlehrverband ON (tbl_studentlehrverband.student_uid=tbl_student.student_uid AND tbl_studentlehrverband.studiensemester_kurzbz='$studiensemester_kurzbz')";
$sql_query.="WHERE ".$where.' ORDER BY nachname, vorname';
if($db->db_query($sql_query))
{
@@ -480,17 +488,17 @@ if($xmlformat=='rdf')
{
$stsem_obj = new studiensemester();
$stsem_obj->load($studiensemester_kurzbz);
$qry = "SELECT prestudent_id
FROM
bis.tbl_bisio JOIN public.tbl_student USING(student_uid)
WHERE
$qry = "SELECT prestudent_id
FROM
bis.tbl_bisio JOIN public.tbl_student USING(student_uid)
WHERE
(
(tbl_bisio.von>='".$stsem_obj->start."' AND tbl_bisio.von<='".$stsem_obj->ende."')
OR
(tbl_bisio.bis>='".$stsem_obj->start."' AND tbl_bisio.bis<='".$stsem_obj->ende."')
)
AND NOT EXISTS(SELECT 1 FROM public.tbl_prestudentstatus WHERE status_kurzbz='Incoming' AND prestudent_id=tbl_student.prestudent_id)
";
";
}
if($db->db_query($qry))
{
@@ -570,7 +578,7 @@ if($xmlformat=='rdf')
{
$zahlungsreferenz = explode(" ", $filter);
unset($zahlungsreferenz[0]);
foreach($zahlungsreferenz as $ref)
{
$konto = new konto();
@@ -582,7 +590,7 @@ if($xmlformat=='rdf')
$prestudent_temp = new prestudent($prestudent->result[0]->prestudent_id);
$student = new student();
$uid = $student->getUid($prestudent_temp->prestudent_id);
if($uid!='' && $uid != false)
{
if(!$student->load($uid, $studiensemester_kurzbz))
@@ -601,11 +609,11 @@ if($xmlformat=='rdf')
else
{
//$filter = utf8_decode($filter);
$qry = "SELECT prestudent_id
FROM
public.tbl_person JOIN tbl_prestudent USING (person_id) LEFT JOIN tbl_student using(prestudent_id)
WHERE
nachname||' '||vorname ~* '".addslashes($filter)."' OR
$qry = "SELECT prestudent_id
FROM
public.tbl_person JOIN tbl_prestudent USING (person_id) LEFT JOIN tbl_student using(prestudent_id)
WHERE
nachname||' '||vorname ~* '".addslashes($filter)."' OR
vorname||' '||nachname ~* '".addslashes($filter)."' OR
student_uid ~* '".addslashes($filter)."' OR
matrikelnr = '".addslashes($filter)."' OR
@@ -682,7 +690,7 @@ else
$studiengang = new studiengang();
$studiengang->load($student->studiengang_kz);
$stgleiter = $studiengang->getLeitung($student->studiengang_kz);
$stgl='';
$i = 0;
@@ -693,8 +701,8 @@ else
$i++;
}
// $stg_typ = new studiengang();
// $stg_typ->getStudiengangTyp($studiengang->typ);
// $stg_typ = new studiengang();
// $stg_typ->getStudiengangTyp($studiengang->typ);
// $typ=$stg_typ->bezeichnung;
switch($studiengang->typ)
{
@@ -750,7 +758,7 @@ else
$lv_studiengang_bezeichnung='';
$lv_studiengang_typ='';
$lv_studiengang_art='';
$lv=new lehrveranstaltung();
$lv->load_lva_student($student->uid);
if(count($lv->lehrveranstaltungen)>0)
@@ -760,7 +768,7 @@ else
$lv_studiengang->load($lv_studiengang_kz);
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
$lv_studiengang_typ=$lv_studiengang->typ;
// $stg_typ->getStudiengangTyp($lv_studiengang->typ);
// $stg_typ->getStudiengangTyp($lv_studiengang->typ);
// $lv_studiengang_art=$stg_typ->bezeichnung;
switch($lv_studiengang->typ)
{
@@ -774,13 +782,13 @@ else
}
$prestudent = new prestudent($student->prestudent_id);
$prestudent->getLastStatus($row->prestudent_id);
$orgform_bezeichnung = new organisationsform();
$orgform_bezeichnung->load($studiengang->orgform_kurzbz);
$orgform_student_bezeichnung = new organisationsform();
$orgform_student_bezeichnung->load($prestudent->orgform_kurzbz);
echo '
<student>
<uid><![CDATA['.$student->uid.']]></uid>
+85 -64
View File
@@ -24,6 +24,8 @@ require_once('../include/basis_db.class.php');
require_once('../include/betriebsmittel.class.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/datum.class.php');
require_once('../include/stunde.class.php');
require_once('../include/mitarbeiter.class.php');
$datum_obj = new datum();
if(isset($_REQUEST['stundenplan_ids']) || isset($_REQUEST['stundenplan_betriebsmittel_id']))
@@ -88,81 +90,100 @@ elseif(isset($_REQUEST['von']) && isset($_REQUEST['bis']) && $_REQUEST['xmlforma
$bis = $datum_obj->formatDatum($_REQUEST['bis'], 'Y-m-d');
$db = new basis_db();
$qry = '
SELECT
tbl_stundenplan.datum,
tbl_stundenplan.stunde,
tbl_stunde.beginn,
tbl_stunde.ende,
tbl_stundenplan.ort_kurzbz,
tbl_betriebsmittel.beschreibung,
tbl_stundenplan_betriebsmittel.anmerkung,
tbl_lehrveranstaltung.bezeichnung,
tbl_stundenplan.mitarbeiter_uid,
tbl_stundenplan.lehreinheit_id,
tbl_studiengang.kurzbzlang as stg
FROM
lehre.tbl_stundenplan_betriebsmittel
JOIN lehre.tbl_stundenplan ON(stundenplandev_id=stundenplan_id)
JOIN wawi.tbl_betriebsmittel USING(betriebsmittel_id)
JOIN lehre.tbl_stunde USING(stunde)
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN public.tbl_studiengang ON(tbl_studiengang.studiengang_kz=tbl_lehrveranstaltung.studiengang_kz)
WHERE
tbl_stundenplan.datum>='.$db->db_add_param($von).'
AND tbl_stundenplan.datum<='.$db->db_add_param($bis).'
ORDER BY datum, ort_kurzbz, stunde';
$qry='
SELECT a.*, tbl_lehrveranstaltung.bezeichnung as lvbezeichnung, tbl_studiengang.kurzbzlang as stg
FROM
(
SELECT
tbl_stundenplan.datum,
tbl_stundenplan.ort_kurzbz,
tbl_stundenplan.lehreinheit_id,
tbl_lehreinheit.lehrveranstaltung_id,
min(tbl_stundenplan.stunde) as von,
max(tbl_stundenplan.stunde) as bis,
array_agg(tbl_betriebsmittel.beschreibung) as beschreibung,
array_agg(tbl_stundenplan_betriebsmittel.anmerkung) as anmerkung,
array_agg(tbl_stundenplan.mitarbeiter_uid) as mitarbeiter_uid
FROM
lehre.tbl_stundenplan_betriebsmittel
JOIN lehre.tbl_stundenplan ON(stundenplandev_id=stundenplan_id)
JOIN wawi.tbl_betriebsmittel USING(betriebsmittel_id)
JOIN lehre.tbl_stunde USING(stunde)
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
tbl_stundenplan.datum>='.$db->db_add_param($von).'
AND tbl_stundenplan.datum<='.$db->db_add_param($bis).'
GROUP BY datum, tbl_stundenplan.ort_kurzbz, lehreinheit_id, lehrveranstaltung_id
) a
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
ORDER BY datum, von, ort_kurzbz';
$stunde = new stunde();
$stunde->loadAll();
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');
}
$stunde->loadAll();
header("Content-type: application/xhtml+xml");
$xml = "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>";
echo '<stundenplan_betriebsmittel>';
$data = array();
if($result = $db->db_query($qry))
{
$lastdatum = '';
while($row = $db->db_fetch_object($result))
{
$obj = array();
$obj['ort_kurzbz']=$row->ort_kurzbz;
$obj['stunde']=$row->stunde;
$obj['beginn']=$row->beginn;
$obj['ende']=$row->ende;
$obj['mitarbeiter_uid']=$row->mitarbeiter_uid;
$obj['beschreibung']=$row->beschreibung;
$obj['anmerkung']=$row->anmerkung;
$obj['lvbezeichnung']=$row->bezeichnung;
$obj['stg']=$row->stg;
$data[$row->datum][$row->lehreinheit_id][$row->stunde][]=$obj;
}
}
foreach($data as $datum=>$tage)
{
echo '<tage>';
echo '<datum><![CDATA['.$datum_obj->formatDatum($datum,'d.m.Y').']]></datum>';
foreach($tage as $datum=>$lehreinheiten)
{
echo '<lehreinheit>';
foreach($lehreinheiten as $lehreinheit_id=>$stunden)
if($lastdatum!=$row->datum)
{
echo '<stunde>';
foreach($stunden as $stunde=>$obj)
{
echo '<item>';
echo '<ort_kurzbz><![CDATA['.$obj['ort_kurzbz'].']]></ort_kurzbz>';
echo '<stunde><![CDATA['.$obj['stunde'].']]></stunde>';
echo '<stunde_beginn><![CDATA['.mb_substr($obj['beginn'],0,5).']]></stunde_beginn>';
echo '<stunde_ende><![CDATA['.mb_substr($obj['ende'],0,5).']]></stunde_ende>';
echo '<mitarbeiter_uid><![CDATA['.$obj['mitarbeiter_uid'].']]></mitarbeiter_uid>';
echo '<beschreibung><![CDATA['.$obj['beschreibung'].']]></beschreibung>';
echo '<anmerkung><![CDATA['.$obj['anmerkung'].']]></anmerkung>';
echo '<lvbezeichnung><![CDATA['.$obj['lvbezeichnung'].']]></lvbezeichnung>';
echo '<studiengang_kurzbzlang><![CDATA['.$obj['stg'].']]></studiengang_kurzbzlang>';
echo '</item>';
}
echo '</stunde>';
if($lastdatum!='')
echo '</tage>';
echo '<tage>';
echo '<datum><![CDATA['.$datum_obj->formatDatum($row->datum,'d.m.Y').']]></datum>';
$lastdatum = $row->datum;
}
echo '</lehreinheit>';
echo '<item>';
echo '<ort_kurzbz><![CDATA['.$row->ort_kurzbz.']]></ort_kurzbz>';
echo '<stunde_von><![CDATA['.$row->von.']]></stunde_von>';
echo '<stunde_bis><![CDATA['.$row->bis.']]></stunde_bis>';
echo '<stunde_beginn><![CDATA['.mb_substr($stunden_arr[$row->von]['beginn'],0,5).']]></stunde_beginn>';
echo '<stunde_ende><![CDATA['.mb_substr($stunden_arr[$row->bis]['ende'],0,5).']]></stunde_ende>';
$mitarbeiter = array_unique($db->db_parse_array($row->mitarbeiter_uid));
$ma_obj = new mitarbeiter($mitarbeiter[0]);
echo '<mitarbeiter_uid><![CDATA['.$ma_obj->uid.']]></mitarbeiter_uid>';
echo '<nachname><![CDATA['.$ma_obj->nachname.']]></nachname>';
echo '<vorname><![CDATA['.$ma_obj->vorname.']]></vorname>';
$beschreibungen = array_unique($db->db_parse_array($row->beschreibung));
echo '<beschreibungen>';
foreach($beschreibungen as $beschreibung)
{
if($beschreibung!='')
echo '<beschreibung><![CDATA['.$beschreibung.']]></beschreibung>';
}
echo '</beschreibungen>';
$anmerkungen = array_unique($db->db_parse_array($row->anmerkung));
echo '<anmerkungen>';
foreach($anmerkungen as $anmerkung)
{
if($anmerkung!='')
echo '<anmerkung><![CDATA['.$anmerkung.']]></anmerkung>';
}
echo '</anmerkungen>';
echo '<lvbezeichnung><![CDATA['.$row->lvbezeichnung.']]></lvbezeichnung>';
echo '<studiengang_kurzbzlang><![CDATA['.$row->stg.']]></studiengang_kurzbzlang>';
echo '</item>';
}
echo '</tage>';
if($lastdatum!='')
echo '</tage>';
}
echo '</stundenplan_betriebsmittel>';
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

After

Width:  |  Height:  |  Size: 18 KiB

+4
View File
@@ -411,6 +411,8 @@ else
$message[$student]->isalt=true;
$message[$student]->mailadress=$student.'@'.DOMAIN;
$message[$student]->message_begin=$message_begin.'<BR>';
if(!isset($message[$student]->message))
$message[$student]->message='';
$message[$student]->message.='<font style="color:#FFA100"><strong>Gel&ouml;schte Stunden:</strong></font><BR>
<TABLE><TR><TH>Ort</TH><TH>Verband</TH><TH>LektorIn</TH><TH>Datum</TH><TH>Std (Beginnzeit)</TH><TH>Lehrfach</TH><TH>Info</TH></TR>';
}
@@ -639,6 +641,8 @@ else
$message[$student]->isset=true;
$message[$student]->mailadress=$student.'@'.DOMAIN;
$message[$student]->message_begin=$message_begin.'<BR>';
if(!isset($message[$student]->message))
$message[$student]->message='';
$message[$student]->message.='<font style="color:blue"><strong>Ge&auml;nderte Stunden:</strong></font><BR>
<TABLE><TR><TH>Status</TH><TH>Ort</TH><TH>Verband</TH><TH>LektorIn</TH><TH>Datum</TH><TH>Std (Beginnzeit)</TH><TH>Lehrfach</TH><TH>Info</TH></TR>';
}
+14 -14
View File
@@ -156,24 +156,24 @@ echo '<!DOCTYPE HTML>
$("#img_"+person_id).attr("src","../../skin/images/false.png");
var uid = $("#uid_"+person_id).val();
$("#anwesenheit_"+uid).val("false");
$("#anwesenheit_"+person_id).val("false");
$("#usercode").val("");
}
}
function toggleAnwesenheit(person_id)
{
var uid = $("#uid_"+person_id).val();
var wert = $("#anwesenheit_"+uid).val();
var wert = $("#anwesenheit_"+person_id).val();
if(wert=="true")
{
$("#img_"+person_id).attr("src","../../skin/images/false.png");
$("#anwesenheit_"+uid).val("false");
$("#anwesenheit_"+person_id).val("false");
}
else
{
$("#img_"+person_id).attr("src","../../skin/images/true.png");
$("#anwesenheit_"+uid).val("true");
$("#anwesenheit_"+person_id).val("true");
}
return false;
}
@@ -186,12 +186,12 @@ if($work=='save')
{
foreach($_POST as $key=>$value)
{
if(strstr($key, 'anwesenheit_'))
if(strstr($key, 'uid_'))
{
$user = mb_substr($key, mb_strlen('anwesenheit_'));
$anwesenheit_id=$_POST['anwesenheitid_'.$user];
$person_id = mb_substr($key, mb_strlen('uid_'));
$user = $_POST['uid_'.$person_id];
$anwesend = $_POST['anwesenheit_'.$person_id];
$anwesenheit_id=$_POST['anwesenheitid_'.$person_id];
$anwesenheit = new anwesenheit();
if($anwesenheit_id!='')
@@ -203,8 +203,8 @@ if($work=='save')
$anwesenheit->einheiten = $_POST['einheiten'];
$anwesenheit->lehreinheit_id = $_POST['lehreinheit_id'];
$anwesenheit->datum = $_POST['datum'];
$anwesenheit->anwesend=($value=='true'?true:false);
$anwesenheit->anmerkung = $_POST['anmerkung_'.$user];
$anwesenheit->anwesend=($anwesend=='true'?true:false);
$anwesenheit->anmerkung = $_POST['anmerkung_'.$person_id];
$anwesenheit->save();
}
}
@@ -315,13 +315,13 @@ if($work=='loadAnwesenheit')
<a href="#Toggle" onclick="toggleAnwesenheit(\''.$row->person_id.'\')">
<img id="img_'.$row->person_id.'" src="../../skin/images/'.($anwesend?'true':'false').'.png">
</a>
<input type="hidden" name="anwesenheitid_'.$row->uid.'" value="'.$anwesenheit_id.'" />
<input type="hidden" name="anwesenheit_'.$row->uid.'" id="anwesenheit_'.$row->uid.'" value="'.($anwesend?'true':'false').'" />
<input type="hidden" name="anwesenheitid_'.$row->person_id.'" value="'.$anwesenheit_id.'" />
<input type="hidden" name="anwesenheit_'.$row->person_id.'" id="anwesenheit_'.$row->person_id.'" value="'.($anwesend?'true':'false').'" />
<input type="hidden" name="uid_'.$row->person_id.'" id="uid_'.$row->person_id.'" value="'.$row->uid.'" />
</td>';
echo '<td>'.$row->person_id.'</td>';
echo '<td>'.$row->uid.'</td><td>'.$row->vorname.'</td><td>'.$row->nachname.'</td>';
echo '<td><input type="text" name="anmerkung_'.$row->uid.'" value="'.$db->convert_html_chars($anmerkung).'" /></td>';
echo '<td><input type="text" name="anmerkung_'.$row->person_id.'" value="'.$db->convert_html_chars($anmerkung).'" /></td>';
echo '</tr>';
}
+2 -4
View File
@@ -595,9 +595,7 @@ if (!$erh->getAll('kurzbz'))
<tr>
<td valign="top">Bescheid</td>
<td>
<textarea name="bescheid" cols="37" rows="5" onchange="submitable()">
<?php echo $bescheid ?>
</textarea>
<textarea name="bescheid" cols="37" rows="5" onchange="submitable()"><?php echo $bescheid ?></textarea>
</td>
</tr>
</table>
@@ -692,4 +690,4 @@ if (!$erh->getAll('kurzbz'))
</script>
<?php endif; ?>
</body>
</html>
</html>
+13 -1
View File
@@ -80,6 +80,18 @@ switch ($outputformat)
echo $json;
return;
}
$param='';
foreach($_REQUEST as $name=>$value)
{
if (is_array($value))
{
foreach($value as $row)
$param .= '&'.$name.'[]='.urlencode($row);
}
else
$param .= '&'.$name.'='.urlencode($value);
}
?>
<!DOCTYPE html>
<html>
@@ -99,7 +111,7 @@ switch ($outputformat)
</script>
</head>
<body>
<h2>Statistik - <?php echo $statistik->bezeichnung ?> - <a href="statistik_sql.php?statistik_kurzbz=<?php echo $statistik_kurzbz?>&outputformat=csv">CSV Download</a></h2>
<h2>Statistik - <?php echo $statistik->bezeichnung ?> - <a href="statistik_sql.php?outputformat=csv<?php echo $param;?>">CSV Download</a></h2>
<?php echo $statistik->getHtmlTable('myTable', 'tablesorter'); ?>
</body>
</html>