Compare commits

...

83 Commits

Author SHA1 Message Date
Andreas Moik 93da6868a9 outgoing changed for eine_uid 2016-07-26 14:07:31 +02:00
Andreas Moik 5f07058338 more changes for eine_uid 2016-06-29 12:02:49 +02:00
Andreas Moik 78c4481ab3 changed tbl_prestudent JOIN tbl_benutzer and reverse from person_id to uid 2016-06-23 13:55:27 +02:00
Andreas Moik 89a1353df7 bugfix 2016-06-23 13:43:30 +02:00
Andreas Moik 1376d98631 Merge branch 'master' into eine_uid 2016-06-23 13:27:18 +02:00
Andreas Moik b6f936608a more new student calls modified 2016-06-23 12:53:38 +02:00
Andreas Moik 57ca955efa delete_studentlehrverband, save_studentlehrverband and getUid copied to prestudent.class.php 2016-06-22 13:31:57 +02:00
Andreas Moik e86fda71f4 Merge branch 'master' into eine_uid 2016-06-22 12:04:14 +02:00
Andreas Moik 42d3b5bfa8 added missing db parameters to prestudent->load_studentlehrverband 2016-06-22 12:02:12 +02:00
Andreas Moik cfa4439c00 more new student -> prestudent changes
ported student->getTab to prestudent->getTab
ported student->getStudents to prestudent->getPrestudents
2016-06-22 11:25:08 +02:00
Andreas Moik 6e157bd746 Merge branch 'master' into eine_uid 2016-06-20 16:18:28 +02:00
Andreas Moik f6358f92ed more TODO EINE comments modified 2016-06-20 15:04:51 +02:00
Andreas Moik c431303b43 studentDBDM changes 2016-06-13 12:47:08 +02:00
Andreas Moik b4e93ecfe0 bugfixes in studentDBDML.php
added prestudent_id to cis/private/pdfExport.php
2016-06-10 14:39:57 +02:00
Andreas Moik 27e5b1cdb6 cis/private/profile/studienerfolgsbestaetigung.php: added dropdown to choose prestudent 2016-06-10 13:11:30 +02:00
Andreas Moik 96c9882f8a legesamtnoteeintragen _GET["uid"] -> _GET["prestudent_id"] 2016-06-10 12:24:50 +02:00
Andreas Moik aedd895b94 added TODO EINE comment for non-unique $student->prestudent_id 2016-06-10 11:55:43 +02:00
Andreas Moik bcf57fcbf2 cis/private/profile/studienplan.php added an option to choose between prestudents 2016-06-10 11:51:10 +02:00
Andreas Moik b41122e174 TODO EINE fixes
tbl_pruefung.student_uid TO tbl_pruefung.prestuent_id
2016-06-09 10:01:32 +02:00
Andreas Moik 9d12a47486 multiple TODO EINE comments fixed 2016-06-07 14:07:49 +02:00
Andreas Moik 1c2f8e126f Merge branch 'master' into eine_uid 2016-06-03 12:48:57 +02:00
Andreas Moik b6d9f2a4ce param changes for rdfs 2016-06-03 12:30:53 +02:00
Andreas Moik 4c3d0bf5aa TODO-tags for non-unique student->prestudent_id 2016-06-01 14:37:10 +02:00
Andreas Moik 3cba596571 student-io-detail-textbox-uid removed
abschlusspruefung.rdf.php chages for eine_uid
2016-05-30 16:34:19 +02:00
Andreas Moik 0e0f762fc4 bugfix for bug "L is NULL" 2016-05-30 14:15:10 +02:00
Andreas Moik d136937aa0 pruefungsanmeldung.json.php changed for eine_uid 2016-05-30 14:03:13 +02:00
Andreas Moik 6214ad3a66 multiple rdfs changed from student_uid to prestudent_id _GET and return 2016-05-23 10:52:47 +02:00
Andreas Moik 7115ef2443 Merge branch 'master' into eine_uid 2016-05-19 15:56:36 +02:00
Andreas Moik 92ee653ae4 tbl_student to tbl_prestudent finished 2016-05-19 15:55:49 +02:00
Andreas Moik 5f9aa4474e Merge branch 'master' into eine_uid 2016-05-18 11:03:13 +02:00
Andreas Moik c2512a5755 div 2016-05-18 10:32:35 +02:00
Andreas Moik 4cdd47669a cleanups 2016-05-18 09:50:23 +02:00
Andreas Moik 81a1b35ee6 cleanups 2016-05-18 09:31:04 +02:00
Andreas Moik 249076bfcc tbl_student changed to tbl_prestudent 2016-05-18 09:11:17 +02:00
Andreas Moik 1aa2756ea8 tbl_student changes for vilesci/personen 2016-05-13 12:02:00 +02:00
Andreas Moik 6e97ba92aa vilesci/statistik: replaced tbl_student 2016-05-11 11:24:41 +02:00
Andreas Moik 2eb0df0716 replaced tbl_student 2016-05-11 11:16:57 +02:00
Andreas Moik 068bcddb07 mlists: tbl_student replaced 2016-05-10 14:17:27 +02:00
Andreas Moik 1185c68fb6 content/statistik/oeh_beitraege.xls.php 2016-05-09 17:04:15 +02:00
Andreas Moik a63be15c8b removed two obsolete files 2016-05-09 16:59:26 +02:00
Andreas Moik 3258b23c0a bewerberstatistik changes 2016-05-09 16:47:26 +02:00
Andreas Moik 02c787df3f checkStudenten: tbl_student removed 2016-05-09 14:26:27 +02:00
Andreas Moik 8d9a038e2d changed studentDBDML.php to take a prestudent_id instead of a uid 2016-05-02 14:31:54 +02:00
Andreas Moik b5a4645540 changes for tbl_zeugnisnote 2016-04-27 18:01:25 +02:00
Andreas Moik 5d3032e5de many bugfixes
changed some tbl_student to tbl_prestudent
2016-04-27 13:42:29 +02:00
Andreas Moik bda7a51ab2 changes for lehre.tbl_zeugnis 2016-04-25 14:34:16 +02:00
Andreas Moik dd4b14fe99 changes for lehre.tbl_pruefung 2016-04-25 14:02:26 +02:00
Andreas Moik 958ec7f81a lehre.tbl_pruefung - db changes 2016-04-22 14:22:30 +02:00
Andreas Moik 975ab02d74 Merge branch 'master' into eine_uid 2016-04-21 14:08:44 +02:00
Andreas Moik a9f19fd7e2 cleanups 2016-04-20 17:05:03 +02:00
Andreas Moik 3f74f253a7 fue.tbl_ressource.student_uid to uid 2016-04-20 11:18:58 +02:00
Andreas Moik a4b67c5072 changes for tbl_projektarbeit student_uid to prestudent_id 2016-04-20 10:38:48 +02:00
Andreas Moik 8c475139e4 db-changes for lehre.tbl_projektarbeit 2016-04-19 16:04:21 +02:00
Andreas Moik 01eab769ec bugfix 2016-04-19 16:04:08 +02:00
Andreas Moik b3a77052f7 db changes for eine_uid
-lehre.tbl_abschlusspruefung.student_uid -> prestudent_id
	-public.tbl_studentlehrverband.student_uid -> prestudent_id
2016-04-19 15:31:15 +02:00
Andreas Moik 48e0ea2124 removed echo 2016-04-06 15:58:06 +02:00
Andreas Moik 17cd4e4f16 bugfix 2016-04-06 15:57:05 +02:00
Andreas Moik d9a22b7642 angular-tablesort for eine_uid 2016-04-06 15:17:54 +02:00
Andreas Moik fe7840a803 Merge branch 'eine_uid' of https://github.com/FH-Complete/FHC-Core into eine_uid 2016-04-06 11:26:07 +02:00
Andreas Moik 9db228b9d0 Merge branch 'master' into eine_uid 2016-04-06 11:25:46 +02:00
Andreas Moik 24f1bc6068 fixed variable names 2016-04-06 11:03:35 +02:00
Andreas Moik b2805920c2 check for CREATE/DROP view 2016-04-06 10:31:11 +02:00
Andreas Moik 3b22c6bd07 bugfix 2016-04-06 10:14:52 +02:00
Andreas Moik 5b678f5fa6 benotungstool changed for uid 2016-04-06 09:17:03 +02:00
Andreas Moik 0963969c5e changed prestudent_id to uid(tbl_benutzer):
-campus.tbl_studentbeispiel
	-campus.tbl_studentuebung
2016-04-05 16:35:15 +02:00
Andreas Moik 7cda05f4f9 legesamtnoteeintragen and legesamtnoteverwalten changed request from student_uid to prestudent_id 2016-04-05 12:08:42 +02:00
Andreas Moik 3af78fa550 legesamtnoteverwalten now needs a prestudent_id instead of a student_uid 2016-04-05 11:28:13 +02:00
Andreas Moik 1f900e7d22 removed test-button in dbupdate_eine_uid 2016-04-05 10:28:55 +02:00
Andreas Moik 4ee0ba73c4 indices and primary keys will be recreated 2016-04-04 17:30:14 +02:00
Andreas Moik 11844a5739 bugfixes 2016-03-31 10:18:00 +02:00
Andreas Moik b55ae03e1e bugfixes 2016-03-31 09:48:50 +02:00
Andreas Moik e6117fd686 dbupdate_eine_uid entry for campus.tbl_legesamtnote 2016-03-30 16:36:54 +02:00
Andreas Moik 683a881fe7 changed campus.tbl_legesamtnote for eine_uid 2016-03-30 16:35:20 +02:00
Andreas Moik 6006cfd424 campus.tbl_studentuebung changed for eine_uid 2016-03-30 16:21:50 +02:00
Andreas Moik 9896d527e3 tbl_studentbeispiel changed for eine_uid 2016-03-30 11:50:52 +02:00
Andreas Moik 2f3513245f fixed typo 2016-03-29 17:02:55 +02:00
Andreas Moik 472849b92d more modularization for dbupdate_eine_uid 2016-03-29 17:02:00 +02:00
Andreas Moik ddad088249 cleanups 2016-03-24 11:17:09 +01:00
Andreas Moik 8d43fdc90f updated campus.tbl_lvgesamtnote to prestudent_id 2016-03-23 16:12:48 +01:00
Andreas Moik c9e2bb9abb dbupdate_eine_uid: added campus.tbl_lvgesamtnote 2016-03-22 09:38:27 +01:00
Andreas Moik 68099d2a1b bugfix 2016-03-22 09:08:48 +01:00
Andreas Moik 42685a5689 dbupdate für eine_uid 2016-01-14 10:56:54 +01:00
Andreas Moik dbe6746abe bisio mit allen nötigen Abhängigkeiten für "eine UID" geändert 2016-01-14 09:59:23 +01:00
257 changed files with 108532 additions and 107965 deletions
+28 -24
View File
@@ -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');
@@ -26,7 +27,8 @@ require_once('../include/functions.inc.php');
require_once('../include/sprache.class.php');
require_once('../include/phrasen.class.php');
require_once('../include/mail.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/studiensemester.class.php');
/**
* Prueft die URL damit keine boesen URLS uebergeben werden koennen
@@ -84,18 +86,26 @@ else
$menu = 'menu.php?content_id='.$id;
$user = get_uid();
$student = new student();
if($student->load($user))
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
$newsGetArr = array();
if(count($prestudent->result) > 0)
{
$studiengang_kz=$student->studiengang_kz;
$semester=$student->semester;
$verband=$student->verband;
}
else
{
$studiengang_kz='';
$semester='';
$verband='';
foreach($prestudent->result as $ps)
{
$lvb = new prestudent();
$studsem = new studiensemester();
$lvb->load_studentlehrverband($ps->prestudent_id, $studsem->getaktorNext());
$newsGetArr[] = array("studiengang_kz" => $ps->studiengang_kz,"semester" => $lvb->semester);
if($lvb->verband == "I" && $lvb->semester == "0")
{
$newsGetArr[] = array("studiengang_kz" => "10006","semester" => 0);
}
}
}
if(isset($_GET['content']))
@@ -105,15 +115,9 @@ if(isset($_GET['content']))
}
else
{
if($studiengang_kz=='' && $semester=='' && $verband=='' )
$content = '../cms/news.php';
else
if ($semester=='0' && $verband=='I')
$content = '../cms/news.php?studiengang_kz=10006&semester=0';
else
$content = '../cms/news.php?studiengang_kz='.$studiengang_kz.'&semester='.$semester.'';
$content = '../cms/news.php?newsReq='.json_encode($newsGetArr);
}
$sprache = getSprache();
$p = new phrasen($sprache);
$db = new basis_db();
@@ -230,7 +234,7 @@ function loadampel()
</td>
</tr>
</table>
</table>
</div>
</div>
</div>-->';*/
+561 -695
View File
File diff suppressed because it is too large Load Diff
@@ -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>.
*/
/*
@@ -83,20 +84,18 @@ else
//Wenn das Formular abgeschickt wurde
if($lvid!='')
{
$qry = "SELECT
vorname,
nachname,
uid,
tbl_student.semester as semester,
tbl_studiengang.kurzbzlang
FROM
campus.vw_benutzer
LEFT JOIN
(public.tbl_student LEFT JOIN public.tbl_studiengang using (studiengang_kz)) ON (student_uid = uid)
(public.tbl_prestudent LEFT JOIN public.tbl_studiengang using (studiengang_kz)) USING(uid)
WHERE
uid IN (SELECT uid FROM campus.tbl_benutzerlvstudiensemester
WHERE lehrveranstaltung_id='".addslashes($lvid)."' AND studiensemester_kurzbz='".addslashes($stsem)."')
WHERE lehrveranstaltung_id=".$db->db_add_param($lvid)." AND studiensemester_kurzbz=".$db->db_add_param($stsem).")
ORDER BY
nachname, vorname";
@@ -113,7 +112,7 @@ if($lvid!='')
while($row=$db->db_fetch_object($result))
{
$i++;
$content .= "\n<tr class='liste".($i%2)."'><td>$i</td><td>$row->nachname</td><td>$row->vorname</td><td><a href='mailto:$row->uid@technikum-wien.at'>$row->uid@technikum-wien.at</a></td><td align='center'>$row->kurzbzlang</td><td align='center'>$row->semester</td></tr>";
$content .= "\n<tr class='liste".($i%2)."'><td>$i</td><td>$row->nachname</td><td>$row->vorname</td><td><a href='mailto:$row->uid@technikum-wien.at'>$row->uid@technikum-wien.at</a></td><td align='center'>$row->kurzbzlang</td><td align='center'>$stsem</td></tr>";
if(isset($mailto[$mailto_idx]) && mb_strlen($mailto[$mailto_idx])>450)
$mailto_idx++;
@@ -160,4 +159,4 @@ if($lvid!='')
</table>
</body>
</html>
</html>
+18 -16
View File
@@ -15,10 +15,11 @@
* 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 >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Authors: Christian Paminger < christian.paminger@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>.
*/
/*******************************************************************************************************
* abgabe_lektor
@@ -59,17 +60,18 @@ $showall=isset($_GET['showall']);
$sql_query = "SELECT
*
FROM
(SELECT tbl_person.vorname, tbl_person.nachname, tbl_studiengang.typ, tbl_studiengang.kurzbz,
tbl_projektarbeit.projekttyp_kurzbz, tbl_projekttyp.bezeichnung, tbl_projektarbeit.titel, tbl_projektarbeit.projektarbeit_id,
tbl_projektbetreuer.betreuerart_kurzbz, tbl_benutzer.uid, tbl_student.matrikelnr, tbl_lehreinheit.studiensemester_kurzbz
FROM lehre.tbl_projektarbeit LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id)
LEFT JOIN public.tbl_benutzer on(uid=student_uid)
LEFT JOIN public.tbl_student on(public.tbl_benutzer.uid=public.tbl_student.student_uid)
LEFT JOIN public.tbl_person on(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit using(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung using(lehrveranstaltung_id)
LEFT JOIN public.tbl_studiengang on(lehre.tbl_lehrveranstaltung.studiengang_kz=public.tbl_studiengang.studiengang_kz)
LEFT JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
(SELECT tbl_person.vorname, tbl_person.nachname, tbl_studiengang.typ, tbl_studiengang.kurzbz,
tbl_projektarbeit.projekttyp_kurzbz, tbl_projekttyp.bezeichnung, tbl_projektarbeit.titel, tbl_projektarbeit.projektarbeit_id,
tbl_projektbetreuer.betreuerart_kurzbz, tbl_benutzer.uid, tbl_prestudent.perskz, tbl_lehreinheit.studiensemester_kurzbz
FROM lehre.tbl_projektarbeit
LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id)
LEFT JOIN public.tbl_prestudent on(tbl_projektarbeit.prestudent_id=tbl_prestudent.prestudent_id)
LEFT JOIN public.tbl_benutzer on(tbl_prestudent.uid=tbl_benutzer.uid)
LEFT JOIN public.tbl_person on(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit using(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung using(lehrveranstaltung_id)
LEFT JOIN public.tbl_studiengang on(lehre.tbl_lehrveranstaltung.studiengang_kz=public.tbl_studiengang.studiengang_kz)
LEFT JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom')
AND tbl_projektbetreuer.person_id IN (SELECT person_id FROM public.tbl_benutzer
WHERE public.tbl_benutzer.person_id=lehre.tbl_projektbetreuer.person_id
@@ -104,7 +106,7 @@ else
{
$htmlstr .= " <tr>\n"; //class='liste".($i%2)."'
$htmlstr .= " <td><input type='checkbox' name='mc_".$row->projektarbeit_id."' ></td>";
$htmlstr .= " <td><a href='abgabe_lektor_details.php?uid=".$row->uid."&projektarbeit_id=".$row->projektarbeit_id."&betreuerart=".$row->betreuerart_kurzbz."' target='al_detail' title='Details anzeigen'>".$row->uid."</a> / ".$row->matrikelnr."</td>\n";
$htmlstr .= " <td><a href='abgabe_lektor_details.php?uid=".$row->uid."&projektarbeit_id=".$row->projektarbeit_id."&betreuerart=".$row->betreuerart_kurzbz."' target='al_detail' title='Details anzeigen'>".$row->uid."</a> / ".$row->perskz."</td>\n";
$htmlstr .= " <td align= center><a href='mailto:$row->uid@".DOMAIN."?subject=Betreuung%20".$row->bezeichnung."'><img src='../../../skin/images/email.png' alt='email' title='Email an Studenten'></a></td>";
$htmlstr .= " <td>".$db->convert_html_chars($row->vorname)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->nachname)."</td>\n";
@@ -15,10 +15,11 @@
* 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 >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Authors: Christian Paminger <christian.paminger@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>.
*/
/*******************************************************************************************************
* abgabe_lektor
@@ -170,7 +171,7 @@ if(isset($_POST["schick"]))
$row_typ->bezeichnung='';
}
//Student zu projektarbeit_id suchen
$qry_std="SELECT * FROM campus.vw_student WHERE uid IN(SELECT student_uid FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=".$db->db_add_param($termine[$j]).")";
$qry_std="SELECT * FROM campus.vw_student WHERE prestudent_id IN(SELECT prestudent_id FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=".$db->db_add_param($termine[$j]).")";
if($result_std=@$db->db_query($qry_std))
{
$row_std=$db->db_fetch_object($result_std);
@@ -1,145 +1,147 @@
<?php
/* Copyright (C) 2010 FH 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
* Karl Burkhart <karl.burkhart@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
$uid = get_uid();
$user = '';
$db = new basis_db();
$datum_obj = new datum();
$sprache = getSprache();
$p = new phrasen($sprache);
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<head>
<title>Termin&uuml;bersicht</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../skin/tablesort.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.metadata.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.tablesorter.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#myTable").tablesorter(
{
sortList: [[0,0]],
widgets: [\'zebra\']
});
}
);
</script>
</head>
<body>
';
if(isset($_GET['user']))
{
//Terminliste von anderen Personen darf nur dann angezeigt werden, wenn
//die entsprechende Berechtigung vorhanden ist
$rechte = new benutzerberechtigung();
if(!$rechte->getBerechtigungen($uid))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
if(!$rechte->isBerechtigt('lehre/abgabetool'))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$user = $_GET['user'];
}
else
$user = $uid;
$lektor = new benutzer();
if(!$lektor->load($user))
die($p->t('global/fehlerBeimErmittelnDerUID'));
$sql_query = "
SELECT
distinct tbl_paabgabe.datum, tbl_paabgabe.fixtermin, tbl_paabgabe.kurzbz,
person_student.vorname as stud_vorname, person_student.nachname as stud_nachname,
person_student.titelpre as stud_titelpre, person_student.titelpost as stud_titelpost,
tbl_lehrveranstaltung.semester, UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
tbl_paabgabetyp.bezeichnung as typ_bezeichnung
FROM
campus.tbl_paabgabe
JOIN lehre.tbl_projektarbeit USING(projektarbeit_id)
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
JOIN public.tbl_benutzer bn_student ON(tbl_projektarbeit.student_uid=bn_student.uid)
JOIN public.tbl_person person_student ON(bn_student.person_id=person_student.person_id)
JOIN lehre.tbl_lehreinheit ON(tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung ON(tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id)
JOIN public.tbl_studiengang ON(tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz)
JOIN campus.tbl_paabgabetyp USING(paabgabetyp_kurzbz)
WHERE
tbl_projektbetreuer.person_id='".addslashes($lektor->person_id)."' AND tbl_paabgabe.datum>=now() AND bn_student.aktiv
ORDER BY tbl_paabgabe.datum
";
if($result = $db->db_query($sql_query))
{
echo "<h2>".$p->t('abgabetool/terminuebersicht')." - $lektor->titelpre $lektor->vorname $lektor->nachname $lektor->titelpost</h2>";
if($db->db_num_rows($result)>0)
{
echo '<table id="myTable" class="tablesorter">';
echo '
<thead>
<tr class="liste">
<th>'.$p->t('abgabetool/datum').'</th>
<th>'.$p->t('abgabetool/fix').'</th>
<th>'.$p->t('abgabetool/typ').'</th>
<th>'.$p->t('abgabetool/beschreibungAbgabe').'</th>
<th>'.$p->t('abgabetool/student').'</th>
<th>'.$p->t('lvplan/stg').'</th>
<th>'.$p->t('lvplan/sem').'</th>
</tr>
</thead>
<tbody>
';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
echo '<td>'.$datum_obj->formatDatum($row->datum,'d.m.Y').'</td>';
echo '<td>'.($row->fixtermin=='t'?'Ja':'Nein').'</td>';
echo '<td>'.$row->typ_bezeichnung.'</td>';
echo '<td>'.$row->kurzbz.'</td>';
echo '<td>'.$row->stud_titelpre.' '.$row->stud_vorname.' '.$row->stud_nachname.' '.$row->stud_titelpre.'</td>';
echo '<td>'.$row->stg.'</td>';
echo '<td>'.$row->semester.'</td>';
echo "</tr>\n";
}
echo "\n</tbody></table>";
}
else
echo $p->t('abgabetool/keineTermineVorhanden');
}
echo '</body></html>';
?>
<?php
/* Copyright (C) 2010 FH 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>,
* Karl Burkhart <karl.burkhart@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
$uid = get_uid();
$user = '';
$db = new basis_db();
$datum_obj = new datum();
$sprache = getSprache();
$p = new phrasen($sprache);
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<head>
<title>Termin&uuml;bersicht</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../skin/tablesort.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.metadata.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.tablesorter.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#myTable").tablesorter(
{
sortList: [[0,0]],
widgets: [\'zebra\']
});
}
);
</script>
</head>
<body>
';
if(isset($_GET['user']))
{
//Terminliste von anderen Personen darf nur dann angezeigt werden, wenn
//die entsprechende Berechtigung vorhanden ist
$rechte = new benutzerberechtigung();
if(!$rechte->getBerechtigungen($uid))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
if(!$rechte->isBerechtigt('lehre/abgabetool'))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$user = $_GET['user'];
}
else
$user = $uid;
$lektor = new benutzer();
if(!$lektor->load($user))
die($p->t('global/fehlerBeimErmittelnDerUID'));
$sql_query = "
SELECT
distinct tbl_paabgabe.datum, tbl_paabgabe.fixtermin, tbl_paabgabe.kurzbz,
person_student.vorname as stud_vorname, person_student.nachname as stud_nachname,
person_student.titelpre as stud_titelpre, person_student.titelpost as stud_titelpost,
tbl_lehrveranstaltung.semester, UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
tbl_paabgabetyp.bezeichnung as typ_bezeichnung
FROM
campus.tbl_paabgabe
JOIN lehre.tbl_projektarbeit USING(projektarbeit_id)
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
JOIN public.tbl_prestudent ON(tbl_projektarbeit.prestudent_id = tbl_projektarbeit.prestudent_id)
JOIN public.tbl_benutzer bn_student ON(tbl_prestudent.uid=bn_student.uid)
JOIN public.tbl_person person_student ON(bn_student.person_id=person_student.person_id)
JOIN lehre.tbl_lehreinheit ON(tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung ON(tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id)
JOIN public.tbl_studiengang ON(tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz)
JOIN campus.tbl_paabgabetyp USING(paabgabetyp_kurzbz)
WHERE
tbl_projektbetreuer.person_id='".addslashes($lektor->person_id)."' AND tbl_paabgabe.datum>=now() AND bn_student.aktiv
ORDER BY tbl_paabgabe.datum
";
if($result = $db->db_query($sql_query))
{
echo "<h2>".$p->t('abgabetool/terminuebersicht')." - $lektor->titelpre $lektor->vorname $lektor->nachname $lektor->titelpost</h2>";
if($db->db_num_rows($result)>0)
{
echo '<table id="myTable" class="tablesorter">';
echo '
<thead>
<tr class="liste">
<th>'.$p->t('abgabetool/datum').'</th>
<th>'.$p->t('abgabetool/fix').'</th>
<th>'.$p->t('abgabetool/typ').'</th>
<th>'.$p->t('abgabetool/beschreibungAbgabe').'</th>
<th>'.$p->t('abgabetool/student').'</th>
<th>'.$p->t('lvplan/stg').'</th>
<th>'.$p->t('lvplan/sem').'</th>
</tr>
</thead>
<tbody>
';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
echo '<td>'.$datum_obj->formatDatum($row->datum,'d.m.Y').'</td>';
echo '<td>'.($row->fixtermin=='t'?'Ja':'Nein').'</td>';
echo '<td>'.$row->typ_bezeichnung.'</td>';
echo '<td>'.$row->kurzbz.'</td>';
echo '<td>'.$row->stud_titelpre.' '.$row->stud_vorname.' '.$row->stud_nachname.' '.$row->stud_titelpre.'</td>';
echo '<td>'.$row->stg.'</td>';
echo '<td>'.$row->semester.'</td>';
echo "</tr>\n";
}
echo "\n</tbody></table>";
}
else
echo $p->t('abgabetool/keineTermineVorhanden');
}
echo '</body></html>';
?>
+112 -110
View File
@@ -15,10 +15,11 @@
* 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 >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Authors: Christian Paminger < christian.paminger@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');
@@ -26,7 +27,7 @@ require_once('../../../include/functions.inc.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/person.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
@@ -39,6 +40,9 @@ if (!$db = new basis_db())
$getuid=get_uid();
$uid=$getuid;
$vorname='';
$nachname='';
$htmlstr = '';
if(isset($_GET['uid']))
{
@@ -46,77 +50,12 @@ if(isset($_GET['uid']))
$uid = $_GET['uid'];
//Rechte Pruefen
$allowed=false;
$student = new student();
if(!$student->load($uid))
die($p->t('global/fehlerBeimErmittelnDerUID'));
$stg_obj = new studiengang();
if(!$stg_obj->load($student->studiengang_kz))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
//Berechtigung ueber das Berechtigungssystem
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($getuid);
if($rechte->isBerechtigt('lehre/abgabetool',$stg_obj->oe_kurzbz,'s'))
$allowed=true;
//oder Lektor mit Betreuung dieses Studenten
$qry = "SELECT 1
FROM
lehre.tbl_projektarbeit
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
JOIN campus.vw_benutzer on(vw_benutzer.person_id=tbl_projektbetreuer.person_id)
WHERE
tbl_projektarbeit.student_uid=".$db->db_add_param($uid)." AND
vw_benutzer.uid=".$db->db_add_param($getuid).";";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
$allowed=true;
}
}
if(!$allowed)
{
die($p->t('abgabetool/keineBerechtigungStudentenansicht'));
}
}
$htmlstr = '';
$htmlstr1 = '';
$vorname='';
$nachname='';
$sql_query = "SELECT (SELECT nachname FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS bnachname,
(SELECT vorname FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS bvorname,
(SELECT titelpre FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS btitelpre,
(SELECT titelpost FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS btitelpost,
tbl_projektbetreuer.person_id AS betreuer_person_id,
tbl_projekttyp.bezeichnung AS prjbez, *
FROM lehre.tbl_projektarbeit
LEFT JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
LEFT JOIN public.tbl_benutzer ON(uid=student_uid)
LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
LEFT JOIN public.tbl_studiengang USING(studiengang_kz)
LEFT JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom')
AND (tbl_projektbetreuer.betreuerart_kurzbz='Betreuer' OR tbl_projektbetreuer.betreuerart_kurzbz='Begutachter' OR tbl_projektbetreuer.betreuerart_kurzbz='Erstbetreuer' OR tbl_projektbetreuer.betreuerart_kurzbz='Erstbegutachter')
AND tbl_projektarbeit.student_uid=".$db->db_add_param($uid)."
AND public.tbl_benutzer.aktiv
AND lehre.tbl_projektarbeit.note IS NULL
ORDER BY studiensemester_kurzbz desc, tbl_lehrveranstaltung.kurzbz";
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($uid);
//AND tbl_projektarbeit.student_uid='$getuid' 'ie07m102';
if(!$erg=$db->db_query($sql_query))
{
$errormsg=$p->t('global/fehlerBeimLesenAusDatenbank');
}
else
{
$htmlstr .= "<form name='formular'><input type='hidden' name='check' value=''></form><table id='t1' class='tablesorter'>\n";
$htmlstr .= "<thead><tr>\n";
$htmlstr .= "
@@ -129,47 +68,111 @@ else
<th>".$p->t('abgabetool/titel')."</th>
<th>".$p->t('abgabetool/betreuerart')."</th>";
$htmlstr .= "</tr></thead><tbody>\n";
$i = 0;
while($row=$db->db_fetch_object($erg))
{
$htmlstr1='';
$vorname=$row->vorname;
$nachname=$row->nachname;
$uid=$row->uid;
($row->btitelpre!=''?$htmlstr1 = $row->btitelpre.' ':$htmlstr1 .= '');
$htmlstr1 .= $row->bvorname.' '.$row->bnachname;
($row->btitelpost!=''?$htmlstr1 .= ' '.$row->btitelpost:$htmlstr1 .= '');
$htmlstr .= " <tr>\n"; //class='liste".($i%2)."'
$htmlstr .= " <td><a href='abgabe_student_details.php?uid=".$row->uid."&projektarbeit_id=".$row->projektarbeit_id."&bid=".$row->betreuer_person_id."' target='as_detail' title='Details anzeigen'>".$p->t('abgabetool/upload')."</a></td>\n";
$htmlstr .= " <td>".$row->studiensemester_kurzbz."</td>\n";
$htmlstr .= " <td>".strtoupper($row->typ.$row->kurzbz)."</td>\n";
$htmlstr .= " <td align= center>";
$qry_betr="SELECT mitarbeiter_uid FROM public.tbl_person
JOIN public.tbl_benutzer USING(person_id)
JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid)
WHERE person_id=".$db->db_add_param($row->betreuer_person_id, FHC_INTEGER).";";
if($result_betr=$db->db_query($qry_betr))
foreach($prestudent->result as $pres)
{
$stg_obj = new studiengang();
if(!$stg_obj->load($pres->studiengang_kz))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
//Berechtigung ueber das Berechtigungssystem
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($getuid);
if($rechte->isBerechtigt('lehre/abgabetool',$stg_obj->oe_kurzbz,'s'))
$allowed = true;
//oder Lektor mit Betreuung dieses Studenten
$qry = "SELECT studiengang_kz
FROM
lehre.tbl_projektarbeit
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
JOIN campus.vw_benutzer on(vw_benutzer.person_id=tbl_projektbetreuer.person_id)
JOIN tbl_prestudent USING(prestudent_id)
WHERE
tbl_projektarbeit.prestudent_id=".$db->db_add_param($pres->prestudent_id, FHC_INTEGER)." AND
vw_benutzer.uid=".$db->db_add_param($getuid).";";
if($result = $db->db_query($qry))
{
if($row_betr=$db->db_fetch_object($result_betr))
if($db->db_num_rows($result)>0)
{
$htmlstr.="<a href='mailto:$row_betr->mitarbeiter_uid@".DOMAIN."?subject=Betreuung%20".$row->prjbez."%20von%20".$row->vorname."%20".$row->nachname."'><img src='../../../skin/images/email.png' alt='email' title='".$p->t('abgabetool/emailAnBetreuer')."'></a>";
}
else
{
$htmlstr.="UID unknown!";
$allowed = true;
}
}
if($allowed)
{
$sql_query = "SELECT (SELECT nachname FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS bnachname,
(SELECT vorname FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS bvorname,
(SELECT titelpre FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS btitelpre,
(SELECT titelpost FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS btitelpost,
tbl_projektbetreuer.person_id AS betreuer_person_id,
tbl_projekttyp.bezeichnung AS prjbez, *
FROM lehre.tbl_projektarbeit
LEFT JOIN public.tbl_prestudent USING(prestudent_id)
LEFT JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
LEFT JOIN public.tbl_benutzer USING(uid)
LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
LEFT JOIN public.tbl_studiengang ON(tbl_studiengang.studiengang_kz = tbl_lehrveranstaltung.studiengang_kz)
LEFT JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom')
AND (tbl_projektbetreuer.betreuerart_kurzbz='Betreuer' OR tbl_projektbetreuer.betreuerart_kurzbz='Begutachter' OR tbl_projektbetreuer.betreuerart_kurzbz='Erstbetreuer' OR tbl_projektbetreuer.betreuerart_kurzbz='Erstbegutachter')
AND tbl_projektarbeit.prestudent_id=".$db->db_add_param($pres->prestudent_id, FHC_INTEGER)."
AND public.tbl_benutzer.aktiv
AND lehre.tbl_projektarbeit.note IS NULL
ORDER BY studiensemester_kurzbz desc, tbl_lehrveranstaltung.kurzbz";
if(!$erg=$db->db_query($sql_query))
{
$errormsg=$p->t('global/fehlerBeimLesenAusDatenbank');
}
else
{
while($row=$db->db_fetch_object($erg))
{
$htmlstr1='';
$vorname=$row->vorname;
$nachname=$row->nachname;
$uid=$row->uid;
($row->btitelpre!=''?$htmlstr1 = $row->btitelpre.' ':$htmlstr1 .= '');
$htmlstr1 .= $row->bvorname.' '.$row->bnachname;
($row->btitelpost!=''?$htmlstr1 .= ' '.$row->btitelpost:$htmlstr1 .= '');
$htmlstr .= " <tr>\n";
$htmlstr .= " <td><a href='abgabe_student_details.php?uid=".$row->uid."&projektarbeit_id=".$row->projektarbeit_id."&bid=".$row->betreuer_person_id."' target='as_detail' title='Details anzeigen'>".$p->t('abgabetool/upload')."</a></td>\n";
$htmlstr .= " <td>".$row->studiensemester_kurzbz."</td>\n";
$htmlstr .= " <td>".strtoupper($row->typ.$row->kurzbz)."</td>\n";
$htmlstr .= " <td align= center>";
$qry_betr="SELECT mitarbeiter_uid FROM public.tbl_person
JOIN public.tbl_benutzer USING(person_id)
JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid)
WHERE person_id=".$db->db_add_param($row->betreuer_person_id, FHC_INTEGER).";";
if($result_betr=$db->db_query($qry_betr))
{
if($row_betr=$db->db_fetch_object($result_betr))
{
$htmlstr.="<a href='mailto:$row_betr->mitarbeiter_uid@".DOMAIN."?subject=Betreuung%20".$row->prjbez."%20von%20".$row->vorname."%20".$row->nachname."'><img src='../../../skin/images/email.png' alt='email' title='".$p->t('abgabetool/emailAnBetreuer')."'></a>";
}
else
{
$htmlstr.="UID unknown!";
}
}
$htmlstr .= " </td>";
$htmlstr .= " <td>".$htmlstr1." </td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->prjbez)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->titel)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->betreuerart_kurzbz)."</td>\n";
$htmlstr .= " </tr>\n";
}
}
}
$htmlstr .= " </td>";
$htmlstr .= " <td>".$htmlstr1." </td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->prjbez)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->titel)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($row->betreuerart_kurzbz)."</td>\n";
$htmlstr .= " </tr>\n";
$i++;
}
$htmlstr .= "</tbody></table>\n";
}
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
@@ -180,8 +183,8 @@ echo '
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
<script language="JavaScript" type="text/javascript">
$(document).ready(function()
{
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[4,0]],
@@ -191,7 +194,6 @@ echo '
});
</script>
</head>
<body>';
echo '<h1><div style="float:left">'.$p->t('abgabetool/ueberschrift');
+33 -21
View File
@@ -19,6 +19,7 @@
* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Andreas Moik <moik@technikum-wien.at>
*/
/*******************************************************************************************************
* abgabe_lektor
@@ -28,6 +29,7 @@
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/mail.class.php');
@@ -96,7 +98,7 @@ else
$user = get_uid();
if($uid=='-1' || $projektarbeit_id=='-1')
{
exit;
exit;
}
// Bei Studierenden pruefen ob die Uebergebene Projektarbeit zu dem Studierenden passt.
@@ -110,26 +112,27 @@ $person = new person();
$person->load($bid);
$betreuer = $person->titelpre.' '.$person->vorname.' '.$person->nachname.' '.$person->titelpost;
//Rechte Pruefen
$allowed=false;
if($uid!=$user)
{
$student = new student();
if(!$student->load($uid))
die($p->t('global/userNichtGefunden'));
$stg_obj = new studiengang();
if(!$stg_obj->load($student->studiengang_kz))
$prestudent = new prestudent();
if(!$prestudent->getPrestudentsFromUid($uid))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
//Studentenansicht
//Rechte Pruefen
$allowed=false;
//Berechtigung ueber das Berechtigungssystem
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if($rechte->isBerechtigt('lehre/abgabetool',$stg_obj->oe_kurzbz, 's'))
$allowed=true;
foreach($prestudent->result as $ps)
{
$stg_obj = new studiengang();
if(!$stg_obj->load($ps->studiengang_kz))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
if($rechte->isBerechtigt('lehre/abgabetool',$stg_obj->oe_kurzbz, 's'))
$allowed=true;
}
//oder Lektor mit Betreuung dieses Studenten
$qry = "SELECT 1
@@ -137,8 +140,9 @@ if($uid!=$user)
lehre.tbl_projektarbeit
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
JOIN campus.vw_benutzer on(vw_benutzer.person_id=tbl_projektbetreuer.person_id)
JOIN tbl_prestudent USING(prestudent_id)
WHERE
tbl_projektarbeit.student_uid=".$db->db_add_param($uid)." AND
tbl_prestudent.uid=".$db->db_add_param($uid)." AND
vw_benutzer.uid=".$db->db_add_param($user).";";
if($result = $db->db_query($qry))
@@ -149,15 +153,23 @@ if($uid!=$user)
}
}
if(!$allowed)
{
die($p->t('abgabetool/keineBerechtigungStudentenansicht'));
}
}
}
else
{
if($uid!=$projektarbeit_obj->student_uid)
die('Sie haben keine Berechtigung fuer diese Seite');
$ps = new prestudent();
$ps->getPrestudentsFromUid($uid);
foreach($ps->result as $p)
{
if($student->prestudent_id === $projektarbeit_obj->prestudent_id)
$allowed = true;
}
}
if(!$allowed)
{
die($p->t('abgabetool/keineBerechtigungStudentenansicht'));
}
echo '<!DOCTYPE HTML>
+9 -8
View File
@@ -15,14 +15,15 @@
* 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 >
* Authors: Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/prestudent.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
@@ -36,7 +37,7 @@ if(isset($_GET['student_uid']))
$uid = $_GET['student_uid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
if(isset($_GET['abgabe_id']))
$id = $_GET['abgabe_id'];
else
@@ -44,10 +45,10 @@ else
if(!is_numeric($id) || $id=='')
die($p->t('global/fehlerBeiDerParameteruebergabe'));
$student = new student();
if(!$student->load($uid))
die('Student wurde nicht gefunden');
$prestudent = new prestudent();
if(!$prestudent->getPrestudentsFromUid($uid) || count($prestudent->result) < 1)
die('Keinen Studenten gefunden');
if($getuid!=$uid)
{
@@ -70,4 +71,4 @@ if(file_exists($filename))
}
else
echo 'Datei existiert nicht';
?>
?>
+14 -12
View File
@@ -15,7 +15,8 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Manfred Kindl <manfred.kindl@technikum-wien.at>
* Authors: Manfred Kindl <manfred.kindl@technikum-wien.at> and
Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/dokument_export.class.php');
@@ -123,20 +124,21 @@ if (isset($lehrende->result))
//Studierende der LV laden und in ein Array schreiben
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr,
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, perskz,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_prestudent.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_prestudent.studiengang_kz AS stg_kz_student,
tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student ON(uid=student_uid)
campus.vw_student_lehrveranstaltung
JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id)
LEFT JOIN public.tbl_prestudent ON(vw_student_lehrveranstaltung.uid=tbl_prestudent.uid)
LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
LEFT JOIN public.tbl_studentlehrverband ON(public.tbl_prestudent.prestudent_id=tbl_studentlehrverband.prestudent_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.prestudent_id=tbl_prestudent.prestudent_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.prestudent_id)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($studiensemester)."'";
@@ -185,7 +187,7 @@ if($result = $db->db_query($qry))
$data[]=array('student'=>array(
'vorname'=>$row->vorname,
'nachname'=>$row->nachname,
'personenkennzeichen'=>trim($row->matrikelnr),
'personenkennzeichen'=>trim($row->perskz),
'matr_nr'=>$row->matr_nr,
'semester'=>$row->semester,
'verband'=>trim($row->verband),
@@ -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>.
*/
/**
*
@@ -27,7 +28,7 @@
require_once('../../../config/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
@@ -39,7 +40,7 @@
require_once('../../../include/lehrveranstaltung.class.php');
error_reporting(E_ALL);
ini_set('display_errors','1');
//Uebergabeparameter abpruefen
if(isset($_GET['stg'])) //Studiengang
{
@@ -48,21 +49,21 @@
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$stg='';
if(isset($_GET['sem'])) //Semester
{
if(is_numeric($_GET['sem']))
$sem=$_GET['sem'];
else
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$sem='';
if(isset($_GET['verband'])) //Verband
$verband=$_GET['verband'];
else
else
$verband='';
if(isset($_GET['gruppe'])) //Gruppe
$gruppe=$_GET['gruppe'];
@@ -70,17 +71,17 @@
$gruppe='';
if(isset($_GET['gruppe_kurzbz'])) //Einheit
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
else
$gruppe_kurzbz='';
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid = $_GET['lvid'];
else
else
die('Fehler bei der Parameteruebergabe');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
else
die('Studiensemester wurde nicht uebergeben');
$lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:'');
@@ -93,7 +94,7 @@
</head>
<body>
';
$stgobj=new studiengang();
$stgobj->load($stg);
//Logo
@@ -107,7 +108,7 @@ echo '<span style="font-size:17px; font-weight:bold;">Anwesenheitsliste '.$lvobj
$qry = "SELECT distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel, semester, verband, gruppe, gruppe_kurzbz from campus.vw_lehreinheit WHERE lehrveranstaltung_id='".addslashes($lvid)."' AND studiensemester_kurzbz='".addslashes($stsem)."'";
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'";
$gruppen='';
if($result = $db->db_query($qry))
{
@@ -124,7 +125,7 @@ if($result = $db->db_query($qry))
echo "<br>Gruppe: $gruppen";
echo "<br>Studiensemester: $stsem";
echo "
</td>
<td align='right'><img src='../../../skin/images/logo.jpg' width='130px'></td>
@@ -145,25 +146,25 @@ $stsem_obj = new studiensemester();
$stsem_obj->load($stsem);
$stsemdatumvon = $stsem_obj->start;
$stsemdatumbis = $stsem_obj->ende;
$qry = "SELECT
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_prestudent.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von,
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_prestudent ON(tbl_benutzer.uid=tbl_prestudent.uid)
LEFT JOIN public.tbl_studentlehrverband ON(public.tbl_prestudent.prestudent_id=tbl_studentlehrverband.prestudent_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.prestudent_id=tbl_prestudent.prestudent_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(public.tbl_prestudent.prestudent_id=tbl_bisio.prestudent_id)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."'";
if($lehreinheit_id!='')
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id='".addslashes($lehreinheit_id)."'";
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
if($result = $db->db_query($qry))
@@ -178,15 +179,15 @@ if($result = $db->db_query($qry))
{
if($elem->status=='Incoming')
$inc=' (i)';
else
else
$inc='';
if($elem->bisio_id!='' && $elem->status!='Incoming' && ($elem->bis > $stsemdatumvon || $elem->bis=='') && $elem->von < $stsemdatumbis) //Outgoing
$inc.=' (o)';
if($elem->note==6) //angerechnet
$inc.=' (ar)';
echo "<td>$elem->nachname $elem->vorname</td>";
echo "<td>".trim($elem->matrikelnr)."</td>";
echo '<td>'.$elem->semester.$elem->verband.$elem->gruppe.'</td>';
@@ -203,4 +204,4 @@ Fachhochschulstudiengang ('.strtoupper($stgobj->typ).') '.$stgobj->bezeichnung;
echo '</body>';
echo '</html>';
?>
?>
@@ -29,17 +29,17 @@
require_once('../../../config/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
// Pfad zu fpdf
define('FPDF_FONTPATH','../../../include/pdf/font/');
// library einbinden
require_once('../../../include/pdf/fpdf.php');
require_once('../../../include/person.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/studiensemester.class.php');
@@ -54,21 +54,21 @@
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$stg='';
if(isset($_GET['sem'])) //Semester
{
if(is_numeric($_GET['sem']))
$sem=$_GET['sem'];
else
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$sem='';
if(isset($_GET['verband'])) //Verband
$verband=$_GET['verband'];
else
else
$verband='';
if(isset($_GET['gruppe'])) //Gruppe
$gruppe=$_GET['gruppe'];
@@ -76,17 +76,17 @@
$gruppe='';
if(isset($_GET['gruppe_kurzbz'])) //Einheit
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
else
$gruppe_kurzbz='';
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid = $_GET['lvid'];
else
else
die('Fehler bei der Parameteruebergabe');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
else
die('Studiensemester wurde nicht uebergeben');
$lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:'');
@@ -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/cis.config.inc.php');
@@ -69,6 +70,7 @@ if (isset($_GET["download_abgabe"])){
$uebung_id = $_GET["uebung_id"];
$uid = $_GET['uid'];
$ueb = new uebung();
$ueb->load_studentuebung($uid, $uebung_id);
$ueb->load_abgabe($ueb->abgabe_id);
$filename = BENOTUNGSTOOL_PATH."abgabe/".$ueb->abgabedatei;
@@ -214,7 +216,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
$gruppe_bez = 'Alle Studienrende';
//Alle Studenten die dieser Lehreinheit zugeordnet sind
$qry_stud = "SELECT
vw_student.uid, vorname, nachname, matrikelnr,
vw_student.uid, vorname, nachname, matrikelnr,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe
FROM
campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe,
@@ -224,7 +226,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitgruppe.lehreinheit_id AND
vw_student.uid = tbl_benutzergruppe.uid AND
tbl_benutzergruppe.gruppe_kurzbz = tbl_lehreinheitgruppe.gruppe_kurzbz AND
vw_student.uid=tbl_studentlehrverband.student_uid AND
vw_student.prestudent_id=tbl_studentlehrverband.prestudent_id AND
tbl_studentlehrverband.studiensemester_kurzbz=tbl_lehreinheit.studiensemester_kurzbz
UNION
SELECT
@@ -236,7 +238,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
tbl_lehreinheitgruppe.studiengang_kz=tbl_studentlehrverband.studiengang_kz AND
tbl_lehreinheitgruppe.semester = tbl_studentlehrverband.semester AND
tbl_studentlehrverband.student_uid=vw_student.uid AND
tbl_studentlehrverband.prestudent_id=vw_student.prestudent_id AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitgruppe.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz AND
((tbl_lehreinheitgruppe.verband<>'' AND
@@ -284,7 +286,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
foreach($ueb_obj->uebungen as $row_ueb)
{
$qry = "SELECT sum(punkte) as punkte FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id)
WHERE uebung_id=".$db->db_add_param($row_ueb->uebung_id)." AND student_uid=".$db->db_add_param($row_stud->uid)." AND vorbereitet=true";
WHERE uebung_id=".$db->db_add_param($row_ueb->uebung_id)." AND uid=".$db->db_add_param($row_stud->uid)." AND vorbereitet=true";
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
@@ -306,7 +308,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
//mitarbeit
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($row_stud->uid);
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND uid=".$db->db_add_param($row_stud->uid);
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$mitarbeit=$row->mitarbeit;
@@ -426,7 +428,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
$lehreinheit_id = $_GET['lehreinheit_id'];
$gruppe_bez = 'Alle Studienrende';
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
//Alle Studenten die dieser Lehreinheit zugeordnet sind
@@ -505,7 +507,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
//mitarbeit heute
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($row_stud->uid);
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND uid=".$db->db_add_param($row_stud->uid);
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$worksheet->write($zeile,++$spalte,($row->mitarbeit_heute!=''?$row->mitarbeit_heute:'0'));
@@ -516,7 +518,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
//punkte insgesamt
$qry = "SELECT sum(tbl_beispiel.punkte) AS gesamt_ohne_mitarbeit FROM campus.tbl_uebung, campus.tbl_beispiel, campus.tbl_studentbeispiel WHERE
tbl_studentbeispiel.student_uid=".$db->db_add_param($row_stud->uid)." AND
tbl_studentbeispiel.uid=".$db->db_add_param($row_stud->uid)." AND
tbl_studentbeispiel.vorbereitet=true AND
tbl_uebung.lehreinheit_id=".$db->db_add_param($uebung_obj->lehreinheit_id, FHC_INTEGER)." AND
tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
@@ -532,7 +534,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
//mitarbeit insgesamt
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE student_uid=".$db->db_add_param($row_stud->uid)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
WHERE uid=".$db->db_add_param($row_stud->uid)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$worksheet->write($zeile,++$spalte,($row->mitarbeit_heute!=''?$row->mitarbeit_heute:'0'));
@@ -579,7 +581,7 @@ function addUser(student_uid)
if(isset($_POST['submit']))
{
//Update der Daten
$uids = split('#',$_POST['update_ids']);
$uids = explode('#',$_POST['update_ids']);
$uebung_obj = new uebung($uebung_id);
$beispiel_obj = new beispiel();
@@ -589,17 +591,17 @@ function addUser(student_uid)
{
if($uid!='')
{
if ($uebung_obj->beispiele)
{
if ($uebung_obj->beispiele)
{
foreach($beispiel_obj->beispiele as $bsp)
{
if(isset($_POST['update_'.$uid.'_'.$bsp->beispiel_id]))
$vorbereitet=true;
else
$vorbereitet=false;
$bsp_obj = new beispiel();
if(!$bsp_obj->studentbeispiel_exists($uid,$bsp->beispiel_id))
{
$new=true;
@@ -607,12 +609,13 @@ function addUser(student_uid)
$bsp_obj->insertvon = $user;
}
else
{
{
$bsp_obj->load_studentbeispiel($uid, $bsp->beispiel_id);
$new=false;
}
$bsp_obj->student_uid = $uid;
$bsp_obj->uid = $uid;
$bsp_obj->beispiel_id = $bsp->beispiel_id;
$bsp_obj->vorbereitet = $vorbereitet;
$bsp_obj->updateamum = date('Y-m-d H:i:s');
@@ -624,9 +627,10 @@ function addUser(student_uid)
}
else
{
if (!$uebung_obj->load_studentuebung($uid,$uebung_id))
{
$uebung_obj->student_uid = $uid;
$uebung_obj->uid = $uid;
$uebung_obj->mitarbeiter_uid = $user;
$uebung_obj->abgabe_id = null;
$uebung_obj->note = $_POST['update_'.$uid.'_note'];
@@ -638,20 +642,20 @@ function addUser(student_uid)
$uebung_obj->updatevon = null;
$uebung_obj->insertamum = date("Y-m-d H:i:s");
$uebung_obj->insertvon = $user;
$new = true;
$new = true;
}
else
{
$uebung_obj->load_studentuebung($uid,$uebung_id);
$uebung_obj->load_studentuebung($uid,$uebung_id);
$uebung_obj->mitarbeiter_uid = $user;
$uebung_obj->note = $_POST['update_'.$uid.'_note'];
$uebung_obj->benotungsdatum = date("Y-m-d H:i:s");
$uebung_obj->updateamum = date("Y-m-d H:i:s");
$uebung_obj->updatevon = $user;
$new = false;
$new = false;
}
$uebung_obj->studentuebung_save($new);
}
}
}
@@ -716,7 +720,7 @@ function addUser(student_uid)
$gruppe_bez = 'Alle Studierende';
//Alle Studenten die dieser lehreinheit zugeordnet sind
// studentenquery
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
/*
$qry_stud = "SELECT vw_student.uid, vorname, nachname FROM campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe
@@ -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/cis.config.inc.php');
@@ -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/cis.config.inc.php');
@@ -34,6 +35,7 @@ require_once('../../../../include/datum.class.php');
require_once('../../../../include/legesamtnote.class.php');
require_once('../../../../include/lvgesamtnote.class.php');
require_once('../../../../include/zeugnisnote.class.php');
require_once('../../../../include/prestudent.class.php');
$user = get_uid();
@@ -70,7 +72,7 @@ else
$datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:'');
//Kopfzeile
@@ -88,16 +90,16 @@ if($lehreinheit_id=='')
$note = $_REQUEST["note"];
// lvgesamtnote für studenten speichern
// lvgesamtnote für prestudenten speichern
if (isset($_REQUEST["submit"]) && ($prestudent_id != '') && ((($note>0) && ($note < 6)) || ($note == 7) || ($note==8) || ($note==16)) ){
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') && ((($note>0) && ($note < 6)) || ($note == 7) || ($note==8) || ($note==16)) ){
$jetzt = date("Y-m-d H:i:s");
$student_uid = $_REQUEST["student_uid"];
$jetzt = date("Y-m-d H:i:s");
//a new entry
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($student_uid,$lehreinheit_id))
{
$legesamtnote->student_uid = $student_uid;
if (!$legesamtnote->load($prestudent_id,$lehreinheit_id))
{
$legesamtnote->prestudent_id = $prestudent_id;
$legesamtnote->lehreinheit_id = $lehreinheit_id;
$legesamtnote->note = $_REQUEST["note"];
$legesamtnote->benotungsdatum = $jetzt;
@@ -107,9 +109,10 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') && ((($note>0
$legesamtnote->insertvon = $user;
$legesamtnote->new = true;
$response = "neu";
}
else
{
}
//update
else
{
$legesamtnote->note = $_REQUEST["note"];
$legesamtnote->benotungsdatum = $jetzt;
$legesamtnote->updateamum = $jetzt;
@@ -76,7 +76,7 @@ if($stsem!='' && !check_stsem($stsem))
$datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:'');
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
@@ -132,23 +132,23 @@ $uid = (isset($_GET['uid'])?$_GET['uid']:'');
alert("Fehler beim Erstellen des Anfrageobjekts!");
}
function saveLENote(uid)
function saveLENote(prestudent_id)
{
note = document.getElementById(uid).note.value;
note = document.getElementById(prestudent_id).note.value;
if ((note < 0) || (note > 5 && note != 8 && note != 7 && note!=16))
{
alert("<?php echo $p->t('benotungstool/noteEingeben');?>");
document.getElementById(uid).note.value="";
document.getElementById(prestudent_id).note.value="";
}
else
{
erzeugeAnfrage();
//note = document.getElementById(uid).note.value;
stud_uid = uid;
//note = document.getElementById(prestudent_id).note.value;
student_prestudent_id = prestudent_id;
var jetzt = new Date();
var ts = jetzt.getTime();
var url= '<?php echo "legesamtnoteeintragen.php?lvid=".addslashes($lvid)."&lehreinheit_id=".addslashes($lehreinheit_id)."&stsem=".addslashes($stsem); ?>';
url += '&submit=1&student_uid='+uid+"&note="+note+"&"+ts;
url += '&submit=1&prestudent_id='+prestudent_id+"&note="+note+"&"+ts;
anfrage.open("GET", url, true);
anfrage.onreadystatechange = updateSeite;
anfrage.send(null);
@@ -161,13 +161,13 @@ $uid = (isset($_GET['uid'])?$_GET['uid']:'');
{
if (anfrage.status == 200)
{
uid = stud_uid;
var note = document.getElementById(uid).note.value;
prestudent_id = student_prestudent_id;
var note = document.getElementById(prestudent_id).note.value;
var resp = anfrage.responseText;
if (resp == "neu" || resp == "update")
{
notentd = document.getElementById("note_"+uid);
notentd = document.getElementById("note_"+prestudent_id);
while (notentd.childNodes.length>0)
{
notentd.removeChild(notentd.lastChild);
@@ -178,7 +178,7 @@ $uid = (isset($_GET['uid'])?$_GET['uid']:'');
else
{
alert(resp);
document.getElementById(uid).note.value="";
document.getElementById(prestudent_id).note.value="";
}
}
else
@@ -324,14 +324,16 @@ echo "<br><a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehrei
*/
// legesamtnote für studenten speichern
if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != '')){
if (isset($_REQUEST["submit"]) && ($_POST["prestudent_id"] != '')){
$jetzt = date("Y-m-d H:i:s");
$student_uid = $_POST["student_uid"];
$prestudent_id = $_POST["prestudent_id"];
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($student_uid,$lehreinheit_id))
{
$legesamtnote->student_uid = $student_uid;
if (!$legesamtnote->load($prestudent_id,$lehreinheit_id))
{
$legesamtnote->prestudent_id = $prestudent_id;
$legesamtnote->lehreinheit_id = $lehreinheit_id;
$legesamtnote->note = $_POST["note"];
$legesamtnote->benotungsdatum = $jetzt;
@@ -340,9 +342,9 @@ if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != '')){
$legesamtnote->insertamum = $jetzt;
$legesamtnote->insertvon = $user;
$legesamtnote->new = true;
}
else
{
}
else
{
$legesamtnote->note = $_POST["note"];
$legesamtnote->benotungsdatum = $jetzt;
$legesamtnote->updateamum = $jetzt;
@@ -416,7 +418,7 @@ echo "
*/
// studentenquery
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
$qry_stud = "SELECT uid, prestudent_id, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
if($result_stud = $db->db_query($qry_stud))
{
@@ -427,8 +429,8 @@ if($result_stud = $db->db_query($qry_stud))
$studentnote->calc_gesamtnote($lehreinheit_id,$stsem,$row_stud->uid);
//echo $studentnote->debug;
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($row_stud->uid,$lehreinheit_id))
{
if (!$legesamtnote->load($row_stud->prestudent_id,$lehreinheit_id))
{
$note = null;
}
else
@@ -455,11 +457,11 @@ if($result_stud = $db->db_query($qry_stud))
echo "<span class='negativ'>X</span>";
else
echo "ok";
echo "</td>";
echo "</td>";
if ($note)
$note_final = $note;
else
{
{
if ($studentnote->negativ)
$note_final = 5;
else
@@ -469,12 +471,12 @@ if($result_stud = $db->db_query($qry_stud))
$note_final = null;
}
}
echo "<form accept-charset='UTF-8' name='$row_stud->uid' id='$row_stud->uid' method='POST' action='legesamtnoteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem'><td><input type='hidden' name='student_uid' value='$row_stud->uid'><input type='text' size='1' value='$note_final' name='note'><input type='button' value='->' onclick='saveLENote(\"$row_stud->uid\")'></td></form>";
echo "<form accept-charset='UTF-8' name='$row_stud->uid' id='$row_stud->prestudent_id' method='POST' action='legesamtnoteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem'><td><input type='hidden' name='prestudent_id' value='$row_stud->prestudent_id'><input type='text' size='1' value='$note_final' name='note'><input type='button' value='->' onclick='saveLENote(\"$row_stud->prestudent_id\")'></td></form>";
if ($note == 5)
$negmarkier = " style='color:red; font-weight:bold;'";
else
$negmarkier = "";
echo "<td align='center' id='note_$row_stud->uid'><span".$negmarkier.">$note</span></td>";
$negmarkier = "";
echo "<td align='center' id='note_$row_stud->prestudent_id'><span".$negmarkier.">$note</span></td>";
echo "</tr>";
$i++;
}
@@ -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/cis.config.inc.php');
@@ -37,7 +38,6 @@ require_once('../../../../include/lvgesamtnote.class.php');
require_once('../../../../include/zeugnisnote.class.php');
require_once('../../../../include/person.class.php');
require_once('../../../../include/benutzer.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/zeugnisnote.class.php');
require_once('../../../../include/notenschluessel.class.php');
@@ -113,20 +113,19 @@ if(!$rechte->isBerechtigt('admin',0) &&
}
}
function savenote($db,$lvid, $student_uid, $note, $punkte=null)
function savenote($db,$lvid, $prestudent_id, $note, $punkte=null)
{
global $stsem, $user, $p, $noten_anmerkung;
$jetzt = date("Y-m-d H:i:s");
$punkte = str_replace(',','.',$punkte);
//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);
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)." AND lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)==0)
{
$student = new student();
$student->load($student_uid);
return $p->t('benotungstool/studentIstLvNichtZugeordnet', array($student->nachname, $student->vorname, trim($student->matrikelnr)))."\n";
$prestudent = new prestudent($prestudent_id);
return $p->t('benotungstool/studentIstLvNichtZugeordnet', array($prestudent->nachname, $prestudent->vorname, trim($prestudent->perskz)))."\n";
}
}
@@ -154,10 +153,12 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
$note = $noten_anmerkung[$note];
}
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
if (!$lvgesamtnote->load($lvid, $prestudent_id, $stsem))
{
$lvgesamtnote->prestudent_id = $prestudent_id;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = trim($note);
@@ -173,9 +174,9 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
$lvgesamtnote->punkte = $punkte;
$new = true;
$response = "neu";
}
else
{
}
else
{
$lvgesamtnote->note = trim($note);
$lvgesamtnote->punkte = $punkte;
$lvgesamtnote->benotungsdatum = $jetzt;
@@ -197,18 +198,17 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
if (isset($_REQUEST["submit"]))
{
$lvid = $_REQUEST["lvid"];
if(isset($_REQUEST["student_uid"]) && $_REQUEST["student_uid"] != '')
if(isset($_REQUEST["prestudent_id"]) && is_numeric($_REQUEST["prestudent_id"]))
{
$student_uid = $_REQUEST["student_uid"];
$prestudent_id = $_REQUEST["prestudent_id"];
$note = $_REQUEST["note"];
$punkte = (isset($_REQUEST["punkte"])?$_REQUEST["punkte"]:'');
$response = savenote($db,$lvid, $student_uid, $note, $punkte);
$response = savenote($db,$lvid, $prestudent_id, $note, $punkte);
echo $response;
}
else
{
foreach ($_POST as $row=>$val)
{
if(mb_strstr(mb_strtolower($row), 'matrikelnr_'))
@@ -229,9 +229,10 @@ if (isset($_REQUEST["submit"]))
continue;
}
$punkte=str_replace(',','.', $punkte);
//UID ermitteln
$student = new student();
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer))
//PreID ermitteln
$prestudent = new prestudent();
if(!$prestudent->loadFromPerskz($matrikelnummer))
{
$response.="\n".$p->t('benotungstool/studentMitMatrikelnummerExistiertNicht',array($matrikelnummer));
continue;
@@ -239,12 +240,12 @@ if (isset($_REQUEST["submit"]))
// Hole Zeugnisnote wenn schon eine eingetragen ist
/*
if ($zeugnisnote = new zeugnisnote($lvid, $student_uid, $stsem))
if ($zeugnisnote = new zeugnisnote($lvid, $prestudent->prestudent_id, $stsem))
$znote = $zeugnisnote->note;
else
$znote = null;
*/
$val=savenote($db,$lvid, $student_uid, $note, $punkte);
$val=savenote($db,$lvid, $prestudent->prestudent_id, $note, $punkte);
if($val!='neu' && $val!='update' && $val!='update_f')
$response.=$val;
}
@@ -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');
require_once('../../../../config/global.config.inc.php');
@@ -206,7 +207,7 @@ foreach($noten_obj->result as $row)
var ts = jetzt.getTime();
var url= '<?php echo "lvgesamtnoteeintragen.php?lvid=".urlencode($lvid)."&stsem=".urlencode($stsem); ?>';
url += '&submit=1&student_uid='+encodeURIComponent(uid)+"&note="+encodeURIComponent(note)+"&punkte="+encodeURIComponent(punkte)+"&"+ts;
url += '&submit=1&student_uid='+encodeURIComponent(uid)+"&note="+encodeURIComponent(note)+"&punkte="+encodeURIComponent(punkte)+"&"+ts;
$.ajax({
type:"GET",
@@ -324,13 +325,13 @@ foreach($noten_obj->result as $row)
document.nachpruefung_form.note.value = "9";
note = "9";
}
var uid = document.nachpruefung_form.uid.value;
var prestudent_id = document.nachpruefung_form.prestudent_id.value;
var lehreinheit_id = document.nachpruefung_form.le_id.value;
var jetzt = new Date();
var ts = jetzt.getTime();
var url= '<?php echo "nachpruefungeintragen.php?lvid=$lvid&stsem=$stsem"; ?>';
url += '&submit=1&student_uid='+uid+'&note='+note+'&datum='+datum+'&lehreinheit_id_pr='+lehreinheit_id+'&punkte='+punkte+'&typ='+typ+'&'+ts;
url += '&submit=1&prestudent_id='+prestudent_id+'&note='+note+'&datum='+datum+'&lehreinheit_id_pr='+lehreinheit_id+'&punkte='+punkte+'&typ='+typ+'&'+ts;
$.ajax({
type:"GET",
@@ -699,7 +700,7 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
// studentenquery
$qry_stud = "SELECT
DISTINCT uid, vorname, nachname, matrikelnr
DISTINCT uid, prestudent_id, vorname, nachname, matrikelnr
FROM
campus.vw_student_lehrveranstaltung
JOIN campus.vw_student USING(uid)
@@ -707,20 +708,20 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
studiensemester_kurzbz = ".$db->db_add_param($stsem)."
AND lehrveranstaltung_id = ".$db->db_add_param($lvid, FHC_INTEGER)."
ORDER BY nachname, vorname ";
if($result_stud = $db->db_query($qry_stud))
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
$lvgesamtnote = new lvgesamtnote();
if ($lvgesamtnote->load($lvid,$row_stud->uid,$stsem))
if ($lvgesamtnote->load($lvid,$row_stud->prestudent_id,$stsem))
{
if ($lvgesamtnote->benotungsdatum > $lvgesamtnote->freigabedatum)
{
$lvgesamtnote->freigabedatum = $jetzt;
$lvgesamtnote->freigabevon_uid = $user;
$lvgesamtnote->save($new=null);
$studlist .= "<tr><td>".trim($row_stud->matrikelnr)."</td>";
$lvgesamtnote->freigabedatum = $jetzt;
$lvgesamtnote->freigabevon_uid = $user;
$lvgesamtnote->save($new=null);
$studlist .= "<tr><td>".trim($row_stud->matrikelnr)."</td>";
$studlist .= "<td>".trim($row_stud->nachname)."</td>";
$studlist .= "<td>".trim($row_stud->vorname)."</td>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
@@ -846,8 +847,8 @@ echo "
{
echo "<th>".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."</th>";
}
echo "<th>".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')."</th>
<th rowspan=2>".$p->t('benotungstool/lvNote')."<br>
<input type='button' onclick='GradeImport()' value='".$p->t('benotungstool/importieren')."'>
@@ -874,7 +875,7 @@ echo "
echo "<th colspan='2'>".$p->t('benotungstool/kommissionellePruefung')."</th>";
}
echo "
</tr>
<tr>
<th colspan='9'>&nbsp;</th>";
@@ -890,7 +891,7 @@ echo "
</table>
</th>";
}
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN3') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN3)
{
echo "<th colspan='2'>
@@ -903,7 +904,7 @@ echo "
</table>
</th>";
}
if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF)
{
echo "
@@ -973,7 +974,7 @@ echo "
// studentenquery
$qry_stud = "SELECT
DISTINCT uid, vorname, nachname, matrikelnr
DISTINCT uid, prestudent_id, vorname, nachname, matrikelnr
FROM
campus.vw_student_lehrveranstaltung
JOIN campus.vw_student USING(uid)
@@ -981,8 +982,8 @@ echo "
studiensemester_kurzbz = ".$db->db_add_param($stsem)."
AND lehrveranstaltung_id = ".$db->db_add_param($lvid)."
ORDER BY nachname, vorname ";
$mdldaten=null;
if($result_stud = $db->db_query($qry_stud))
$mdldaten=null;
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
$errorshown=false;
@@ -1003,177 +1004,176 @@ echo "
$note_le_gewichtet=0;
$gewichtsumme=0;
$note=0;
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)
{
if($grade_from_moodle)
{
//Moodle 1.9
// Alle Moodlekursdaten zu Lehreinheit und Semester lesen wenn noch nicht belegt.
if (is_null($mdldaten) && defined('CONN_STRING_MOODLE'))
{
//Noten aus Moodle
if (!isset($moodle_course))
$moodle_course = new moodle19_course();
if (!$mdldaten = $moodle_course->loadNoten($lvid, $stsem, '', true,$debg))
$mdldaten='';
}
// Verarbeitet die Kursdaten
if (!is_null($mdldaten) && is_array($mdldaten))
{
reset($mdldaten);
$title="";
$mdl_shortname='';
for ($imdldaten=0;$imdldaten<count($mdldaten) ;$imdldaten++)
{
$mdldata=$mdldaten[$imdldaten]->result;
$kursArr=(isset($mdldata[2])?$mdldata[2]:array());
$kursasObj=(isset($mdldata[3])?$mdldata[3]:array());
$kursname=(isset($mdldata[7])?$mdldata[7]:'');
$shortname=(isset($mdldata[8])?$mdldata[8]:'');
$note=0;
$userGef=false;
reset($kursArr);
for ($iKurs=0;$iKurs<count($kursArr) ;$iKurs++)
{
if (isset($kursArr[$iKurs]) && isset($kursArr[$iKurs][2]) && isset($kursArr[$iKurs][6]) && strtolower(trim($row_stud->uid))==strtolower(trim($kursArr[$iKurs][2])) )
{
$note=trim($kursArr[$iKurs][6]);
$userGef=true;
if (is_numeric($note) || $debg)
{
if (is_numeric($note))
{
$note_le += $note;
$note_le_gewichtet +=$note*$gewichtung;
$gewichtsumme+=$gewichtung;
$le_anz += 1;
}
if ($note == 5)
$leneg = " style='color:red; font-weight:bold'";
else
$leneg = " style='font-weight:bold'";
$mdl_shortname=$mdldaten[$imdldaten]->mdl_shortname;
$title="\r\nMoodle 1.9 KursID: ".$mdldaten[$imdldaten]->mdl_course_id ."\r\n\r\n".$kursname.', '.$mdl_shortname."\r\n";
foreach ($kursasObj[$iKurs] as $key => $value)
{
$title.=$key."=>".$value."\r\n";
}
$note_les_str .= "<span ".$leneg.">".$note."</span> <span title='".$title."' style='font-size:10px'>(".$mdl_shortname.")</span> ";
}
} // ende If Richtiger User
if ($userGef)
{
$iKurs=count($kursArr)+1; // diesen USER for beenden - user wurde gefunden
}
} // ende Kursschleife
} // MoodleKurse abarbeiten
#echo "<p><h1> $title Anzahl Noten gef. $le_anz $note_le </h1></p>";
}
else
{
if(defined('CONN_STRING_MOODLE'))
{
//den Error nur einmal anzeigen und nicht fuer jeden Studenten
$moodle_course->errormsg=trim($moodle_course->errormsg);
if(!$errorshown && !empty($moodle_course->errormsg) )
{
//echo '<br><b>'.$moodle_course->errormsg.'</b><br>';
$errorshown=true;
}
}
}
// Moodle 2.4
if(isset($moodle24) && count($moodle24->result)>0)
{
foreach($moodle24->result as $moodle24_noten)
{
if($moodle24_noten->uid==$row_stud->uid)
{
$gewichtung=1;
$note_le+=$moodle24_noten->note;
if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id]))
$gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id];
if($gewichtung=='')
$gewichtung=1;
$note_le_gewichtet+=$moodle24_noten->note*$gewichtung;
$gewichtsumme+=$gewichtung;
$le_anz+=1;
//if ($moodle24_noten->note == 5)
// $leneg = " style='color:red; font-weight:bold'";
//else
$leneg = ' style="font-weight: bold;"';
$title="Moodle KursID: ".$moodle24_noten->mdl_course_id.
"\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].
"\nUser: ".$moodle24_noten->uid.
"\nNote: ".$moodle24_noten->note;
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
$title.="\nGewichtung: ".$gewichtung;
$note_les_str .= "<br><span".$leneg.">".$moodle24_noten->note."</span><span title='".$title."' style='font-size:10px'> (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].")</span> ";
}
}
}
}
else
{
//Noten aus Uebungstool
$le = new lehreinheit();
$le->load_lehreinheiten($lvid, $stsem);
foreach($le->lehreinheiten as $l)
{
$legesamtnote = new legesamtnote($l->lehreinheit_id);
if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id))
{
//$note_les_str .= "- (".$l->lehreinheit_id.")";
}
else
{
$note_le += $legesamtnote->note;
$gewicht = $l->gewicht;
if($l->gewicht=='')
$gewicht = 1;
$note_le_gewichtet+=$legesamtnote->note*$gewicht;
$gewichtsumme+=$gewicht;
$le_anz += 1;
if ($legesamtnote->note == 5)
$leneg = " style='color:red; font-weight:bold'";
else
$leneg = "";
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
$title='Gewichtung: '.$l->gewicht;
else
$title='';
$note_les_str .= '<span title="'.$title.'"><span'.$leneg.'>'.$legesamtnote->note.'</span> ('.$l->lehreinheit_id.') </span>';
}
}
}
}
if ($lvgesamtnote = new lvgesamtnote($lvid,$row_stud->uid,$stsem))
{
$note_lv = $lvgesamtnote->note;
$punkte_lv = $lvgesamtnote->punkte;
}
else
if(defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE)
{
$note_lv = null;
if($grade_from_moodle)
{
//Moodle 1.9
// Alle Moodlekursdaten zu Lehreinheit und Semester lesen wenn noch nicht belegt.
if (is_null($mdldaten) && defined('CONN_STRING_MOODLE'))
{
//Noten aus Moodle
if (!isset($moodle_course))
$moodle_course = new moodle19_course();
if (!$mdldaten = $moodle_course->loadNoten($lvid, $stsem, '', true,$debg))
$mdldaten='';
}
// Verarbeitet die Kursdaten
if (!is_null($mdldaten) && is_array($mdldaten))
{
reset($mdldaten);
$title="";
$mdl_shortname='';
for ($imdldaten=0;$imdldaten<count($mdldaten) ;$imdldaten++)
{
$mdldata=$mdldaten[$imdldaten]->result;
$kursArr=(isset($mdldata[2])?$mdldata[2]:array());
$kursasObj=(isset($mdldata[3])?$mdldata[3]:array());
$kursname=(isset($mdldata[7])?$mdldata[7]:'');
$shortname=(isset($mdldata[8])?$mdldata[8]:'');
$note=0;
$userGef=false;
reset($kursArr);
for ($iKurs=0;$iKurs<count($kursArr) ;$iKurs++)
{
if (isset($kursArr[$iKurs]) && isset($kursArr[$iKurs][2]) && isset($kursArr[$iKurs][6]) && strtolower(trim($row_stud->uid))==strtolower(trim($kursArr[$iKurs][2])) )
{
$note=trim($kursArr[$iKurs][6]);
$userGef=true;
if (is_numeric($note) || $debg)
{
if (is_numeric($note))
{
$note_le += $note;
$note_le_gewichtet +=$note*$gewichtung;
$gewichtsumme+=$gewichtung;
$le_anz += 1;
}
if ($note == 5)
$leneg = " style='color:red; font-weight:bold'";
else
$leneg = " style='font-weight:bold'";
$mdl_shortname=$mdldaten[$imdldaten]->mdl_shortname;
$title="\r\nMoodle 1.9 KursID: ".$mdldaten[$imdldaten]->mdl_course_id ."\r\n\r\n".$kursname.', '.$mdl_shortname."\r\n";
foreach ($kursasObj[$iKurs] as $key => $value)
{
$title.=$key."=>".$value."\r\n";
}
$note_les_str .= "<span ".$leneg.">".$note."</span> <span title='".$title."' style='font-size:10px'>(".$mdl_shortname.")</span> ";
}
} // ende If Richtiger User
if ($userGef)
{
$iKurs=count($kursArr)+1; // diesen USER for beenden - user wurde gefunden
}
} // ende Kursschleife
} // MoodleKurse abarbeiten
#echo "<p><h1> $title Anzahl Noten gef. $le_anz $note_le </h1></p>";
}
else
{
if(defined('CONN_STRING_MOODLE'))
{
//den Error nur einmal anzeigen und nicht fuer jeden Studenten
$moodle_course->errormsg=trim($moodle_course->errormsg);
if(!$errorshown && !empty($moodle_course->errormsg) )
{
//echo '<br><b>'.$moodle_course->errormsg.'</b><br>';
$errorshown=true;
}
}
}
// Moodle 2.4
if(isset($moodle24) && count($moodle24->result)>0)
{
foreach($moodle24->result as $moodle24_noten)
{
if($moodle24_noten->uid==$row_stud->uid)
{
$gewichtung=1;
$note_le+=$moodle24_noten->note;
if(isset($moodle24_course_gewicht[$moodle24_noten->mdl_course_id]))
$gewichtung=$moodle24_course_gewicht[$moodle24_noten->mdl_course_id];
if($gewichtung=='')
$gewichtung=1;
$note_le_gewichtet+=$moodle24_noten->note*$gewichtung;
$gewichtsumme+=$gewichtung;
$le_anz+=1;
//if ($moodle24_noten->note == 5)
// $leneg = " style='color:red; font-weight:bold'";
//else
$leneg = ' style="font-weight: bold;"';
$title="Moodle KursID: ".$moodle24_noten->mdl_course_id.
"\nKursbezeichnung: ".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].
"\nUser: ".$moodle24_noten->uid.
"\nNote: ".$moodle24_noten->note;
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
$title.="\nGewichtung: ".$gewichtung;
$note_les_str .= "<br><span".$leneg.">".$moodle24_noten->note."</span><span title='".$title."' style='font-size:10px'> (".$moodle24_course_bezeichnung[$moodle24_noten->mdl_course_id].")</span> ";
}
}
}
}
else
{
//Noten aus Uebungstool
$le = new lehreinheit();
$le->load_lehreinheiten($lvid, $stsem);
foreach($le->lehreinheiten as $l)
{
$legesamtnote = new legesamtnote($l->lehreinheit_id);
if (!$legesamtnote->load($row_stud->prestudent_id,$l->lehreinheit_id))
{
//$note_les_str .= "- (".$l->lehreinheit_id.")";
}
else
{
$note_le += $legesamtnote->note;
$gewicht = $l->gewicht;
if($l->gewicht=='')
$gewicht = 1;
$note_le_gewichtet+=$legesamtnote->note*$gewicht;
$gewichtsumme+=$gewicht;
$le_anz += 1;
if ($legesamtnote->note == 5)
$leneg = " style='color:red; font-weight:bold'";
else
$leneg = "";
if(defined('CIS_GESAMTNOTE_GEWICHTUNG') && CIS_GESAMTNOTE_GEWICHTUNG)
$title='Gewichtung: '.$l->gewicht;
else
$title='';
$note_les_str .= '<span title="'.$title.'"><span'.$leneg.'>'.$legesamtnote->note.'</span> ('.$l->lehreinheit_id.') </span>';
}
}
}
}
if ($lvgesamtnote = new lvgesamtnote($lvid,$row_stud->prestudent_id,$stsem))
{
$note_lv = $lvgesamtnote->note;
$punkte_lv = $lvgesamtnote->punkte;
}
else
{
$note_lv = null;
$punkte_lv = null;
}
@@ -1213,7 +1213,7 @@ echo "
}
else
$note_vorschlag = null;
if ($zeugnisnote = new zeugnisnote($lvid, $row_stud->uid, $stsem))
if ($zeugnisnote = new zeugnisnote($lvid, $row_stud->prestudent_id, $stsem))
$znote = $zeugnisnote->note;
else
$znote = null;
@@ -1443,7 +1443,7 @@ echo "
echo "<th colspan='6'></td>";
}
echo "<th style='color:red; font-weight:bold;' title='".$p->t('benotungstool/anzahlNegativerBeurteilungen')."'>$summe_ng</th>";
if(defined('CIS_GESAMTNOTE_PRUEFUNG_TERMIN2') && CIS_GESAMTNOTE_PRUEFUNG_TERMIN2): ?>
<th style='font-weight:bold;' colspan='2' title='"<?php echo $p->t('benotungstool/anzahlNachpruefungen'); ?>"'>$summe_t2</th>;
<?php endif;
@@ -1452,7 +1452,7 @@ echo "
<?php endif;
if(defined('CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF') && CIS_GESAMTNOTE_PRUEFUNG_KOMMPRUEF): ?>
<th style='font-weight:bold;' colspan='2' title='"<?php echo $p->t('benotungstool/anzahlKommisionellePruefungen'); ?>"'>$summe_komm</th>
<?php endif;
<?php endif;
echo "
</tr>
</table>
@@ -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');
@@ -39,7 +40,6 @@ require_once('../../../../include/pruefung.class.php');
require_once('../../../../include/mail.class.php');
require_once('../../../../include/benutzerfunktion.class.php');
require_once('../../../../include/benutzer.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/notenschluessel.class.php');
if (!$db = new basis_db())
@@ -87,14 +87,14 @@ else
$stsem = '';
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:'');
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
$student_uid = $_REQUEST["student_uid"];
$prestudent_id = $_REQUEST["prestudent_id"];
$note = $_REQUEST["note"];
if(isset($_REQUEST['punkte']))
@@ -134,7 +134,7 @@ if($note=='')
$old_note = $note;
// lvgesamtnote für studenten speichern
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
if (isset($_REQUEST["submit"]) && (is_numeric($_REQUEST["prestudent_id"])) )
{
// Die Pruefung muss einer Lehreinheit zugeordnet werden
// deshalb wird hier versucht eine passende Lehreinheit zu ermitteln.
@@ -142,11 +142,11 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz
FROM
campus.vw_student_lehrveranstaltung
JOIN campus.vw_student using(uid)
JOIN campus.vw_student using(prestudent_id)
WHERE
studiensemester_kurzbz = ".$db->db_add_param($stsem)."
AND lehrveranstaltung_id = ".$db->db_add_param($lvid, FHC_INTEGER)."
AND uid=".$db->db_add_param($student_uid)."
AND prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)."
ORDER BY lehrform_kurzbz DESC";
if($result_stud = $db->db_query($qry_stud))
@@ -167,14 +167,14 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
// 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($prestudent_id, "Termin1", $lvid, $stsem))
{
if ($pr->result)
$termin1 = 1;
else
{
$lvnote = new lvgesamtnote();
if ($lvnote->load($lvid, $student_uid, $stsem))
if ($lvnote->load($lvid, $prestudent_id, $stsem))
{
$pr_note = $lvnote->note;
$pr_punkte = $lvnote->punkte;
@@ -188,7 +188,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
$pr_1 = new Pruefung();
$pr_1->lehreinheit_id = $lehreinheit_id;
$pr_1->student_uid = $student_uid;
$pr_1->prestudent_id = $prestudent_id;
$pr_1->mitarbeiter_uid = $user;
$pr_1->note = $pr_note;
$pr_1->punkte = $pr_punkte;
@@ -210,7 +210,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
$pr_2 = new Pruefung();
// Die Pruefung wird als Termin2 eingetragen
if ($prTermin2->getPruefungen($student_uid, $typ, $lvid, $stsem))
if ($prTermin2->getPruefungen($prestudent_id, $typ, $lvid, $stsem))
{
if ($prTermin2->result)
{
@@ -227,7 +227,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
else
{
$pr_2->lehreinheit_id = $lehreinheit_id;
$pr_2->student_uid = $student_uid;
$pr_2->prestudent_id = $prestudent_id;
$pr_2->mitarbeiter_uid = $user;
$pr_2->note = $note;
$pr_2->punkte = $punkte;
@@ -250,10 +250,11 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
$jetzt = date("Y-m-d H:i:s");
$lvid = $_REQUEST["lvid"];
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
if (!$lvgesamtnote->load($lvid, $prestudent_id, $stsem))
{
$lvgesamtnote->prestudent_id = $prestudent_id;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = $note;
@@ -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');
@@ -344,7 +345,7 @@ if(isset($uebung_id) && $uebung_id!='')
</td>
</tr>';
$i=0;
$qry_cnt = "SELECT distinct student_uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." GROUP BY student_uid";
$qry_cnt = "SELECT distinct prestudent_id FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." GROUP BY uid";
if($result_cnt = $db->db_query($qry_cnt))
$gesamt=$db->db_num_rows($result_cnt);
@@ -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>.
*/
// ********************
// * Studentenansicht fuers Kreuzerltool
@@ -52,7 +53,7 @@ $user = get_uid();
$lektorenansicht = 0;
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
$lehrveranstaltung_id = $_GET['lvid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
@@ -77,7 +78,7 @@ if(check_lektor($user) && (isset($_GET['uid']) && $_GET["uid"] != ""))
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
if(!$lv_obj->load($lehrveranstaltung_id))
die($lv_obj->errormsg);
//Studiengang laden
@@ -94,7 +95,9 @@ $datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
//Abgabedatei ausliefern
if (isset($_GET["download_abgabe"])){
if (isset($_GET["download_abgabe"]))
{
$file=$_GET["download_abgabe"];
$uebung_id = $_GET["uebung_id"];
$ueb = new uebung();
@@ -174,11 +177,13 @@ if (isset($_POST["abgabe"]))
$abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei;
$uebung_obj = new uebung();
$uebung_obj->load_studentuebung($user, $uebung_id);
if ($uebung_obj->errormsg != "")
{
$uebung_obj->student_uid = $user;
$uebung_obj->uid = $user;
$uebung_obj->mitarbeiter_uid = null;
$uebung_obj->abgabe_id = null;
$uebung_obj->uebung_id = $uebung_id;
@@ -257,17 +262,17 @@ $qry = "SELECT distinct lehreinheit_id, lehrfach.kurzbz FROM lehre.tbl_lehreinhe
WHERE tbl_benutzergruppe.uid=".$db->db_add_param($user)." AND
tbl_lehreinheitgruppe.lehreinheit_id IN(
SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id)
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem).")
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER)." AND tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem).")
UNION
SELECT
lehreinheit_id
FROM
public.tbl_student, lehre.tbl_lehreinheitgruppe, public.tbl_studentlehrverband
public.tbl_prestudent, lehre.tbl_lehreinheitgruppe, public.tbl_studentlehrverband
WHERE
tbl_student.student_uid=".$db->db_add_param($user)." AND
tbl_studentlehrverband.student_uid=tbl_student.student_uid AND
tbl_prestudent.uid=".$db->db_add_param($user)." AND
tbl_studentlehrverband.prestudent_id=tbl_prestudent.prestudent_id AND
tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND
tbl_student.studiengang_kz=tbl_lehreinheitgruppe.studiengang_kz AND
tbl_prestudent.studiengang_kz=tbl_lehreinheitgruppe.studiengang_kz AND
tbl_lehreinheitgruppe.gruppe_kurzbz is null AND
tbl_studentlehrverband.semester=tbl_lehreinheitgruppe.semester AND
(
@@ -298,8 +303,8 @@ $qry = "SELECT distinct lehreinheit_id, lehrfach.kurzbz FROM lehre.tbl_lehreinhe
)
AND
tbl_lehreinheitgruppe.lehreinheit_id IN(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id)
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem)."))";
//echo $qry;
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER)." AND tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem)."))";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>1)
@@ -347,7 +352,7 @@ if($result = $db->db_query($qry))
$gruppen.=' ';
}
}
echo "<OPTION value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id".(isset($uid) && $uid!=''?'&uid='.$uid:'')."' $selected>$row->kurzbz - $gruppen $lektoren</OPTION>\n";
echo "<OPTION value='studentenansicht.php?lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id".(isset($uid) && $uid!=''?'&uid='.$uid:'')."' $selected>$row->kurzbz - $gruppen $lektoren</OPTION>\n";
}
echo '</SELECT> ';
}
@@ -396,72 +401,72 @@ if (!isset($_GET["notenuebersicht"]))
$l = 1;
}
}
if ($l > 0)
{
echo "<br><b>".$p->t('lehre/leistungsuebersicht')." / <a href='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&notenuebersicht=1&uid=$user'>".$p->t('benotungstool/notenuebersichtFuer')." $name</b><br><br>";
echo "<br><b>".$p->t('lehre/leistungsuebersicht')." / <a href='studentenansicht.php?lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id&notenuebersicht=1&uid=$user'>".$p->t('benotungstool/notenuebersichtFuer')." $name</b><br><br>";
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,1);
if(count($uebung_obj->uebungen)>0)
{
echo "<table width='100%'><tr><td valign='top'>";
echo "<br>".$p->t('benotungstool/waehlenSieEineAufgabeAus').": <SELECT name='uebung' onChange=\"MM_jumpMenu('self',this,0)\">\n";
echo "<option value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uid=$user' selected></option>";
echo "<option value='studentenansicht.php?lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uid=$user' selected></option>";
foreach ($uebung_obj->uebungen as $row)
{
if($uebung_id == $row->uebung_id)
$selected = 'selected';
else
$selected = '';
$selected = '';
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id);
if(count($subuebung_obj->uebungen)>0)
{
$disabled = 'disabled';
$selected = '';
echo "<OPTION style='background-color:#cccccc;' value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id&uid=$user' $selected $disabled>";
echo "<OPTION style='background-color:#cccccc;' value='studentenansicht.php?lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id&uid=$user' $selected $disabled>";
echo $row->bezeichnung;
echo '</OPTION>';
}
else
$disabled = '';
if(count($subuebung_obj->uebungen)>0)
{
foreach ($subuebung_obj->uebungen as $subrow)
{
if($uebung_id=='')
$uebung_id=$subrow->uebung_id;
if($uebung_id == $subrow->uebung_id)
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id&uid=$user' $selected>";
echo "<OPTION value='studentenansicht.php?lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id&uid=$user' $selected>";
//Freigegeben = +
//Nicht Freigegeben = -
if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($subrow->freigabebis)>time())
echo ' + ';
else
echo ' - ';
echo $subrow->bezeichnung;
echo '</OPTION>';
}
}
}
echo '</SELECT>';
echo '</td>';
echo "<td>
<table>
<tr>
@@ -481,7 +486,7 @@ if (!isset($_GET["notenuebersicht"]))
}
else
{
$callURL="studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&notenuebersicht=1&uid=$user";
$callURL="studentenansicht.php?lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id&notenuebersicht=1&uid=$user";
#header("Location:$callURL");
echo "<script language=\"JavaScript\">";
echo "window.location.href ='$callURL'";
@@ -489,22 +494,22 @@ if (!isset($_GET["notenuebersicht"]))
exit;
//echo "Derzeit sind keine Kreuzerllisten oder Abgaben angelegt";
}
//******SPEICHERN DER DATEN*************
if(isset($_POST['submit']))
{
$error=false;
$ueb_hlp_obj = new uebung();
$ueb_hlp_obj->load($uebung_id);
//Wenn Kreuzerlliste Freigegeben ist
if($datum_obj->mktime_fromtimestamp($ueb_hlp_obj->freigabevon)<time() &&
$datum_obj->mktime_fromtimestamp($ueb_hlp_obj->freigabebis)>time())
$datum_obj->mktime_fromtimestamp($ueb_hlp_obj->freigabebis)>time())
{
$bsp_obj = new beispiel();
if($bsp_obj->load_beispiel($uebung_id))
{
$anzahl_solved = 0;
@@ -518,7 +523,7 @@ if (!isset($_GET["notenuebersicht"]))
foreach ($bsp_obj->beispiele as $row)
{
$stud_bsp_obj = new beispiel();
if($stud_bsp_obj->load_studentbeispiel($user, $row->beispiel_id))
{
$stud_bsp_obj->new=false;
@@ -532,13 +537,15 @@ if (!isset($_GET["notenuebersicht"]))
}
if (isset($_POST['solved_'.$row->beispiel_id]))
$stud_bsp_obj->vorbereitet = ($_POST['solved_'.$row->beispiel_id]==1?true:false);
$stud_bsp_obj->probleme = (isset($_POST['problem_'.$row->beispiel_id])?true:false);
$stud_bsp_obj->updateamum = date('Y-m-d H:i:s');
$stud_bsp_obj->updatevon = $user;
$stud_bsp_obj->student_uid = $user;
$stud_bsp_obj->uid = $user;
$stud_bsp_obj->beispiel_id = $row->beispiel_id;
if(!$row->check_anzahl_studentbeispiel($row->beispiel_id))
die('<span class="error">Fehler beim Ermitteln der Beispiele</span>');
if (($row->anzahl_studentbeispiel >= $ueb_hlp_obj->maxstd) && ($stud_bsp_obj->vorbereitet==true) && ($ueb_hlp_obj->maxstd != null)) //isset($_POST['problem_'.$row->beispiel_id]) && $stud_bsp_obj->new ||
@@ -552,7 +559,7 @@ if (!isset($_GET["notenuebersicht"]))
$error = true;
}
}
}
}
else
{
if(!$stud_bsp_obj->studentbeispiel_save())
@@ -565,11 +572,11 @@ if (!isset($_GET["notenuebersicht"]))
}
else
{
$error=true;
$error=true;
echo $p->t('benotungstool/zuVieleBeispieleAngekreuzt')."!<br>";
}
}
if($error)
echo "<span class='error'>".$p->t('benotungstool/esKonntenNichtAlleDatenGespeichertWerden')."</span><br>";
else
@@ -578,7 +585,7 @@ if (!isset($_GET["notenuebersicht"]))
else
echo "<span class='error'>".$p->t('benotungstool/nichtGespeichertKreuzerllisteNichtFreigegeben')."!</span>";
}
//********ANZEIGE DER EINGETRAGENEN KREUZERL***********
if ($l > 0)
{
@@ -588,9 +595,9 @@ if (!isset($_GET["notenuebersicht"]))
echo $p->t('benotungstool/freigegebenVon')." ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))." ".$p->t('global/bis')." ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis));
echo "<br><br><h3><u>$uebung_obj->bezeichnung</u></h3>";
if ($uebung_obj->angabedatei)
echo $p->t('benotungstool/angabe').": <a href='studentenansicht.php?uid=$user&lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&download=".$downloadname."'>".$downloadname."</a><br><br>";
echo $p->t('benotungstool/angabe').": <a href='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&download=".$downloadname."'>".$downloadname."</a><br><br>";
$ueb_obj = new uebung();
if($ueb_obj->load_studentuebung($user, $uebung_id))
{
@@ -608,12 +615,12 @@ if (!isset($_GET["notenuebersicht"]))
$anmerkung = mb_str_replace("\n", "<br>", $anmerkung);
if ($uebung_obj->beispiele)
{
$qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id IN (SELECT beispiel_id from campus.tbl_beispiel where uebung_id =".$db->db_add_param($uebung_id, FHC_INTEGER).") AND vorbereitet=true and student_uid = ".$db->db_add_param($user);
$qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id IN (SELECT beispiel_id from campus.tbl_beispiel where uebung_id =".$db->db_add_param($uebung_id, FHC_INTEGER).") AND vorbereitet=true and uid = ".$db->db_add_param($user);
if($result_cnt = $db->db_query($qry_cnt))
if($row_cnt = $db->db_fetch_object($result_cnt))
$anzahl = $row_cnt->anzahl;
echo "<script type='text/javascript'>";
if ($uebung_obj->maxbsp)
echo "maxbsp = ".$uebung_obj->maxbsp.";";
@@ -629,16 +636,16 @@ if (!isset($_GET["notenuebersicht"]))
alert('Sie dürfen maximal '+maxbsp+' Beispiele markieren!');
aktbsp = ".$anzahl.";
}
}
function minus1()
{
aktbsp--;
}
";
echo "</script>";
$bsp_obj = new beispiel();
$bsp_obj->load_beispiel($uebung_id);
if ($bsp_obj->beispiele)
@@ -650,7 +657,7 @@ if (!isset($_GET["notenuebersicht"]))
echo "<tr><td>".$p->t('benotungstool/maxStudentenBeispiel').":</td><td style='background-color:#dddddd;'><b>".$uebung_obj->maxstd."</b></td></tr>";
echo "</table>";
echo "
<form accept-charset='UTF-8' method='POST' name='bspform' action='studentenansicht.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&uid=$user'>
<form accept-charset='UTF-8' method='POST' name='bspform' action='studentenansicht.php?lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&uid=$user'>
<table width='100%'>
<tr>
<td valign='top'><div style='width: 70%;'>
@@ -659,18 +666,19 @@ if (!isset($_GET["notenuebersicht"]))
<table border='1'>
<tr>
<td class='ContentHeader2'>".$p->t('benotungstool/beispiel')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/vorbereitet')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/nichtVorbereitet')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/probleme')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/punkte')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/vorbereitet')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/nichtVorbereitet')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/probleme')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/punkte')."</td>
</tr>";
foreach ($bsp_obj->beispiele as $row)
{
$bsp_voll = false;
$bsp_voll = false;
$stud_bsp_obj = new beispiel();
if ($uebung_obj->maxstd > 0)
{
$stud_bsp_obj->check_anzahl_studentbeispiel($row->beispiel_id);
@@ -704,64 +712,64 @@ if (!isset($_GET["notenuebersicht"]))
<td align='center'><input type='checkbox' name='problem_$row->beispiel_id' ".($probleme?'checked':'')."$ro></td>
<td align='center'>$row->punkte</td>
</tr>";
}
//Speichern button nur Anzeigen wenn die Uebung Freigegeben ist
if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)>time())
echo "<tr><td align='right' colspan=5><input type='submit' value='".$p->t('global/speichern')."' name='submit'></td></form></tr>";
echo "</table>";
}
else
echo "<table><tr><td>".$p->t('benotungstool/keineBeispieleAngelegt')."</td></tr></table><table width='100%'><tr><td width='70%'></div><table><tr><td>&nbsp;</td></tr></table>";
if ($uebung_obj->abgabe)
{
echo "<br><table><tr><td>".$p->t('benotungstool/abgabedatei').":</td></tr>\n";
$uebung_obj->load_studentuebung($user, $uebung_id);
if ($uebung_obj->abgabe_id)
{
$uebung_obj->load_abgabe($uebung_obj->abgabe_id);
echo " <tr>";
echo" <td><a href='studentenansicht.php?uid=$user&lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&download_abgabe=".$uebung_obj->abgabedatei."'>".$uebung_obj->abgabedatei."</a>";
echo" <td><a href='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&download_abgabe=".$uebung_obj->abgabedatei."'>".$uebung_obj->abgabedatei."</a>";
if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)>time())
echo " <a href='studentenansicht.php?uid=$user&lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&deleteabgabe=1'>[del]</a></td>";
echo " <a href='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&deleteabgabe=1'>[del]</a></td>";
echo "</tr>";
}
if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)>time())
{
echo " <tr>\n";
echo " <form accept-charset='UTF-8' method='POST' action='studentenansicht.php?uid=$user&lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem' enctype='multipart/form-data' name='kl_angabe'>\n";
echo " <form accept-charset='UTF-8' method='POST' action='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem' enctype='multipart/form-data' name='kl_angabe'>\n";
echo " <td>\n";
echo " <input type='file' name='abgabedatei'> <input type='submit' name='abgabe' value='".$p->t('benotungstool/abgeben')."'>";
echo " </td>\n";
echo " </form>\n";
echo "</tr>\n";
}
echo "</table>";
}
echo "</td><td valign='top' algin='right'>";
//Gesamtpunkte diese Kreuzerlliste
$qry = "SELECT sum(punkte) as punktegesamt FROM campus.tbl_beispiel WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER);
$punkte_gesamt=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_gesamt = $row->punktegesamt;
//Eingetragen diese Kreuzerlliste
$qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($user)." AND vorbereitet=true";
$qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND uid=".$db->db_add_param($user)." AND vorbereitet=true";
$punkte_eingetragen=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_eingetragen = ($row->punkteeingetragen!=''?$row->punkteeingetragen:0);
//Gesamtpunkte alle Kreuzerllisten in dieser Übung
$ueb_help = new uebung($uebung_id);
$liste_id = $ueb_help->liste_id;
@@ -772,36 +780,37 @@ if (!isset($_GET["notenuebersicht"]))
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_gesamt_alle = $row->punktegesamt_alle;
//Eingetragen alle Kreuzerllisten
$qry = "SELECT sum(tbl_beispiel.punkte) as punkteeingetragen_alle FROM campus.tbl_beispiel, campus.tbl_studentbeispiel, campus.tbl_uebung
WHERE tbl_beispiel.beispiel_id = tbl_studentbeispiel.beispiel_id AND
tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
tbl_uebung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND
tbl_uebung.liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER)." AND
tbl_studentbeispiel.student_uid=".$db->db_add_param($user)." AND vorbereitet=true";
tbl_studentbeispiel.uid=".$db->db_add_param($user)." AND vorbereitet=true";
$punkte_eingetragen_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_eingetragen_alle = ($row->punkteeingetragen_alle!=''?$row->punkteeingetragen_alle:0);
//Mitarbeitspunkte
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeitspunkte FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($user)." AND liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER);
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND uid=".$db->db_add_param($user)." AND liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER);
$mitarbeit_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$mitarbeit_alle = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0);
//Mitarbeitspunkte
$qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($user);
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND uid=".$db->db_add_param($user);
$mitarbeit=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$mitarbeit = $row->mitarbeitspunkte;
echo "
<table border='1' width='210'>
<tr>
<td colspan='2' class='ContentHeader2'>".$p->t('benotungstool/dieseKreuzerlliste').":</td>
@@ -844,16 +853,16 @@ if (!isset($_GET["notenuebersicht"]))
</tr>
</table>
";
echo "
</td></tr>
</table>
</form>
";
//**********STATISTIK***************
if($uebung_obj->statistik)
{
@@ -864,21 +873,21 @@ if (!isset($_GET["notenuebersicht"]))
if(count($beispiel_obj->beispiele)>0)
{
echo '<table border="0" cellpadding="0" cellspacing="0" width="600">
<tr>
<td>&nbsp;</td>
<td height="19" width="339" valign="bottom">
<table border="0" cellpadding="0" cellspacing="0" width="339" background="../../../../skin/images/bg.gif">
<tr>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>';
<tr>
<td>&nbsp;</td>
<td height="19" width="339" valign="bottom">
<table border="0" cellpadding="0" cellspacing="0" width="339" background="../../../../skin/images/bg.gif">
<tr>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>';
$i=0;
$qry_cnt = "SELECT distinct student_uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id)." GROUP BY student_uid";
$qry_cnt = "SELECT distinct uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id)." GROUP BY uid";
if($result_cnt = $db->db_query($qry_cnt))
$gesamt=$db->db_num_rows($result_cnt);
foreach ($beispiel_obj->beispiele as $row)
{
$i++;
@@ -888,33 +897,33 @@ if (!isset($_GET["notenuebersicht"]))
if($result_cnt = $db->db_query($qry_cnt))
if($row_cnt = $db->db_fetch_object($result_cnt))
$solved = $row_cnt->anzahl;
if($solved>0)
$psolved = $solved/$gesamt*100;
echo '<tr>
<td '.($i%2?'class="MarkLine"':'').' valign="top" height="10" width="200"><font size="2" face="Arial, Helvetica, sans-serif">
'.$row->bezeichnung.'
</font></td>
<td '.($i%2?'class="MarkLine"':'').' valign="top" height="10" width="200"><font size="2" face="Arial, Helvetica, sans-serif">
'.$row->bezeichnung.'
</font></td>
<td '.($i%2?'class="MarkLine"':'').'>
<table width="339" border="0" cellpadding="0" cellspacing="0" background="../../../../skin/images/bg_.gif">
<tr>
<td valign="top">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap><font size="2" face="Arial, Helvetica, sans-serif">
<img src="../../../../skin/images/entry.gif" width="'.($psolved*3).'" height="5" alt="" border="1" />
<span class="smallb"><b>&nbsp;'.$solved.'</b> ['.number_format($psolved,1,'.','').'%]</span></font>
</td>
<table width="339" border="0" cellpadding="0" cellspacing="0" background="../../../../skin/images/bg_.gif">
<tr>
<td valign="top">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap><font size="2" face="Arial, Helvetica, sans-serif">
<img src="../../../../skin/images/entry.gif" width="'.($psolved*3).'" height="5" alt="" border="1" />
<span class="smallb"><b>&nbsp;'.$solved.'</b> ['.number_format($psolved,1,'.','').'%]</span></font>
</td>
</tr>
</table>
</td>
</tr>
</table>
</tr>
</table>
</td>
</tr>';
</tr>';
}
echo "</table>";
echo "<br><br>".$p->t('benotungstool/esHabenStudentenEingetragen',array($gesamt));
@@ -928,7 +937,7 @@ if (!isset($_GET["notenuebersicht"]))
}
else if ($uebung_obj->abgabe)
{
echo "<table width='100%'>\n";
echo "<tr><td>".($note!=''?'<b>'.$p->t('benotungstool/note').': </b>'.$note.'<br><br>':'')."</td></tr>\n";
echo"
@@ -937,22 +946,22 @@ if (!isset($_GET["notenuebersicht"]))
".($anmerkung!=''?'<b>'.$p->t('global/anmerkungen').':</b><br> '.$anmerkung.'<br><br>':'')."
</td>";
echo "</tr>\n";
echo "<tr><td><hr></td></tr>\n";
$uebung_obj->load_studentuebung($user, $uebung_id);
if ($uebung_obj->abgabe_id)
{
$uebung_obj->load_abgabe($uebung_obj->abgabe_id);
echo " <tr>";
echo" <td>".$p->t('benotungstool/abgabedatei').": <a href='studentenansicht.php?uid=$user&lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&download_abgabe=".$uebung_obj->abgabedatei."'>".$uebung_obj->abgabedatei."</a>";
echo" <td>".$p->t('benotungstool/abgabedatei').": <a href='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&download_abgabe=".$uebung_obj->abgabedatei."'>".$uebung_obj->abgabedatei."</a>";
if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)>time())
echo " <a href='studentenansicht.php?uid=$user&lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&deleteabgabe=1'>[del]</a><br></td>";
echo " <a href='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&deleteabgabe=1'>[del]</a><br></td>";
echo "</tr>";
}
if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)>time())
{
echo " <tr>\n";
echo " <form accept-charset='UTF-8' method='POST' action='studentenansicht.php?uid=$user&lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem' enctype='multipart/form-data'>\n";
echo " <form accept-charset='UTF-8' method='POST' action='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem' enctype='multipart/form-data'>\n";
echo " <td>\n";
echo " <br>".$p->t('global/anmerkung').":<br><textarea name='abgabe_anmerkung' rows='3' cols='50'>".$uebung_obj->abgabe_anmerkung."</textarea><br>";
echo " <br>".$p->t('global/datei').":<br><input type='file' name='abgabedatei'> <input type='submit' name='abgabe' value='".$p->t('benotungstool/abgeben')."'>";
@@ -961,10 +970,9 @@ if (!isset($_GET["notenuebersicht"]))
echo "</tr>\n";
}
echo "</table>\n";
}
}
}
//notenübersicht
else
@@ -974,9 +982,9 @@ else
$uid_arr = Array();
$vorname_arr = Array();
$nachname_arr = Array();
$qry_stud_dd = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
if($result_stud_dd = $db->db_query($qry_stud_dd))
if($result_stud_dd = $db->db_query($qry_stud_dd))
{
$i=1;
while($row_stud_dd = $db->db_fetch_object($result_stud_dd))
@@ -994,7 +1002,7 @@ else
$prev = $key-1;
$next = $key+1;
if ($key > 0)
echo "<a href='studentenansicht.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$prev]&stsem=$stsem&notenuebersicht=1'> &lt;&lt; </a>";
echo "<a href='studentenansicht.php?lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$prev]&stsem=$stsem&notenuebersicht=1'> &lt;&lt; </a>";
echo "<SELECT name='stud_dd' onChange=\"MM_jumpMenu('self',this,0)\">\n";
for ($j = 0; $j < count($uid_arr); $j++)
{
@@ -1002,24 +1010,24 @@ else
$selected = " selected";
else
$selected = "";
echo "<option value='studentenansicht.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$j]&stsem=$stsem&notenuebersicht=1'$selected>$vorname_arr[$j] $nachname_arr[$j]</option>";
echo "<option value='studentenansicht.php?lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$j]&stsem=$stsem&notenuebersicht=1'$selected>$vorname_arr[$j] $nachname_arr[$j]</option>";
}
echo "</select>";
if ($key < count($uid_arr)-1)
echo "<a href='studentenansicht.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$next]&stsem=$stsem&notenuebersicht=1'> &gt;&gt; </a>";
echo "<a href='studentenansicht.php?lvid=$lehrveranstaltung_id&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$next]&stsem=$stsem&notenuebersicht=1'> &gt;&gt; </a>";
echo "<br><hr><br>";
}
echo "<br><b><a href='studentenansicht.php?uid=$user&lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/leistungsuebersichtNotenuebersichtFuer')." $name</b><br><br>";
echo "<br><b><a href='studentenansicht.php?uid=$user&lvid=$lehrveranstaltung_id&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/leistungsuebersichtNotenuebersichtFuer')." $name</b><br><br>";
echo "<table><tr><td>";
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,1);
if(count($uebung_obj->uebungen)>0)
{
echo "<table style='border: 1px #dddddd solid'>";
echo " <tr>\n";
echo " <th colspan='2'>".$p->t('benotungstool/aufgabe')."</th>\n";
@@ -1030,14 +1038,13 @@ else
echo " </tr>\n";
foreach ($uebung_obj->uebungen as $row)
{
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id);
$l1note = new studentnote();
if(count($subuebung_obj->uebungen) >= 0)
{
$l1note->calc_l1_note($row->uebung_id, $user, $lehreinheit_id);
if ($l1note->negativ)
$l1_note = 5;
@@ -1057,15 +1064,15 @@ else
echo "<td align='center'></td>";
echo "<td align='center'>".$l1_note."</td>\n";
echo " </tr>\n";
}
if(count($subuebung_obj->uebungen) > 0)
{
foreach ($subuebung_obj->uebungen as $subrow)
{
echo " <tr>\n";
echo " <td>- </td>";
echo " <td>\n";
@@ -1079,17 +1086,19 @@ else
echo " </td>\n";
if ($subrow->beispiele)
{
$l1note->calc_punkte($subrow->uebung_id, $user);
echo " <td align='center'>".$l1note->punkte_gesamt."</td>";
echo " <td align='center'></td>\n";
echo " <td align='center'></td>\n";
echo " <td align='center'></td>\n";
echo " <td align='center'></td>\n";
}
else if ($subrow->abgabe)
{
$l1note->calc_note($subrow->uebung_id, $user);
echo " <td align='center'></td>\n";
echo " <td align='center'>".$l1note->note."</td>";
echo " <td align='center'></td>\n";
echo " <td align='center'></td>\n";
echo " <td align='center'>".$l1note->note."</td>";
echo " <td align='center'></td>\n";
}
echo " </tr>\n"; /*
if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($subrow->freigabebis)>time())
@@ -1097,48 +1106,50 @@ else
else
echo ' - ';
*/
}
}
}
$l1note->calc_gesamtnote($lehreinheit_id, $stsem, $user);
if ($l1note->negativ)
$gesamtnote = 5;
else
$gesamtnote = $l1note->studentgesamtnote;
echo "<tr style='background-color:#dddddd;'><td colspan='5'>".$p->t('benotungstool/errechneteGesamtnote').": </td><td align='center'>".$gesamtnote."</td></tr>";
echo "</table>";
echo "<span style='font-size:8pt;'>".$p->t('benotungstool/mussPositivSein')."</span>";
}
echo "</td><td valign='top'>";
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($user, $lehreinheit_id))
{
{
$lenote = null;
}
else
{
$lenote = $legesamtnote->note;
}
if ($lvgesamtnote = new lvgesamtnote($lvid,$user,$stsem))
}
if ($lvgesamtnote = new lvgesamtnote($lehrveranstaltung_id,$user,$stsem))
{
$lvnote = $lvgesamtnote->note;
}
else
$lvnote = null;
if ($zeugnisnote = new zeugnisnote($lvid,$user,$stsem))
if ($zeugnisnote = new zeugnisnote($lehrveranstaltung_id,$user,$stsem))
{
$znote = $zeugnisnote->note;
}
else
$znote = null;
echo "<table style='border: 1px #dddddd solid'>\n";
echo " <tr><th colspan='2'>".$p->t('benotungstool/eingetrageneNoten')."</th></tr>";
echo "<tr>\n";
@@ -1154,7 +1165,7 @@ else
echo "<td>".$znote."</td>";
echo "</tr>\n";
echo "</table>";
echo "</td></tr></table>";
}
?>
@@ -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/cis.config.inc.php');
@@ -31,6 +32,7 @@ require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/uebung.class.php');
require_once('../../../../include/beispiel.class.php');
require_once('../../../../include/studentnote.class.php');
require_once('../../../../include/student.class.php');
require_once('../../../../include/datum.class.php');
require_once('functions.inc.php');
require_once('../../../../include/phrasen.class.php');
@@ -104,7 +106,7 @@ if (isset($_FILES["abgabedatei"]))
{
//echo $_FILES["abgabedatei"];
$abgabedatei_up = $_FILES["abgabedatei"]["tmp_name"];
if ($abgabedatei_up)
{
$student_uid = $uid;
@@ -121,7 +123,7 @@ if (isset($_FILES["abgabedatei"]))
if ($uebung_obj->errormsg != "")
{
$uebung_obj->student_uid = $student_uid;
$uebung_obj->uid = $student->uid;
$uebung_obj->mitarbeiter_uid = null;
$uebung_obj->abgabe_id = null;
$uebung_obj->uebung_id = $uebung_id;
@@ -373,7 +375,7 @@ if(isset($_POST['submit']))
$stud_bsp_obj->probleme = (isset($_POST['problem_'.$row->beispiel_id])?true:false);
$stud_bsp_obj->updateamum = date('Y-m-d H:i:s');
$stud_bsp_obj->updatevon = $user;
$stud_bsp_obj->student_uid = $uid;
$stud_bsp_obj->uid = $uid;
$stud_bsp_obj->beispiel_id = $row->beispiel_id;
if(!$stud_bsp_obj->studentbeispiel_save())
@@ -653,7 +655,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='')
$punkte_gesamt = $row->punktegesamt;
//Eingetragen diese Kreuzerlliste
$qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid)." AND vorbereitet=true";
$qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND uid=".$db->db_add_param($uid)." AND vorbereitet=true";
$punkte_eingetragen=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
@@ -677,7 +679,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='')
tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
tbl_uebung.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
tbl_uebung.liste_id = ".$db->db_add_param($liste_id)." AND
tbl_studentbeispiel.student_uid=".$db->db_add_param($uid)." AND vorbereitet=true";
tbl_studentbeispiel.uid=".$db->db_add_param($uid)." AND vorbereitet=true";
$punkte_eingetragen_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
@@ -685,7 +687,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='')
//Mitarbeitspunkte
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeitspunkte FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid)." and liste_id=".$db->db_add_param($liste_id);
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND uid=".$db->db_add_param($student->uid)." and liste_id=".$db->db_add_param($liste_id);
$mitarbeit_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
@@ -693,7 +695,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='')
//Mitarbeitspunkte
$qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid);
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND uid=".$db->db_add_param($student->uid);
$mitarbeit=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
+10 -12
View File
@@ -425,16 +425,16 @@ if (isset($_REQUEST["copy_uebung"]))
$ueb_2_target->defaultbemerkung = $subrow->defaultbemerkung;
$ueb_2_target->lehreinheit_id = $lehreinheit_id_target;
$ueb_2_target->nummer = $nummer_source2;
if (!$ueb_2_target->save($new))
{
$error = 1;
echo "<span class='error'>".$p->t('benotungstool/uebungKonnteNichtKopiertWerden')."!</span>";
}
//angabedatei syncen
if ($subrow->angabedatei != "")
{
{
$angabedatei_source = $subrow->angabedatei;
$angabedatei_target = makeUploadName($db, 'angabe', $lehreinheit_id, $ueb_2_target->uebung_id, $stsem);
$angabedatei_target .= ".".mb_substr($angabedatei_source, mb_strrpos($angabedatei_source, '.') + 1);
@@ -443,7 +443,7 @@ if (isset($_REQUEST["copy_uebung"]))
$angabeupdate = "update campus.tbl_uebung set angabedatei = ".$db->db_add_param($angabedatei_target)." where uebung_id = ".$db->db_add_param($ueb_2_target->uebung_id, FHC_INTEGER);
$db->db_query($angabeupdate);
}
if (($error == 0) and $ueb_2_target->beispiele)
{
// beispiele synchronisieren
@@ -486,9 +486,9 @@ if (isset($_REQUEST["copy_uebung"]))
if (!$bsp_target->save($new))
{
$error = 1;
echo "<span class='error'>".$p->t('benotungstool/beispieleKonntenNichtAngelegtWerden')."</span>";
echo "<span class='error'>".$p->t('benotungstool/beispieleKonntenNichtAngelegtWerden')."</span>";
}
//Notenschlüssel synchronisieren
$clear = "delete from campus.tbl_notenschluesseluebung where uebung_id = ".$db->db_add_param($ueb_1_target->uebung_id, FHC_INTEGER);
$db->db_query($clear);
@@ -498,12 +498,10 @@ if (isset($_REQUEST["copy_uebung"]))
while($row_ns = $db->db_fetch_object($result_ns_source))
{
$ns_insert = "INSERT INTO campus.tbl_notenschluesseluebung values (".$db->db_add_param($ueb_1_target->uebung_id).",".$db->db_add_param($row_ns->note).", ".$db->db_add_param($row_ns->punkte).")";
$db->db_query($ns_insert);
}
}
$db->db_query($ns_insert);
}
}
}
}
}
}
@@ -565,7 +563,7 @@ if(isset($_POST['uebung_neu']))
$uebung_obj->statistik = false;
$uebung_obj->liste_id = null;
$uebung_obj->get_next_nummer();
$uebung_obj->nummer = $uebung_obj->next_nummer;
$uebung_obj->nummer = $uebung_obj->next_nummer;
if($uebung_obj->save(true))
{
+5 -4
View File
@@ -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: Christian Paminger < christian.paminger@technikum-wien.at >
* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Authors: Christian Paminger <christian.paminger@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/cis.config.inc.php');
require_once('../../../include/studiensemester.class.php');
@@ -71,7 +72,7 @@ $stg->getAll();
count(*)
FROM
campus.vw_student_lehrveranstaltung
JOIN public.tbl_student ON(uid=student_uid)
JOIN public.tbl_prestudent USING(prestudent_id)
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
+197 -144
View File
@@ -19,6 +19,7 @@
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Andreas Moik <moik@technikum-wien.at>
*/
/*
* Erstellt eine Liste mit den Noten des eingeloggten Studenten
@@ -31,6 +32,7 @@ require_once('../../../include/studiensemester.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/note.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/pruefung.class.php');
@@ -84,6 +86,14 @@ else
$user = get_uid();
$prestudent_id = null;
if(isset($_GET['prestudent_id']))
{
$prestudent_id = $_GET['prestudent_id'];
}
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
@@ -144,165 +154,208 @@ else
$stsem_obj->getAll();
echo "<br />";
echo "<b>".$p->t('global/name').":</b> $vorname $nachname<br />";
echo "<b>".$p->t('global/studiengang').":</b> $stg_name<br />";
echo "<b>".$p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<OPTION value='notenliste.php?stsem=alle".$getParam."'>alle Semester</OPTION>";
foreach ($stsem_obj->studiensemester as $semrow)
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
if(count($prestudent->result) > 0)
{
echo "<div class='contentBox'>";
echo "<span>".$p->t('global/studiengang')."</span>";
echo "<SELECT name='stg' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<option disabled ".($prestudent_id ? "" : "selected")." value>".$p->t('global/auswaehlen')."</option>";
foreach ($prestudent->result as $pres)
{
if($stsem == $semrow->studiensemester_kurzbz)
echo "<OPTION value='notenliste.php?stsem=".$semrow->studiensemester_kurzbz.$getParam."' selected>$semrow->studiensemester_kurzbz</OPTION>";
else
echo "<OPTION value='notenliste.php?stsem=".$semrow->studiensemester_kurzbz.$getParam."'>$semrow->studiensemester_kurzbz</OPTION>";
$studiengang = new studiengang($pres->studiengang_kz);
echo "<OPTION ".(isset($prestudent_id) && $prestudent_id == $pres->prestudent_id ? "selected" : "")." value='notenliste.php?prestudent_id=$pres->prestudent_id'>$studiengang->bezeichnung</OPTION>";
}
echo "</SELECT><br />";
echo "</SELECT>";
//echo "Datum: ".date('d.m.Y')."<br />";
echo "<br />";
//Lehrveranstaltungen und Noten holen
if($stsem != "alle")
{
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)."
AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
}
else
$sqlFilter = "";
$qry = "SELECT
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum
FROM
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
LEFT OUTER JOIN
campus.tbl_lvgesamtnote
USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz)
WHERE
tbl_zeugnisnote.student_uid = ".$db->db_add_param($user)
.$sqlFilter."
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id
ORDER BY bezeichnung";
if($result=$db->db_query($qry))
if(isset($prestudent_id))
{
//Tabelle anzeigen
$tbl= "<table class='tablesorter' id='notenliste' style='width: auto;'>
<thead>
<tr class='liste'>
<th>".$p->t('global/lehrveranstaltung')."</th>
<th>".$p->t('benotungstool/lvNote')."</th>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$tbl.="<th>".$p->t('benotungstool/punkte')."</th>";
$tbl.=" <th>".$p->t('benotungstool/zeugnisnote')."</th>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$tbl.="<th>".$p->t('benotungstool/punkte')."</th>";
$tbl.="
<th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th>
<th>".$p->t('benotungstool/pruefung')."</th>
</tr>
</thead>
<tbody>";
$i=0;
$legende = false;
while($row=$db->db_fetch_object($result))
$semester = array();
$prestudent->result = array();
$prestudent->getPrestudentRolle($prestudent_id);
foreach($prestudent->result as $rolle)
{
$lv_obj = new lehrveranstaltung();
$lv_obj->load($row->lehrveranstaltung_id);
$i++;
$tbl.= "<tr class='liste".($i%2)."'><td>".$lv_obj->bezeichnung_arr[$sprache].($lv_obj->lehrform_kurzbz!="" && $lv_obj->lehrform_kurzbz!=" - "?" (".$lv_obj->lehrform_kurzbz.")":"")."</td>";
$tbl.= "<td>";
//Nur freigegebene Noten anzeigen
if($row->freigabedatum>=$row->lvbenotungsdatum)
if($rolle->status_kurzbz == "Student" || $rolle->status_kurzbz == "Absolvent" || $rolle->status_kurzbz == "Diplomand")
{
if(isset($notenarr[$row->lvnote]))
$tbl.=$notenarr[$row->lvnote];
else
$tbl.=$row->lvnote;
$semester[$rolle->studiensemester_kurzbz] = 1;
}
$tbl.= "</td>";
// LV Gesamtnote Punkte
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
{
$lvpunkte = ($row->lvpunkte!=''?(float)$row->lvpunkte:'');
$tbl.="<td>".$lvpunkte."</td>";
}
if ($row->note != $row->lvnote && $row->lvnote != NULL)
{
$markier = " style='background-color: #FFD999;'";
$legende=true;
}
else
$markier = "";
$tbl .= "<td ".$markier.">";
if(isset($notenarr[$row->note]))
$tbl.=$notenarr[$row->note];
else
$tbl.=$row->note;
$tbl .= "</td>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
{
$punkte = ($row->punkte!=''?((float)$row->punkte):'');
$tbl.="<td>".$punkte."</td>";
}
$tbl .= '<td>'.$datum_obj->formatDatum($row->benotungsdatum,'d.m.Y').'</td>';
$pruefung = new pruefung();
$pruefung->getPruefungen($user, null,$row->lehrveranstaltung_id,$stsem);
if(count($pruefung->result)>0)
{
$tbl.='<td>';
foreach($pruefung->result as $row)
{
if(isset($notenarr[$row->note]))
$note=$notenarr[$row->note];
else
$note=$row->note;
if($row->punkte!='')
$punkte = ' ('.(float)$row->punkte.')';
else
$punkte='';
$tbl.= $row->pruefungstyp_beschreibung.' '.$datum_obj->formatDatum($row->datum,'d.m.Y').' '.$note.$punkte.'<br>';
}
$tbl.='</td>';
}
else
$tbl.='<td></td>';
$tbl .= "</tr>";
}
echo "<span style='margin-left:15px;'>".$p->t('global/studiensemester')."</span>";
echo "<SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<option disabled ".($stsem == "" ? "selected" : "")." value>".$p->t('global/auswaehlen')."</option>";
echo "<OPTION value='notenliste.php?stsem=alle".$getParam.(isset($prestudent_id) ? "&prestudent_id=".$prestudent_id : "")."'>alle Semester</OPTION>";
foreach ($semester as $semk => $semr)
{
echo "<OPTION ".($stsem == $semk ? "selected" : "")." value='notenliste.php?stsem=$semk&prestudent_id=".$prestudent_id."'>$semk</OPTION>";
}
echo "</SELECT>";
//echo "Datum: ".date('d.m.Y')."<br />";
echo "<br />";
//Lehrveranstaltungen und Noten holen
if($stsem != "alle")
{
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)."
AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
}
else
$sqlFilter = "";
$qry = "SELECT
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum
FROM
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
LEFT OUTER JOIN
campus.tbl_lvgesamtnote
USING (lehrveranstaltung_id, prestudent_id, studiensemester_kurzbz)
JOIN tbl_prestudent USING(prestudent_id)
WHERE
tbl_prestudent.prestudent_id = ".$db->db_add_param($prestudent_id, FHC_INTEGER)
.$sqlFilter."
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id
ORDER BY bezeichnung";
if($result=$db->db_query($qry))
{
//Tabelle anzeigen
$tbl= "<table class='tablesorter' id='notenliste' style='width: auto;'>
<thead>
<tr class='liste'>
<th>".$p->t('global/lehrveranstaltung')."</th>
<th>".$p->t('benotungstool/lvNote')."</th>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$tbl.="<th>".$p->t('benotungstool/punkte')."</th>";
$tbl.=" <th>".$p->t('benotungstool/zeugnisnote')."</th>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$tbl.="<th>".$p->t('benotungstool/punkte')."</th>";
$tbl.="
<th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th>
<th>".$p->t('benotungstool/pruefung')."</th>
</tr>
</thead>
<tbody>";
$i=0;
$legende = false;
while($row=$db->db_fetch_object($result))
{
$lv_obj = new lehrveranstaltung();
$lv_obj->load($row->lehrveranstaltung_id);
$i++;
$tbl.= "<tr class='liste".($i%2)."'><td>".$lv_obj->bezeichnung_arr[$sprache].($lv_obj->lehrform_kurzbz!="" && $lv_obj->lehrform_kurzbz!=" - "?" (".$lv_obj->lehrform_kurzbz.")":"")."</td>";
$tbl.= "<td>";
//Nur freigegebene Noten anzeigen
if($row->freigabedatum>=$row->lvbenotungsdatum)
{
if(isset($notenarr[$row->lvnote]))
$tbl.=$notenarr[$row->lvnote];
else
$tbl.=$row->lvnote;
}
$tbl.= "</td>";
// LV Gesamtnote Punkte
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
{
$lvpunkte = ($row->lvpunkte!=''?(float)$row->lvpunkte:'');
$tbl.="<td>".$lvpunkte."</td>";
}
if ($row->note != $row->lvnote && $row->lvnote != NULL)
{
$markier = " style='background-color: #FFD999;'";
$legende=true;
}
else
$markier = "";
$tbl .= "<td ".$markier.">";
if(isset($notenarr[$row->note]))
$tbl.=$notenarr[$row->note];
else
$tbl.=$row->note;
$tbl .= "</td>";
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
{
$punkte = ($row->punkte!=''?((float)$row->punkte):'');
$tbl.="<td>".$punkte."</td>";
}
$tbl .= '<td>'.$datum_obj->formatDatum($row->benotungsdatum,'d.m.Y').'</td>';
$pruefung = new pruefung();
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
$pruefungen_arr = array();
foreach($prestudent->result as $ps)
{
$pruefung->getPruefungen($ps->prestudent_id, null,$row->lehrveranstaltung_id,$stsem);
array_merge($pruefungen_arr, $pruefung->result);
}
if(count($pruefungen_arr)>0)
{
$tbl.='<td>';
foreach($pruefungen_arr as $row)
{
if(isset($notenarr[$row->note]))
$note=$notenarr[$row->note];
else
$note=$row->note;
if($row->punkte!='')
$punkte = ' ('.(float)$row->punkte.')';
else
$punkte='';
$tbl.= $row->pruefungstyp_beschreibung.' '.$datum_obj->formatDatum($row->datum,'d.m.Y').' '.$note.$punkte.'<br>';
}
$tbl.='</td>';
}
else
$tbl.='<td></td>';
$tbl .= "</tr>";
}
$tbl.= "</tbody></table>";
$tbl.= "</tbody></table>";
if($legende)
$tbl.= "<table><tbody><tr><td width='50' style='background-color: #FFD999;'></td><td>".$p->t('tools/hinweistextMarkierung')."</td></tr></tbody></table>";
if($i==0)
echo $p->t('tools/nochKeineBeurteilungEingetragen');
if($legende)
$tbl.= "<table><tbody><tr><td width='50' style='background-color: #FFD999;'></td><td>".$p->t('tools/hinweistextMarkierung')."</td></tr></tbody></table>";
if($i==0)
echo $p->t('tools/nochKeineBeurteilungEingetragen');
else
echo $tbl;
}
else
echo $tbl;
{
$error .= $p->t('tools/fehlerBeimAuslesenDerNoten');
}
}
echo "</div>";
}
else
{
$error .= $p->t('tools/fehlerBeimAuslesenDerNoten');
echo "<div class='contentBox'>";
echo $p->t("upload/keineStudiengaengeDefiniert");
echo "</div>";
}
}
echo $error;
+68 -67
View File
@@ -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>
* 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 >.
*/
/*
* Erstellt Notenliste im Excel Format
@@ -45,47 +46,47 @@ if(!check_lektor($uid))
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid=$_GET['lvid'];
else
die("Fehlerhafte Parameteruebergabe");
if(isset($_GET['stg']) && is_numeric($_GET['stg']))
$stg=$_GET['stg'];
else
else
die("Fehlerhafte Parameteruebergabe");
if(isset($_GET['gruppe_kurzbz']))
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
else
$gruppe_kurzbz = '';
if(isset($_GET['sem']) && is_numeric($_GET['sem']))
$sem = $_GET['sem'];
else
else
$sem = '';
if(isset($_GET['verband']))
$verband = $_GET['verband'];
else
else
$verband = '';
if(isset($_GET['gruppe']) && is_numeric($_GET['gruppe']))
$gruppe = $_GET['gruppe'];
else
$gruppe = '';
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
die('Studiensemester muss uebergeben werden');
if(isset($_GET['lehreinheit_id']))
$lehreinheit_id = $_GET['lehreinheit_id'];
else
else
$lehreinheit_id = '';
/*
* Create Excel File
*/
@@ -93,7 +94,7 @@ else
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send($p->t('anwesenheitsliste/notenliste'). "_" . date("d_m_Y") . ".xls");
$workbook->setCustomColor (15,192,192,192); //Setzen der HG-Farbe Hellgrau
@@ -105,12 +106,12 @@ else
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_highlight =& $workbook->addFormat();
$format_highlight->setFgColor(15);
$format_highlight->setBorder(1);
$format_highlight->setBorderColor('white');
$format_border_bottom =& $workbook->addFormat();
$format_border_bottom ->setBottom(2);
$format_border_bottom->setBold();
@@ -124,17 +125,17 @@ else
$format_title->setAlign('merge');
$lvobj = new lehrveranstaltung($lvid);
$worksheet->write(0,0,$p->t('anwesenheitsliste/notenliste')." ".($sprache=='English'?$lvobj->bezeichnung_english:$lvobj->bezeichnung),$format_bold);
$stg_obj = new studiengang($stg);
$qry = "SELECT
distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel,
semester, verband, gruppe, gruppe_kurzbz
distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel,
semester, verband, gruppe, gruppe_kurzbz
FROM
campus.vw_lehreinheit
WHERE
campus.vw_lehreinheit
WHERE
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
@@ -152,26 +153,26 @@ else
$gruppen.=$row->gruppe_kurzbz;
}
}
$worksheet->write(1,0,$p->t('global/studiengang').": $stg_obj->bezeichnung $gruppen");
$lines=2;
//Lektoren ermitteln
$qry = "SELECT
distinct vorname, nachname
FROM
campus.vw_benutzer, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter
WHERE
uid=mitarbeiter_uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
$qry = "SELECT
distinct vorname, nachname
FROM
campus.vw_benutzer, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter
WHERE
uid=mitarbeiter_uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$qry.=' ORDER BY nachname, vorname';
if($result = $db->db_query($qry))
{
while($row=$db->db_fetch_object($result))
@@ -196,29 +197,29 @@ else
$stsem_obj = new studiensemester();
$stsem_obj->load($stsem);
$stsemdatumvon = $stsem_obj->start;
$stsemdatumbis = $stsem_obj->ende;
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id, tbl_student.student_uid as uid,
$stsemdatumbis = $stsem_obj->ende;
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, perskz, person_id, tbl_prestudent.uid,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_prestudent.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von,
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_prestudent ON(tbl_benutzer.uid=tbl_prestudent.uid)
LEFT JOIN public.tbl_studentlehrverband ON(public.tbl_prestudent.prestudent_id=tbl_studentlehrverband.prestudent_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.prestudent_id=tbl_prestudent.prestudent_id AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(public.tbl_prestudent.prestudent_id=tbl_bisio.prestudent_id)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
vw_student_lehrveranstaltung.studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
if($result = $db->db_query($qry))
{
$i=1;
@@ -226,28 +227,28 @@ else
while($elem = $db->db_fetch_object($result))
{
if(!preg_match('*dummy*',$elem->uid) && $elem->semester!=10)
{
{
if($elem->status!='Abbrecher' && $elem->status!='Unterbrecher')
{
$worksheet->write($lines,0,$i);
if($elem->status=='Incoming')
$inc=' (i)';
else
else
$inc='';
if($elem->bisio_id!='' && $elem->status!='Incoming' && ($elem->bis > $stsemdatumvon || $elem->bis=='') && $elem->von < $stsemdatumbis) //Outgoing
$inc.=' (o)';
if($elem->note==6) //angerechnet
{
$inc.=' (ar)';
$note='ar';
}
else
else
$note='';
$worksheet->write($lines,1,$elem->nachname.$inc);
$worksheet->write($lines,2,$elem->vorname);
$worksheet->write($lines,3,'="'.$elem->semester.$elem->verband.$elem->gruppe.'"');
$worksheet->write($lines,4,'="'.trim($elem->matrikelnr).'"',$format_highlight);
$worksheet->write($lines,4,'="'.trim($elem->perskz).'"',$format_highlight);
$worksheet->write($lines,5,$note,$format_highlight);
$i++;
$lines++;
@@ -255,7 +256,7 @@ else
}
}
}
//Noten
$note = new note();
$note->getAll();
@@ -266,8 +267,8 @@ else
$aufteilung = array();
foreach($notenschluessel->result as $row)
$aufteilung[$row->note]=$row->punkte;
$aufteilung[$row->note]=$row->punkte;
$worksheet->write(++$lines,0,$p->t('benotungstool/note').":");
foreach($note->result as $row)
{
@@ -285,15 +286,15 @@ else
$worksheet->write(++$lines,0,$row->bezeichnung.' ('.$row->anmerkung.')');
}
}
$worksheet->writeBlank(++$lines,0,0);
$worksheet->writeBlank(++$lines,0,$format_highlight);
$worksheet->write($lines,1,'...'.$p->t('anwesenheitsliste/anleitungImportFunktion'));
$lines++;
$worksheet->write(++$lines,0,'(i) ... Incoming');
$worksheet->write(++$lines,0,'(i) ... Incoming');
$worksheet->write(++$lines,0,'(o) ... Outgoing');
$worksheet->write(++$lines,0,'(ar) ... '.$p->t('anwesenheitsliste/angerechnet'));
$worksheet->setColumn(0, 0, 5);
$worksheet->setColumn(1, 1, 25);
$worksheet->setColumn(2, 2, 25);
+3 -3
View File
@@ -475,7 +475,7 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
*/
function saveAnmeldung(lehrveranstaltung_id, termin_id)
{
var uid = $("#anmeldung_hinzufuegen_uid").val();
var prestudent_id = $("#anmeldung_hinzufuegen_uid").val();
if(lehrveranstaltung_id === undefined)
lehrveranstaltung_id = $("#lehrveranstaltungHidden").val();
if(termin_id === undefined)
@@ -497,7 +497,7 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
termin_id: termin_id,
lehrveranstaltung_id: lehrveranstaltung_id,
bemerkung: bemerkungen,
uid: uid,
prestudent_id: prestudent_id,
studienverpflichtung_id: studienverpflichtung_id
},
error: loadError
@@ -2012,4 +2012,4 @@ function getRaeume(terminId)
});
$("#raeumeDropdown").html(liste);
});
}
}
+7 -5
View File
@@ -18,7 +18,8 @@
* 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('../../../../config/cis.config.inc.php');
@@ -238,7 +239,8 @@ function loadPruefungen()
$("#pruefungen").empty();
if(data.error === 'false')
{
data.result.pruefungen.forEach(function(e){
data.result.pruefungen.forEach(function(e)
{
if(e.pruefung.storniert === false)
{
var table = writePruefungsTable(e, data, true);
@@ -519,7 +521,7 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
*/
function saveAnmeldung(lehrveranstaltung_id, termin_id)
{
var uid = $("#anmeldung_hinzufuegen_uid").val();
var prestudent_id = $("#anmeldung_hinzufuegen_uid").val();
if(lehrveranstaltung_id === undefined)
lehrveranstaltung_id = $("#lehrveranstaltungHidden").val();
if(termin_id === undefined)
@@ -541,7 +543,7 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
termin_id: termin_id,
lehrveranstaltung_id: lehrveranstaltung_id,
bemerkung: bemerkungen,
uid: uid,
prestudent_id: prestudent_id,
studienverpflichtung_id: studienverpflichtung_id
},
error: loadError
@@ -558,7 +560,7 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
}).complete(function(event, xhr, settings){
$("#saveDialog").dialog("close");
if(uid === undefined)
if(prestudent_id === undefined)
{
//Wenn Anmeldung durch Student
refresh();
File diff suppressed because it is too large Load Diff
@@ -19,7 +19,8 @@
* 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('../../../../config/cis.config.inc.php');
@@ -37,7 +38,7 @@ $sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
//TODO
//TODO EINE RECHTE?
$uid = get_uid();
$db = new basis_db();
@@ -19,7 +19,8 @@
* 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('../../../../config/cis.config.inc.php');
@@ -171,16 +172,17 @@ $rechte->getBerechtigungen($uid);
</head>
<body>
<script>
$(document).ready(function(){
$(document).ready(function()
{
window.print();
});
});
</script>
<div id="page">
<div id="subpage">
<h1><?php echo $p->t('pruefung/anmeldungsliste'); ?></h1>
<div id="subpage">
<h1><?php echo $p->t('pruefung/anmeldungsliste'); ?></h1>
<?php
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
die('Sie haben keine Berechtigung für diese Seite');
die('Sie haben keine Berechtigung für diese Seite');
$termin_id = filter_input(INPUT_GET,"termin_id");
$lehrveranstaltung_id = filter_input(INPUT_GET,"lehrveranstaltung_id");
@@ -188,96 +190,101 @@ $rechte->getBerechtigungen($uid);
if(is_null($lehrveranstaltung_id))
{
die($p->t('pruefung/fehlenderParam_lvid'));
die($p->t('pruefung/fehlenderParam_lvid'));
}
else if(is_null($termin_id))
{
die($p->t('pruefung/fehlenderParam_terminid'));
die($p->t('pruefung/fehlenderParam_terminid'));
}
else if(is_null($studiensemester))
{
die($p->t('pruefung/fehlenderParam_studiensemester'));
die($p->t('pruefung/fehlenderParam_studiensemester'));
}
else
{
$datum = new datum();
$stdsem = new studiensemester($studiensemester);
$pruefungsanmeldung = new pruefungsanmeldung();
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($termin_id, $lehrveranstaltung_id, $studiensemester, "bestaetigt");
$lehrveranstaltung = new lehrveranstaltung($lehrveranstaltung_id);
$einzeln = FALSE;
if(!empty($anmeldungen))
{
$pruefung = new pruefungCis($anmeldungen[0]->pruefung_id);
$pruefungstermin = new pruefungstermin($anmeldungen[0]->pruefungstermin_id);
$mitarbeiter = new mitarbeiter($pruefung->mitarbeiter_uid);
if($pruefung->einzeln)
$datum = new datum();
$stdsem = new studiensemester($studiensemester);
$pruefungsanmeldung = new pruefungsanmeldung();
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($termin_id, $lehrveranstaltung_id, $studiensemester, "bestaetigt");
$lehrveranstaltung = new lehrveranstaltung($lehrveranstaltung_id);
$einzeln = FALSE;
if(!empty($anmeldungen))
{
$einzeln = TRUE;
$pruefungsintervall = $pruefung->pruefungsintervall;
}
$pruefung = new pruefungCis($anmeldungen[0]->pruefung_id);
$pruefungstermin = new pruefungstermin($anmeldungen[0]->pruefungstermin_id);
$mitarbeiter = new mitarbeiter($pruefung->mitarbeiter_uid);
if($pruefung->einzeln)
{
$einzeln = TRUE;
$pruefungsintervall = $pruefung->pruefungsintervall;
}
?>
<span class="bold"><?php echo $p->t('global/lehrveranstaltung'); ?>: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('global/studiensemester'); ?>: </span><span><?=$stdsem->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('pruefung/pruefer'); ?>: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
<table id="liste">
?>
<span class="bold"><?php echo $p->t('global/lehrveranstaltung'); ?>: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('global/studiensemester'); ?>: </span><span><?=$stdsem->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('pruefung/pruefer'); ?>: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
<table id="liste">
<thead>
<tr>
<th>#</th>
<th><?php echo $p->t('global/vorname'); ?></th>
<th><?php echo $p->t('global/nachname'); ?></th>
<th><?php echo $p->t('global/matrikelnummer'); ?></th>
<th><?php echo $p->t('global/datum'); ?></th>
<th><?php echo $p->t('benotungstool/note'); ?></th>
<th><?php echo $p->t('global/anmerkung'); ?></th>
</tr>
<tr>
<th>#</th>
<th><?php echo $p->t('global/vorname'); ?></th>
<th><?php echo $p->t('global/nachname'); ?></th>
<th><?php echo $p->t('global/matrikelnummer'); ?></th>
<th><?php echo $p->t('global/datum'); ?></th>
<th><?php echo $p->t('benotungstool/note'); ?></th>
<th><?php echo $p->t('global/anmerkung'); ?></th>
</tr>
</thead>
<tbody>
<?php
<?php
$count = 0;
/*@var $anmeldung pruefungsanmeldung */
foreach($anmeldungen as $anmeldung)
{
$student = new student($anmeldung->uid);
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
$prestudent = new prestudent();
$prestudent->getPrestudentsById($anmeldung->uid);
if($einzeln)
{
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
$date = strtotime($date);
$date = $date+(60*$pruefungsintervall*($count));
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("h:i",$date);
$count++;
}
else
{
$date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i");
}
echo '<tr>';
foreach($prestudent->result as $ps)
{
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
if($einzeln)
{
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
$date = strtotime($date);
$date = $date+(60*$pruefungsintervall*($count));
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("h:i",$date);
$count++;
}
else
{
$date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i");
}
echo '<tr>';
echo '<td>'.$anmeldung->reihung.'</td>';
echo '<td>'.$student->vorname.'</td>';
echo '<td>'.$student->nachname.'</td>';
echo '<td>'.$student->matr_nr.'</td>';
echo '<td>'.$ps->vorname.'</td>';
echo '<td>'.$ps->nachname.'</td>';
echo '<td>'.$ps->matr_nr.'</td>';
echo '<td>'.$date.'</td>';
echo '<td></td>';
echo '<td></td>';
echo '</tr>';
echo '</tr>';
}
}
?>
?>
</tbody>
<?php
}
else
{
<?php
}
else
{
?>
<span><?php echo $p->t('pruefung/keineBestaetigtenAnmeldungenVorhanden'); ?></span><br/>
<?php
}
}
}
?>
</table>
</table>
<br>
<table width="100%" id="liste">
<tr>
@@ -233,59 +233,61 @@ function getNoten()
*/
function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid)
{
$student = new student($student_uid); // TODO EINE
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->student_uid = $student_uid;
$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;
}
/**
@@ -1,455 +1,455 @@
<!DOCTYPE html>
<?php
/*
* Copyright 2014 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/organisationseinheit.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/pruefungsfenster.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$db = new basis_db();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('lehre/pruefungsfenster'))
die('Sie haben keine Berechtigung für diese Seite');
function compareOe($a, $b)
{
if($a->organisationseinheittyp_kurzbz == $b->organisationseinheittyp_kurzbz)
return 0;
return ($a->organisationseinheittyp_kurzbz < $b->organisationseinheittyp_kurzbz) ? -1 : 1;
}
?>
<html>
<head>
<meta charset="UTF-8">
<title><?php echo $p->t('pruefung/titlePruefungsfenster') ?></title>
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
<link rel="stylesheet" href="../../../../skin/style.css.php">
<link rel="stylesheet" href="../../../../skin/tablesort.css">
</head>
<body>
<script>
$(document).ready(function() {
$("#startDate").datepicker({
minDate: new Date()
});
$("#endDate").datepicker({
minDate: +1
});
$("#prfTable").tablesorter({
widgets: ["zebra"]
});
});
</script>
<?php
$datum = new datum();
$method = "";
//Organisationseinheiten, für die der Benutzer berechtigt ist
$oe = $rechte->getOEkurzbz("lehre/pruefungsfenster");
$studiensemester = new studiensemester();
$studiensemester->getAll();
if (isset($_POST["method"]) && $_POST["method"] == "save")
{
$method = $_POST["method"];
$studiensemester_selected = (isset($_POST["studiensemester"]) ? $_POST["studiensemester"] : "");
$oe_kurzbz = (isset($_POST["oe_kurzbz"]) ? $_POST["oe_kurzbz"] : "");
$startDate = (isset($_POST["startDate"]) ? $datum->formatDatum($_POST["startDate"], "Y-m-d") : "");
$endDate = (isset($_POST["endDate"]) ? $datum->formatDatum($_POST["endDate"], "Y-m-d") : "");
if ($endDate != false && $startDate != false)
{
if ($datum->DateDiff($startDate, $endDate) >= 0)
{
if ($datum->DateDiff(date("Y-m-d"), $endDate) >= 0)
{
// if ($datum->DateDiff($startDate, date("Y-m-d")) <= 0)
// {
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->new = true;
$pruefungsfenster->studiensemester_kurzbz = $studiensemester_selected;
$pruefungsfenster->oe_kurzbz = $oe_kurzbz;
$pruefungsfenster->start = $startDate;
$pruefungsfenster->ende = $endDate;
if ($pruefungsfenster->save())
{
echo $p->t('pruefung/erfolgreichgespeichert');
}
else {
echo $p->t('pruefung/fehler').$pruefungsfenster->errormsg;
}
// }
// else
// {
// echo "Fehler: Startdatum liegt in der Vergangenheit.";
// }
}
else
{
echo $p->t('pruefung/fehlerEndDatumInDerVergangenheit');
}
}
else
{
echo $p->t('pruefung/fehlerEndDatumVorStartDatum');
}
}
else
{
echo $p->t('pruefung/fehlerDatumNichtKorrekt');
}
}
else if(isset($_POST["method"]) && $_POST["method"] == "update")
{
$studiensemester_selected = (isset($_POST["studiensemester"]) ? $_POST["studiensemester"] : "");
$oe_kurzbz = (isset($_POST["oe_kurzbz"]) ? $_POST["oe_kurzbz"] : "");
$startDate = (isset($_POST["startDate"]) ? $datum->formatDatum($_POST["startDate"], "Y-m-d") : "");
$endDate = (isset($_POST["endDate"]) ? $datum->formatDatum($_POST["endDate"], "Y-m-d") : "");
if ($endDate != false && $startDate != false)
{
if ($datum->DateDiff($startDate, $endDate) >= 0)
{
if ($datum->DateDiff(date("Y-m-d"), $endDate) >= 0)
{
// if ($datum->DateDiff($startDate, date("Y-m-d")) <= 0)
// {
$pruefungsfenster_id = $_POST["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(in_array($pruefungsfenster->oe_kurzbz, $oe))
{
$pruefungsfenster->studiensemester_kurzbz = $studiensemester_selected;
$pruefungsfenster->oe_kurzbz = $oe_kurzbz;
$pruefungsfenster->start = $startDate;
$pruefungsfenster->ende = $endDate;
if ($pruefungsfenster->save())
{
echo $p->t('pruefung/erfolgreichgeaendert');
}
else {
echo $p->t('pruefung/fehler').$pruefungsfenster->errormsg;
}
}
else
{
echo $p->t('pruefung/keineBerechtigungZumAendernDesDatensatzes');
}
// }
// else
// {
// echo "Fehler: Startdatum liegt in der Vergangenheit.";
// }
}
else
{
echo $p->t('pruefung/fehlerEndDatumInDerVergangenheit');
}
}
else
{
echo $p->t('pruefung/fehlerEndDatumVorStartDatum');
}
}
else
{
echo $p->t('pruefung/fehlerDatumNichtKorrekt');
}
}
else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_GET["method"]=="update")
{
$pruefungsfenster_id = $_GET["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(!in_array($pruefungsfenster->oe_kurzbz, $oe))
{
echo $p->t('pruefung/keineBerechtigungZumAnzeigenDesDatensatzes');
$pruefungsfenster = new pruefungsfenster();
}
$method = $_GET["method"];
}
else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_GET["method"]=="delete")
{
$pruefungsfenster_id = $_GET["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(in_array($pruefungsfenster->oe_kurzbz, $oe))
{
if(!$pruefungsfenster->hasPruefungen($pruefungsfenster_id) && $pruefungsfenster->errormsg === null)
{
if($pruefungsfenster->delete($pruefungsfenster_id))
{
echo $p->t('pruefung/erfolgreichgeloescht');
}
else
{
echo "Fehler: ".$pruefungsfenster->errormsg;
}
}
else
{
echo $p->t('pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen');
}
$method = $_GET["method"];
}
else
{
echo $p->t('pruefung/keineBerechtigungZumLoeschenDesDatensatzes');
}
}
$prfFenster = new pruefungsfenster();
$prfFenster->getAll("start");
if($method != "update")
{
?>
<h1><?php echo $p->t('pruefung/pruefungsfensterVerwaltung'); ?></h1>
<h2><?php echo $p->t('pruefung/neuesPruefungsfensterAnlegen'); ?></h2>
<div>
<form method="POST" action="pruefungsfenster_anlegen.php">
<table>
<tr>
<td><input type="hidden" name="method" value="save"></td>
</tr>
<tr>
<td><?php echo $p->t('global/studiensemester'); ?>: </td>
<td>
<select id="studiensemester" name="studiensemester">
<?php
$aktuellesSemester = $studiensemester->getSemesterFromDatum(date("Y-m-d"));
foreach ($studiensemester->studiensemester as $result)
{
if($aktuellesSemester == $result->studiensemester_kurzbz)
{
echo '<option selected>'.$result->studiensemester_kurzbz.'</option>';
}
else
{
echo '<option>'.$result->studiensemester_kurzbz.'</option>';
}
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('global/organisationseinheit'); ?>: </td>
<td>
<select id="oe_kurzbz" name="oe_kurzbz">
<?php
$oe_array = array();
foreach ($oe as $result)
{
$organisationseinheit = new organisationseinheit();
$organisationseinheit->load($result);
array_push($oe_array, $organisationseinheit);
}
usort($oe_array, "compareOe");
foreach ($oe_array as $result)
{
echo '<option value="'.$result->oe_kurzbz.'">'.$result->organisationseinheittyp_kurzbz.' '.$result->bezeichnung.'</option>';
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/start'); ?>: </td>
<td><input type="text" id="startDate" name="startDate"></td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/ende'); ?>: </td>
<td><input type="text" id="endDate" name="endDate"></td>
</tr>
<tr>
<td><input type="submit" value="<?php echo $p->t('global/speichern'); ?>"></td>
</tr>
</table>
</form>
</div>
<?php
}
else
{
?>
<h1><?php echo $p->t('pruefung/pruefungsfensterVerwaltung'); ?></h1>
<h2><?php echo $p->t('pruefung/pruefungsfensterBearbeiten'); ?></h2>
<div>
<form method="POST" action="pruefungsfenster_anlegen.php">
<table>
<tr>
<td><input type="hidden" name="method" value="update"></td>
</tr>
<tr>
<td><input type="hidden" name="id" value="<?php echo $pruefungsfenster->pruefungsfenster_id; ?>"></td>
</tr>
<tr>
<td><?php echo $p->t('global/studiensemester'); ?>: </td>
<td>
<select id="studiensemester" name="studiensemester">
<?php
foreach ($studiensemester->studiensemester as $result)
{
if($result->studiensemester_kurzbz == $pruefungsfenster->studiensemester_kurzbz)
{
echo '<option selected>'.$result->studiensemester_kurzbz.'</option>';
}
else
{
echo '<option>'.$result->studiensemester_kurzbz.'</option>';
}
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('global/organisationseinheit'); ?>: </td>
<td>
<select id="oe_kurzbz" name="oe_kurzbz">
<?php
foreach ($oe as $result)
{
if($result == $pruefungsfenster->oe_kurzbz)
{
echo '<option selected>'.$result.'</option>';
}
else
{
echo '<option>'.$result.'</option>';
}
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/start'); ?>: </td>
<td><input type="text" id="startDate" name="startDate" value="<?php echo $pruefungsfenster->start; ?>"></td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/ende'); ?>: </td>
<td><input type="text" id="endDate" name="endDate" value="<?php echo $pruefungsfenster->ende; ?>"></td>
</tr>
<tr>
<td><input type="submit" value="<?php echo $p->t('global/speichern'); ?>"></td>
<td><a href="pruefungsfenster_anlegen.php"><input type="button" value="<?php echo $p->t('global/abbrechen'); ?>"></a></td>
</tr>
</table>
</form>
</div>
<?php
}
/*
* Wenn ein Datensatz um bearbeiten ausgewählt wurde,
* wird dieser Block nicht angezeigt.
*/
if((isset($_GET["id"]) && $method!="update") || !isset($_GET["id"]))
{
?>
<h2><?php echo $p->t('pruefung/pruefungsfensterBearbeiten'); ?></h2>
<div style="width: 50%;">
<?php
if(!empty($prfFenster->result)){
?>
<table class="tablesorter" id="prfTable">
<thead>
<tr>
<th><?php echo $p->t('global/studiensemester'); ?></th>
<th><?php echo $p->t('global/organisationseinheit'); ?></th>
<th><?php echo $p->t('pruefung/start'); ?></th>
<th><?php echo $p->t('pruefung/ende'); ?></th>
<th><?php echo $p->t('global/bearbeiten'); ?></th>
<th><?php echo $p->t('global/loeschen'); ?></th>
</tr>
</thead>
<tbody>
<?php
$organisationseinheit = new organisationseinheit();
foreach ($prfFenster->result as $result)
{
if(in_array($result->oe_kurzbz, $oe))
{
$organisationseinheit->load($result->oe_kurzbz);
echo
'<tr>
<td>'.$result->studiensemester_kurzbz.'</td>
<td>'.$organisationseinheit->organisationseinheittyp_kurzbz." ".$organisationseinheit->bezeichnung.'</td>
<td>'.$result->start.'</td>
<td>'.$result->ende.'</td>
<td><a href="pruefungsfenster_anlegen.php?method=update&id='.$result->pruefungsfenster_id.'">'.$p->t('global/bearbeiten').'</a></td>
<td><a href="pruefungsfenster_anlegen.php?method=delete&id='.$result->pruefungsfenster_id.'">'. $p->t('global/loeschen').'</a></td>
</tr>';
}
}
?>
</tbody>
</table>
<?php
}
else
{
echo
'<tr>
<td>'.$p->t('pruefung/keinePruefungsfensterGespeichert').'</td>
</tr>';
}
?>
</div>
<?php
}
?>
</body>
</html>
<!DOCTYPE html>
<?php
/*
* Copyright 2014 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
* Authors: Stefan Puraner <puraner@technikum-wien.at>
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/organisationseinheit.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/pruefungsfenster.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$db = new basis_db();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('lehre/pruefungsfenster'))
die('Sie haben keine Berechtigung für diese Seite');
function compareOe($a, $b)
{
if($a->organisationseinheittyp_kurzbz == $b->organisationseinheittyp_kurzbz)
return 0;
return ($a->organisationseinheittyp_kurzbz < $b->organisationseinheittyp_kurzbz) ? -1 : 1;
}
?>
<html>
<head>
<meta charset="UTF-8">
<title><?php echo $p->t('pruefung/titlePruefungsfenster') ?></title>
<script src="../../../../include/js/datecheck.js"></script>
<script src="../../../../include/js/jquery1.9.min.js"></script>
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
<link rel="stylesheet" href="../../../../skin/style.css.php">
<link rel="stylesheet" href="../../../../skin/tablesort.css">
</head>
<body>
<script>
$(document).ready(function() {
$("#startDate").datepicker({
minDate: new Date()
});
$("#endDate").datepicker({
minDate: +1
});
$("#prfTable").tablesorter({
widgets: ["zebra"]
});
});
</script>
<?php
$datum = new datum();
$method = "";
//Organisationseinheiten, für die der Benutzer berechtigt ist
$oe = $rechte->getOEkurzbz("lehre/pruefungsfenster");
$studiensemester = new studiensemester();
$studiensemester->getAll();
if (isset($_POST["method"]) && $_POST["method"] == "save")
{
$method = $_POST["method"];
$studiensemester_selected = (isset($_POST["studiensemester"]) ? $_POST["studiensemester"] : "");
$oe_kurzbz = (isset($_POST["oe_kurzbz"]) ? $_POST["oe_kurzbz"] : "");
$startDate = (isset($_POST["startDate"]) ? $datum->formatDatum($_POST["startDate"], "Y-m-d") : "");
$endDate = (isset($_POST["endDate"]) ? $datum->formatDatum($_POST["endDate"], "Y-m-d") : "");
if ($endDate != false && $startDate != false)
{
if ($datum->DateDiff($startDate, $endDate) >= 0)
{
if ($datum->DateDiff(date("Y-m-d"), $endDate) >= 0)
{
// if ($datum->DateDiff($startDate, date("Y-m-d")) <= 0)
// {
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->new = true;
$pruefungsfenster->studiensemester_kurzbz = $studiensemester_selected;
$pruefungsfenster->oe_kurzbz = $oe_kurzbz;
$pruefungsfenster->start = $startDate;
$pruefungsfenster->ende = $endDate;
if ($pruefungsfenster->save())
{
echo $p->t('pruefung/erfolgreichgespeichert');
}
else {
echo $p->t('pruefung/fehler').$pruefungsfenster->errormsg;
}
// }
// else
// {
// echo "Fehler: Startdatum liegt in der Vergangenheit.";
// }
}
else
{
echo $p->t('pruefung/fehlerEndDatumInDerVergangenheit');
}
}
else
{
echo $p->t('pruefung/fehlerEndDatumVorStartDatum');
}
}
else
{
echo $p->t('pruefung/fehlerDatumNichtKorrekt');
}
}
else if(isset($_POST["method"]) && $_POST["method"] == "update")
{
$studiensemester_selected = (isset($_POST["studiensemester"]) ? $_POST["studiensemester"] : "");
$oe_kurzbz = (isset($_POST["oe_kurzbz"]) ? $_POST["oe_kurzbz"] : "");
$startDate = (isset($_POST["startDate"]) ? $datum->formatDatum($_POST["startDate"], "Y-m-d") : "");
$endDate = (isset($_POST["endDate"]) ? $datum->formatDatum($_POST["endDate"], "Y-m-d") : "");
if ($endDate != false && $startDate != false)
{
if ($datum->DateDiff($startDate, $endDate) >= 0)
{
if ($datum->DateDiff(date("Y-m-d"), $endDate) >= 0)
{
// if ($datum->DateDiff($startDate, date("Y-m-d")) <= 0)
// {
$pruefungsfenster_id = $_POST["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(in_array($pruefungsfenster->oe_kurzbz, $oe))
{
$pruefungsfenster->studiensemester_kurzbz = $studiensemester_selected;
$pruefungsfenster->oe_kurzbz = $oe_kurzbz;
$pruefungsfenster->start = $startDate;
$pruefungsfenster->ende = $endDate;
if ($pruefungsfenster->save())
{
echo $p->t('pruefung/erfolgreichgeaendert');
}
else {
echo $p->t('pruefung/fehler').$pruefungsfenster->errormsg;
}
}
else
{
echo $p->t('pruefung/keineBerechtigungZumAendernDesDatensatzes');
}
// }
// else
// {
// echo "Fehler: Startdatum liegt in der Vergangenheit.";
// }
}
else
{
echo $p->t('pruefung/fehlerEndDatumInDerVergangenheit');
}
}
else
{
echo $p->t('pruefung/fehlerEndDatumVorStartDatum');
}
}
else
{
echo $p->t('pruefung/fehlerDatumNichtKorrekt');
}
}
else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_GET["method"]=="update")
{
$pruefungsfenster_id = $_GET["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(!in_array($pruefungsfenster->oe_kurzbz, $oe))
{
echo $p->t('pruefung/keineBerechtigungZumAnzeigenDesDatensatzes');
$pruefungsfenster = new pruefungsfenster();
}
$method = $_GET["method"];
}
else if(isset($_GET["id"]) && $_GET["id"]!= null && isset($_GET["method"]) && $_GET["method"]=="delete")
{
$pruefungsfenster_id = $_GET["id"];
$pruefungsfenster = new pruefungsfenster();
$pruefungsfenster->load($pruefungsfenster_id);
if(in_array($pruefungsfenster->oe_kurzbz, $oe))
{
if(!$pruefungsfenster->hasPruefungen($pruefungsfenster_id) && $pruefungsfenster->errormsg === null)
{
if($pruefungsfenster->delete($pruefungsfenster_id))
{
echo $p->t('pruefung/erfolgreichgeloescht');
}
else
{
echo "Fehler: ".$pruefungsfenster->errormsg;
}
}
else
{
echo $p->t('pruefung/pruefungsfensterKonnteNichtGeloeschtWerdenDaPruefungen');
}
$method = $_GET["method"];
}
else
{
echo $p->t('pruefung/keineBerechtigungZumLoeschenDesDatensatzes');
}
}
$prfFenster = new pruefungsfenster();
$prfFenster->getAll("start");
if($method != "update")
{
?>
<h1><?php echo $p->t('pruefung/pruefungsfensterVerwaltung'); ?></h1>
<h2><?php echo $p->t('pruefung/neuesPruefungsfensterAnlegen'); ?></h2>
<div>
<form method="POST" action="pruefungsfenster_anlegen.php">
<table>
<tr>
<td><input type="hidden" name="method" value="save"></td>
</tr>
<tr>
<td><?php echo $p->t('global/studiensemester'); ?>: </td>
<td>
<select id="studiensemester" name="studiensemester">
<?php
$aktuellesSemester = $studiensemester->getSemesterFromDatum(date("Y-m-d"));
foreach ($studiensemester->studiensemester as $result)
{
if($aktuellesSemester == $result->studiensemester_kurzbz)
{
echo '<option selected>'.$result->studiensemester_kurzbz.'</option>';
}
else
{
echo '<option>'.$result->studiensemester_kurzbz.'</option>';
}
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('global/organisationseinheit'); ?>: </td>
<td>
<select id="oe_kurzbz" name="oe_kurzbz">
<?php
$oe_array = array();
foreach ($oe as $result)
{
$organisationseinheit = new organisationseinheit();
$organisationseinheit->load($result);
array_push($oe_array, $organisationseinheit);
}
usort($oe_array, "compareOe");
foreach ($oe_array as $result)
{
echo '<option value="'.$result->oe_kurzbz.'">'.$result->organisationseinheittyp_kurzbz.' '.$result->bezeichnung.'</option>';
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/start'); ?>: </td>
<td><input type="text" id="startDate" name="startDate"></td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/ende'); ?>: </td>
<td><input type="text" id="endDate" name="endDate"></td>
</tr>
<tr>
<td><input type="submit" value="<?php echo $p->t('global/speichern'); ?>"></td>
</tr>
</table>
</form>
</div>
<?php
}
else
{
?>
<h1><?php echo $p->t('pruefung/pruefungsfensterVerwaltung'); ?></h1>
<h2><?php echo $p->t('pruefung/pruefungsfensterBearbeiten'); ?></h2>
<div>
<form method="POST" action="pruefungsfenster_anlegen.php">
<table>
<tr>
<td><input type="hidden" name="method" value="update"></td>
</tr>
<tr>
<td><input type="hidden" name="id" value="<?php echo $pruefungsfenster->pruefungsfenster_id; ?>"></td>
</tr>
<tr>
<td><?php echo $p->t('global/studiensemester'); ?>: </td>
<td>
<select id="studiensemester" name="studiensemester">
<?php
foreach ($studiensemester->studiensemester as $result)
{
if($result->studiensemester_kurzbz == $pruefungsfenster->studiensemester_kurzbz)
{
echo '<option selected>'.$result->studiensemester_kurzbz.'</option>';
}
else
{
echo '<option>'.$result->studiensemester_kurzbz.'</option>';
}
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('global/organisationseinheit'); ?>: </td>
<td>
<select id="oe_kurzbz" name="oe_kurzbz">
<?php
foreach ($oe as $result)
{
if($result == $pruefungsfenster->oe_kurzbz)
{
echo '<option selected>'.$result.'</option>';
}
else
{
echo '<option>'.$result.'</option>';
}
}
?>
</select>
</td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/start'); ?>: </td>
<td><input type="text" id="startDate" name="startDate" value="<?php echo $pruefungsfenster->start; ?>"></td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/ende'); ?>: </td>
<td><input type="text" id="endDate" name="endDate" value="<?php echo $pruefungsfenster->ende; ?>"></td>
</tr>
<tr>
<td><input type="submit" value="<?php echo $p->t('global/speichern'); ?>"></td>
<td><a href="pruefungsfenster_anlegen.php"><input type="button" value="<?php echo $p->t('global/abbrechen'); ?>"></a></td>
</tr>
</table>
</form>
</div>
<?php
}
/*
* Wenn ein Datensatz um bearbeiten ausgewählt wurde,
* wird dieser Block nicht angezeigt.
*/
if((isset($_GET["id"]) && $method!="update") || !isset($_GET["id"]))
{
?>
<h2><?php echo $p->t('pruefung/pruefungsfensterBearbeiten'); ?></h2>
<div style="width: 50%;">
<?php
if(!empty($prfFenster->result)){
?>
<table class="tablesorter" id="prfTable">
<thead>
<tr>
<th><?php echo $p->t('global/studiensemester'); ?></th>
<th><?php echo $p->t('global/organisationseinheit'); ?></th>
<th><?php echo $p->t('pruefung/start'); ?></th>
<th><?php echo $p->t('pruefung/ende'); ?></th>
<th><?php echo $p->t('global/bearbeiten'); ?></th>
<th><?php echo $p->t('global/loeschen'); ?></th>
</tr>
</thead>
<tbody>
<?php
$organisationseinheit = new organisationseinheit();
foreach ($prfFenster->result as $result)
{
if(in_array($result->oe_kurzbz, $oe))
{
$organisationseinheit->load($result->oe_kurzbz);
echo
'<tr>
<td>'.$result->studiensemester_kurzbz.'</td>
<td>'.$organisationseinheit->organisationseinheittyp_kurzbz." ".$organisationseinheit->bezeichnung.'</td>
<td>'.$result->start.'</td>
<td>'.$result->ende.'</td>
<td><a href="pruefungsfenster_anlegen.php?method=update&id='.$result->pruefungsfenster_id.'">'.$p->t('global/bearbeiten').'</a></td>
<td><a href="pruefungsfenster_anlegen.php?method=delete&id='.$result->pruefungsfenster_id.'">'. $p->t('global/loeschen').'</a></td>
</tr>';
}
}
?>
</tbody>
</table>
<?php
}
else
{
echo
'<tr>
<td>'.$p->t('pruefung/keinePruefungsfensterGespeichert').'</td>
</tr>';
}
?>
</div>
<?php
}
?>
</body>
</html>
@@ -51,7 +51,7 @@ $studiensemester = new studiensemester();
$lehrveranstaltung = new lehrveranstaltung();
$lehrveranstaltung->loadLVAfromMitarbeiter(0, $uid, $studiensemester->getaktorNext());
if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('lehre/pruefungsterminAdmin'))
die('Sie haben keine Berechtigung für diese Seite');
die('Sie haben keine Berechtigung für diese Seite');
?>
<html>
+37 -36
View File
@@ -16,20 +16,22 @@
* 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>
* 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');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once ('../../../include/phrasen.class.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once ('../../../include/phrasen.class.php');
$sprache = getSprache();
$p=new phrasen($sprache);
$sprache = getSprache();
$p=new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$user = get_uid();
@@ -76,13 +78,13 @@
$rechte->getBerechtigungen($user);
if(check_lektor($user))
$is_lector=true;
else
$is_lector=false;
$is_lector=true;
else
$is_lector=false;
$upload_root = DOC_ROOT.'/documents';//"../../../documents";
$link_cut = DOC_ROOT.'/documents';
if(isset($subdir))
{
if(substr_count($subdir, '..') > 0 || substr_count($subdir, '.') > 0)
@@ -97,7 +99,7 @@
}
else
{
$sql_query = "SELECT student_uid FROM public.tbl_student WHERE student_uid=".$db->db_add_param($user);
$sql_query = "SELECT uid FROM public.tbl_prestudent WHERE uid=".$db->db_add_param($user);
if($result_student = $db->db_query($sql_query))
{
$num_rows_student = $db->db_num_rows($result_student);
@@ -525,7 +527,7 @@
if(!isset($short_short) || !$short_short)
{
$row_lesson = $db->db_fetch_object($result_lector_dispatch, 0);
$row_lesson = $db->db_fetch_object($result_lector_dispatch, 0);
$short_short = $row_lesson->kuerzel;
}
@@ -539,8 +541,7 @@
}
else
{
//$sql_query = "SELECT DISTINCT ON(bz2, lehrevz) tbl_student.studiengang_kz AS id, kurzbzlang, lehrevz AS kuerzel, (tbl_lehrfach.bezeichnung || '; XX') AS bezeichnung, SUBSTRING(tbl_lehrfach.bezeichnung || '; XX', 1, CHAR_LENGTH(tbl_lehrfach.bezeichnung || '; XX') - 4) AS bz2 FROM tbl_lehrfach, public.tbl_studiengang, public.tbl_student WHERE tbl_student.studiengang_kz='$course_id' AND tbl_student.semester='$term_id' AND lehrevz='$short' AND tbl_student.uid='$user' AND tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz LIMIT 1";
$sql_query = "SELECT DISTINCT tbl_lehrveranstaltung.bezeichnung, lehreverzeichnis, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kurzbz FROM public.tbl_student, lehre.tbl_lehrveranstaltung, public.tbl_studiengang WHERE lehreverzeichnis=".$db->db_add_param($short)." AND tbl_student.studiengang_kz=".$db->db_add_param($course_id)." AND tbl_student.semester=".$db->db_add_param($term_id)." AND tbl_student.student_uid=".$db->db_add_param($user)." AND tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz AND tbl_lehrveranstaltung.studiengang_kz=tbl_student.studiengang_kz AND tbl_lehrveranstaltung.semester=tbl_student.semester AND tbl_lehrveranstaltung.lehre=true LIMIT 1";
$sql_query = "SELECT DISTINCT tbl_lehrveranstaltung.bezeichnung, lehreverzeichnis, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kurzbz FROM public.tbl_prestudent, lehre.tbl_lehrveranstaltung, public.tbl_studiengang, public.tbl_studentlehrverband WHERE lehreverzeichnis=".$db->db_add_param($short)." AND tbl_studentlehrverband.prestudent_id=tbl_prestudent.prestudent_id AND tbl_prestudent.studiengang_kz=".$db->db_add_param($course_id)." AND tbl_studentlehrverband.semester=".$db->db_add_param($term_id)." AND tbl_prestudent.uid=".$db->db_add_param($user)." AND tbl_studiengang.studiengang_kz=tbl_prestudent.studiengang_kz AND tbl_lehrveranstaltung.studiengang_kz=tbl_prestudent.studiengang_kz AND tbl_lehrveranstaltung.semester=tbl_studentlehrverband.semester AND tbl_lehrveranstaltung.lehre=true LIMIT 1";
if(!$result_path_elements = $db->db_query($sql_query))
die('<p align="center"><strong>'.$p->t('upload/benutzerKonnteNichtZugeordnetWerden',array($user)).'</strong>!</p>');
@@ -564,27 +565,27 @@
.'</td></tr></table>');
}
}
$row = $db->db_fetch_object($result_path_elements, 0);
$row = $db->db_fetch_object($result_path_elements, 0);var_dump($row);//TODO
$uploaddir = mb_strtolower($row->kurzbz).'/'.$term_id.'/'.mb_strtolower($row->lehreverzeichnis).'/upload';
}
?>
<tr>
<td align="center" colSpan="5" height="36">
<center>
<table>
<tr>
<td><div align="center"><b><font face="Arial" size="2">
<?php
if($islector)
{
if(!isset($link_cut))
$link_cut = '';
$link_path = mb_substr(mb_substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut)), 0, mb_strlen(mb_substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut))) - mb_strlen('download')).'upload';
}
?>
<tr>
<td align="center" colSpan="5" height="36">
<center>
<table>
<tr>
<td><div align="center"><b><font face="Arial" size="2">
<?php
if($islector)
{
if(!isset($link_cut))
$link_cut = '';
$link_path = mb_substr(mb_substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut)), 0, mb_strlen(mb_substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut))) - mb_strlen('download')).'upload';
}
$numoffile = 5;
$numoffile = 5;
// Upload von neuen Dateien
// Upload von neuen Dateien
if(isset($_POST['upload']) && $_POST['upload'] == "Upload")
{
for($i = 0; $i < $numoffile; $i++)
@@ -1077,7 +1078,7 @@
}
}
if(isset($_POST["new_dir_name".$dir_count]))
$new_dir_name_ = $_POST["new_dir_name".$dir_count];
+2 -1
View File
@@ -21,6 +21,7 @@
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Manfred Kindl <manfred.kindl@technikum-wien.at>
* Alexander Nimmervoll <alexander.nimmervoll@technikum-wien.at>
* Andreas Moik < moik@technikum-wien.at >
*/
require_once('../../../config/cis.config.inc.php');
@@ -98,7 +99,7 @@ if(!$result_ort)
die("ort not found!");
$num_rows_ort=$db->db_num_rows($result_ort);
/*$sql_query="SELECT student_uid FROM public.tbl_student ORDER BY student_uid";
/*$sql_query="SELECT uid FROM public.tbl_prestudent ORDER BY uid";
$result_lektor=$db->db_query($sql_query);
if(!$result_lektor)
die("lektor not found!");
-13
View File
@@ -1,13 +0,0 @@
<html>
<head>
<title>Out of Service</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<LINK rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
</head>
<body>
<P>&nbsp;</P>
<P><h3>Stundenplan Update l&auml;uft. </h3></P>
<P><BR>
Diese Service wird in wenigen Minuten wieder verfügbar sein.</P>
</body>
</html>
@@ -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@technikum-wien.at>.
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
* Gerald Simane-Sequens <gerald.simane@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
@@ -284,19 +285,18 @@
$max_person=$row_anz->max_person+$max_person;
$row_anz->verband=trim($row_anz->verband);
$row_anz->gruppe=trim($row_anz->gruppe);
$row_anz->gruppe_kurzbz=trim($row_anz->gruppe_kurzbz);
$row_anz->gruppe_kurzbz=trim($row_anz->gruppe_kurzbz);
$stsem=$ss;
$gruppe=($row_anz->gruppe_kurzbz?$row_anz->gruppe_kurzbz:null);
$student=new student();
$gruppe=($row_anz->gruppe_kurzbz?$row_anz->gruppe_kurzbz:null);
$row_anz->anz=0;
if ($result=$student->getStudents($row_anz->studiengang_kz,$row_anz->semester,$row_anz->verband,$row_anz->gruppe,$gruppe, $stsem))
$row_anz->anz=count($result);
if (empty($row_anz->anz))
if (empty($row_anz->anz))
$fehler=true;
$lvb=$row_anz->kurzbzlang.'-'.$row_anz->semester;
-108
View File
@@ -1,108 +0,0 @@
<?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
* Karl Burkhart <burkhart@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/phrasen.class.php');
if (!$db = new basis_db())
die('Fehler beim Oeffnen der Datenbankverbindung');
$sprache = getSprache();
$p=new phrasen($sprache);
if(!($erg=$db->db_query("SELECT * FROM tbl_studiengang WHERE studiengang_kz>0 ORDER BY kurzbz")))
die($db->db_last_error());
$num_rows=$db->db_num_rows($erg);
?>
<html>
<head>
<title><?php echo $p->t('lvplan/uebersichtDerLehrverbaende');?></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
</head>
<body id="inhalt">
<H2><table class="tabcontent" id="inhalt">
<tr>
<td>&nbsp;<a class="Item" href="index.php"><?php echo $p->t('lvplan/lehrveranstaltungsplan');?></a> &gt;&gt; <?php echo $p->t('lvplan/lehrverbaende');?></td>
<td align="right"><A href="help/index.html" class="hilfe" target="_blank">HELP&nbsp;</A></td>
</tr>
</table>
</H2>
<table border="1" cellpadding="10" rules="cols">
<tr class="liste">
<?php
for ($i=0;$i<$num_rows;$i++)
{
$row=$db->db_fetch_object($erg, $i);
echo "<th>$row->bezeichnung ($row->kurzbz)</th>";
}
?>
</tr>
<tr>
<?php
for ($i=0; $i<$num_rows; $i++)
{
echo '<td class="MarkLine" nowrap valign="top">';
$row=$db->db_fetch_object($erg, $i);
$stg_kz=$row->studiengang_kz;
$stg_kzbz=$row->typ.$row->kurzbz;
$sql_query="SELECT DISTINCT semester FROM tbl_student WHERE studiengang_kz=$stg_kz AND semester<10 ORDER BY semester";
//echo $sql_query;
if(!($result_sem=$db->db_query($sql_query)))
die($db->db_last_error());
$nr_sem=$db->db_num_rows($result_sem);
for ($j=0; $j<$nr_sem; $j++)
{
$row_sem=$db->db_fetch_object($result_sem, $j);
echo '<a class="Item" href="stpl_week.php?type=verband&stg_kz='.$stg_kz."&sem=$row_sem->semester\">$stg_kzbz-$row_sem->semester</a><br>";
$sql_query="SELECT DISTINCT verband FROM tbl_student WHERE studiengang_kz=$stg_kz AND semester=$row_sem->semester ORDER BY verband";
//echo $sql_query;
if(!($result_ver=$db->db_query($sql_query)))
die($db->db_last_error());
$nr_ver=$db->db_num_rows($result_ver);
for ($k=0; $k<$nr_ver; $k++)
{
$row_ver=$db->db_fetch_object($result_ver, $k);
echo "&nbsp;- <a class='Item' href=\"stpl_week.php?type=verband&stg_kz=$stg_kz&sem=$row_sem->semester&ver=$row_ver->verband\">$stg_kzbz-$row_sem->semester$row_ver->verband</a><br>";
$sql_query="SELECT DISTINCT gruppe FROM tbl_student WHERE studiengang_kz=$stg_kz AND semester=$row_sem->semester AND verband='$row_ver->verband' ORDER BY gruppe";
//echo $sql_query;
if(!($result_grp=$db->db_query($sql_query)))
die($db->db_last_error());
$nr_grp=$db->db_num_rows($result_grp);
for ($l=0; $l<$nr_grp; $l++)
{
$row_grp=$db->db_fetch_object($result_grp, $l);
echo "&nbsp;&nbsp;- <a class='Item' href=\"stpl_week.php?type=verband&stg_kz=$stg_kz&sem=$row_sem->semester&ver=$row_ver->verband&grp=$row_grp->gruppe\">$stg_kzbz-$row_sem->semester$row_ver->verband$row_grp->gruppe</a><br>";
}
}
}
echo"</td>";
}
?>
</tr>
</table>
</body>
</html>
+45 -34
View File
@@ -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/cis.config.inc.php');
require_once('../../include/functions.inc.php');
@@ -25,12 +26,12 @@ require_once('../../include/studiengang.class.php');
require_once('../../include/gruppe.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/lehrverband.class.php');
require_once('../../include/benutzerfunktion.class.php');
require_once('../../include/phrasen.class.php');
$sprache = getSprache();
$sprache = getSprache();
$p=new phrasen($sprache);
if (!$db = new basis_db())
@@ -40,7 +41,9 @@ $user=get_uid();
$is_lector=check_lektor($user);
$is_stdv=false;
$std_obj = new student($user);
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
//Studentenvertreter duerfen den Verteiler tw_std oeffnen
if(!$is_lector)
@@ -106,7 +109,7 @@ if(!$is_lector)
} else if (document.all && document.all[x]) {
document.all[x].visibility = 'visible';
document.all[x].style.display='inline';
} else if (document.layers && document.layers[x]) {
} else if (document.layers && document.layers[x]) {
document.layers[x].visibility = 'show';
document.layers[x].style.display='inline';
}
@@ -122,10 +125,10 @@ if(!$is_lector)
{
document.getElementById(x).style.visibility = 'hidden';
document.getElementById(x).style.display = 'none';
} else if (document.all && document.all[x]) {
} else if (document.all && document.all[x]) {
document.all[x].visibility = 'hidden';
document.all[x].style.display='none';
} else if (document.layers && document.layers[x]) {
} else if (document.layers && document.layers[x]) {
document.layers[x].visibility = 'hide';
document.layers[x].style.display='none';
}
@@ -232,7 +235,7 @@ if(!$is_lector)
//StudentenListe Rausschreiben
if($row->studiengang_kz!=0) //0 ist für ganzes TW
{
$qry_stud = "SELECT count(*) as anzahl FROM public.tbl_student WHERE studiengang_kz='$row->studiengang_kz' AND student_uid NOT LIKE '_Dummy%'";
$qry_stud = "SELECT count(*) as anzahl FROM public.tbl_prestudent WHERE studiengang_kz='$row->studiengang_kz' AND uid NOT LIKE '_Dummy%'";
if(!$row_stud=$db->db_fetch_object($db->db_query($qry_stud)))
echo $p->t('mailverteiler/fehlerBeimLadenDerStudenten');
@@ -250,7 +253,7 @@ if(!$is_lector)
{
if((!is_null($row1->semester)) && !empty($row1->semester) && ($row1->semester != "") && ($row1->semester<=$row->max_semester) && ($row1->semester>'0')) //($row1->semester<'10'))
{
$qry_cnt = "SELECT count(*) as anzahl FROM public.tbl_student WHERE studiengang_kz='$row1->studiengang_kz' AND semester='$row1->semester' AND student_uid NOT LIKE '_Dummy%'";
$qry_cnt = "SELECT count(*) as anzahl FROM public.tbl_prestudent WHERE studiengang_kz='$row1->studiengang_kz' AND semester='$row1->semester' AND uid NOT LIKE '_Dummy%'";
if(trim($row1->verband)!='')
{
$qry_cnt .= " AND verband='$row1->verband'";
@@ -308,30 +311,38 @@ if(!$is_lector)
}
echo "</table></td></tr>";
}
if($row->studiengang_kz!=0 && $row_stud->anzahl>0)
{
echo "<tr><td width=\"420\" style=\"padding-left: 12px;\">".$p->t('mailverteiler/alleStudentenDiesesStudienganges')."</td>";
if($row->studiengang_kz!=0 && $row_stud->anzahl>0)
{
echo "<tr><td width=\"420\" style=\"padding-left: 12px;\">".$p->t('mailverteiler/alleStudentenDiesesStudienganges')."</td>";
// ffe, 20060508: Display the opening link for department dispatchers only for students of the particular department
if($is_lector || $std_obj->studiengang_kz==$row->studiengang_kz || !MAILVERTEILER_SPERRE)
{
echo " <td width=\"20\">";
if(MAILVERTEILER_SPERRE)
echo '<a href="#" onClick="javascript:window.open(\'open_grp.php?grp='.strtolower($row->kuerzel).'_std&amp;desc='.$p->t('mailverteiler/alleStudentenVon').' '.strtolower($row->kuerzel).'\',\'_blank\',\'width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\');return false;" class="Item"><img valign="bottom" alt="'.$p->t('mailverteiler/verteilerOeffnen').'" src="../../skin/images/lock.png" title="'.$p->t('mailverteiler/verteilerOeffnen').'"></a></td>';
/* open a popup containing the final dispatcher address */
echo " <td width=\"300\" ><a href=\"mailto:".strtolower($row->kuerzel)."_std@".DOMAIN."\" class=\"Item\">".strtolower($row->kuerzel)."_std@".DOMAIN."</a></td>";
}
else
{
echo " <td width=\"20\">&nbsp</td>";
echo " <td width=\"300\" >gesperrt</td>";
}
$hasStudiengang_kz = false;
foreach($prestudent->result as $ps)
{
if($row->studiengang_kz == $ps->studiengang_kz)
$hasStudiengang_kz = true;
}
echo ' <td width="100" align="right"><a href="#" onClick="javascript:window.open(\'stud_in_grp.php?kz='.$row->studiengang_kz.'&amp;all=true\',\'_blank\',\'width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\');return false;" class="Item">'.$p->t('mailverteiler/personen').'</a>&nbsp;';
echo "</tr>\n";
}
echo "\n";
foreach($grp_obj->result as $row1)
// ffe, 20060508: Display the opening link for department dispatchers only for students of the particular department
if($is_lector || $hasStudiengang_kz || !MAILVERTEILER_SPERRE)
{
echo " <td width=\"20\">";
if(MAILVERTEILER_SPERRE)
echo '<a href="#" onClick="javascript:window.open(\'open_grp.php?grp='.strtolower($row->kuerzel).'_std&amp;desc='.$p->t('mailverteiler/alleStudentenVon').' '.strtolower($row->kuerzel).'\',\'_blank\',\'width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\');return false;" class="Item"><img valign="bottom" alt="'.$p->t('mailverteiler/verteilerOeffnen').'" src="../../skin/images/lock.png" title="'.$p->t('mailverteiler/verteilerOeffnen').'"></a></td>';
/* open a popup containing the final dispatcher address */
echo " <td width=\"300\" ><a href=\"mailto:".strtolower($row->kuerzel)."_std@".DOMAIN."\" class=\"Item\">".strtolower($row->kuerzel)."_std@".DOMAIN."</a></td>";
}
else
{
echo " <td width=\"20\">&nbsp</td>";
echo " <td width=\"300\" >gesperrt</td>";
}
echo ' <td width="100" align="right"><a href="#" onClick="javascript:window.open(\'stud_in_grp.php?kz='.$row->studiengang_kz.'&amp;all=true\',\'_blank\',\'width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\');return false;" class="Item">'.$p->t('mailverteiler/personen').'</a>&nbsp;';
echo "</tr>\n";
}
echo "\n";
foreach($grp_obj->result as $row1)
{
if(!$row1->aktiv)
continue;
@@ -422,4 +433,4 @@ echo '</tr>
</tr>
</tbody>
</table></body></html>';
?>
?>
+40 -25
View File
@@ -15,7 +15,8 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Karl Burkhart <burkhart@technikum-wien.at>
* Authors: Karl Burkhart <burkhart@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*
*/
@@ -30,18 +31,29 @@ require_once('../../../include/mobilitaetsprogramm.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/akte.class.php');
require_once('../../../include/prestudent.class.php');
$method = (isset($_GET['method'])?$_GET['method']:'');
$message = '';
$uid=get_uid();
$sprache = getSprache();
if(!isset($_REQUEST["prestudent_id"]))
die("es wurde kine Prestudent_id uebergeben!");
$prestudent = new prestudent();
$prestudent_id = $_REQUEST["prestudent_id"];
$prestudent->load($prestudent_id);
if($prestudent->uid != $uid)
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$sprache = getSprache();
$p=new phrasen($sprache);
$outgoing = new preoutgoing();
$outgoing->loadUid($uid);
$outgoing->loadPrestudent_id($prestudent_id);
// speichert outgoing
if(isset($_REQUEST['submitOutgoing']))
{
{
$ansprechpersonUid = (isset($_REQUEST['ansprechperson_uid']))?$_REQUEST['ansprechperson_uid']:'';
$datum=new datum();
@@ -49,7 +61,7 @@ if(isset($_REQUEST['submitOutgoing']))
$zeitraum_bis = $datum->formatDatum($_REQUEST['zeitraum_bis'], 'Y-m-d');
$preoutgoing = new preoutgoing();
$preoutgoing->loadUid($outgoing->uid);
$preoutgoing->loadPrestudent_id($outgoing->prestudent_id);
// löschen der Ansprechperson
if($_POST['ansprechperson']==' ' || $_POST['ansprechperson']=='' || $_POST['ansprechperson_uid'] == '')
@@ -122,7 +134,7 @@ if(isset($_REQUEST['zDaten']))
if($method=='new')
{
$preoutgoing = new preoutgoing();
$preoutgoing->uid = $uid;
$preoutgoing->prestudent_id = $prestudent_id;
$preoutgoing->new = true;
$preoutgoing->bachelorarbeit = false;
$preoutgoing->masterarbeit = false;
@@ -341,7 +353,7 @@ if($method =="deleteFirma")
$benutzer = new benutzer();
$benutzer->load($uid);
$outgoing = new preoutgoing();
$outgoing->loadUid($uid);
$outgoing->loadPrestudent_id($prestudent_id);
$datum = new datum();
$zeitraum_von = $datum->formatDatum($outgoing->dauer_von, 'd.m.Y');
$zeitraum_bis = $datum->formatDatum($outgoing->dauer_bis, 'd.m.Y');
@@ -355,14 +367,15 @@ $name.= $benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost;
//
if(isset($_GET['ansicht']) == 'auswahl')
{
$ps = new prestudent();
$ps->load($outgoing->prestudent_id);
?>
<table border ="0" width="100%">
<tr>
<td align="left" colspan="4"><b><h1><div style="display:block; text-align:left; float:left;"><?php echo $p->t('incoming/outgoingRegistration'); ?></div><div style="display:block; text-align:right; margin-right:6px; "><?php echo((check_lektor($outgoing->uid)!='0')?"Mitarbeiter: ":"Student: ").$name; ?></div></h1></b></td>
<td align="left" colspan="4"><b><h1><div style="display:block; text-align:left; float:left;"><?php echo $p->t('incoming/outgoingRegistration'); ?></div><div style="display:block; text-align:right; margin-right:6px; "><?php echo((check_lektor($ps->uid)!='0')?"Mitarbeiter: ":"Student: ").$name; ?></div></h1></b></td>
</tr>
<tr><td><?php echo $message; ?></td></tr>
<tr><td><h3><?php echo $p->t('incoming/programmAuswahl');?>:</h3></td><td><div style="display:block; text-align:right; margin-right:6px; "><a href="<?php echo $_SERVER['PHP_SELF']; ?>?method=new&ansicht=auswahl" align ="left"><?php echo $p->t('incoming/neuenOutgoingAnlegen'); ?></a></div></td></tr>
<tr><td><h3><?php echo $p->t('incoming/programmAuswahl');?>:</h3></td><td><div style="display:block; text-align:right; margin-right:6px; "><a href="<?php echo $_SERVER['PHP_SELF']; ?>?method=new&ansicht=auswahl&prestudent_id=<?php echo $prestudent_id; ?>" align ="left"><?php echo $p->t('incoming/neuenOutgoingAnlegen'); ?></a></div></td></tr>
</table>
<table border="0" width="100%">
@@ -461,14 +474,14 @@ if(isset($_GET['ansicht']) == 'auswahl')
if($fi->name == '')
{
if(!$outgoing->checkStatus($outgoing->preoutgoing_id, 'freigabe'))
$link = "<a href='".$_SERVER['PHP_SELF']."?method=deleteFirma&outgoingFirma_id=".$fi->preoutgoing_firma_id."&ansicht=auswahl'>delete</a>";
$link = "<a href='".$_SERVER['PHP_SELF']."?method=deleteFirma&outgoingFirma_id=".$fi->preoutgoing_firma_id."&ansicht=auswahl&prestudent_id=".$prestudent_id."'>delete</a>";
echo " <tr><td ".$style.">".$i.": ".$firmaAuswahl->name." [".$mobprogramm."] $link </td></tr>";
}
else // freemover
{
if(!$outgoing->checkStatus($outgoing->preoutgoing_id, 'freigabe'))
$link = "<a href='".$_SERVER['PHP_SELF']."?method=deleteFirma&outgoingFirma_id=".$fi->preoutgoing_firma_id."&ansicht=auswahl'>delete</a>";
$link = "<a href='".$_SERVER['PHP_SELF']."?method=deleteFirma&outgoingFirma_id=".$fi->preoutgoing_firma_id."&ansicht=auswahl&prestudent_id=".$prestudent_id."'>delete</a>";
echo " <tr><td ".$style.">".$i.": ".$fi->name." [Freemover] $link </td></tr>";
}
$i++;
@@ -476,7 +489,7 @@ if(isset($_GET['ansicht']) == 'auswahl')
?>
</table>
<form action="<?php echo $_SERVER['PHP_SELF']."?ansicht=auswahl"; ?>" method ="POST">
<form action="<?php echo $_SERVER['PHP_SELF']."?ansicht=auswahl&prestudent_id=".$prestudent_id; ?>" method ="POST">
<table width="100%" style="border: thin solid black; border-spacing:5px; background-color: lightgray; margin-top:5px; margin-bottom:5px;" >
<tr><td><?php echo $p->t('incoming/zeitraumVon');?>:</td><td><input type="text" size="25" maxlength="40" name="zeitraum_von" id="datepicker_zeitraumvon" value="<?php echo($zeitraum_von); ?>"/></td></tr>
<tr><td><?php echo $p->t('incoming/zeitraumBis');?>:</td><td><input type="text" size="25" maxlength="40" name="zeitraum_bis" id="datepicker_zeitraumbis" value="<?php echo($zeitraum_bis); ?>"/></td></tr>
@@ -552,16 +565,18 @@ else
$intensivSprachkursSelect = $outgoing->intensivsprachkurs?'selected':'';
$betreuer = new benutzer();
$betreuer->load($outgoing->betreuer);
$ps = new prestudent();
$ps->load($outgoing->prestudent_id);
?><table border ="0" width="100%">
<tr>
<td align="left" colspan="4"><b><h1><div style="display:block; text-align:left; float:left;"><?php echo $p->t('incoming/outgoingRegistration'); ?></div><div style="display:block; text-align:right; margin-right:6px; "><?php echo((check_lektor($outgoing->uid)!='0')?"Mitarbeiter: ":"Student: ").$name; ?></div></h1></b></td>
<td align="left" colspan="4"><b><h1><div style="display:block; text-align:left; float:left;"><?php echo $p->t('incoming/outgoingRegistration'); ?></div><div style="display:block; text-align:right; margin-right:6px; "><?php echo((check_lektor($ps->uid)!='0')?"Mitarbeiter: ":"Student: ").$name; ?></div></h1></b></td>
</tr>
<tr><td><?php echo $message; ?></td></tr>
<tr><td><h3><?php echo $p->t('incoming/zusaetzlicheDaten');?>:</h3></td><td></td></tr>
</table><?php
echo '<form name="zusaetzlicheDaten" method="POST" action="'.$_SERVER['PHP_SELF'].'">';
echo '<form name="zusaetzlicheDaten" method="POST" action="'.$_SERVER['PHP_SELF'].'&prestudent_id='.$prestudent_id.'">';
echo '<table width="90%" style="border: thin solid black; border-spacing:10px; background-color: lightgray; margin-top:5px; margin-bottom:5px;">';
echo '<tr><td><table>';
@@ -593,11 +608,11 @@ else
echo '</form>';
// Bei Mitarbeiter Lehrveranstaltung ausblenden
if(check_lektor($outgoing->uid)=='0')
if(check_lektor($ps->uid)=='0')
{
echo '<hr>';
echo '<p width="100%" align="center"><h3>'.$p->t('incoming/auswahlDerLv').'</h2></p>';
echo '<form method="POST" action="'.$_SERVER['PHP_SELF'].'">';
echo '<form method="POST" action="'.$_SERVER['PHP_SELF'].'&prestudent_id='.$prestudent_id.'">';
echo '<table width="90%" style="border: thin solid black; border-spacing:10px; background-color: lightgray; margin-top:5px; margin-bottom:5px;">';
echo '<tr><td>'.$p->t('global/bezeichnung').': <input type="text" name="lv_bezeichnung" size="50" id="lv_bezeichnung"></td><td>Wochenstunden: <input type="text" name="lv_wochenstunden" id="lv_wochenstunden" size="4"></td><td>ECTS: <input type="text" name="lv_ects" size="4" id="lv_ects"></td><td>Unit Code: <input tpye="text" size="4" name="lv_unitcode" id="lv_unitcode"></td><td><input type="submit" value="add" name="saveLv"></tr>';
echo '</table>';
@@ -619,7 +634,7 @@ else
<tbody>';
foreach($preoutgoingLv->lehrveranstaltungen as $lv)
{
echo '<tr><td>'.$lv->bezeichnung.'</td><td>'.$lv->ects.'</td><td>'.$lv->wochenstunden.'</td><td>'.$lv->unitcode.'</td><td><a href="'.$_SERVER['PHP_SELF'].'?method=deleteLv&lv_id='.$lv->preoutgoing_lehrveranstaltung_id.'">'.$p->t('incoming/loeschen').'</a></td></tr>';
echo '<tr><td>'.$lv->bezeichnung.'</td><td>'.$lv->ects.'</td><td>'.$lv->wochenstunden.'</td><td>'.$lv->unitcode.'</td><td><a href="'.$_SERVER['PHP_SELF'].'?method=deleteLv&lv_id='.$lv->preoutgoing_lehrveranstaltung_id.'$prestudent_id='.$prestudent_id.'">'.$p->t('incoming/loeschen').'</a></td></tr>';
}
echo '</table>';
@@ -650,7 +665,7 @@ else
{
echo '<tr>
<td><a href="'.APP_ROOT.'cis/private/outgoing/akte.php?id='.$ak->akte_id.'">'.$ak->titel.'</a></td>
<td><a href="'.$_SERVER['PHP_SELF'].'?method=files&mode=delete&id='.$ak->akte_id.'" title="delete">'.$p->t('incoming/loeschen').'</a></td>
<td><a href="'.$_SERVER['PHP_SELF'].'?method=files&mode=delete&id='.$ak->akte_id.'&prestudent_id='.$prestudent_id.'" title="delete">'.$p->t('incoming/loeschen').'</a></td>
</tr>';
}
echo '</table>';
@@ -665,23 +680,23 @@ else
<script type="text/javascript">
function saveFirma(firma_id, programm)
{
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?method=saveFirma&ansicht=auswahl&firma_id="+firma_id+"&programm="+programm;
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?method=saveFirma&ansicht=auswahl&firma_id="+firma_id+"&programm="+programm + "<?php echo '&prestudent_id='.$prestudent_id; ?>";
}
function saveFreemover()
{
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?method=saveFirma&ansicht=auswahl&name="+document.getElementById("freemover").value;
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?method=saveFirma&ansicht=auswahl&name="+document.getElementById("freemover").value + "<?php echo '&prestudent_id='.$prestudent_id; ?>";
}
function saveLv()
{
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?method=saveLv&ects="+document.getElementById("lv_ects").value+"&bezeichnung="+document.getElementById("lv_bezeichnung").value;
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?method=saveLv&ects="+document.getElementById("lv_ects").value+"&bezeichnung="+document.getElementById("lv_bezeichnung").value + "<?php echo '&prestudent_id='.$prestudent_id; ?>";
}
function clickWeiter()
{
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>";
window.location.href="<?php echo $_SERVER['PHP_SELF'].'?prestudent_id='.$prestudent_id; ?>";
}
function clickZurueck()
{
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?ansicht=auswahl";
window.location.href="<?php echo $_SERVER['PHP_SELF'] ?>?ansicht=auswahl" + "<?php echo '&prestudent_id='.$prestudent_id; ?>";
}
function FensterOeffnen (adresse)
{
@@ -716,4 +731,4 @@ function sendMailInternational()
$mail->setHTMLContent($emailtext);
$mail->send();
}
?>
?>
+56 -20
View File
@@ -23,15 +23,23 @@ require_once('../../../config/cis.config.inc.php');
require_once('../../../include/preoutgoing.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/studiengang.class.php');
$uid = get_uid();
$uid = get_uid();
$sprache = getSprache();
$p=new phrasen($sprache);
$sprache = getSprache();
$p=new phrasen($sprache);
$outgoing = new preoutgoing();
if($outgoing->loadUid($uid))
header("Location: outgoing.php?ansicht=auswahl");
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($uid);
if(isset($_REQUEST["prestudent_id"]))
$prestudent_id = $_REQUEST["prestudent_id"];
$outgoing = new preoutgoing();
if(isset($prestudent_id) && $outgoing->loadPrestudent_id($prestudent_id))
header("Location: outgoing.php?ansicht=auswahl");
?>
@@ -40,21 +48,49 @@ if($outgoing->loadUid($uid))
<head>
<title><?php echo $p->t('incoming/outgoingRegistration'); ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
</script>
</head>
<body>
<h1><?php echo $p->t('incoming/outgoingRegistration'); ?></h1>
<br>
<div id="test" style="margin-left:50px; margin-right:50px; font-size:16px;"><?php echo $p->t('incoming/willkommenBeiOutgoingAnmeldung');?></div>
<table width="100%">
<tr>
<td align="center"> <form action ="outgoing.php?method=new&ansicht=auswahl" method="POST">
<input type="submit" value="<?php echo $p->t('incoming/zurAnmeldung');?>"/>
</form>
</td>
</tr>
</table>
</body>
<h1><?php echo $p->t('incoming/outgoingRegistration'); ?></h1>
<br>
<div id="test" style="margin-left:50px; margin-right:50px; font-size:16px;">
<?php echo $p->t('incoming/willkommenBeiOutgoingAnmeldung');?>
<span><?php echo $p->t('global/studiengang')?>:</span>
<SELECT name='stg' onChange="MM_jumpMenu('self',this,0)">
<option disabled <?php echo (isset($prestudent_id) ? "" : "selected") ?> value><?php echo $p->t('global/auswaehlen')?></option>
<?php
foreach ($prestudent->result as $pres)
{
$studiengang = new studiengang($pres->studiengang_kz);
echo "<OPTION ".(isset($prestudent_id) && $prestudent_id == $pres->prestudent_id ? "selected" : "")." value='registration.php?prestudent_id=$pres->prestudent_id'>$studiengang->bezeichnung</OPTION>";
}
?>
</SELECT>
</div>
<table width="100%">
<tr>
<td align="center">
<?php if(isset($prestudent_id)):?>
<form action ="outgoing.php?method=new&ansicht=auswahl&prestudent_id=<?php echo $prestudent_id ?>" method="POST">
<input type="submit" value="<?php echo $p->t('incoming/zurAnmeldung');?>"/>
</form>
<?php endif;?>
</td>
</tr>
</table>
</body>
</html>
+2
View File
@@ -83,6 +83,8 @@ if(isset($_GET['person_id']))
$params.='&person_id='.$_GET['person_id'];
if(isset($_GET['buchungsnummern']))
$params.='&buchungsnummern='.$_GET['buchungsnummern'];
if(isset($_GET['prestudent_id']))
$params.='&prestudent_id='.$_GET['prestudent_id'];
if(isset($_GET['stg_kz']))
$params.='&stg_kz='.$_GET['stg_kz'];
if(isset($_GET['ss']))
+82 -54
View File
@@ -16,7 +16,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>,
* Andreas Oestereicher <oesi@technikum-wien.at>
* Andreas Oestereicher <oesi@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/*
@@ -29,11 +30,20 @@ require_once('../../../include/functions.inc.php');
require_once('../../../include/anwesenheit.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/stundenplan.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/studiengang.class.php');
function cmp($prestudent1, $prestudent2)
{
return $prestudent1->prestudent_id > $prestudent2->prestudent_id;
}
$datum_obj = new datum();
$uid = get_uid();
@@ -57,7 +67,6 @@ if(!$benutzer->load($uid))
$p = new phrasen(getSprache());
$db = new basis_db();
$student = new student;
$stundenplan = new stundenplan('stundenplan');
$anwesenheit = new anwesenheit;
@@ -71,8 +80,6 @@ if(!$semester || !array_key_exists($semester, $alle_semester))
end($alle_semester);
$semester = key($alle_semester);
}
//$student->get_lv($uid, $semester);
?>
<!DOCTYPE html>
<html>
@@ -83,7 +90,7 @@ if(!$semester || !array_key_exists($semester, $alle_semester))
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
<script type="text/javascript" src="../../../include/js/jquery.min.1.11.1.js"></script>
</head>
<body class="anwesenheit">
<body class="anwesenheit" style="margin:1%;width:98%">
<?php
echo '<h1>'.$p->t('anwesenheitsliste/anwesenheit').' - '.$db->convert_html_chars($benutzer->titelpre.' '.$benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost).'</h1>';
@@ -101,69 +108,90 @@ if(!$semester || !array_key_exists($semester, $alle_semester))
</form>';
$anwesenheit = new anwesenheit();
$anwesenheit->loadAnwesenheitStudiensemester($semester, $uid);
if($anwesenheit->result)
{
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($uid);
usort($prestudent->result, "cmp");
foreach($anwesenheit->result as $aw)
foreach($prestudent->result as $pre)
{
if(!$pre->statusExists($pre->prestudent_id, $semester))
continue;
$studiengang = new studiengang($pre->studiengang_kz);
$anwesenheit->result = array();
$anwesenheit->loadAnwesenheitStudiensemester($semester, $pre->prestudent_id);
echo "<div style='margin-top:10px;margin-bottom:10px;padding:10px;border-radius:10px;background-color:#EEE;'>";
echo "<h1>".$studiengang->bezeichnung."</h1>";
if($anwesenheit->result)
{
if(!$aw->gesamtstunden)
continue;
foreach($anwesenheit->result as $aw)
{
if(!$aw->gesamtstunden)
continue;
$fehlstunden = $aw->nichtanwesend;
$le_erledigt = $aw->erfassteanwesenheit;
$anwesenheit_relativ = $aw->prozent;
echo '
<div class="lv">
<div>
'.$db->convert_html_chars($aw->bezeichnung).'
</div>
<div>
<div class="progress-wrapper">
<div class="progress '.$anwesenheit->getAmpel($anwesenheit_relativ).'" style="width: '.round($anwesenheit_relativ).'%;">
</div>
</div>'.round($anwesenheit_relativ, 1).'%
'.$p->t('anwesenheitsliste/leAbgeschlossen').' ['.$le_erledigt.'/'.$aw->gesamtstunden.']';
$fehlstunden = $aw->nichtanwesend;
$le_erledigt = $aw->erfassteanwesenheit;
$anwesenheit_relativ = $aw->prozent;
if($fehlstunden)
{
echo '
<span class="fehlstunden-details" title="'.$p->t('anwesenheitsliste/fehlstunden').'">&gt;&gt;</span>
<div style="display: none;">
<table><tr><td>'.$p->t('global/datum').'</td><td>'.$p->t('anwesenheitsliste/fehlstunden').'</td></tr>';
$anwesenheit_termine = new anwesenheit();
$anwesenheit_termine->getAnwesenheitLehrveranstaltung($uid, $aw->lehrveranstaltung_id, $semester, false);
foreach($anwesenheit_termine->result as $termin)
echo '
<div class="lv">
<div>
'.$db->convert_html_chars($aw->bezeichnung).'
</div>
<div>
<div class="progress-wrapper">
<div class="progress '.$anwesenheit->getAmpel($anwesenheit_relativ).'" style="width: '.round($anwesenheit_relativ).'%;">
</div>
</div>'.round($anwesenheit_relativ, 1).'%
'.$p->t('anwesenheitsliste/leAbgeschlossen').' ['.$le_erledigt.'/'.$aw->gesamtstunden.']';
if($fehlstunden)
{
echo ' <tr>
<td>'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'</td>
<td>'.(float)$termin->einheiten.'</td>
</tr>';
echo '
<span class="fehlstunden-details" title="'.$p->t('anwesenheitsliste/fehlstunden').'">&gt;&gt;</span>
<div style="display: none;">
<table><tr><td>'.$p->t('global/datum').'</td><td>'.$p->t('anwesenheitsliste/fehlstunden').'</td></tr>';
$anwesenheit_termine = new anwesenheit();
$anwesenheit_termine->getAnwesenheitLehrveranstaltung($uid, $aw->lehrveranstaltung_id, $semester, false);
foreach($anwesenheit_termine->result as $termin)
{
echo ' <tr>
<td>'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'</td>
<td>'.(float)$termin->einheiten.'</td>
</tr>';
}
echo '
</table>
</div>';
}
echo '
</table>
</div>';
}
echo '
</div>
</div>';
echo '
</div>
</div>';
}
}
}
else
{
echo $p->t('anwesenheitsliste/keineLVsGefunden');
else
{
echo $p->t('anwesenheitsliste/keineLVsGefunden');
}
echo "</div>";
}
?>
<script type="text/javascript">
$('span.fehlstunden-details').on('click', function() {
$('span.fehlstunden-details').on('click', function()
{
$(this).next().toggle();
});
$('#anwesenheitAuswahl > *').on('change', function() {
$('#anwesenheitAuswahl > *').on('change', function()
{
$('#anwesenheitAuswahl').trigger('submit');
});
</script>
+117 -66
View File
@@ -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/cis.config.inc.php');
require_once('../../../include/basis_db.class.php');
@@ -26,6 +27,7 @@ require_once('../../../include/studiensemester.class.php');
require_once('../../../include/konto.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
$sprache = getSprache();
@@ -45,27 +47,31 @@ if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
{
{
$uid = $_GET['uid'];
$getParam = "&uid=" . $uid;
}
else
$getParam = "";
$getParam = "&uid=" . $uid;
}
else
$getParam = "";
}
else
$getParam='';
$student_studiengang = new student();
$student_studiengang->load($uid);
$xsl_stg_kz = $student_studiengang->studiengang_kz;
$prestudent_id = null;
if(isset($_GET['prestudent_id']))
{
$prestudent_id = $_GET['prestudent_id'];
$prestudent = new prestudent($prestudent_id);
$xsl_stg_kz = $prestudent->studiengang_kz;
}
$stg = '';
if(!($erg=$db->db_query("SELECT * FROM campus.vw_benutzer WHERE uid='".addslashes($uid)."'")))
if(!($erg=$db->db_query("SELECT * FROM campus.vw_benutzer WHERE uid=".$db->db_add_param($uid))))
die($db->db_last_error());
$num_rows=$db->db_num_rows($erg);
if ($num_rows==1)
@@ -81,7 +87,7 @@ if ($num_rows==1)
$email_alias=$db->db_result($erg,0,"alias");
$hp=$db->db_result($erg,0,"homepage");
}
if(!($erg_stud=$db->db_query("SELECT studiengang_kz, semester, verband, gruppe, matrikelnr, typ::varchar(1) || kurzbz AS stgkz, tbl_studiengang.bezeichnung AS stgbz FROM public.tbl_student JOIN public.tbl_studiengang USING(studiengang_kz) WHERE student_uid='".addslashes($uid)."'")))
if(!($erg_stud=$db->db_query("SELECT studiengang_kz, perskz, typ::varchar(1) || kurzbz AS stgkz, tbl_studiengang.bezeichnung AS stgbz FROM public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz) WHERE uid=".$db->db_add_param($uid))))
die($db->db_last_error());
$stud_num_rows=$db->db_num_rows($erg_stud);
@@ -90,12 +96,9 @@ if ($stud_num_rows==1)
$stg=$db->db_result($erg_stud,0,"studiengang_kz");
$stgbez=$db->db_result($erg_stud,0,"stgbz");
$stgkz=$db->db_result($erg_stud,0,"stgkz");
$semester=$db->db_result($erg_stud,0,"semester");
$verband=$db->db_result($erg_stud,0,"verband");
$gruppe=$db->db_result($erg_stud,0,"gruppe");
$matrikelnr=$db->db_result($erg_stud,0,"matrikelnr");
$matrikelnr=$db->db_result($erg_stud,0,"perskz");
}
if(!($erg_lekt=$db->db_query("SELECT * FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid='".addslashes($uid)."'")))
if(!($erg_lekt=$db->db_query("SELECT * FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid=".$db->db_add_param($uid))))
die($db->db_last_error());
$lekt_num_rows=$db->db_num_rows($erg_lekt);
if ($lekt_num_rows==1)
@@ -106,7 +109,7 @@ if ($lekt_num_rows==1)
}
// Mail-Groups
if(!($erg_mg=$db->db_query("SELECT gruppe_kurzbz, beschreibung FROM campus.vw_persongruppe WHERE mailgrp AND uid='".addslashes($uid)."' ORDER BY gruppe_kurzbz")))
if(!($erg_mg=$db->db_query("SELECT gruppe_kurzbz, beschreibung FROM campus.vw_persongruppe WHERE mailgrp AND uid=".$db->db_add_param($uid)." ORDER BY gruppe_kurzbz")))
die($db->db_last_error());
$nr_mg=$db->db_num_rows($erg_mg);
@@ -121,18 +124,24 @@ echo '
<script language="JavaScript" type="text/javascript">
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "'.$getParam.'\'");
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "'.$getParam.'\'");
if(restore)
{
selObj.selectedIndex = 0;
}
if(restore)
{
selObj.selectedIndex = 0;
}
}
</script>
<style>
.contentBox
{
margin : 10px;
}
</style>
</head>
<body>
<h1>'.$p->t('tools/dokumente').'</h1>';
<h1 class="contentBox">'.$p->t('tools/dokumente').'</h1>';
//Aktuelles Studiensemester oder gewaehltes Studiensemester
@@ -142,58 +151,100 @@ $stsem_obj = new studiensemester();
$stsem_obj->getAll();
echo "<br><hr>";
echo $p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
foreach ($stsem_obj->studiensemester as $semrow)
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($uid);
if(count($prestudent->result) > 0)
{
/*** dropdown fuer studiengang ***/
echo "<div class='contentBox'>";
echo "<hr>";
echo "<span>".$p->t('global/studiengang')."</span>";
echo "<SELECT name='stg' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<option disabled ".($prestudent_id ? "" : "selected")." value>".$p->t('global/auswaehlen')."</option>";
foreach ($prestudent->result as $pres)
{
if($stsem == $semrow->studiensemester_kurzbz)
echo "<OPTION value='dokumente.php?stsem=$semrow->studiensemester_kurzbz' selected>$semrow->studiensemester_kurzbz</OPTION>";
else
echo "<OPTION value='dokumente.php?stsem=$semrow->studiensemester_kurzbz'>$semrow->studiensemester_kurzbz</OPTION>";
$studiengang = new studiengang($pres->studiengang_kz);
echo "<OPTION ".(isset($prestudent_id) && $prestudent_id == $pres->prestudent_id ? "selected" : "")." value='dokumente.php?prestudent_id=$pres->prestudent_id'>$studiengang->bezeichnung</OPTION>";
}
echo "</SELECT><br />";
echo "</SELECT>";
$konto = new konto();
$buchungstypen = array();
if(defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
{
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
}
$stsem_zahlung = $konto->getLastStSemBuchungstypen($uid, $buchungstypen, $stsem);
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/studienbeitragFuerSSBezahlt',array($stsem));
if(isset($prestudent_id))
{
$semester = array();
$prestudent->result = array();
$prestudent->getPrestudentRolle($prestudent_id);
foreach($prestudent->result as $rolle)
{
if($rolle->status_kurzbz == "Student" || $rolle->status_kurzbz == "Absolvent" || $rolle->status_kurzbz == "Diplomand")
{
$semester[$rolle->studiensemester_kurzbz] = 1;
}
}
echo "<span style='margin-left:15px;'>".$p->t('global/studiensemester')."</span>";
echo "<SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<option disabled ".($stsem == "" ? "selected" : "")." value>".$p->t('global/auswaehlen')."</option>";
foreach ($semester as $semk => $semr)
{
echo "<OPTION ".($stsem == $semk ? "selected" : "")." value='dokumente.php?stsem=$semk&prestudent_id=".$prestudent_id."'>$semk</OPTION>";
}
echo "</SELECT>";
}
echo "</div>";
}
else
echo $p->t('tools/inskriptionsbestaetigung')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
echo "<hr>";
if(defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
{
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/studienbeitragFuerSSBezahlt',array($stsem));
}
else
echo $p->t('tools/studienbuchblatt')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
echo "<hr>";
echo "<div class='contentBox'>";
echo $p->t("upload/keineStudiengaengeDefiniert");
echo "</div>";
}
if(defined('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN') && CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN)
if(isset($xsl_stg_kz))
{
echo "<a href='studienerfolgsbestaetigung.php?".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
echo "<a href='studienerfolgsbestaetigung.php?lang=en".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
echo "<div class='contentBox'>";
$konto = new konto();
$buchungstypen = array();
if(defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
{
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
}
$stsem_zahlung = $konto->getLastStSemBuchungstypen($uid, $buchungstypen, $stsem);
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/studienbeitragFuerSSBezahlt',array($stsem));
}
else
echo $p->t('tools/inskriptionsbestaetigung')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
echo "<hr>";
}
echo "<br>";
if(defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
{
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/studienbeitragFuerSSBezahlt',array($stsem));
}
else
echo $p->t('tools/studienbuchblatt')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
echo "<hr>";
}
if(defined('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN') && CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN)
{
echo "<a href='studienerfolgsbestaetigung.php?".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
echo "<a href='studienerfolgsbestaetigung.php?lang=en".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
echo "<hr>";
}
echo "</div>";
}
echo '</body>
</html>
';
?>
?>
+83 -36
View File
@@ -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/cis.config.inc.php');
require_once('../../../config/global.config.inc.php');
@@ -34,12 +35,13 @@ require_once('../../../include/phrasen.class.php');
require_once('../../../include/betriebsmittel_betriebsmittelstatus.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/mitarbeiter.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/kontakt.class.php');
require_once('../../../include/fotostatus.class.php');
require_once('../../../include/addon.class.php');
require_once('../../../include/gruppe.class.php');
require_once('../../../include/adresse.class.php');
require_once('../../../include/studiensemester.class.php');
$sprache = getSprache();
$p=new phrasen($sprache);
@@ -107,7 +109,7 @@ if(check_lektor($uid))
}
else
{
$user = new student();
$user = new benutzer();
$type='student';
}
@@ -151,6 +153,11 @@ echo '<!DOCTYPE HTML>
sortList: [[0,0]],
widgets: ["zebra"]
});
$("#t3").tablesorter(
{
sortList: [[0,0]],
widgets: ["zebra"]
});
});
-->
</script>
@@ -282,24 +289,11 @@ if(!$ansicht)
}
}
$studiengang = new studiengang();
if ($type=='student' && (!defined('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN') || CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN))
{
$studiengang->load($user->studiengang_kz);
echo "
".$p->t('global/studiengang').": $studiengang->bezeichnung<br>
".$p->t('global/semester').": $user->semester <a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a><br>
".$p->t('global/verband').": $user->verband ".($user->verband!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester&verband=$user->verband\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a>":"")."<br>
".$p->t('global/gruppe').": $user->gruppe ".($user->gruppe!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester&verband=$user->verband&grp=$user->gruppe\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a>":"")."<br>
".$p->t('profil/martrikelnummer').": $user->matrikelnr<br />";
}
if ($type=='mitarbeiter')
{
echo "<br>
".$p->t('profil/kurzzeichen').": $user->kurzbz<BR>";
if($user->telefonklappe!='')
{
echo $p->t('profil/telefonTw').": $vorwahl - $user->telefonklappe<BR>";
@@ -307,7 +301,7 @@ if ($type=='mitarbeiter')
}
if ($user->ort_kurzbz!='')
echo $p->t('profil/buero').': '.$user->ort_kurzbz.'<br>';
}
}
echo '</td>';
echo '<td valign="top">';
if(!$ansicht && (!defined('CIS_PROFIL_FHAUSWEIS_ANZEIGEN') || CIS_PROFIL_FHAUSWEIS_ANZEIGEN))
@@ -408,18 +402,32 @@ $mail = MAIL_ADMIN;
{
$user->studiengang_kz = 0;
}
//Wenn eine Assistentin fuer diesen Studiengang eingetragen ist,
//dann werden die aenderungswuesche an diese Adresse gesendet
if($studiengang->email!='')
$mail = $studiengang->email;
if($type=='student')
{
$ps = new prestudent();
$ps->getPrestudentsFromUid($user->uid);
if(count($ps->result) < 1)
$mail = MAIL_ADMIN;
else
{
//Wenn eine Assistentin fuer diesen Studiengang eingetragen ist,
//dann werden die aenderungswuesche an diese Adresse gesendet
$stg = new studiengang();
$stg->load($ps->result[count($ps->result)-1]->studiengang_kz);
if($stg->email=='')
$mail = MAIL_ADMIN;
else
$mail = $stg->email;
}
}
else
$mail = MAIL_ADMIN;
if($user->studiengang_kz=='0')
$mail = MAIL_GST;
if(!$ansicht)
if(!$ansicht)
{
echo "
".$p->t('profil/solltenDatenNichtStimmen')." <a class='Item' href=\"mailto:$mail?subject=Datenkorrektur&body=Die%20Profildaten%20fuer%20User%20'$user->uid'%20sind%20nicht%20korrekt.%0D
@@ -428,24 +436,24 @@ if(!$ansicht)
%0A%0A***%0DPlatz fuer weitere (nicht angefuehrte Daten)%0D***\">".$p->t('profil/zustaendigeAssistenz')."</a><br><br>";
}
echo '<table width="100%">';
echo '<table width="100%">';
echo '<tr>
<td valign="top">';
if(!defined('CIS_PROFIL_FUNKTIONEN_ANZEIGEN') || CIS_PROFIL_FUNKTIONEN_ANZEIGEN)
{
{
//Funktionen
$qry = "SELECT
$qry = "SELECT
*, tbl_benutzerfunktion.oe_kurzbz as oe_kurzbz, tbl_organisationseinheit.bezeichnung as oe_bezeichnung,
tbl_benutzerfunktion.semester, tbl_benutzerfunktion.bezeichnung as bf_bezeichnung
FROM
public.tbl_benutzerfunktion
JOIN public.tbl_funktion USING(funktion_kurzbz)
FROM
public.tbl_benutzerfunktion
JOIN public.tbl_funktion USING(funktion_kurzbz)
JOIN public.tbl_organisationseinheit USING(oe_kurzbz)
WHERE
WHERE
uid=".$db->db_add_param($uid)." AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())";
@@ -465,6 +473,45 @@ if(!defined('CIS_PROFIL_FUNKTIONEN_ANZEIGEN') || CIS_PROFIL_FUNKTIONEN_ANZEIGEN)
}
}
if ($type=='student' && (!defined('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN') || CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN))
{
$studiengang = new studiengang();
echo '<b>'.$p->t('global/studiengaenge').'</b>
<table class="tablesorter" id="t3">
<thead>
<tr>
<th>'.$p->t('global/studiengang').'</th>
<th>'.$p->t('profil/martrikelnummer').'</th>
<th>'.$p->t('global/semester').'</th>
<th>'.$p->t('global/verband').'</th>
<th>'.$p->t('global/gruppe').'</th>
</tr>
</thead><tbody>';
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user->uid);
foreach($prestudent->result as $ps)
{
$studiengang->load($ps->studiengang_kz);
$stsem = new studiensemester();
$ps->load_studentlehrverband($ps->prestudent_id, $stsem->getaktorNext());
echo "<tr>
<td>".$studiengang->bezeichnung."</td>
<td>".$ps->perskz."</td>
<td>".($ps->semester!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$ps->studiengang_kz&sem=$ps->semester\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$ps->semester."</a>":"")."</td>
<td>".($ps->verband!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$ps->studiengang_kz&sem=$ps->semester&verband=$ps->verband\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$ps->verband."</a>":"")."</td>
<td>".($ps->gruppe!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$ps->studiengang_kz&sem=$ps->semester&verband=$ps->verband&grp=$ps->gruppe\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$ps->gruppe."</a>":"")."</td>
</tr>";
}
echo '</tbody></table>';
}
if(!$ansicht && (!defined('CIS_PROFIL_BETRIEBSMITTEL_ANZEIGEN') || CIS_PROFIL_BETRIEBSMITTEL_ANZEIGEN))
{
// Betriebsmittel Personen
+400 -400
View File
@@ -1,400 +1,400 @@
<?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>.
*/
/*
* Erstellt eine Liste mit dem Lehrveranstaltungen und Betreuungen denen der Lektor zugeteilt ist
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../config/global.config.inc.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/person.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/lvangebot.class.php');
if (!$db = new basis_db())
die('Fehler beim Oeffnen der Datenbankverbindung');
$adress=MAIL_ADMIN;
$user=get_uid();
$studiensemester = new studiensemester();
if (isset($_GET['uid']))
$uid=$_GET['uid'];
else
$uid = $user;
if (isset($_GET['stdsem']))
$stdsem=$_GET['stdsem'];
else
$stdsem=$studiensemester->getaktorNext();
$datum = new datum();
//Studiensemester abfragen. Letzten 5, aktuelles und naechstes.
$sql_query='SELECT * FROM public.tbl_studiensemester WHERE (start<=(now()::date+240) AND ende>=(now()::date-900)) ORDER BY start';
$result_stdsem=$db->db_query($sql_query);
$num_rows_stdsem=$db->db_num_rows($result_stdsem);
//if (!isset($stdsem))
//$stdsem=$db->db_result($result_stdsem,0,"studiensemester_kurzbz");
$p = new phrasen(getSprache());
/*
0000453: Sortierung von LVs - Meine LV
1. Bachelor
2. Name des Bachelors
3. Studienjahr
4. Name der LV
5. Master
6. Name des Masters
7. Studienjahr
8. Name der LV
*/
//Lehrveranstaltungen abfragen.
$sql_query="
SELECT
*, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as stg_kurzbz,
tbl_lehrveranstaltung.semester as lv_semester,
lehrfach.kurzbz as lehrfach,
lehrfach.bezeichnung as lehrfach_bez,
tbl_lehreinheitmitarbeiter.semesterstunden as semesterstunden,
tbl_lehrveranstaltung.bezeichnung as lv_bezeichnung,
tbl_lehreinheit.anmerkung as le_anmerkung,
tbl_lehreinheit.lehrform_kurzbz as le_lehrform_kurzbz,
(SELECT kurzbz FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid=tbl_lehreinheitmitarbeiter.mitarbeiter_uid) as lektor,
tbl_lehrveranstaltung.lehrveranstaltung_id
FROM
lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
WHERE tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND mitarbeiter_uid=".$db->db_add_param($uid);
$sql_query.=" ORDER BY stg_kurzbz,lv_semester,lv_bezeichnung";
$result=$db->db_query($sql_query);
$num_rows=$db->db_num_rows($result);
echo '
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>'.$p->t('lvaliste/titel').'</title>
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
<script language="Javascript">
<!--
function printhelp()
{
alert("'.$p->t('lvaliste/hilfeText').'");
}
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[4,0],[5,0],[2,0]],
widgets: ["zebra"]
});
$("#t2").tablesorter(
{
sortList: [[0,0],[1,0],[3,0]],
widgets: ["zebra"]
});
$("#t3").tablesorter(
{
sortList: [[0,0],[1,0],[3,0]],
widgets: ["zebra"]
});
});
-->
</script>
</head>
<body id="inhalt">
<H1>'.$p->t('lvaliste/titel').' ( '.$stdsem.' )</H1>';
echo '<table width="100%"><tr><td>';
for ($i=0;$i<$num_rows_stdsem;$i++)
{
$row=$db->db_fetch_object($result_stdsem);
if ($stdsem==$row->studiensemester_kurzbz)
echo '<strong><A class="Item" style="text-decoration: underline;" href="lva_liste.php?uid='.$uid.'&stdsem='.$row->studiensemester_kurzbz.'">'.$row->studiensemester_kurzbz.'</A></strong> - ';
else
echo '<A class="Item" href="lva_liste.php?uid='.$uid.'&stdsem='.$row->studiensemester_kurzbz.'">'.$row->studiensemester_kurzbz.'</A> - ';
}
echo '</td><td align="right">';
echo '<a href="#" onclick="printhelp()" class="Item">'.$p->t('lvaliste/hilfeAnzeigen').'</a>';
echo '</td></tr></table><br>';
if ($num_rows>0)
{
echo '<h3>'.$p->t('lvaliste/lehrveranstaltungen').'</h3>';
echo $p->t('lvaliste/anzahl').': '.$num_rows;
echo '
<table class="tablesorter" id="t1">
<thead>
<tr>';
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
echo '<th>'.$p->t('lvaliste/gesamtnote').'</th>';
echo '
<th>'.$p->t('lvaliste/lehrfach').'</th>
<th>'.$p->t('lvaliste/lehrform').'</th>
<th>'.$p->t('lvaliste/lvBezeichnung').'</th>
<th>'.$p->t('lvaliste/lektor').'</th>
<th>'.$p->t('lvaliste/studiengang').'</th>
<th>'.$p->t('lvaliste/semester').'</th>
<th>'.$p->t('lvaliste/gruppen').'</th>
<th>'.$p->t('lvaliste/raumtyp').'</th>
<th>'.$p->t('lvaliste/raumtypalternativ').'</th>
<th>'.$p->t('lvaliste/blockung').'</th>
<th>'.$p->t('lvaliste/wochenrythmus').'</th>
<th>'.$p->t('lvaliste/stunden').'</th>
<th>'.$p->t('lvaliste/kalenderwoche').'</th>
<th>Anm. von</th>
<th>Anm. bis</th>';
//<th>'.$p->t('lvaliste/anmerkung').'</th> Lektoren sollen die Anmerkung dzt. nicht sehen, da nur für intern gedacht
echo '</tr>
</thead><tbody>';
$stg_obj = new studiengang();
$stg_obj->getAll(null,null);
$summe_std=0;
for ($i=0; $i<$num_rows; $i++)
{
$row=$db->db_fetch_object($result);
$lvangebot = new lvangebot();
echo '<tr>';
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
echo '<td nowrap><a href="../lehre/benotungstool/lvgesamtnoteverwalten.php?lvid='.$row->lehrveranstaltung_id.'&stsem='.$stdsem.'">'.$p->t('lvaliste/gesamtnote').'</a></td>';
echo '<td>'.$row->lehrfach.'</td>';
echo '<td>'.$row->le_lehrform_kurzbz.'</td>';
if ($row->lehrfach_bez!=$row->lv_bezeichnung)
echo '<td>'.$row->lv_bezeichnung.' ('.$p->t('lvaliste/lehrfach').': '.$row->lehrfach_bez.')</td>';
else
echo '<td>'.$row->lv_bezeichnung.'</td>';
echo '<td>'.$row->lektor.'</td>';
echo '<td><a href="mailto:'.$row->email.'">'.$row->stg_kurzbz.'</a></td>';
echo '<td>'.$row->semester.'</td>';
$qry ="SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='".addslashes($row->lehreinheit_id)."'";
$gruppe='';
if($result_grp = $db->db_query($qry))
{
while($row_grp = $db->db_fetch_object($result_grp))
{
if($row_grp->gruppe_kurzbz!='')
$gruppe.= $row_grp->gruppe_kurzbz.'<br>';
else
$gruppe.= $stg_obj->kuerzel_arr[$row->studiengang_kz].'-'.$row_grp->semester.$row_grp->verband.$row_grp->gruppe.'<br>';
}
}
echo '<td>'.$gruppe.'</td>';
echo '<td>'.$row->raumtyp.'</td>';
echo '<td>'.$row->raumtypalternativ.'</td>';
echo '<td>'.$row->stundenblockung.'</td>';
echo '<td>'.$row->wochenrythmus.'</td>';
echo '<td>'.$row->semesterstunden.'</td>';
echo '<td>'.$row->start_kw.'</td>';
$lvangebot->getAllFromLvId($row->lehrveranstaltung_id, $row->studiensemester_kurzbz);
if(!empty($lvangebot->result))
{
echo '<td>'.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_start, "d.m.Y").'</td>';
echo '<td>'.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_ende, "d.m.Y").'</td>';
}
//echo '<td>'.$row->le_anmerkung.'</td>'; Lektoren sollen die Anmerkung dzt. nicht sehen, da nur für intern gedacht
echo '</tr>';
$summe_std+=$row->semesterstunden;
}
echo '</tbody>';
echo '<tfoot>';
echo '<tr>';
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td align="right"><b>'.$p->t('lvaliste/summe').'</b></td>';
echo '<th class="header">'.number_format($summe_std,2).'</th>';
echo '<td>&nbsp;</td>';
echo '</tr>';
echo '</tfoot>';
echo '</table>';
}
else
echo $p->t('lvaliste/keineDatensaetze').'<BR>';
//Betreuungen
$mitarbeiter = new benutzer();
$mitarbeiter->load($uid);
$qry = "SELECT
tbl_lehrveranstaltung.bezeichnung, tbl_projektarbeit.titel,
(SELECT nachname || ' ' || vorname FROM public.tbl_benutzer JOIN public.tbl_person USING(person_id)
WHERE uid=student_uid) as student, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester,
tbl_studiengang.email
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektarbeit, lehre.tbl_projektbetreuer, public.tbl_studiengang
WHERE
tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz AND
tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER);
$stg_obj = new studiengang();
$stg_obj->getAll(null,null);
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
echo '<H3>'.$p->t('lvaliste/betreuungen').'</H3>';
echo $p->t('lvaliste/anzahl').': '.$db->db_num_rows($result);
echo '<table class="tablesorter" id="t2">';
echo '<thead><tr>';
echo '<th>'.$p->t('lvaliste/studiengang').'</th>';
echo '<th>'.$p->t('lvaliste/semester').'</th>';
echo '<th>'.$p->t('lvaliste/lvBezeichnung').'</th>';
echo '<th>'.$p->t('lvaliste/student').'</th>';
echo '<th>'.$p->t('lvaliste/titelProjektarbeit').'</th>';
echo '</tr></thead><tbody>';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
echo '<td><a href="mailto:'.$row->email.'">'.$stg_obj->kuerzel_arr[$row->studiengang_kz].'</a></td>';
echo '<td>'.$row->semester.'</td>';
echo '<td>'.$row->bezeichnung.'</td>';
echo '<td>'.$row->student.'</td>';
echo '<td>'.$row->titel.'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
}
//Koordination
$qry = "SELECT
distinct
tbl_lehrveranstaltung.studiengang_kz, tbl_fachbereich.fachbereich_kurzbz, tbl_lehrveranstaltung.bezeichnung,
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.semester,tbl_lehrveranstaltung.koordinator,
tbl_studiengang.email
FROM
lehre.tbl_lehrveranstaltung,
lehre.tbl_lehreinheit,
lehre.tbl_lehrveranstaltung as lehrfach,
public.tbl_studiengang,
public.tbl_fachbereich
WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND
(tbl_lehrveranstaltung.koordinator=".$db->db_add_param($uid)."
OR
( tbl_lehrveranstaltung.koordinator is null and (tbl_lehrveranstaltung.studiengang_kz, fachbereich_kurzbz) IN (SELECT studiengang_kz, fachbereich_kurzbz
FROM public.tbl_benutzerfunktion JOIN public.tbl_studiengang USING(oe_kurzbz)
WHERE funktion_kurzbz='fbk' AND uid=".$db->db_add_param($uid)."
and ( tbl_benutzerfunktion.datum_bis is null or now() between tbl_benutzerfunktion.datum_von and tbl_benutzerfunktion.datum_bis )
))
) AND
tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz
order by tbl_lehrveranstaltung.studiengang_kz,tbl_lehrveranstaltung.semester ,tbl_lehrveranstaltung.bezeichnung
";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
echo '<H3>'.$p->t('lvaliste/koordination').'</H3>';
echo $p->t('lvaliste/anzahl').': '.$db->db_num_rows($result);
echo '<table class="tablesorter" id="t3">';
echo '<thead><tr>';
echo '<th>'.$p->t('lvaliste/studiengang').'</th>';
echo '<th>'.$p->t('lvaliste/semester').'</th>';
echo '<th>'.$p->t('lvaliste/institut').'</th>';
echo '<th>'.$p->t('lvaliste/lvBezeichnung').'</th>';
echo '<th>'.$p->t('lvaliste/lektor').'</th>';
echo '</tr></thead><tbody>';
while($row = $db->db_fetch_object($result))
{
//Fachbereichskoordinatoren holen
$qry = "SELECT distinct
uid,titelpre, titelpost, vorname, nachname
FROM
lehre.tbl_lehreinheitmitarbeiter,
public.tbl_benutzer,
public.tbl_person,
lehre.tbl_lehreinheit
WHERE
tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id, FHC_INTEGER)." AND
tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND
tbl_benutzer.person_id=tbl_person.person_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem);
$lektoren='';
if($result_lkt = $db->db_query($qry))
{
while($row_lkt = $db->db_fetch_object($result_lkt))
{
if($lektoren!='')
$lektoren.=',';
$lektoren.=trim($row_lkt->titelpre.' '.$row_lkt->vorname.' '.$row_lkt->nachname.' '.$row_lkt->titelpost);
}
}
echo '<tr>';
echo '<td><a href="mailto:'.$row->email.'">'.$stg_obj->kuerzel_arr[$row->studiengang_kz].'</a></td>';
echo '<td>'.$row->semester.'</td>';
echo '<td>'.$row->fachbereich_kurzbz.'</td>';
echo '<td>'.$row->bezeichnung.'</td>';
echo '<td>'.$lektoren.'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
}
echo '<BR>'.$p->t('lvaliste/fehlerAnStudiengang').'<BR><BR><BR>';
?>
</body>
</html>
<?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>.
*/
/*
* Erstellt eine Liste mit dem Lehrveranstaltungen und Betreuungen denen der Lektor zugeteilt ist
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../config/global.config.inc.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/person.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/lvangebot.class.php');
if (!$db = new basis_db())
die('Fehler beim Oeffnen der Datenbankverbindung');
$adress=MAIL_ADMIN;
$user=get_uid();
$studiensemester = new studiensemester();
if (isset($_GET['uid']))
$uid=$_GET['uid'];
else
$uid = $user;
if (isset($_GET['stdsem']))
$stdsem=$_GET['stdsem'];
else
$stdsem=$studiensemester->getaktorNext();
$datum = new datum();
//Studiensemester abfragen. Letzten 5, aktuelles und naechstes.
$sql_query='SELECT * FROM public.tbl_studiensemester WHERE (start<=(now()::date+240) AND ende>=(now()::date-900)) ORDER BY start';
$result_stdsem=$db->db_query($sql_query);
$num_rows_stdsem=$db->db_num_rows($result_stdsem);
//if (!isset($stdsem))
//$stdsem=$db->db_result($result_stdsem,0,"studiensemester_kurzbz");
$p = new phrasen(getSprache());
/*
0000453: Sortierung von LVs - Meine LV
1. Bachelor
2. Name des Bachelors
3. Studienjahr
4. Name der LV
5. Master
6. Name des Masters
7. Studienjahr
8. Name der LV
*/
//Lehrveranstaltungen abfragen.
$sql_query="
SELECT
*, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as stg_kurzbz,
tbl_lehrveranstaltung.semester as lv_semester,
lehrfach.kurzbz as lehrfach,
lehrfach.bezeichnung as lehrfach_bez,
tbl_lehreinheitmitarbeiter.semesterstunden as semesterstunden,
tbl_lehrveranstaltung.bezeichnung as lv_bezeichnung,
tbl_lehreinheit.anmerkung as le_anmerkung,
tbl_lehreinheit.lehrform_kurzbz as le_lehrform_kurzbz,
(SELECT kurzbz FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid=tbl_lehreinheitmitarbeiter.mitarbeiter_uid) as lektor,
tbl_lehrveranstaltung.lehrveranstaltung_id
FROM
lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
WHERE tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND mitarbeiter_uid=".$db->db_add_param($uid);
$sql_query.=" ORDER BY stg_kurzbz,lv_semester,lv_bezeichnung";
$result=$db->db_query($sql_query);
$num_rows=$db->db_num_rows($result);
echo '
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>'.$p->t('lvaliste/titel').'</title>
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
<script language="Javascript">
<!--
function printhelp()
{
alert("'.$p->t('lvaliste/hilfeText').'");
}
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[4,0],[5,0],[2,0]],
widgets: ["zebra"]
});
$("#t2").tablesorter(
{
sortList: [[0,0],[1,0],[3,0]],
widgets: ["zebra"]
});
$("#t3").tablesorter(
{
sortList: [[0,0],[1,0],[3,0]],
widgets: ["zebra"]
});
});
-->
</script>
</head>
<body id="inhalt">
<H1>'.$p->t('lvaliste/titel').' ( '.$stdsem.' )</H1>';
echo '<table width="100%"><tr><td>';
for ($i=0;$i<$num_rows_stdsem;$i++)
{
$row=$db->db_fetch_object($result_stdsem);
if ($stdsem==$row->studiensemester_kurzbz)
echo '<strong><A class="Item" style="text-decoration: underline;" href="lva_liste.php?uid='.$uid.'&stdsem='.$row->studiensemester_kurzbz.'">'.$row->studiensemester_kurzbz.'</A></strong> - ';
else
echo '<A class="Item" href="lva_liste.php?uid='.$uid.'&stdsem='.$row->studiensemester_kurzbz.'">'.$row->studiensemester_kurzbz.'</A> - ';
}
echo '</td><td align="right">';
echo '<a href="#" onclick="printhelp()" class="Item">'.$p->t('lvaliste/hilfeAnzeigen').'</a>';
echo '</td></tr></table><br>';
if ($num_rows>0)
{
echo '<h3>'.$p->t('lvaliste/lehrveranstaltungen').'</h3>';
echo $p->t('lvaliste/anzahl').': '.$num_rows;
echo '
<table class="tablesorter" id="t1">
<thead>
<tr>';
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
echo '<th>'.$p->t('lvaliste/gesamtnote').'</th>';
echo '
<th>'.$p->t('lvaliste/lehrfach').'</th>
<th>'.$p->t('lvaliste/lehrform').'</th>
<th>'.$p->t('lvaliste/lvBezeichnung').'</th>
<th>'.$p->t('lvaliste/lektor').'</th>
<th>'.$p->t('lvaliste/studiengang').'</th>
<th>'.$p->t('lvaliste/semester').'</th>
<th>'.$p->t('lvaliste/gruppen').'</th>
<th>'.$p->t('lvaliste/raumtyp').'</th>
<th>'.$p->t('lvaliste/raumtypalternativ').'</th>
<th>'.$p->t('lvaliste/blockung').'</th>
<th>'.$p->t('lvaliste/wochenrythmus').'</th>
<th>'.$p->t('lvaliste/stunden').'</th>
<th>'.$p->t('lvaliste/kalenderwoche').'</th>
<th>Anm. von</th>
<th>Anm. bis</th>';
//<th>'.$p->t('lvaliste/anmerkung').'</th> Lektoren sollen die Anmerkung dzt. nicht sehen, da nur für intern gedacht
echo '</tr>
</thead><tbody>';
$stg_obj = new studiengang();
$stg_obj->getAll(null,null);
$summe_std=0;
for ($i=0; $i<$num_rows; $i++)
{
$row=$db->db_fetch_object($result);
$lvangebot = new lvangebot();
echo '<tr>';
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
echo '<td nowrap><a href="../lehre/benotungstool/lvgesamtnoteverwalten.php?lvid='.$row->lehrveranstaltung_id.'&stsem='.$stdsem.'">'.$p->t('lvaliste/gesamtnote').'</a></td>';
echo '<td>'.$row->lehrfach.'</td>';
echo '<td>'.$row->le_lehrform_kurzbz.'</td>';
if ($row->lehrfach_bez!=$row->lv_bezeichnung)
echo '<td>'.$row->lv_bezeichnung.' ('.$p->t('lvaliste/lehrfach').': '.$row->lehrfach_bez.')</td>';
else
echo '<td>'.$row->lv_bezeichnung.'</td>';
echo '<td>'.$row->lektor.'</td>';
echo '<td><a href="mailto:'.$row->email.'">'.$row->stg_kurzbz.'</a></td>';
echo '<td>'.$row->semester.'</td>';
$qry ="SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='".addslashes($row->lehreinheit_id)."'";
$gruppe='';
if($result_grp = $db->db_query($qry))
{
while($row_grp = $db->db_fetch_object($result_grp))
{
if($row_grp->gruppe_kurzbz!='')
$gruppe.= $row_grp->gruppe_kurzbz.'<br>';
else
$gruppe.= $stg_obj->kuerzel_arr[$row->studiengang_kz].'-'.$row_grp->semester.$row_grp->verband.$row_grp->gruppe.'<br>';
}
}
echo '<td>'.$gruppe.'</td>';
echo '<td>'.$row->raumtyp.'</td>';
echo '<td>'.$row->raumtypalternativ.'</td>';
echo '<td>'.$row->stundenblockung.'</td>';
echo '<td>'.$row->wochenrythmus.'</td>';
echo '<td>'.$row->semesterstunden.'</td>';
echo '<td>'.$row->start_kw.'</td>';
$lvangebot->getAllFromLvId($row->lehrveranstaltung_id, $row->studiensemester_kurzbz);
if(!empty($lvangebot->result))
{
echo '<td>'.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_start, "d.m.Y").'</td>';
echo '<td>'.$datum->formatDatum($lvangebot->result[0]->anmeldefenster_ende, "d.m.Y").'</td>';
}
//echo '<td>'.$row->le_anmerkung.'</td>'; Lektoren sollen die Anmerkung dzt. nicht sehen, da nur für intern gedacht
echo '</tr>';
$summe_std+=$row->semesterstunden;
}
echo '</tbody>';
echo '<tfoot>';
echo '<tr>';
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo '<td align="right"><b>'.$p->t('lvaliste/summe').'</b></td>';
echo '<th class="header">'.number_format($summe_std,2).'</th>';
echo '<td>&nbsp;</td>';
echo '</tr>';
echo '</tfoot>';
echo '</table>';
}
else
echo $p->t('lvaliste/keineDatensaetze').'<BR>';
//Betreuungen
$mitarbeiter = new benutzer();
$mitarbeiter->load($uid);
$qry = "SELECT
tbl_lehrveranstaltung.bezeichnung, tbl_projektarbeit.titel,
(SELECT nachname || ' ' || vorname FROM public.tbl_benutzer JOIN public.tbl_person USING(person_id)
WHERE uid=student_uid) as student, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester,
tbl_studiengang.email
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektarbeit, lehre.tbl_projektbetreuer, public.tbl_studiengang
WHERE
tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz AND
tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER);
$stg_obj = new studiengang();
$stg_obj->getAll(null,null);
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
echo '<H3>'.$p->t('lvaliste/betreuungen').'</H3>';
echo $p->t('lvaliste/anzahl').': '.$db->db_num_rows($result);
echo '<table class="tablesorter" id="t2">';
echo '<thead><tr>';
echo '<th>'.$p->t('lvaliste/studiengang').'</th>';
echo '<th>'.$p->t('lvaliste/semester').'</th>';
echo '<th>'.$p->t('lvaliste/lvBezeichnung').'</th>';
echo '<th>'.$p->t('lvaliste/student').'</th>';
echo '<th>'.$p->t('lvaliste/titelProjektarbeit').'</th>';
echo '</tr></thead><tbody>';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
echo '<td><a href="mailto:'.$row->email.'">'.$stg_obj->kuerzel_arr[$row->studiengang_kz].'</a></td>';
echo '<td>'.$row->semester.'</td>';
echo '<td>'.$row->bezeichnung.'</td>';
echo '<td>'.$row->student.'</td>';
echo '<td>'.$row->titel.'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
}
//Koordination
$qry = "SELECT
distinct
tbl_lehrveranstaltung.studiengang_kz, tbl_fachbereich.fachbereich_kurzbz, tbl_lehrveranstaltung.bezeichnung,
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.semester,tbl_lehrveranstaltung.koordinator,
tbl_studiengang.email
FROM
lehre.tbl_lehrveranstaltung,
lehre.tbl_lehreinheit,
lehre.tbl_lehrveranstaltung as lehrfach,
public.tbl_studiengang,
public.tbl_fachbereich
WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND
(tbl_lehrveranstaltung.koordinator=".$db->db_add_param($uid)."
OR
( tbl_lehrveranstaltung.koordinator is null and (tbl_lehrveranstaltung.studiengang_kz, fachbereich_kurzbz) IN (SELECT studiengang_kz, fachbereich_kurzbz
FROM public.tbl_benutzerfunktion JOIN public.tbl_studiengang USING(oe_kurzbz)
WHERE funktion_kurzbz='fbk' AND uid=".$db->db_add_param($uid)."
and ( tbl_benutzerfunktion.datum_bis is null or now() between tbl_benutzerfunktion.datum_von and tbl_benutzerfunktion.datum_bis )
))
) AND
tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz
order by tbl_lehrveranstaltung.studiengang_kz,tbl_lehrveranstaltung.semester ,tbl_lehrveranstaltung.bezeichnung
";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
echo '<H3>'.$p->t('lvaliste/koordination').'</H3>';
echo $p->t('lvaliste/anzahl').': '.$db->db_num_rows($result);
echo '<table class="tablesorter" id="t3">';
echo '<thead><tr>';
echo '<th>'.$p->t('lvaliste/studiengang').'</th>';
echo '<th>'.$p->t('lvaliste/semester').'</th>';
echo '<th>'.$p->t('lvaliste/institut').'</th>';
echo '<th>'.$p->t('lvaliste/lvBezeichnung').'</th>';
echo '<th>'.$p->t('lvaliste/lektor').'</th>';
echo '</tr></thead><tbody>';
while($row = $db->db_fetch_object($result))
{
//Fachbereichskoordinatoren holen
$qry = "SELECT distinct
uid,titelpre, titelpost, vorname, nachname
FROM
lehre.tbl_lehreinheitmitarbeiter,
public.tbl_benutzer,
public.tbl_person,
lehre.tbl_lehreinheit
WHERE
tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id, FHC_INTEGER)." AND
tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND
tbl_benutzer.person_id=tbl_person.person_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem);
$lektoren='';
if($result_lkt = $db->db_query($qry))
{
while($row_lkt = $db->db_fetch_object($result_lkt))
{
if($lektoren!='')
$lektoren.=',';
$lektoren.=trim($row_lkt->titelpre.' '.$row_lkt->vorname.' '.$row_lkt->nachname.' '.$row_lkt->titelpost);
}
}
echo '<tr>';
echo '<td><a href="mailto:'.$row->email.'">'.$stg_obj->kuerzel_arr[$row->studiengang_kz].'</a></td>';
echo '<td>'.$row->semester.'</td>';
echo '<td>'.$row->fachbereich_kurzbz.'</td>';
echo '<td>'.$row->bezeichnung.'</td>';
echo '<td>'.$lektoren.'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
}
echo '<BR>'.$p->t('lvaliste/fehlerAnStudiengang').'<BR><BR><BR>';
?>
</body>
</html>
@@ -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>.
*/
require_once('../../../config/cis.config.inc.php');
@@ -26,6 +27,7 @@ require_once('../../../include/functions.inc.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
$sprache = getSprache();
@@ -40,17 +42,19 @@ if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Studienerfolgsbestätigung
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
$uid=$_GET['uid'];
}
if(isset($_GET["prestudent_id"]))
$prestudent_id = $_GET["prestudent_id"];
if(isset($_GET['lang']) && $_GET['lang']=='en')
$xsl = 'StudienerfolgEng';
$xsl = 'StudienerfolgEng';
else
$xsl = 'Studienerfolg';
$xsl = 'Studienerfolg';
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
@@ -60,7 +64,7 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function createStudienerfolg()
function createStudienerfolg(prestudent_id)
{
var stsem = document.getElementById("stsem").value;
var finanzamt = document.getElementById("finanzamt").checked;
@@ -75,40 +79,73 @@ function createStudienerfolg()
else
alle = "";
window.location.href= "../pdfExport.php?xml=studienerfolg.rdf.php&xsl='.$xsl.'&ss="+stsem+"&uid='.$uid.'"+finanzamt+alle;
window.location.href= "../pdfExport.php?xml=studienerfolg.rdf.php&xsl='.$xsl.'&ss="+stsem+"&prestudent_id="+prestudent_id+finanzamt+alle;
}
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
</script>
</head>
<body>
<h1>'.$p->t('tools/studienerfolgsbestaetigung').'</h1>
<br>'.$p->t('tools/studiensemesterAuswaehlen').'<br><br>';
$qry = "SELECT distinct studiensemester_kurzbz FROM campus.vw_student JOIN public.tbl_prestudentstatus USING(prestudent_id) WHERE uid='".addslashes($uid)."'";
if($result = $db->db_query($qry))
{
echo $p->t('global/studiensemester').': <SELECT id="stsem">';
echo '<OPTION value="alle">alle Semester</OPTION>';
$stsem_obj = new studiensemester();
$stsem = $stsem_obj->getPrevious();
while($row = $db->db_fetch_object($result))
{
if($stsem==$row->studiensemester_kurzbz)
$selected = 'selected';
else
$selected = '';
echo '<OPTION value="'.$row->studiensemester_kurzbz.'" '.$selected.'>'.$row->studiensemester_kurzbz.'</OPTION>';
}
echo '</SELECT>';
echo '<br><br><INPUT type="checkbox" id="finanzamt">'.$p->t('tools/vorlageWohnsitzfinanzamt').'<br>';
echo '<br><br><INPUT type="button" value="'.$p->t('global/erstellen').'" onclick="createStudienerfolg()" />';
}
<body style="margin:5px;">
<h1>'.$p->t('tools/studienerfolgsbestaetigung').'</h1>';
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($uid);
if(count($prestudent->result) > 0)
{
/*** dropdown fuer studiengang ***/
echo "<div class='contentBox'>";
echo "<span>".$p->t('global/studiengang')."</span>";
echo "<SELECT name='stg' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<option disabled ".($prestudent_id ? "" : "selected")." value>".$p->t('global/auswaehlen')."</option>";
foreach ($prestudent->result as $pres)
{
$studiengang = new studiengang($pres->studiengang_kz);
echo "<OPTION ".(isset($prestudent_id) && $prestudent_id == $pres->prestudent_id ? "selected" : "")." value='studienerfolgsbestaetigung.php?prestudent_id=$pres->prestudent_id".(isset($uid)?"&uid=".$uid : "")."'>$studiengang->bezeichnung</OPTION>";
}
echo "</SELECT>";
}
else
echo "<div class='contentBox'>Es wurde keine uid uebergeben und unter ihrem Benutzer konnte kein Student gefunden werden.</div>"; // TODO EINE phrasen?
if(isset($prestudent_id))
{
echo '<br>'.$p->t('tools/studiensemesterAuswaehlen').'<br><br>';
$qry = "SELECT distinct studiensemester_kurzbz FROM campus.vw_student JOIN public.tbl_prestudentstatus USING(prestudent_id) WHERE prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER);
if($result = $db->db_query($qry))
{
echo $p->t('global/studiensemester').': <SELECT id="stsem">';
echo '<OPTION value="alle">alle Semester</OPTION>';
$stsem_obj = new studiensemester();
$stsem = $stsem_obj->getPrevious();
while($row = $db->db_fetch_object($result))
{
if($stsem==$row->studiensemester_kurzbz)
$selected = 'selected';
else
$selected = '';
echo '<OPTION value="'.$row->studiensemester_kurzbz.'" '.$selected.'>'.$row->studiensemester_kurzbz.'</OPTION>';
}
echo '</SELECT>';
echo '<br><br><INPUT type="checkbox" id="finanzamt">'.$p->t('tools/vorlageWohnsitzfinanzamt').'<br>';
echo '<br><br><INPUT type="button" value="'.$p->t('global/erstellen').'" onclick="createStudienerfolg('.$prestudent_id.')" />';
}
}
echo '
</body>
</html>';
?>
?>
File diff suppressed because it is too large Load Diff
+5 -2
View File
@@ -19,6 +19,7 @@
* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Andreas Moik <moik@technikum-wien.at>.
*/
/*******************************************************************************************************
* projektabgabe
@@ -140,7 +141,8 @@ if($aktion!='zip')
$qry_termin=" SELECT distinct campus.tbl_paabgabe.datum as termin , to_char(campus.tbl_paabgabe.datum, 'DD-MM-YYYY') as termin_anzeige
FROM lehre.tbl_projektarbeit
JOIN campus.tbl_paabgabe USING(projektarbeit_id)
LEFT JOIN public.tbl_benutzer ON(uid=student_uid)
LEFT JOIN public.tbl_prestudent ON(tbl_prestudent.prestudent_id = tbl_projektarbeit.prestudent_id)
LEFT JOIN public.tbl_benutzer ON(tbl_prestudent.uid=tbl_benutzer.uid)
LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
@@ -214,7 +216,8 @@ if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']=
$qry.=" SELECT public.tbl_studiengang.bezeichnung as stgbez, campus.tbl_paabgabe.datum as termin,* FROM lehre.tbl_projektarbeit
JOIN campus.tbl_paabgabe USING(projektarbeit_id)
LEFT JOIN public.tbl_benutzer ON(uid=student_uid)
LEFT JOIN public.tbl_prestudent ON(tbl_prestudent.prestudent_id=tbl_projektarbeit.prestudent_id)
LEFT JOIN public.tbl_benutzer ON(tbl_benutzer.uid=tbl_prestudent.uid)
LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
@@ -19,6 +19,7 @@
* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Andreas Moik <moik@technikum-wien.at>.
*/
/*******************************************************************************************************
* Autocomplete
@@ -85,7 +86,8 @@ cellSeparator (default value: "|")
$qry=" SELECT distinct campus.tbl_paabgabe.datum as termin , to_char(campus.tbl_paabgabe.datum, 'DD.MM.YYYY') as termin_anzeige
FROM lehre.tbl_projektarbeit
JOIN campus.tbl_paabgabe USING(projektarbeit_id)
LEFT JOIN public.tbl_benutzer ON(uid=student_uid)
LEFT JOIN public.tbl_prestudent ON(tbl_prestudent.prestudent_id=tbl_projektarbeit.prestudent_id)
LEFT JOIN public.tbl_benutzer ON(tbl_benutzer.uid=tbl_prestudent.uid)
LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id)
LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+5 -4
View File
@@ -15,7 +15,8 @@
* 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>
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Menue Addon fuer die Darstellung der Freifaecher
@@ -50,12 +51,12 @@ class menu_addon_freifaecher extends menu_addon
}
$this->block.= '<script language="JavaScript" type="text/javascript">';
$this->block.= ' parent.content.location.href="../cms/news.php?studiengang_kz=0&semester=0"';
$this->block.= ' parent.content.location.href="../cms/news.php?newsReq='.json_encode(array(array("studiengang_kz" => 0, "semester" => 0)));
$this->block.= '</script>';
$this->output();
}
private function CutString($strVal, $limit)
{
if(mb_strlen($strVal) > $limit+3)
@@ -70,4 +71,4 @@ class menu_addon_freifaecher extends menu_addon
}
new menu_addon_freifaecher();
?>
?>
@@ -15,7 +15,8 @@
* 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>
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Menue Addon zur Auswahl von LVs
@@ -35,7 +36,7 @@ require_once(dirname(__FILE__).'/../../include/lehrveranstaltung.class.php');
require_once(dirname(__FILE__).'/../../include/organisationsform.class.php');
require_once(dirname(__FILE__).'/../../include/functions.inc.php');
require_once(dirname(__FILE__).'/../../include/phrasen.class.php');
require_once(dirname(__FILE__).'/../../include/student.class.php');
require_once(dirname(__FILE__).'/../../include/prestudent.class.php');
class menu_addon_lehrveranstaltungen extends menu_addon
{
@@ -49,11 +50,13 @@ class menu_addon_lehrveranstaltungen extends menu_addon
$sprache = getSprache();
$user = get_uid();
$student = new student();
if($student->load($user))
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
if(count($prestudent->result) > 0)
{
$studiengang_kz=$student->studiengang_kz;
$semester=$student->semester;
$studiengang_kz=$prestudent->result[0]->studiengang_kz;
$semester=$prestudent->result[0]->semester;
}
$p = new phrasen($sprache);
@@ -158,7 +161,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
</table>
<table>';
$this->block.= '<script language="JavaScript" type="text/javascript">';
$this->block.= ' parent.content.location.href="../cms/news.php?studiengang_kz='.$studiengang_kz.'&semester='.$semester.'"';
$this->block.= ' parent.content.location.href="../cms/news.php?newsReq='.json_encode(array(array("studiengang_kz" => $studiengang_kz, "semester" => $semester)));
$this->block.= '</script>';
$this->block.='
<tr>
@@ -40,7 +40,7 @@ require_once(dirname(__FILE__).'/../../include/lehrveranstaltung.class.php');
require_once(dirname(__FILE__).'/../../include/organisationsform.class.php');
require_once(dirname(__FILE__).'/../../include/functions.inc.php');
require_once(dirname(__FILE__).'/../../include/phrasen.class.php');
require_once(dirname(__FILE__).'/../../include/student.class.php');
require_once(dirname(__FILE__).'/../../include/prestudent.class.php');
class menu_addon_lehrveranstaltungen_studienplan extends menu_addon
{
@@ -54,17 +54,19 @@ class menu_addon_lehrveranstaltungen_studienplan extends menu_addon
$sprache = getSprache();
$user = get_uid();
$student = new student();
$studiengang_kz='';
$semester='';
$studienplan_id='';
$studienordnung_id='';
$db = new basis_db();
if($student->load($user))
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
if(count($prestudent->result) > 0)
{
$studiengang_kz=$student->studiengang_kz;
$semester=$student->semester;
$studiengang_kz=$prestudent->result[0]->studiengang_kz;
$semester=$prestudent->result[0]->semester;
}
$p = new phrasen($sprache);
+464 -443
View File
@@ -1,443 +1,464 @@
<?php
/* Copyright (C) 2011 FH 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
* Karl Burkhart <karl.burkhart@technikum-wien.at>.
*/
/**
* Laedt die News und zeigt diese an
*
* Wenn kein Parameter uebergeben wird, werden nur die allgemeinen News angezeigt
* Wenn ein Studiengang uebergeben wird, werden rechts neben den News Studiengangsdetails angezeigt
*
* Parameter:
* stg_kz Studiengangskennzahl
* semester Semester
* edit Edit Buttons anzeigen
*
*/
require_once('../config/cis.config.inc.php');
require_once('../include/content.class.php');
require_once('../include/template.class.php');
require_once('../include/functions.inc.php');
require_once('../include/news.class.php');
require_once('../include/kontakt.class.php');
require_once('../include/benutzerfunktion.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/datum.class.php');
require_once('../include/phrasen.class.php');
require_once('../include/student.class.php');
require_once('../include/benutzer.class.php');
require_once('../include/ort.class.php');
require_once('../include/funktion.class.php');
$sprache = getSprache();
$datum_obj = new datum();
//XML Content laden
$content = new content();
$db = new basis_db();
$infoscreen = isset($_GET['infoscreen']);
if(!$infoscreen)
{
$user = get_uid();
//Zum anzeigen der Studiengang-Details neben den News
$student = new student();
if($student->load($user))
{
$stg_kz=$student->studiengang_kz;
$sem=$student->semester;
$ver=$student->verband;
}
else
{
$stg_kz=0;
$sem=NULL;
$ver=NULL;
}
}
else
{
$stg_kz=0;
$sem=NULL;
$ver=NULL;
}
$studiengang_kz = (isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:$stg_kz);
$semester = (isset($_GET['semester'])?$_GET['semester']:$sem);
$mischen = (isset($_GET['mischen'])?$_GET['mischen']:true);
$titel = (isset($_GET['titel'])?$_GET['titel']:'');
$editable = isset($_GET['edit']);
$news = new news();
$all=false;
if(isset($_GET['sichtbar']) && ($_GET['sichtbar'])=="false")
$sichtbar = false;
else
$sichtbar = true;
//Im Editiermodus werden auch die zukuenftigen News angezeigt
if($editable)
$all=true;
$news->getnews(MAXNEWSALTER, $studiengang_kz, $semester, $all, null, MAXNEWS, $mischen);
$xml = '<?xml version="1.0" encoding="UTF-8"?><content>';
foreach($news->result as $row)
{
$content = new content();
$content->getContent($row->content_id, $sprache,null, $sichtbar, true);
//das Datum des News Eintrages ist nicht im XML enthalten, es muss extra hinzugefuegt werden
$datum = '<datum><![CDATA['.$datum_obj->formatDatum($row->datum,'d.m.Y').']]></datum>';
if($studiengang_kz<>0 && $editable && $row->studiengang_kz==0)
{
continue;
}
//Wenn der Parameter edit uebergeben wird, dann wird neben dem Datum ein Link zum Editieren des Eintrags angezeigt
if($editable)
$id = '<news_id><![CDATA['.$row->news_id.']]></news_id>';
else
$id='';
$xml .= mb_substr($content->content,0,mb_strlen($content->content)-7).$datum.$id.mb_substr($content->content,-7);
//$xml .= $content->content;
}
if($studiengang_kz!=0 && !$editable && !$infoscreen) // && $studiengang_kz==10006 && !$semester)
$xml.=getStgContent($studiengang_kz, $semester, $sprache);
if($studiengang_kz!=0)
{
$stg_obj = new studiengang();
$stg_obj->load($studiengang_kz);
$xml.='<studiengang_bezeichnung>'.$stg_obj->bezeichnung.'</studiengang_bezeichnung>';
}
if($titel!='')
{
$xml.='<news_titel>'.$titel.'</news_titel>';
}
$xml .= '</content>';
$doc = new DOMDocument();
$doc->loadXML($xml);
//XSLT Vorlage laden
$template = new template();
if($infoscreen)
{
if(!$template->load('news_infoscreen'))
die($template->errormsg);
}
else
{
if(!$template->load('news'))
die($template->errormsg);
}
$xsltemplate = new DOMDocument();
$xsltemplate->loadXML($template->xslt_xhtml);
//Transformation
$processor = new XSLTProcessor();
$processor->importStylesheet($xsltemplate);
echo $processor->transformToXML($doc);
/**
* Liefert ein XML mit den Details eines Studiengangs
* welche dann neben den News angezeigt werden
*
* @param $studiengang_kz
* @param $semester
* @param $sprache
*/
function getStgContent($studiengang_kz, $semester, $sprache)
{
$p = new phrasen($sprache);
$xml = '<stg_extras>';
$studiengang = new studiengang();
$studiengang->load($studiengang_kz);
//Studiengangsleitung
$stg_oe_obj = new studiengang();
$stgl = $stg_oe_obj->getLeitung($studiengang_kz);
//$xml.='<stg_header><![CDATA['.$p->t('global/studiengangsmanagement').']]></stg_header>';
$xml.='<stg_ltg_name><![CDATA['.$p->t('global/studiengangsleitung').']]></stg_ltg_name>';
if(count($stgl)>0)
{
foreach ($stgl as $uid)
{
$row_course_leader = new mitarbeiter($uid);
$xml.='<stg_ltg>';
$xml.='<name><![CDATA['.$row_course_leader->titelpre.' '.$row_course_leader->vorname.' '.$row_course_leader->nachname.' '.$row_course_leader->titelpost.']]></name>';
if(isset($row_course_leader) && $row_course_leader->uid != "")
{
$alias = new benutzer();
$alias->load($uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$row_course_leader->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$row_course_leader->uid.']]></uid>';
}
if(isset($row_course_leader) && $row_course_leader->telefonklappe != "")
{
$hauptnummer='';
if($row_course_leader->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($row_course_leader->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$row_course_leader->telefonklappe.']]></telefon>';
}
if(isset($row_course_leader) && $row_course_leader->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($row_course_leader->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</stg_ltg>';
}
}
//geschaeftsf. Leitung auselesen
$xml.='<gf_ltg_name><![CDATA['.$p->t('global/geschaeftsfuehrendeltg').']]></gf_ltg_name>';
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('gLtg', $studiengang->oe_kurzbz);
foreach($benutzerfkt->result as $row)
{
$ma = new mitarbeiter();
$ma->load($row->uid);
if($ma->uid!='' && $ma->bnaktiv)
{
$xml.='<gf_ltg>';
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
$alias = new benutzer();
$alias->load($ma->uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$ma->uid.']]></uid>';
if($ma->telefonklappe != '')
{
if($ma->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($ma->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
}
if($ma->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($ma->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</gf_ltg>';
}
}
//Studiengangsleiter Stellvertreter auslesen
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('stvLtg', $studiengang->oe_kurzbz);
$xml.='<stv_ltg_name><![CDATA['.$p->t('global/stellvertreter').']]></stv_ltg_name>';
foreach($benutzerfkt->result as $row)
{
$ma = new mitarbeiter();
$ma->load($row->uid);
if($ma->uid!='' && $ma->bnaktiv)
{
$xml.='<stv_ltg>';
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
$alias = new benutzer();
$alias->load($ma->uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$ma->uid.']]></uid>';
if($ma->telefonklappe != '')
{
if($ma->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($ma->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
}
if($ma->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($ma->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</stv_ltg>';
}
}
//Assistenz
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('ass', $studiengang->oe_kurzbz);
$xml.='<ass_name><![CDATA['.$p->t('global/sekretariat').']]></ass_name>';
foreach($benutzerfkt->result as $row)
{
$ma = new mitarbeiter();
$ma->load($row->uid);
if($ma->uid!='' && $ma->bnaktiv)
{
$xml.='<ass>';
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
$alias = new benutzer();
$alias->load($ma->uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$ma->uid.']]></uid>';
if($ma->telefonklappe != '')
{
if($ma->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($ma->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
}
if($ma->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($ma->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</ass>';
}
}
//Zusatzinfo (Oeffnungszeiten etc)
$xml.='<zusatzinfo><![CDATA['.$studiengang->zusatzinfo_html.']]></zusatzinfo>';
//Hochschulvertretung
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('hsv');
$xml.='<hochschulvertr_name><![CDATA['.$p->t('global/hochschulvertretung').']]></hochschulvertr_name>';
foreach($benutzerfkt->result as $row)
{
$bn = new benutzer();
$bn->load($row->uid);
$funktion = new funktion();
$funktion->load($row->funktion_kurzbz);
if($bn->uid!='' && $bn->bnaktiv)
{
$xml.='<hochschulvertr>';
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.' '.($row->bezeichnung!='' && $row->bezeichnung!=$funktion->beschreibung?'('.$row->bezeichnung.')':'').']]></name>';
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$bn->uid.']]></uid>';
$xml.='</hochschulvertr>';
}
}
//Studentenvertretung
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('stdv', $studiengang->oe_kurzbz);
$xml.='<stdv_name><![CDATA['.$p->t('global/studentenvertreter').' '.strtoupper($studiengang->oe_kurzbz).']]></stdv_name>';
foreach($benutzerfkt->result as $row)
{
$bn = new benutzer();
$bn->load($row->uid);
$funktion = new funktion();
$funktion->load($row->funktion_kurzbz);
if($bn->uid!='' && $bn->bnaktiv)
{
$xml.='<stdv>';
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.' '.($row->bezeichnung!='' && $row->bezeichnung!=$funktion->beschreibung?'('.$row->bezeichnung.')':'').']]></name>';
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$bn->uid.']]></uid>';
$xml.='</stdv>';
}
}
//Jahrgangsvertretung
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('jgv', $studiengang->oe_kurzbz, $semester);
$xml.='<jahrgangsvertr_name><![CDATA['.$p->t('global/jahrgangsvertretung').' '.$semester.'. '.$p->t('global/semester').']]></jahrgangsvertr_name>';
foreach($benutzerfkt->result as $row)
{
$bn = new benutzer();
$bn->load($row->uid);
$funktion = new funktion();
$funktion->load($row->funktion_kurzbz);
if($bn->uid!='' && $bn->bnaktiv)
{
$xml.='<jahrgangsvertr>';
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.' '.($row->bezeichnung!='' && $row->bezeichnung!=$funktion->beschreibung?'('.$row->bezeichnung.')':'').']]></name>';
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$bn->uid.']]></uid>';
$xml.='</jahrgangsvertr>';
}
}
if(CIS_EXT_MENU)
{
$xml.='<cis_ext_menu>
<lehrziele_name><![CDATA['.$p->t('global/lehrziele').']]></lehrziele_name>
<download_name><![CDATA['.$p->t('global/allgemeinerdownload').']]></download_name>
<newsgroup_name><![CDATA['.$p->t('global/newsgroups').']]></newsgroup_name>
<kurzbz><![CDATA['.strtolower($studiengang->kuerzel).']]></kurzbz>
<kurzbzlang><![CDATA['.strtolower($studiengang->kurzbzlang).']]></kurzbzlang>
</cis_ext_menu>';
}
$xml.='</stg_extras>';
return $xml;
}
?>
<?php
/* Copyright (C) 2011 FH 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>,
* Karl Burkhart <karl.burkhart@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Laedt die News und zeigt diese an
*
* Wenn kein Parameter uebergeben wird, werden nur die allgemeinen News angezeigt
* Wenn ein Studiengang uebergeben wird, werden rechts neben den News Studiengangsdetails angezeigt
*
* Parameter:
* stg_kz Studiengangskennzahl
* semester Semester
* edit Edit Buttons anzeigen
*
*/
require_once('../config/cis.config.inc.php');
require_once('../include/content.class.php');
require_once('../include/template.class.php');
require_once('../include/functions.inc.php');
require_once('../include/news.class.php');
require_once('../include/kontakt.class.php');
require_once('../include/benutzerfunktion.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/datum.class.php');
require_once('../include/phrasen.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/benutzer.class.php');
require_once('../include/ort.class.php');
require_once('../include/funktion.class.php');
$sprache = getSprache();
$datum_obj = new datum();
//XML Content laden
$content = new content();
$db = new basis_db();
$newsReq = array();
if(isset($_GET["newsReq"]))
if($buf = json_decode($_GET["newsReq"]))
$newsReq = $buf;
$infoscreen = isset($_GET['infoscreen']);
if($infoscreen || count($newsReq) < 1)
{
$newsReq[] = getNRObj(0,null);
}
else
{
$user = get_uid();
//Zum anzeigen der Studiengang-Details neben den News
$prestudent = new prestudent();
$prestudent->getPrestudentsFromUid($user);
foreach($prestudent->result as $ps)
{
$newsReq[] = getNRObj($ps->studiengang_kz,$ps->semester);
}
}
$mischen = (isset($_GET['mischen'])?$_GET['mischen']:true);
$titel = (isset($_GET['titel'])?$_GET['titel']:'');
$editable = isset($_GET['edit']);
$news = new news();
$all=false;
if(isset($_GET['sichtbar']) && ($_GET['sichtbar'])=="false")
$sichtbar = false;
else
$sichtbar = true;
//Im Editiermodus werden auch die zukuenftigen News angezeigt
if($editable)
$all=true;
$newsArr = array();
$xml = '<?xml version="1.0" encoding="UTF-8"?><content>';
foreach($newsReq as $nr)
{
$news->getnews(MAXNEWSALTER, $nr->studiengang_kz, $nr->semester, $all, null, MAXNEWS, $mischen);
foreach($news->result as $nws)
{
$found = false;
foreach($newsArr as $oldN)
{
if($oldN->news_id == $nws->news_id)
$found = true;
}
if(!$found)
{
$content = new content();
$content->getContent($nws->content_id, $sprache,null, $sichtbar, true);
//das Datum des News Eintrages ist nicht im XML enthalten, es muss extra hinzugefuegt werden
$datum = '<datum><![CDATA['.$datum_obj->formatDatum($nws->datum,'d.m.Y').']]></datum>';
if(!($nr->studiengang_kz<>0 && $editable && $nws->studiengang_kz==0))
{
//Wenn der Parameter edit uebergeben wird, dann wird neben dem Datum ein Link zum Editieren des Eintrags angezeigt
if($editable)
$id = '<news_id><![CDATA['.$nws->news_id.']]></news_id>';
else
$id='';
$xml .= mb_substr($content->content,0,mb_strlen($content->content)-7).$datum.$id.mb_substr($content->content,-7);
//$xml .= $content->content;
$newsArr[] = $nws;
}
if($nr->studiengang_kz != 0)
{
if(!$editable && !$infoscreen)
$xml.=getStgContent($nr->studiengang_kz, $nr->semester, $sprache);
}
}
}
}
if($titel!='')
{
$xml.='<news_titel>'.$titel.'</news_titel>';
}
$xml .= '</content>';
$doc = new DOMDocument();
$doc->loadXML($xml);
//XSLT Vorlage laden
$template = new template();
if($infoscreen)
{
if(!$template->load('news_infoscreen'))
die($template->errormsg);
}
else
{
if(!$template->load('news'))
die($template->errormsg);
}
$xsltemplate = new DOMDocument();
$xsltemplate->loadXML($template->xslt_xhtml);
//Transformation
$processor = new XSLTProcessor();
$processor->importStylesheet($xsltemplate);
echo $processor->transformToXML($doc);
/**
* Liefert ein XML mit den Details eines Studiengangs
* welche dann neben den News angezeigt werden
*
* @param $studiengang_kz
* @param $semester
* @param $sprache
*/
function getStgContent($studiengang_kz, $semester, $sprache)
{
$p = new phrasen($sprache);
$xml = '<stg_extras>';
$studiengang = new studiengang();
$studiengang->load($studiengang_kz);
$xml.='<stg_name_name><![CDATA['.$p->t('global/studiengang').']]></stg_name_name>';
$xml.='<studiengang_bezeichnung>'.$studiengang->bezeichnung.'</studiengang_bezeichnung>';
//Studiengangsleitung
$stg_oe_obj = new studiengang();
$stgl = $stg_oe_obj->getLeitung($studiengang_kz);
//$xml.='<stg_header><![CDATA['.$p->t('global/studiengangsmanagement').']]></stg_header>';
$xml.='<stg_ltg_name><![CDATA['.$p->t('global/studiengangsleitung').']]></stg_ltg_name>';
if(count($stgl)>0)
{
foreach ($stgl as $uid)
{
$row_course_leader = new mitarbeiter($uid);
$xml.='<stg_ltg>';
$xml.='<name><![CDATA['.$row_course_leader->titelpre.' '.$row_course_leader->vorname.' '.$row_course_leader->nachname.' '.$row_course_leader->titelpost.']]></name>';
if(isset($row_course_leader) && $row_course_leader->uid != "")
{
$alias = new benutzer();
$alias->load($uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$row_course_leader->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$row_course_leader->uid.']]></uid>';
}
if(isset($row_course_leader) && $row_course_leader->telefonklappe != "")
{
$hauptnummer='';
if($row_course_leader->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($row_course_leader->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$row_course_leader->telefonklappe.']]></telefon>';
}
if(isset($row_course_leader) && $row_course_leader->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($row_course_leader->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</stg_ltg>';
}
}
//geschaeftsf. Leitung auselesen
$xml.='<gf_ltg_name><![CDATA['.$p->t('global/geschaeftsfuehrendeltg').']]></gf_ltg_name>';
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('gLtg', $studiengang->oe_kurzbz);
foreach($benutzerfkt->result as $row)
{
$ma = new mitarbeiter();
$ma->load($row->uid);
if($ma->uid!='' && $ma->bnaktiv)
{
$xml.='<gf_ltg>';
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
$alias = new benutzer();
$alias->load($ma->uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$ma->uid.']]></uid>';
if($ma->telefonklappe != '')
{
if($ma->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($ma->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
}
if($ma->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($ma->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</gf_ltg>';
}
}
//Studiengangsleiter Stellvertreter auslesen
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('stvLtg', $studiengang->oe_kurzbz);
$xml.='<stv_ltg_name><![CDATA['.$p->t('global/stellvertreter').']]></stv_ltg_name>';
foreach($benutzerfkt->result as $row)
{
$ma = new mitarbeiter();
$ma->load($row->uid);
if($ma->uid!='' && $ma->bnaktiv)
{
$xml.='<stv_ltg>';
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
$alias = new benutzer();
$alias->load($ma->uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$ma->uid.']]></uid>';
if($ma->telefonklappe != '')
{
if($ma->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($ma->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
}
if($ma->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($ma->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</stv_ltg>';
}
}
//Assistenz
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('ass', $studiengang->oe_kurzbz);
$xml.='<ass_name><![CDATA['.$p->t('global/sekretariat').']]></ass_name>';
foreach($benutzerfkt->result as $row)
{
$ma = new mitarbeiter();
$ma->load($row->uid);
if($ma->uid!='' && $ma->bnaktiv)
{
$xml.='<ass>';
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
$alias = new benutzer();
$alias->load($ma->uid);
if($alias->alias!='')
$xml.='<email><![CDATA['.$alias->alias.'@'.DOMAIN.']]></email>';
else
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$ma->uid.']]></uid>';
if($ma->telefonklappe != '')
{
if($ma->standort_id!='')
{
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($ma->standort_id, 'telefon');
$hauptnummer = $kontakt->kontakt;
}
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
}
if($ma->ort_kurzbz != "")
{
$ort = new ort();
$ort->load($ma->ort_kurzbz);
$xml.='<ort><![CDATA['.$ort->planbezeichnung.']]></ort>';
}
$xml.='</ass>';
}
}
//Zusatzinfo (Oeffnungszeiten etc)
$xml.='<zusatzinfo><![CDATA['.$studiengang->zusatzinfo_html.']]></zusatzinfo>';
//Hochschulvertretung
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('hsv');
$xml.='<hochschulvertr_name><![CDATA['.$p->t('global/hochschulvertretung').']]></hochschulvertr_name>';
foreach($benutzerfkt->result as $row)
{
$bn = new benutzer();
$bn->load($row->uid);
$funktion = new funktion();
$funktion->load($row->funktion_kurzbz);
if($bn->uid!='' && $bn->bnaktiv)
{
$xml.='<hochschulvertr>';
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.' '.($row->bezeichnung!='' && $row->bezeichnung!=$funktion->beschreibung?'('.$row->bezeichnung.')':'').']]></name>';
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$bn->uid.']]></uid>';
$xml.='</hochschulvertr>';
}
}
//Studentenvertretung
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('stdv', $studiengang->oe_kurzbz);
$xml.='<stdv_name><![CDATA['.$p->t('global/studentenvertreter').' '.strtoupper($studiengang->oe_kurzbz).']]></stdv_name>';
foreach($benutzerfkt->result as $row)
{
$bn = new benutzer();
$bn->load($row->uid);
$funktion = new funktion();
$funktion->load($row->funktion_kurzbz);
if($bn->uid!='' && $bn->bnaktiv)
{
$xml.='<stdv>';
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.' '.($row->bezeichnung!='' && $row->bezeichnung!=$funktion->beschreibung?'('.$row->bezeichnung.')':'').']]></name>';
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$bn->uid.']]></uid>';
$xml.='</stdv>';
}
}
//Jahrgangsvertretung
$benutzerfkt = new benutzerfunktion();
$benutzerfkt->getBenutzerFunktionen('jgv', $studiengang->oe_kurzbz, $semester);
$xml.='<jahrgangsvertr_name><![CDATA['.$p->t('global/jahrgangsvertretung').' '.$semester.'. '.$p->t('global/semester').']]></jahrgangsvertr_name>';
foreach($benutzerfkt->result as $row)
{
$bn = new benutzer();
$bn->load($row->uid);
$funktion = new funktion();
$funktion->load($row->funktion_kurzbz);
if($bn->uid!='' && $bn->bnaktiv)
{
$xml.='<jahrgangsvertr>';
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.' '.($row->bezeichnung!='' && $row->bezeichnung!=$funktion->beschreibung?'('.$row->bezeichnung.')':'').']]></name>';
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
$xml.='<uid><![CDATA['.$bn->uid.']]></uid>';
$xml.='</jahrgangsvertr>';
}
}
if(CIS_EXT_MENU)
{
$xml.='<cis_ext_menu>
<lehrziele_name><![CDATA['.$p->t('global/lehrziele').']]></lehrziele_name>
<download_name><![CDATA['.$p->t('global/allgemeinerdownload').']]></download_name>
<newsgroup_name><![CDATA['.$p->t('global/newsgroups').']]></newsgroup_name>
<kurzbz><![CDATA['.strtolower($studiengang->kuerzel).']]></kurzbz>
<kurzbzlang><![CDATA['.strtolower($studiengang->kurzbzlang).']]></kurzbzlang>
</cis_ext_menu>';
}
$xml.='</stg_extras>';
return $xml;
}
function getNRObj($stg_kz, $sem)
{
$ret = new stdClass();
$ret->studiengang_kz = $stg_kz;
$ret->semester = $sem;
return $ret;
}
?>
+5 -4
View File
@@ -15,7 +15,8 @@
* 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>
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Diese Seite dient zum Anlegen und aendern von Newseintraegen
@@ -599,13 +600,13 @@ echo '<hr>
<tr>
<td style="height:100%;" valign="top">
<h3>Nicht veröffentlicht</h3>
<iframe src="news.php?studiengang_kz='.$studiengang_kz.'&semester='.$semester.'&edit=true&sichtbar=false" style="width: 95%;height:100%;"></iframe>
<iframe src="news.php?edit=true&sichtbar=false&newsReq='.json_encode(array(array("studiengang_kz" => $studiengang_kz, "semester" => $semester))).'" style="width: 95%;height:100%;"></iframe>
</td>
<td valign="top">
<h3>Veröffentlicht</h3>
<iframe src="news.php?studiengang_kz='.$studiengang_kz.'&semester='.$semester.'&edit=true" style="width: 95%;height:100%;"></iframe>
<iframe src="news.php?edit=true&newsReq='.json_encode(array(array("studiengang_kz" => $studiengang_kz, "semester" => $semester))).'" style="width: 95%;height:100%;"></iframe>
</td>
</tr></table>';
echo '</body>
</html>';
?>
?>
+87 -87
View File
@@ -1,87 +1,87 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
include('../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"?>';
?>
<window id="about-window" title="Kontakt"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<vbox>
<hbox style="margin-top: 20px">
<spacer flex="1"/>
<image src='<?php echo APP_ROOT; ?>skin/images/fh_complete_logo_400x61.png' width="400" height="61"/>
<spacer flex="1"/>
</hbox>
<hbox style="margin-top: 20px">
<spacer flex="1"/>
</hbox>
<hbox>
<spacer flex="1"/>
<label value="Copyright (C) 2007 FH Complete" />
<spacer flex="1"/>
</hbox>
<hbox>
<spacer flex="1"/>
<groupbox>
<caption label='GPL' />
<description style="white-space: pre;">
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 &lt;christian.paminger@technikum-wien.at&gt;,
Andreas Oesterreicher &lt;andreas.oesterreicher@technikum-wien.at&gt;,
Rudolf Hangl &lt;rudolf.hangl@technikum-wien.at&gt;,
Gerald Raab &lt;gerald.raab@technikum-wien.at&gt; and
Gerald Simane-Sequens &lt;gerald.simane-sequence@technikum-wien.at&gt;
Manfred Kindl &lt;manfred.kindl@technikum-wien.at&gt;
</description>
</groupbox>
<spacer flex="1"/>
</hbox>
<hbox>
<spacer flex="1"/>
<button oncommand="window.close()" label="Close" />
<spacer flex="1"/>
</hbox>
</vbox>
</window>
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
include('../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"?>';
?>
<window id="about-window" title="Kontakt"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<vbox>
<hbox style="margin-top: 20px">
<spacer flex="1"/>
<image src='<?php echo APP_ROOT; ?>skin/images/fh_complete_logo_400x61.png' width="400" height="61"/>
<spacer flex="1"/>
</hbox>
<hbox style="margin-top: 20px">
<spacer flex="1"/>
</hbox>
<hbox>
<spacer flex="1"/>
<label value="Copyright (C) 2007 FH Complete" />
<spacer flex="1"/>
</hbox>
<hbox>
<spacer flex="1"/>
<groupbox>
<caption label='GPL' />
<description style="white-space: pre;">
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 &lt;christian.paminger@technikum-wien.at&gt;,
Andreas Oesterreicher &lt;andreas.oesterreicher@technikum-wien.at&gt;,
Rudolf Hangl &lt;rudolf.hangl@technikum-wien.at&gt;,
Gerald Raab &lt;gerald.raab@technikum-wien.at&gt; and
Gerald Simane-Sequens &lt;gerald.simane-sequence@technikum-wien.at&gt;
Manfred Kindl &lt;manfred.kindl@technikum-wien.at&gt;
</description>
</groupbox>
<spacer flex="1"/>
</hbox>
<hbox>
<spacer flex="1"/>
<button oncommand="window.close()" label="Close" />
<spacer flex="1"/>
</hbox>
</vbox>
</window>
+119 -119
View File
@@ -1,119 +1,119 @@
<?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>.
*/
/**
* Die Dokumente werden entweder base64 kodiert in der der Datenbank in der Spalte inhalt gespeichert
* oder im Filesystem in diesem Fall ist die Akte mit einer DMS ID verknuepft in welcher der Dateiname steht.
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/akte.class.php');
require_once('../include/dms.class.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/functions.inc.php');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('mitarbeiter'))
die('Keine Berechtigung');
//base64 Dump aus der DB holen
if(isset($_GET['id']) && is_numeric($_GET['id']))
{
$akte = new akte($_GET['id']);
OutputData($akte);
}
if(isset($_GET['akte_id']) && is_numeric($_GET['akte_id']))
{
$akte = new akte();
if(!$akte->load($_GET['akte_id']))
die('Fehler beim Laden der Akte');
OutputData($akte);
}
if(isset($_GET['person_id']) && isset($_GET['dokument_kurzbz']))
{
$akte = new akte();
if(!$akte->getAkten($_GET['person_id'], $_GET['dokument_kurzbz']))
die('Konnte Dokument nicht laden');
// erste Akte
if(isset($akte->result[0]))
{
$akten = $akte->result[0];
$titel = ($akten->titel == '')?$akten->dokument_kurzbz:$akten->titel;
}
else
die('Kein Dokument vorhanden');
OutputData($akten);
}
function OutputData($akte)
{
if($akte->inhalt!='')
{
//Header fuer Bild schicken
header("Content-type: $akte->mimetype");
header('Content-Disposition: attachment; filename="'.$akte->titel.'"');
echo base64_decode($akte->inhalt);
}
elseif($akte->dms_id!='')
{
$dms = new dms();
if(!$dms->load($akte->dms_id))
die('Kein Dokument vorhanden');
$filename=DMS_PATH.$dms->filename;
if(!isset($_GET['notimeupdate']))
$dms->touch($dms->dms_id, $dms->version);
if(file_exists($filename))
{
if($handle = fopen($filename,"r"))
{
if($dms->mimetype=='')
$dms->mimetype='application/octetstream';
header('Content-type: application/octetstream');
header('Content-Disposition: inline; filename="'.$dms->name.'"');
header('Content-Length: ' .filesize($filename));
while (!feof($handle))
{
echo fread($handle, 8192);
}
fclose($handle);
}
else
echo 'Fehler: Datei konnte nicht geoeffnet werden';
}
else
echo 'Die Datei existiert nicht';
}
}
?>
<?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>.
*/
/**
* Die Dokumente werden entweder base64 kodiert in der der Datenbank in der Spalte inhalt gespeichert
* oder im Filesystem in diesem Fall ist die Akte mit einer DMS ID verknuepft in welcher der Dateiname steht.
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/akte.class.php');
require_once('../include/dms.class.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/functions.inc.php');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('mitarbeiter'))
die('Keine Berechtigung');
//base64 Dump aus der DB holen
if(isset($_GET['id']) && is_numeric($_GET['id']))
{
$akte = new akte($_GET['id']);
OutputData($akte);
}
if(isset($_GET['akte_id']) && is_numeric($_GET['akte_id']))
{
$akte = new akte();
if(!$akte->load($_GET['akte_id']))
die('Fehler beim Laden der Akte');
OutputData($akte);
}
if(isset($_GET['person_id']) && isset($_GET['dokument_kurzbz']))
{
$akte = new akte();
if(!$akte->getAkten($_GET['person_id'], $_GET['dokument_kurzbz']))
die('Konnte Dokument nicht laden');
// erste Akte
if(isset($akte->result[0]))
{
$akten = $akte->result[0];
$titel = ($akten->titel == '')?$akten->dokument_kurzbz:$akten->titel;
}
else
die('Kein Dokument vorhanden');
OutputData($akten);
}
function OutputData($akte)
{
if($akte->inhalt!='')
{
//Header fuer Bild schicken
header("Content-type: $akte->mimetype");
header('Content-Disposition: attachment; filename="'.$akte->titel.'"');
echo base64_decode($akte->inhalt);
}
elseif($akte->dms_id!='')
{
$dms = new dms();
if(!$dms->load($akte->dms_id))
die('Kein Dokument vorhanden');
$filename=DMS_PATH.$dms->filename;
if(!isset($_GET['notimeupdate']))
$dms->touch($dms->dms_id, $dms->version);
if(file_exists($filename))
{
if($handle = fopen($filename,"r"))
{
if($dms->mimetype=='')
$dms->mimetype='application/octetstream';
header('Content-type: application/octetstream');
header('Content-Disposition: inline; filename="'.$dms->name.'"');
header('Content-Length: ' .filesize($filename));
while (!feof($handle))
{
echo fread($handle, 8192);
}
fclose($handle);
}
else
echo 'Fehler: Datei konnte nicht geoeffnet werden';
}
else
echo 'Die Datei existiert nicht';
}
}
?>
+54 -56
View File
@@ -1,56 +1,54 @@
<?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 <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
?>
// ********** FUNKTIONEN ********** //
var anwesenheitStudentUID='';
// ****
// * Laedt die Trees
// ****
function loadanwesenheit(student_uid,lehrveranstaltung_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
anwesenheitStudentUID=student_uid;
//anwesenheit laden
url = "<?php echo APP_ROOT; ?>rdf/anwesenheit.rdf.php?ts="+gettimestamp();
if(student_uid!='')
url=url+"&student_uid="+student_uid;
if(lehrveranstaltung_id!='')
url=url+"&lehrveranstaltung_id="+lehrveranstaltung_id;
var treeanwesenheit=document.getElementById('anwesenheit-tree');
//Alte DS entfernen
var oldDatasources = treeanwesenheit.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeanwesenheit.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);
treeanwesenheit.database.AddDataSource(TerminTreeDatasource);
}
<?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 <andreas.oesterreicher@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../config/vilesci.config.inc.php');
?>
// ********** FUNKTIONEN ********** //
// ****
// * Laedt die Trees
// ****
function loadanwesenheit(prestudent_id,lehrveranstaltung_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//anwesenheit laden
url = "<?php echo APP_ROOT; ?>rdf/anwesenheit.rdf.php?ts="+gettimestamp();
if(parseInt(prestudent_id) !== false)
url=url+"&prestudent_id="+prestudent_id;
if(lehrveranstaltung_id!='')
url=url+"&lehrveranstaltung_id="+lehrveranstaltung_id;
var treeanwesenheit=document.getElementById('anwesenheit-tree');
//Alte DS entfernen
var oldDatasources = treeanwesenheit.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeanwesenheit.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);
treeanwesenheit.database.AddDataSource(TerminTreeDatasource);
}
+108 -107
View File
@@ -1,107 +1,108 @@
<?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 <andreas.oesterreicher@technikum-wien.at>
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../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"?>';
$student_uid = filter_input(INPUT_GET,'student_uid');
$lehrveranstaltung_id= filter_input(INPUT_GET,'lehrveranstaltung_id');
?>
<window id="anwesenheit-window" title="anwesenheit"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadanwesenheit('<?php echo $student_uid;?>','<?php echo $lehrveranstaltung_id;?>');">
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/anwesenheit.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="anwesenheit-groupbox-anwesenheit" flex="1">
<caption label="Anwesenheit" />
<hbox flex="1">
<tree id="anwesenheit-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null"
ref="http://www.technikum-wien.at/anwesenheit"
persist="hidden, height"
>
<treecols>
<treecol id="anwesenheit-treecol-lehrveranstaltung" label="Lehrveranstaltung" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'false':'true');?>"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#lehrveranstaltung_bezeichnung" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-nachname" label="Nachname" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'true':'false');?>"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nachname" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-vorname" label="Vorname" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'true':'false');?>"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#vorname" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-prozent" label="Anwesenheit in Prozent" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#prozent" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-anwesend" label="Anwesend" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#anwesend" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-nichtanwesend" label="Nicht anwesend" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nichtanwesend" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-uid" label="UID" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#uid" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow properties="rdf:http://www.technikum-wien.at/anwesenheit/rdf#ampel">
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#lehrveranstaltung_bezeichnung" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#prozent" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#anwesend" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nichtanwesend" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#uid" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</hbox>
</groupbox>
</vbox>
</window>
<?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 <andreas.oesterreicher@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../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"?>';
$prestudent_id = filter_input(INPUT_GET,'prestudent_id');
$lehrveranstaltung_id= filter_input(INPUT_GET,'lehrveranstaltung_id');
?>
<window id="anwesenheit-window" title="anwesenheit"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadanwesenheit('<?php echo $prestudent_id;?>','<?php echo $lehrveranstaltung_id;?>');">
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/anwesenheit.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="anwesenheit-groupbox-anwesenheit" flex="1">
<caption label="Anwesenheit" />
<hbox flex="1">
<tree id="anwesenheit-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null"
ref="http://www.technikum-wien.at/anwesenheit"
persist="hidden, height"
>
<treecols>
<treecol id="anwesenheit-treecol-lehrveranstaltung" label="Lehrveranstaltung" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'false':'true');?>"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#lehrveranstaltung_bezeichnung" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-nachname" label="Nachname" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'true':'false');?>"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nachname" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-vorname" label="Vorname" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'true':'false');?>"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#vorname" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-prozent" label="Anwesenheit in Prozent" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#prozent" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-anwesend" label="Anwesend" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#anwesend" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-nichtanwesend" label="Nicht anwesend" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nichtanwesend" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="anwesenheit-treecol-uid" label="UID" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#uid" onclick="anwesenheitTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow properties="rdf:http://www.technikum-wien.at/anwesenheit/rdf#ampel">
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#lehrveranstaltung_bezeichnung" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#prozent" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#anwesend" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nichtanwesend" />
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#uid" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</hbox>
</groupbox>
</vbox>
</window>
File diff suppressed because it is too large Load Diff
+4 -3
View File
@@ -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>.
*/
/* Erstellt einen Lehrauftrag im PDF Format
*
@@ -64,7 +65,7 @@ else
else
$uids = $_GET['uid'];
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE student_uid=".$db->db_add_param($uids[1]);
$qry = "SELECT uid, studiengang_kz FROM public.tbl_prestudent WHERE uid=".$db->db_add_param($uids[1]);
if($result_std = $db->db_query($qry))
if($db->db_num_rows($result_std)==1)
{
+726 -728
View File
File diff suppressed because it is too large Load Diff
+8 -7
View File
@@ -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');
@@ -65,16 +66,16 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/fasoverlay.xul.php"?>';
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
orient="vertical"
width="800"
height="600"
persist="screenX screenY width height sizemode"
onload="onLoad()"
>
height="600"
persist="screenX screenY width height sizemode"
onload="onLoad()"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/tempus.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php"/>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jquery.js"></script>
<?php require_once("../include/meta/jquery.php"); ?>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqSOAPClient.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqXMLUtils.js"></script>
+68 -62
View File
@@ -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');
@@ -362,43 +363,46 @@ function onVerbandSelect(event)
// -------------- Studenten --------------------------
try
{
stsem = getStudiensemester();
url = "<?php echo APP_ROOT; ?>rdf/student.rdf.php?studiengang_kz="+stg_kz+"&semester="+sem+"&verband="+ver+"&gruppe="+grp+"&gruppe_kurzbz="+gruppe+"&studiensemester_kurzbz="+stsem+"&typ=student&orgform="+orgform+"&"+gettimestamp();
var treeStudent=document.getElementById('student-tree');
//Alte DS entfernen
var oldDatasources = treeStudent.database.GetDataSources();
while(oldDatasources.hasMoreElements())
if(stg_kz != "")
{
treeStudent.database.RemoveDataSource(oldDatasources.getNext());
}
stsem = getStudiensemester();
url = "<?php echo APP_ROOT; ?>rdf/student.rdf.php?studiengang_kz="+stg_kz+"&semester="+sem+"&verband="+ver+"&gruppe="+grp+"&gruppe_kurzbz="+gruppe+"&studiensemester_kurzbz="+stsem+"&typ=student&orgform="+orgform+"&"+gettimestamp();
var treeStudent=document.getElementById('student-tree');
try
{
StudentTreeDatasource.removeXMLSinkObserver(StudentTreeSinkObserver);
treeStudent.builder.removeListener(StudentTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
StudentTreeDatasource = rdfService.GetDataSource(url);
StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeStudent.database.AddDataSource(StudentTreeDatasource);
StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver);
treeStudent.builder.addListener(StudentTreeListener);
//Alte DS entfernen
var oldDatasources = treeStudent.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeStudent.database.RemoveDataSource(oldDatasources.getNext());
}
//Detailfelder Deaktivieren
StudentDetailReset();
StudentDetailDisableFields(true);
StudentPrestudentDisableFields(true);
StudentKontoDisableFields(true);
StudentAkteDisableFields(true);
StudentIODisableFields(true);
StudentNoteDisableFields(true);
document.getElementById('student-kontakt').setAttribute('src','');
document.getElementById('student-betriebsmittel').setAttribute('src','');
StudentAbschlusspruefungDisableFields(true);
try
{
StudentTreeDatasource.removeXMLSinkObserver(StudentTreeSinkObserver);
treeStudent.builder.removeListener(StudentTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
StudentTreeDatasource = rdfService.GetDataSource(url);
StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeStudent.database.AddDataSource(StudentTreeDatasource);
StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver);
treeStudent.builder.addListener(StudentTreeListener);
//Detailfelder Deaktivieren
StudentDetailReset();
StudentDetailDisableFields(true);
StudentPrestudentDisableFields(true);
StudentKontoDisableFields(true);
StudentAkteDisableFields(true);
StudentIODisableFields(true);
StudentNoteDisableFields(true);
document.getElementById('student-kontakt').setAttribute('src','');
document.getElementById('student-betriebsmittel').setAttribute('src','');
StudentAbschlusspruefungDisableFields(true);
}
}
catch(e)
{
@@ -408,33 +412,36 @@ function onVerbandSelect(event)
// -------------- Lehrveranstaltung --------------------------
try
{
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe+'&orgform='+orgform+"&"+gettimestamp();
var treeLV=document.getElementById('lehrveranstaltung-tree');
try
if(stg_kz != "")
{
LvTreeDatasource.removeXMLSinkObserver(LvTreeSinkObserver);
treeLV.builder.removeListener(LvTreeListener);
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe+'&orgform='+orgform+"&"+gettimestamp();
var treeLV=document.getElementById('lehrveranstaltung-tree');
try
{
LvTreeDatasource.removeXMLSinkObserver(LvTreeSinkObserver);
treeLV.builder.removeListener(LvTreeListener);
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = treeLV.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeLV.database.RemoveDataSource(oldDatasources.getNext());
}
var rdfService1 = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
LvTreeDatasource = rdfService1.GetDataSource(url);
LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeLV.database.AddDataSource(LvTreeDatasource);
LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver);
treeLV.builder.addListener(LvTreeListener);
document.getElementById('lehrveranstaltung-toolbar-lehrauftrag').hidden=true;
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = treeLV.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeLV.database.RemoveDataSource(oldDatasources.getNext());
}
var rdfService1 = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
LvTreeDatasource = rdfService1.GetDataSource(url);
LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeLV.database.AddDataSource(LvTreeDatasource);
LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver);
treeLV.builder.addListener(LvTreeListener);
document.getElementById('lehrveranstaltung-toolbar-lehrauftrag').hidden=true;
}
catch(e)
{
@@ -700,7 +707,6 @@ function onLektorSelect(event)
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
try
{
//alert(stg_kz);
url = '<?php echo APP_ROOT; ?>rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&uid='+uid+'&'+gettimestamp();
var treeLV=document.getElementById('lehrveranstaltung-tree');
+358 -357
View File
@@ -1,357 +1,358 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
header("Content-type: application/vnd.mozilla.xul+xml");
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/benutzerberechtigung.class.php');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul.php"?>';
?>
<!DOCTYPE overlay >
<!-- [<?php require_once("../locale/de-AT/tempus.dtd"); ?>] -->
<overlay id="FasOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<tree id="tree-verband" onmouseup="onVerbandSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1" flags="dont-build-content"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,lvbgrpDDObserver);"
datasources="../rdf/lehrverbandsgruppe.rdf.php" ref="http://www.technikum-wien.at/lehrverbandsgruppe/alle-verbaende"
ondragdrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,verbandtreeDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,verbandtreeDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,verbandtreeDDObserver)"
>
<treecols>
<treecol id="bez" label="Bezeichnung" persist="hidden, width, ordinal" flex="15" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="stg" label="STG" flex="2" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stg_kz" label="KZ" flex="2" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="sem" label="Sem" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="ver" label="Ver" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="grp" label="Grp" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="gruppe" label="SpzGruppe" persist="hidden, width, ordinal" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="typ" label="Typ" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stsem" label="StSem" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-verband-col-orgform" label="orgform" flex="1" persist="hidden, width, ordinal" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#name"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#sem"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#ver"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#grp"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#gruppe"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#typ"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stsem"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#orgform"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox id="vbox-organisationseinheit">
<tree id="tree-organisationseinheit" onmouseup="onOrganisationseinheitSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/organisationseinheit_menue.rdf.php" ref="http://www.technikum-wien.at/organisationseinheit">
<treecols>
<treecol id="organisationseinheit-treecol-typ" label="Typ" flex="2" hidden="false"/>
<splitter class="tree-splitter"/>
<treecol id="organisationseinheit-treecol-bezeichnung" label="Bezeichnung" flex="3"/>
<splitter class="tree-splitter"/>
<treecol id="organisationseinheit-treecol-oe_kurzbz" label="oe_kurzbz" hidden="true" flex="1"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#typ"/>
<treecell label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#oe_kurzbz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="multi" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
ondrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragdrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,LektorFunktionDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,LektorFunktionDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,LektorFunktionDDObserver)"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
context="fasoverlay-lektor-tree-popup"
>
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vorname" label="Vorname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="studiengang_kz" label="Studiengangkz" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#studiengang_kz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<tree id="tree-menu-mitarbeiter" onselect="onMitarbeiterSelect();"
seltype="single" hidecolumnpicker="true" flex="1"
>
<treecols>
<treecol id="tree-menu-mitarbeiter-col-name" label="Filter" primary="true" flex="1"/>
<treecol id="tree-menu-mitarbeiter-col-filter" label="ColFilter" hidden="true" flex="1"/>
</treecols>
<treechildren>
<treeitem>
<treerow>
<treecell label="Alle"/>
<treecell label="Alle"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="FixAngestellte"/>
<treecell label="FixAngestellteAlle"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="FreiAngestellte"/>
<treecell label="FreiAngestellteAlle"/>
</treerow>
</treeitem>
<treeitem container="true" open="true">
<treerow>
<treecell label="Aktive"/>
<treecell label="Aktive"/>
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell label="FixAngestellte"/>
<treecell label="FixAngestellte"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="FreiAngestellte"/>
<treecell label="FreiAngestellte"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Studiengangsleiter"/>
<treecell label="Studiengangsleiter"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Institutsleiter"/>
<treecell label="Fachbereichsleiter"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Karenziert"/>
<treecell label="Karenziert"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="ohne Verwendung"/>
<treecell label="ohneVerwendung"/>
</treerow>
</treeitem>
</treechildren>
</treeitem>
<treeitem container="true" open="true">
<treerow>
<treecell label="Inaktive"/>
<treecell label="Inaktive"/>
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell label="mit Verwendung"/>
<treecell label="mitVerwendung"/>
</treerow>
</treeitem>
</treechildren>
</treeitem>
<?php
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
{
echo '
<treeitem container="true" open="true">
<treerow>
<treecell label="Vertrag"/>
<treecell label="Vertrag"/>
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell label="noch nicht retourniert"/>
<treecell label="VertragNochNichtRetour"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Habilitiert"/>
<treecell label="VertragHabilitiert"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="nicht Habilitiert"/>
<treecell label="VertragNichtHabilitiert"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="noch nicht gedruckt"/>
<treecell label="VertragNichtGedruckt"/>
</treerow>
</treeitem>
</treechildren>
</treeitem>
';
}
?>
</treechildren>
</tree>
<vbox id="vbox-main">
<popupset>
<menupopup id="fasoverlay-lektor-tree-popup">
<menuitem label="EMail senden (intern)" oncommand="LektorFunktionMail();" />
<menuitem label="EMail senden (privat)" oncommand="LektorFunktionMailPrivat();" />
<menuseparator />
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
</menupopup>
</popupset>
<tabbox id="tabbox-main" flex="3" orient="vertical">
<tabs id="main-content-tabs" orient="horizontal">
<?php
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz'))
{
echo '<tab id="tab-studenten" label="Studenten" onclick="ChangeTabsToVerband()"/>';
echo '<tab id="tab-lfvt" label="Lehrveranstaltungen" onclick="ChangeTabsToVerband()"/>';
}
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('mitarbeiter'))
{
echo '<tab id="tab-mitarbeiter" label="Mitarbeiter" onclick="document.getElementById(\'menu-content-tabs\').selectedItem=document.getElementById(\'tab-menu-mitarbeiter\');" />';
}
?>
<tab id="tab-notizen" label="Meine Notizen" />
</tabs>
<tabpanels id="tabpanels-main" flex="1">
<?php
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz'))
{
echo '
<!-- Studenten -->
<vbox id="studentenEditor" />
<!-- Lehrfachverteilung -->
<vbox id="LehrveranstaltungEditor" />
';
}
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('mitarbeiter'))
{
echo '<vbox id="MitarbeiterEditor" />';
}
?>
<vbox id="box-notiz">
<box class="Notiz" flex="1" id="box-notizen"/>
</vbox>
</tabpanels>
</tabbox>
</vbox>
</overlay>
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
header("Content-type: application/vnd.mozilla.xul+xml");
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/benutzerberechtigung.class.php');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul.php"?>';
?>
<!DOCTYPE overlay >
<!-- [<?php require_once("../locale/de-AT/tempus.dtd"); ?>] -->
<overlay id="FasOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<tree id="tree-verband" onmouseup="onVerbandSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1" flags="dont-build-content"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,lvbgrpDDObserver);"
datasources="../rdf/lehrverbandsgruppe.rdf.php" ref="http://www.technikum-wien.at/lehrverbandsgruppe/alle-verbaende"
ondragdrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,verbandtreeDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,verbandtreeDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,verbandtreeDDObserver)"
>
<treecols>
<treecol id="bez" label="Bezeichnung" persist="hidden, width, ordinal" flex="15" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="stg" label="STG" flex="2" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stg_kz" label="KZ" flex="2" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="sem" label="Sem" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="ver" label="Ver" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="grp" label="Grp" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="gruppe" label="SpzGruppe" persist="hidden, width, ordinal" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="typ" label="Typ" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stsem" label="StSem" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-verband-col-orgform" label="orgform" flex="1" persist="hidden, width, ordinal" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#name"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#sem"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#ver"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#grp"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#gruppe"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#typ"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stsem"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#orgform"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox id="vbox-organisationseinheit">
<tree id="tree-organisationseinheit" onmouseup="onOrganisationseinheitSelect(event);"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/organisationseinheit_menue.rdf.php" ref="http://www.technikum-wien.at/organisationseinheit">
<treecols>
<treecol id="organisationseinheit-treecol-typ" label="Typ" flex="2" hidden="false"/>
<splitter class="tree-splitter"/>
<treecol id="organisationseinheit-treecol-bezeichnung" label="Bezeichnung" flex="3"/>
<splitter class="tree-splitter"/>
<treecol id="organisationseinheit-treecol-oe_kurzbz" label="oe_kurzbz" hidden="true" flex="1"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#typ"/>
<treecell label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/organisationseinheit/rdf#oe_kurzbz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="multi" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
ondrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragdrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,LektorFunktionDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,LektorFunktionDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,LektorFunktionDDObserver)"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
context="fasoverlay-lektor-tree-popup"
>
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vorname" label="Vorname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="studiengang_kz" label="Studiengangkz" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#studiengang_kz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<tree id="tree-menu-mitarbeiter" onselect="onMitarbeiterSelect();"
seltype="single" hidecolumnpicker="true" flex="1"
>
<treecols>
<treecol id="tree-menu-mitarbeiter-col-name" label="Filter" primary="true" flex="1"/>
<treecol id="tree-menu-mitarbeiter-col-filter" label="ColFilter" hidden="true" flex="1"/>
</treecols>
<treechildren>
<treeitem>
<treerow>
<treecell label="Alle"/>
<treecell label="Alle"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="FixAngestellte"/>
<treecell label="FixAngestellteAlle"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="FreiAngestellte"/>
<treecell label="FreiAngestellteAlle"/>
</treerow>
</treeitem>
<treeitem container="true" open="true">
<treerow>
<treecell label="Aktive"/>
<treecell label="Aktive"/>
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell label="FixAngestellte"/>
<treecell label="FixAngestellte"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="FreiAngestellte"/>
<treecell label="FreiAngestellte"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Studiengangsleiter"/>
<treecell label="Studiengangsleiter"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Institutsleiter"/>
<treecell label="Fachbereichsleiter"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Karenziert"/>
<treecell label="Karenziert"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="ohne Verwendung"/>
<treecell label="ohneVerwendung"/>
</treerow>
</treeitem>
</treechildren>
</treeitem>
<treeitem container="true" open="true">
<treerow>
<treecell label="Inaktive"/>
<treecell label="Inaktive"/>
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell label="mit Verwendung"/>
<treecell label="mitVerwendung"/>
</treerow>
</treeitem>
</treechildren>
</treeitem>
<?php
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
{
echo '
<treeitem container="true" open="true">
<treerow>
<treecell label="Vertrag"/>
<treecell label="Vertrag"/>
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell label="noch nicht retourniert"/>
<treecell label="VertragNochNichtRetour"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="Habilitiert"/>
<treecell label="VertragHabilitiert"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="nicht Habilitiert"/>
<treecell label="VertragNichtHabilitiert"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="noch nicht gedruckt"/>
<treecell label="VertragNichtGedruckt"/>
</treerow>
</treeitem>
</treechildren>
</treeitem>
';
}
?>
</treechildren>
</tree>
<vbox id="vbox-main">
<popupset>
<menupopup id="fasoverlay-lektor-tree-popup">
<menuitem label="EMail senden (intern)" oncommand="LektorFunktionMail();" />
<menuitem label="EMail senden (privat)" oncommand="LektorFunktionMailPrivat();" />
<menuseparator />
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
</menupopup>
</popupset>
<tabbox id="tabbox-main" flex="3" orient="vertical">
<tabs id="main-content-tabs" orient="horizontal">
<?php
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz'))
{
echo '<tab id="tab-studenten" label="Studenten" onclick="ChangeTabsToVerband()"/>';
echo '<tab id="tab-lfvt" label="Lehrveranstaltungen" onclick="ChangeTabsToVerband()"/>';
}
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('mitarbeiter'))
{
echo '<tab id="tab-mitarbeiter" label="Mitarbeiter" onclick="document.getElementById(\'menu-content-tabs\').selectedItem=document.getElementById(\'tab-menu-mitarbeiter\');" />';
}
?>
<tab id="tab-notizen" label="Meine Notizen" />
</tabs>
<tabpanels id="tabpanels-main" flex="1">
<?php
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz'))
{
echo '
<!-- Studenten -->
<vbox id="studentenEditor" />
<!-- Lehrfachverteilung -->
<vbox id="LehrveranstaltungEditor" />
';
}
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('mitarbeiter'))
{
echo '<vbox id="MitarbeiterEditor" />';
}
?>
<vbox id="box-notiz">
<box class="Notiz" flex="1" id="box-notizen"/>
</vbox>
</tabpanels>
</tabbox>
</vbox>
</overlay>
+473 -473
View File
@@ -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;
}
@@ -1,322 +1,322 @@
<?php
/* Copyright (C) 2006 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: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$punktehidden = 'false';
else
$punktehidden = 'true';
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css\" ?>";
?>
<overlay id="LehrveranstaltungNoten"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<!-- Zeugnis Overlay -->
<vbox id="lehrveranstaltung-noten" style="margin:0px;" flex="1">
<popupset>
<menupopup id="lehrveranstaltung-noten-tree-popup">
<menuitem label="Entfernen" oncommand="LehrveranstaltungNotenDelete();" id="lehrveranstaltung-noten-tree-popup-delete" hidden="false"/>
<menuitem label="Freifaecher-Zertifikat erstellen" oncommand="LehrveranstaltungFFZertifikatPrint(event);" id="lehrveranstaltung-noten-tree-popup-ffzertifikat" hidden="false"/>
<menuitem label="Lehrveranstaltungszeugnis erstellen" oncommand="LehrveranstaltungLVZeugnisPrint(event);" id="lehrveranstaltung-noten-tree-popup-lvzeugnis" hidden="false"/>
</menupopup>
</popupset>
<hbox flex="1" style="margin-top: 10px;">
<vbox flex="1">
<label value="Zeugnis" />
<tree id="lehrveranstaltung-noten-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/zeugnisnote/liste"
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
onselect="LehrveranstaltungNotenAuswahl()"
context="lehrveranstaltung-noten-tree-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="lehrveranstaltung-noten-tree-student_vorname" label="Vorname" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_vorname" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_nachname" label="Nachname" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_nachname" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-note_bezeichnung" label="Note" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-uebernahmedatum" label="Uebernahmedatum" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#uebernahmedatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-note" label="Note" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_uid" label="Uid" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_uid" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiengang" label="Studiengang" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiengang_kz" label="Studiengang_kz" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang_kz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_semester" label="Semester" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-punkte" label="Punkte" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#uebernahmedatum"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
<vbox>
<spacer flex="1"/>
<button id="lehrveranstaltung-note-copy" label="&lt;=" style="font-weight: bold;" oncommand="LehrveranstaltungNotenMove();"/>
<spacer flex="1"/>
</vbox>
<vbox flex="1">
<label value="Lektor" />
<tree id="lehrveranstaltung-lvgesamtnoten-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/lvgesamtnote/liste"
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
flags="dont-build-content"
>
<treecols>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-student-vorname" label="Vorname" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_vorname"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-student-nachname" label="Nachname" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_nachname"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-note_bezeichnung" label="Note" flex="5" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-mitarbeiter_uid" label="MitarbeiterUID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#mitarbeiter_uid" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-freigabedatum" label="Freigabedatum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#freigabedatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-note" label="Note" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-student_uid" label="StudentUID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_uid" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-punkte" label="Punkte" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#punkte" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#mitarbeiter_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum_iso"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#freigabedatum"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
</hbox>
<hbox>
<label value="Note" control="lehrveranstaltung-noten-menulist-note"/>
<menulist id="lehrveranstaltung-noten-menulist-note" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
ref="http://www.technikum-wien.at/note/liste"
oncommand="LehrveranstaltungNoteSpeichern()">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Punkte" control="lehrveranstaltung-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
<textbox id="lehrveranstaltung-noten-textbox-punkte" oninput="LehrveranstaltungNotenPunkteChange()" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<spacer flex="1" />
<button id="lehrveranstaltung-noten-button-import" label="Notenimport" oncommand="LehrveranstaltungNotenImport();" />
</hbox>
<?php
if(defined('FAS_GESAMTNOTE_PRUEFUNGSHONORAR') && FAS_GESAMTNOTE_PRUEFUNGSHONORAR)
{
echo '
<hbox>
<groupbox id="lehrveranstaltung-noten-groupbox-pruefung">
<caption label="Prüfungshonorar" />
<vbox>
<hbox>
<label value="Mitarbeiter" control="lehrveranstaltung-noten-pruefung-menulist-mitarbeiter"/>
<menulist id="lehrveranstaltung-noten-pruefung-menulist-mitarbeiter"
datasources="'.APP_ROOT.'rdf/mitarbeiter.rdf.php" flex="1"
ref="http://www.technikum-wien.at/mitarbeiter/_alle"
minwidth="250"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"
label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname ( rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid )"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Prüfungstyp" control="lehrveranstaltung-noten-pruefung-menulist-vertragstyp"/>
<menulist id="lehrveranstaltung-noten-pruefung-menulist-vertragstyp"
datasources="'.APP_ROOT.'rdf/vertragstyp.rdf.php" flex="1"
ref="http://www.technikum-wien.at/vertragstyp"
minwidth="250"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_kurzbz"
label="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Satz pro Prüfung" control="lehrveranstaltung-noten-pruefung-textbox-satz"/>
<textbox id="lehrveranstaltung-noten-pruefung-textbox-satz" size="2" oninput="LehrveranstaltungNotenPruefungCalculate()"/>
<label value="Anzahl Prüfungen" control="lehrveranstaltung-noten-pruefung-textbox-anzahl"/>
<textbox id="lehrveranstaltung-noten-pruefung-textbox-anzahl" size="2" oninput="LehrveranstaltungNotenPruefungCalculate()"/>
<label value="0.0" id="lehrveranstaltung-noten-pruefung-label-gesamt"/>
<spacer flex="1"/>
</hbox>
<hbox>
<label value="Anmerkung" control="lehrveranstaltung-noten-pruefung-textbox-anmerkung"/>
<textbox id="lehrveranstaltung-noten-pruefung-textbox-anmerkung" size="60"/>
<button id="lehrveranstaltung-noten-pruefung-button-save" label="Speichern" oncommand="LehrveranstaltungNotenPruefungSave();" />
</hbox>
</vbox>
</groupbox>
</hbox>';
}
?>
</vbox>
</overlay>
<?php
/* Copyright (C) 2006 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: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$punktehidden = 'false';
else
$punktehidden = 'true';
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css\" ?>";
?>
<overlay id="LehrveranstaltungNoten"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<!-- Zeugnis Overlay -->
<vbox id="lehrveranstaltung-noten" style="margin:0px;" flex="1">
<popupset>
<menupopup id="lehrveranstaltung-noten-tree-popup">
<menuitem label="Entfernen" oncommand="LehrveranstaltungNotenDelete();" id="lehrveranstaltung-noten-tree-popup-delete" hidden="false"/>
<menuitem label="Freifaecher-Zertifikat erstellen" oncommand="LehrveranstaltungFFZertifikatPrint(event);" id="lehrveranstaltung-noten-tree-popup-ffzertifikat" hidden="false"/>
<menuitem label="Lehrveranstaltungszeugnis erstellen" oncommand="LehrveranstaltungLVZeugnisPrint(event);" id="lehrveranstaltung-noten-tree-popup-lvzeugnis" hidden="false"/>
</menupopup>
</popupset>
<hbox flex="1" style="margin-top: 10px;">
<vbox flex="1">
<label value="Zeugnis" />
<tree id="lehrveranstaltung-noten-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/zeugnisnote/liste"
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
onselect="LehrveranstaltungNotenAuswahl()"
context="lehrveranstaltung-noten-tree-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="lehrveranstaltung-noten-tree-student_vorname" label="Vorname" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_vorname" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_nachname" label="Nachname" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_nachname" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-note_bezeichnung" label="Note" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-uebernahmedatum" label="Uebernahmedatum" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#uebernahmedatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-note" label="Note" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-prestudent_id" label="PreID" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#prestudent_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiengang" label="Studiengang" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiengang_kz" label="Studiengang_kz" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang_kz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_semester" label="Semester" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-punkte" label="Punkte" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#uebernahmedatum"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#prestudent_id"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
<vbox>
<spacer flex="1"/>
<button id="lehrveranstaltung-note-copy" label="&lt;=" style="font-weight: bold;" oncommand="LehrveranstaltungNotenMove();"/>
<spacer flex="1"/>
</vbox>
<vbox flex="1">
<label value="Lektor" />
<tree id="lehrveranstaltung-lvgesamtnoten-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/lvgesamtnote/liste"
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
flags="dont-build-content"
>
<treecols>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-student-vorname" label="Vorname" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_vorname"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-student-nachname" label="Nachname" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_nachname"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-note_bezeichnung" label="Note" flex="5" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-mitarbeiter_uid" label="MitarbeiterUID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#mitarbeiter_uid" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-freigabedatum" label="Freigabedatum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#freigabedatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-note" label="Note" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-prestudent_id" label="PreID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#prestudent_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-punkte" label="Punkte" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#punkte" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#mitarbeiter_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#benotungsdatum_iso"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#freigabedatum"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#prestudent_id"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
</hbox>
<hbox>
<label value="Note" control="lehrveranstaltung-noten-menulist-note"/>
<menulist id="lehrveranstaltung-noten-menulist-note" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
ref="http://www.technikum-wien.at/note/liste"
oncommand="LehrveranstaltungNoteSpeichern()">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Punkte" control="lehrveranstaltung-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
<textbox id="lehrveranstaltung-noten-textbox-punkte" oninput="LehrveranstaltungNotenPunkteChange()" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<spacer flex="1" />
<button id="lehrveranstaltung-noten-button-import" label="Notenimport" oncommand="LehrveranstaltungNotenImport();" />
</hbox>
<?php
if(defined('FAS_GESAMTNOTE_PRUEFUNGSHONORAR') && FAS_GESAMTNOTE_PRUEFUNGSHONORAR)
{
echo '
<hbox>
<groupbox id="lehrveranstaltung-noten-groupbox-pruefung">
<caption label="Prüfungshonorar" />
<vbox>
<hbox>
<label value="Mitarbeiter" control="lehrveranstaltung-noten-pruefung-menulist-mitarbeiter"/>
<menulist id="lehrveranstaltung-noten-pruefung-menulist-mitarbeiter"
datasources="'.APP_ROOT.'rdf/mitarbeiter.rdf.php" flex="1"
ref="http://www.technikum-wien.at/mitarbeiter/_alle"
minwidth="250"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"
label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname ( rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid )"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Prüfungstyp" control="lehrveranstaltung-noten-pruefung-menulist-vertragstyp"/>
<menulist id="lehrveranstaltung-noten-pruefung-menulist-vertragstyp"
datasources="'.APP_ROOT.'rdf/vertragstyp.rdf.php" flex="1"
ref="http://www.technikum-wien.at/vertragstyp"
minwidth="250"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_kurzbz"
label="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Satz pro Prüfung" control="lehrveranstaltung-noten-pruefung-textbox-satz"/>
<textbox id="lehrveranstaltung-noten-pruefung-textbox-satz" size="2" oninput="LehrveranstaltungNotenPruefungCalculate()"/>
<label value="Anzahl Prüfungen" control="lehrveranstaltung-noten-pruefung-textbox-anzahl"/>
<textbox id="lehrveranstaltung-noten-pruefung-textbox-anzahl" size="2" oninput="LehrveranstaltungNotenPruefungCalculate()"/>
<label value="0.0" id="lehrveranstaltung-noten-pruefung-label-gesamt"/>
<spacer flex="1"/>
</hbox>
<hbox>
<label value="Anmerkung" control="lehrveranstaltung-noten-pruefung-textbox-anmerkung"/>
<textbox id="lehrveranstaltung-noten-pruefung-textbox-anmerkung" size="60"/>
<button id="lehrveranstaltung-noten-pruefung-button-save" label="Speichern" oncommand="LehrveranstaltungNotenPruefungSave();" />
</hbox>
</vbox>
</groupbox>
</hbox>';
}
?>
</vbox>
</overlay>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+35 -44
View File
@@ -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>.
*/
/* Erstellt diverse Dokumente
*
@@ -34,14 +35,13 @@ require_once('../include/xslfo2pdf/xslfo2pdf.php');
require_once('../include/fop.class.php');
require_once('../include/akte.class.php');
require_once('../include/vorlage.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/variable.class.php');
require_once('../include/addon.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/studiensemester.class.php');
require_once('../include/studienordnung.class.php');
var_dump("hihasifdhlasdhfl");// TODO EINE
$user = get_uid();
$db = new basis_db();
@@ -70,29 +70,16 @@ else
$xsl_stg_kz=$_GET['stg_kz'];
else
{
// Werden UIDs oder Prestudent_IDs uebergeben, wird die Vorlage des Studiengangs genommen
// Werden Prestudent_IDs uebergeben, wird die Vorlage des Studiengangs genommen
// in dem der 1. Studierende in der Liste ist
if(isset($_GET['uid']) && $_GET['uid']!='')
{
if(strstr($_GET['uid'],';'))
$uids = explode(';',$_GET['uid']);
else
$uids[1] = $_GET['uid'];
$student_obj = new student();
if($student_obj->load($uids[1]))
{
$xsl_stg_kz=$student_obj->studiengang_kz;
}
}
elseif(isset($_GET['prestudent_id']) && $_GET['prestudent_id']!='')
if(isset($_GET['prestudent_id']) && $_GET['prestudent_id']!='')
{
if(strstr($_GET['prestudent_id'],';'))
$prestudent_ids = explode(';',$_GET['prestudent_id']);
else
$prestudent_ids[1] = $_GET['prestudent_id'];
$prestudent_obj = new prestudent();
$prestudent_obj = new prestudent();var_dump($prestudent_ids[1]);// TODO EINE
if($prestudent_obj->load($prestudent_ids[1]))
{
$xsl_stg_kz=$prestudent_obj->studiengang_kz;
@@ -153,10 +140,10 @@ if(isset($_GET['mitarbeiter_uid']))
$params.='&mitarbeiter_uid='.urlencode($_GET['mitarbeiter_uid']);
if(isset($_GET['vertrag_id']))
{
foreach($_GET['vertrag_id'] as $id)
{
$params.='&vertrag_id[]='.urlencode($id);
}
foreach($_GET['vertrag_id'] as $id)
{
$params.='&vertrag_id[]='.urlencode($id);
}
}
if(isset($_GET['studienordnung_id']))
$params.='&studienordnung_id='.urlencode($_GET['studienordnung_id']);
@@ -243,7 +230,7 @@ if($xsl=='AccountInfo')
}
}
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE student_uid='".addslashes($uid)."'";
$qry = "SELECT uid, studiengang_kz FROM public.tbl_prestudent WHERE uid='".addslashes($uid)."'";
if($result_std = $db->db_query($qry))
{
if($db->db_num_rows($result_std)==1)
@@ -589,30 +576,34 @@ if (!isset($_REQUEST["archive"]))
else
{
// Archivieren von Dokumenten
$uid = $_REQUEST["uid"];
$prestudent_id = $_REQUEST["prestudent_id"];
$heute = date('Y-m-d');
$student=new student();
$student->load($uid);
$prestudent = new prestudent();var_dump($prestudent_id);// TODO EINE
$prestudent->load($prestudent_id);
$uid = $prestudent->getUid($prestudent_id);
if(isset($_REQUEST['ss']))
{
$ss = $_REQUEST["ss"];
$prestudent=new prestudent();
$prestudent->getLastStatus($student->prestudent_id,$ss);
$semester=$prestudent->ausbildungssemester;
$ps=new prestudent();
$ps->getLastStatus($prestudent->prestudent_id,$ss);
$semester=$ps->ausbildungssemester;
$query = "SELECT
tbl_studiengang.studiengang_kz, tbl_studentlehrverband.semester, tbl_studiengang.typ,
tbl_studiengang.kurzbz, tbl_person.person_id FROM tbl_person, tbl_benutzer,
tbl_studentlehrverband, tbl_studiengang
WHERE
tbl_studentlehrverband.student_uid = tbl_benutzer.uid
AND tbl_benutzer.person_id = tbl_person.person_id
AND tbl_studentlehrverband.studiengang_kz = tbl_studiengang.studiengang_kz
AND tbl_studentlehrverband.student_uid = ".$db->db_add_param($uid)."
AND tbl_studentlehrverband.studiensemester_kurzbz = ".$db->db_add_param($ss);
$query = "
SELECT
tbl_studiengang.studiengang_kz, tbl_studentlehrverband.semester, tbl_studiengang.typ,
tbl_studiengang.kurzbz, tbl_person.person_id
FROM
tbl_person, tbl_prestudent,
tbl_studentlehrverband, tbl_studiengang
WHERE
tbl_studentlehrverband.prestudent_id = tbl_prestudent.prestudent_id
AND tbl_prestudent.person_id = tbl_person.person_id
AND tbl_studentlehrverband.studiengang_kz = tbl_studiengang.studiengang_kz
AND tbl_studentlehrverband.prestudent_id = ".$db->db_add_param($ps->prestudent_id, FHC_INTEGER)."
AND tbl_studentlehrverband.studiensemester_kurzbz = ".$db->db_add_param($ss);
if($result = $db->db_query($query))
{
@@ -632,9 +623,9 @@ else
else
{
$studiengang = new studiengang();
$studiengang->load($student->studiengang_kz);
$studiengang_kz=$student->studiengang_kz;
$person_id = $student->person_id;
$studiengang->load($prestudent->studiengang_kz);
$studiengang_kz=$prestudent->studiengang_kz;
$person_id = $prestudent->person_id;
$titel = $vorlage->bezeichnung.'_'.$studiengang->kuerzel;
$bezeichnung = $vorlage->bezeichnung.'_'.$studiengang->kuerzel;
}
+117 -117
View File
@@ -1,117 +1,117 @@
<?php
/* Copyright (C) 2014 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.
*
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/studiensemester.class.php');
$uid=get_uid();
$error_msg='';
loadVariables($uid);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('basis/planner'))
die('Sie haben keine Berechtigung fuer diese Seite');
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
/*echo '<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>';*/
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/planner.css" type="text/css"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/planner.overlay.xul.php"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css" ?>';
echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
?>
<!DOCTYPE window [
<?php require("../locale/de-AT/planner.dtd"); ?>
]>
<window
id="planner"
title="&window.title; - &window.version;"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
orient="vertical"
width="800"
height="600"
persist="screenX screenY width height sizemode"
onload="onLoad()"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/planner.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jquery.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqSOAPClient.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqXMLUtils.js"></script>
<commandset id="maincommands">
<command id="menu-file-close:command" oncommand="closeWindow();"/>
<command id="menu-properties-studiensemester:command" oncommand="studiensemesterChange();"/>
</commandset>
<toolbox id="main-toolbox">
<menubar id="menu" >
<menu id="menu-file" label="&menu-file.label;" accesskey="&menu-file.accesskey;">
<menupopup id="menu-file-popup">
<menuitem
id = "menu-file-close"
key = "menu-file-close:key"
label = "&menu-file-close.label;"
command = "menu-file-close:command"
accesskey = "&menu-file-close.accesskey;"/>
</menupopup>
</menu>
</menubar>
</toolbox>
<hbox flex="1">
<tabbox id="tabbox-left" orient="vertical" flex="1">
<tabs orient="horizontal">
<tab id="tab-projekt" label="Projektmenue" />
<tab id="tab-ressource" label="Ressourcemenue" />
</tabs>
<tabpanels id="tabpanels-left" flex="1">
<vbox id="box-projektmenue" />
<vbox id="box-ressourcemenue" />
</tabpanels>
</tabbox>
<splitter collapse="before" persist="state">
<grippy />
</splitter>
<vbox id="vbox-main" flex="15" />
</hbox>
<statusbar id="status-bar" persist="collapsed">
<statusbarpanel class="statusbarpanel-iconic" id="logo-icon" />
<?php
if($rechte->isBerechtigt('system/developer'))
echo '<statusbarpanel label="'.DB_NAME.'"/>';
?>
<statusbarpanel id="statusbarpanel-text" label="<?php echo htmlspecialchars($error_msg); ?>" flex="4" crop="right" />
<statusbarpanel id="progress-panel" class="statusbarpanel-progress">
<progressmeter id="statusbar-progressmeter" class="progressmeter-statusbar" mode="determined" value="0%"/>
</statusbarpanel>
<statusbarpanel class="statusbarpanel-iconic" id="example-status" />
</statusbar>
</window>
<?php
/* Copyright (C) 2014 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.
*
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/studiensemester.class.php');
$uid=get_uid();
$error_msg='';
loadVariables($uid);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('basis/planner'))
die('Sie haben keine Berechtigung fuer diese Seite');
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
/*echo '<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>';*/
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/planner.css" type="text/css"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/planner.overlay.xul.php"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css" ?>';
echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
?>
<!DOCTYPE window [
<?php require("../locale/de-AT/planner.dtd"); ?>
]>
<window
id="planner"
title="&window.title; - &window.version;"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
orient="vertical"
width="800"
height="600"
persist="screenX screenY width height sizemode"
onload="onLoad()"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/planner.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<?php require_once("../include/meta/jquery.php"); ?>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqSOAPClient.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqXMLUtils.js"></script>
<commandset id="maincommands">
<command id="menu-file-close:command" oncommand="closeWindow();"/>
<command id="menu-properties-studiensemester:command" oncommand="studiensemesterChange();"/>
</commandset>
<toolbox id="main-toolbox">
<menubar id="menu" >
<menu id="menu-file" label="&menu-file.label;" accesskey="&menu-file.accesskey;">
<menupopup id="menu-file-popup">
<menuitem
id = "menu-file-close"
key = "menu-file-close:key"
label = "&menu-file-close.label;"
command = "menu-file-close:command"
accesskey = "&menu-file-close.accesskey;"/>
</menupopup>
</menu>
</menubar>
</toolbox>
<hbox flex="1">
<tabbox id="tabbox-left" orient="vertical" flex="1">
<tabs orient="horizontal">
<tab id="tab-projekt" label="Projektmenue" />
<tab id="tab-ressource" label="Ressourcemenue" />
</tabs>
<tabpanels id="tabpanels-left" flex="1">
<vbox id="box-projektmenue" />
<vbox id="box-ressourcemenue" />
</tabpanels>
</tabbox>
<splitter collapse="before" persist="state">
<grippy />
</splitter>
<vbox id="vbox-main" flex="15" />
</hbox>
<statusbar id="status-bar" persist="collapsed">
<statusbarpanel class="statusbarpanel-iconic" id="logo-icon" />
<?php
if($rechte->isBerechtigt('system/developer'))
echo '<statusbarpanel label="'.DB_NAME.'"/>';
?>
<statusbarpanel id="statusbarpanel-text" label="<?php echo htmlspecialchars($error_msg); ?>" flex="4" crop="right" />
<statusbarpanel id="progress-panel" class="statusbarpanel-progress">
<progressmeter id="statusbar-progressmeter" class="progressmeter-statusbar" mode="determined" value="0%"/>
</statusbarpanel>
<statusbarpanel class="statusbarpanel-iconic" id="example-status" />
</statusbar>
</window>
@@ -1,29 +1,29 @@
<?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>,
<?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
* Gerald Raab <erald.raab@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
* Gerald Raab <erald.raab@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
$projekt_ressource_id = $_GET["id"];
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/ressource.class.php');
@@ -47,25 +47,25 @@ else
$mitarbeiter_sel = ' selected="true"';
}
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"?>';
?>
<window id="window-ressource-neu" title="Projektressource verwalten"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jquery.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqSOAPClient.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqXMLUtils.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>content/functions.js.php"></script>
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"?>';
?>
<window id="window-ressource-neu" title="Projektressource verwalten"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jquery.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqSOAPClient.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>include/js/jqXMLUtils.js"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>content/functions.js.php"></script>
<script type="text/javascript" language="JavaScript" src="<?php echo APP_ROOT; ?>content/projekt/projekt_ressource.window.js.php"></script>
<script type="text/javascript">
var projekt_ressource_id = '<?php echo $projekt_ressource_id ?>';
@@ -76,23 +76,23 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
var ressource_id = '<?php echo $ressource_id; ?>';
var funktion_kurzbz = '<?php echo $funktion_kurzbz; ?>';
var beschreibung = '<?php echo $beschreibung; ?>';
</script>
<vbox>
<checkbox id="checkbox-ressource-neu" hidden="true"/>
<groupbox id="groupbox-ressource" flex="1">
<caption label="Details"/>
<grid id="grid-ressource-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
</script>
<vbox>
<checkbox id="checkbox-ressource-neu" hidden="true"/>
<groupbox id="groupbox-ressource" flex="1">
<caption label="Details"/>
<grid id="grid-ressource-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<row>
<label value="ProjektRessourceID" control="textbox-ressource-projekt_ressource_id"/>
<textbox id="textbox-ressource-projekt_ressource_id" value="<?php echo $projekt_ressource_id; ?>" disabled="true" />
<textbox id="textbox-ressource-projekt_ressource_id" value="<?php echo $projekt_ressource_id; ?>" disabled="true" />
</row>
<row>
<label value="Funktion" control="textbox-ressource-funktionradio"/>
@@ -100,18 +100,18 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
<radio id="leitung" label="Leitung" <?php echo $leitung_sel; ?>/>
<radio id="mitarbeiter" label="Mitarbeiter" <?php echo $mitarbeiter_sel; ?>/>
</radiogroup>
</row>
<row>
<label value="Aufwand" control="textbox-ressource-aufwand"/>
<textbox id="textbox-ressource-aufwand" value="<?php echo $aufwand; ?>" maxlength="256"/>
</row>
</rows>
</grid>
<hbox>
<spacer flex="1" />
<button id="button-ressource-speichern" oncommand="updateProjektRessource()" label="Speichern" />
</hbox>
</groupbox>
</vbox>
</window>
<row>
<label value="Aufwand" control="textbox-ressource-aufwand"/>
<textbox id="textbox-ressource-aufwand" value="<?php echo $aufwand; ?>" maxlength="256"/>
</row>
</rows>
</grid>
<hbox>
<spacer flex="1" />
<button id="button-ressource-speichern" oncommand="updateProjektRessource()" label="Speichern" />
</hbox>
</groupbox>
</vbox>
</window>
File diff suppressed because it is too large Load Diff
+6 -6
View File
@@ -49,8 +49,8 @@ if(isset($_GET['typ']) && $_GET['typ']=='projekt')
}
elseif(isset($_GET['typ']) && $_GET['typ']=='task')
{
$ressource->getTaskRessoureDatum($datum, $endedatum, $projekt_kurzbz);
$typ = 'task';
$ressource->getTaskRessoureDatum($datum, $endedatum, $projekt_kurzbz);
$typ = 'task';
$anzahl_warnung = 6;
}
else
@@ -138,14 +138,14 @@ foreach($ressource_arr as $bezeichnung)
$title .= $phase->bezeichnung.'('.$phase->projekt_kurzbz.')';
$beistrich=true;
}
elseif($typ=='task' && $row->projekttask_id!='')
{
elseif($typ=='task' && $row->projekttask_id!='')
{
$anzahl++;
$showrow=true;
$task = new projekttask();
$task->load($row->projekttask_id);
$title.=$task->bezeichnung;
$beistrich=true;
$title.=$task->bezeichnung;
$beistrich=true;
}
if($typ!='projekt' && $row->aufwand!='' && $row->aufwand!=0)
{
+4 -5
View File
@@ -15,7 +15,8 @@
* 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>
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/studiengang.class.php');
@@ -140,8 +141,7 @@ if($result_zgv = $db->db_query($qry))
FROM
public.tbl_prestudent a
JOIN public.tbl_person USING(person_id)
JOIN public.tbl_student USING(prestudent_id)
WHERE
WHERE
bismelden=true
AND EXISTS (
SELECT
@@ -150,7 +150,6 @@ if($result_zgv = $db->db_query($qry))
public.tbl_prestudentstatus
WHERE
status_kurzbz='Student'
AND prestudent_id=a.prestudent_id
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
)
AND a.studiengang_kz=".$db->db_add_param($studiengang_kz,FHC_INTEGER)."
@@ -188,4 +187,4 @@ echo '</tbody>
</table>';
echo '</body>
</html>';
?>
?>
+141 -140
View File
@@ -1,140 +1,141 @@
<?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>.
*/
/**
* Exportiert die Studentendaten in ein Excel File.
* Die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen werden immer dazugehaengt
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/Excel/excel.php');
$db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
function writecol($zeile, $i, $content)
{
global $worksheet, $maxlength;
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
}
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
$maxlength= array();
$zeile=1;
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Abschlusspruefung". "_" . date("d_m_Y") . ".xls");
$workbook->setVersion(8);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Abschlusspruefung");
$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');
$stsem = new studiensemester();
$stsem->load($studiensemester_kurzbz);
//Zeilenueberschriften ausgeben
$headline=array('Titelpre','Vorname','Nachname','Titelpost','Vorsitz','Pruefer1','Pruefer2','Pruefer3',
'Abschlussbeurteilung','Typ','Datum','Sponsion','Anmerkung');
$i=0;
foreach ($headline as $title)
{
$worksheet->write(0,$i,$title, $format_bold);
$maxlength[$i]=mb_strlen($title);
$i++;
}
// Daten holen
$qry = "SELECT
titelpre, vorname, nachname, titelpost,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=vorsitz) as vorsitz,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer1) as pruefer1,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer2) as pruefer2,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer3) as pruefer3,
(SELECT bezeichnung FROM lehre.tbl_abschlussbeurteilung WHERE tbl_abschlussbeurteilung.abschlussbeurteilung_kurzbz=tbl_abschlusspruefung.abschlussbeurteilung_kurzbz) as bezeichnung, tbl_pruefungstyp.beschreibung, datum, sponsion, tbl_abschlusspruefung.anmerkung
FROM
lehre.tbl_abschlusspruefung, public.tbl_studentlehrverband, public.tbl_benutzer, public.tbl_person,
lehre.tbl_pruefungstyp
WHERE
tbl_abschlusspruefung.student_uid=public.tbl_studentlehrverband.student_uid AND
tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
tbl_studentlehrverband.studiengang_kz='".addslashes($studiengang_kz)."' AND
tbl_benutzer.uid = tbl_abschlusspruefung.student_uid AND
tbl_person.person_id = tbl_benutzer.person_id AND
tbl_abschlusspruefung.pruefungstyp_kurzbz = tbl_pruefungstyp.pruefungstyp_kurzbz
";
if($semester!='')
$qry.= " AND tbl_studentlehrverband.semester='".addslashes($semester)."'";
$qry.=' ORDER BY nachname, vorname';
$zeile=1;
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$i=0;
writecol($zeile, $i++, $row->titelpre);
writecol($zeile, $i++, $row->vorname);
writecol($zeile, $i++, $row->nachname);
writecol($zeile, $i++, $row->titelpost);
writecol($zeile, $i++, $row->vorsitz);
writecol($zeile, $i++, $row->pruefer1);
writecol($zeile, $i++, $row->pruefer2);
writecol($zeile, $i++, $row->pruefer3);
writecol($zeile, $i++, $row->bezeichnung);
writecol($zeile, $i++, $row->beschreibung);
writecol($zeile, $i++, $row->datum);
writecol($zeile, $i++, $row->sponsion);
writecol($zeile, $i++, $row->anmerkung);
$zeile++;
}
}
else
die('Fehler in Qry: '.$qry);
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Exportiert die Studentendaten in ein Excel File.
* Die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen werden immer dazugehaengt
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/Excel/excel.php');
$db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
function writecol($zeile, $i, $content)
{
global $worksheet, $maxlength;
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
}
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
$maxlength= array();
$zeile=1;
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Abschlusspruefung". "_" . date("d_m_Y") . ".xls");
$workbook->setVersion(8);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Abschlusspruefung");
$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');
$stsem = new studiensemester();
$stsem->load($studiensemester_kurzbz);
//Zeilenueberschriften ausgeben
$headline=array('Titelpre','Vorname','Nachname','Titelpost','Vorsitz','Pruefer1','Pruefer2','Pruefer3',
'Abschlussbeurteilung','Typ','Datum','Sponsion','Anmerkung');
$i=0;
foreach ($headline as $title)
{
$worksheet->write(0,$i,$title, $format_bold);
$maxlength[$i]=mb_strlen($title);
$i++;
}
// Daten holen
$qry = "SELECT
titelpre, vorname, nachname, titelpost,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=vorsitz) as vorsitz,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer1) as pruefer1,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer2) as pruefer2,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer3) as pruefer3,
(SELECT bezeichnung FROM lehre.tbl_abschlussbeurteilung WHERE tbl_abschlussbeurteilung.abschlussbeurteilung_kurzbz=tbl_abschlusspruefung.abschlussbeurteilung_kurzbz) as bezeichnung, tbl_pruefungstyp.beschreibung, datum, sponsion, tbl_abschlusspruefung.anmerkung
FROM
lehre.tbl_abschlusspruefung, public.tbl_studentlehrverband, public.tbl_prestudent, public.tbl_person,
lehre.tbl_pruefungstyp
WHERE
tbl_abschlusspruefung.prestudent_id=public.tbl_studentlehrverband.prestudent_id AND
tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
tbl_studentlehrverband.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
tbl_prestudent.prestudent_id = tbl_abschlusspruefung.prestudent_id AND
tbl_person.person_id = tbl_prestudent.person_id AND
tbl_abschlusspruefung.pruefungstyp_kurzbz = tbl_pruefungstyp.pruefungstyp_kurzbz
";
if($semester!='')
$qry.= " AND tbl_studentlehrverband.semester='".addslashes($semester)."'";
$qry.=' ORDER BY nachname, vorname';
$zeile=1;
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$i=0;
writecol($zeile, $i++, $row->titelpre);
writecol($zeile, $i++, $row->vorname);
writecol($zeile, $i++, $row->nachname);
writecol($zeile, $i++, $row->titelpost);
writecol($zeile, $i++, $row->vorsitz);
writecol($zeile, $i++, $row->pruefer1);
writecol($zeile, $i++, $row->pruefer2);
writecol($zeile, $i++, $row->pruefer3);
writecol($zeile, $i++, $row->bezeichnung);
writecol($zeile, $i++, $row->beschreibung);
writecol($zeile, $i++, $row->datum);
writecol($zeile, $i++, $row->sponsion);
writecol($zeile, $i++, $row->anmerkung);
$zeile++;
}
}
else
die('Fehler in Qry: '.$qry);
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
+1 -1
View File
@@ -246,7 +246,7 @@ if($format=='xls')
if(!isset($stunden['w']))
$stunden['w']=0;
$summe_w+=$stunden['w'];
if(!isset($summe_fb[$fb]['w']))
if(!isset($summe_fb[$fb]['w']))
$summe_fb[$fb]['w']=0;
$summe_fb[$fb]['w']+=$stunden['w'];
$worksheet->write($zeile,$fachbereiche[$fb]+1,$stunden['w'],$format_data);
+145 -143
View File
@@ -1,143 +1,145 @@
<?php
/* Copyright (C) 2004 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>.
*/
/*
* Generiert eine Anwesenheitsliste mit Fotos
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/akte.class.php');
$stg_obj = new studiengang();
$stg_obj->getAll('typ, kurzbzlang', false);
//Uebergabeparameter abpruefen
if(isset($_GET['stg'])) //Studiengang
{
if(is_numeric($_GET['stg']))
$stg=$_GET['stg'];
else
die('Fehler bei der Parameteruebergabe');
}
else
$stg='';
if(isset($_GET['sem'])) //Semester
{
if(is_numeric($_GET['sem']))
$sem=$_GET['sem'];
else
die('Fehler bei der Parameteruebergabe');
}
else
$sem='';
if(isset($_GET['verband'])) //Verband
$verband=$_GET['verband'];
else
$verband='';
if(isset($_GET['gruppe'])) //Gruppe
$gruppe=$_GET['gruppe'];
else
$gruppe='';
if(isset($_GET['gruppe_kurzbz'])) //Einheit
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
$gruppe_kurzbz='';
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid = $_GET['lvid'];
else
die('Fehler bei der Parameteruebergabe');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
die('Studiensemester wurde nicht uebergeben');
$lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:'');
if(isset($_GET['prestudent_id']))
{
$ids = explode(';',$_GET['prestudent_id']);
$idstring='';
foreach ($ids as $id)
{
if($idstring!='')
$idstring.=',';
$idstring.="'$id'";
}
$qry = "SELECT distinct on(person_id) foto, vorname, nachname, person_id, prestudent_id, tbl_prestudent.studiengang_kz, semester, verband, gruppe FROM public.tbl_person JOIN public.tbl_prestudent USING(person_id) LEFT JOIN public.tbl_student USING(prestudent_id) WHERE prestudent_id in($idstring)";
}
else
{
$qry = "SELECT
distinct on(person_id) foto, vorname, nachname, person_id, tbl_studentlehrverband.studiengang_kz, tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid)
WHERE
lehrveranstaltung_id='".addslashes($lvid)."' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."' AND
tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."'";
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'";
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Anwesenheitsliste</title>
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head><body><h2>Studentenliste - '.date('d.m.Y').'</h2><br>';
$db = new basis_db();
if($result = $db->db_query($qry))
{
echo "<table class='liste table-autosort:1 table-stripeclass:alternate table-autostripe'>";
echo '<thead><tr class="liste"><th>Foto</th><th class="table-sortable:default">Nachname</th><th class="table-sortable:default">Vorname</th><th class="table-sortable:default">Gruppe</th></tr></thead><tbody>';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
if($row->foto!='')
{
$akte = new akte();
$akte->getAkten($row->person_id, 'Lichtbil');
echo "<td><a href='../akte.php?id=".$akte->result[0]->akte_id."'><img src='../bild.php?src=person&person_id=$row->person_id'></a></td>";
}
else
echo "<td></td>";
echo "<td>$row->nachname</td>";
echo "<td class='table-sortable:default'>$row->vorname</td>";
echo "<td class='table-sortable:default'>".$stg_obj->kuerzel_arr[$row->studiengang_kz]."-$row->semester$row->verband$row->gruppe</td>";
echo '</tr>';
}
echo '</tbody></table>';
}
echo '</body></html>';
?>
<?php
/* Copyright (C) 2004 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/*
* Generiert eine Anwesenheitsliste mit Fotos
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/akte.class.php');
$stg_obj = new studiengang();
$stg_obj->getAll('typ, kurzbzlang', false);
//Uebergabeparameter abpruefen
if(isset($_GET['stg'])) //Studiengang
{
if(is_numeric($_GET['stg']))
$stg=$_GET['stg'];
else
die('Fehler bei der Parameteruebergabe');
}
else
$stg='';
if(isset($_GET['sem'])) //Semester
{
if(is_numeric($_GET['sem']))
$sem=$_GET['sem'];
else
die('Fehler bei der Parameteruebergabe');
}
else
$sem='';
if(isset($_GET['verband'])) //Verband
$verband=$_GET['verband'];
else
$verband='';
if(isset($_GET['gruppe'])) //Gruppe
$gruppe=$_GET['gruppe'];
else
$gruppe='';
if(isset($_GET['gruppe_kurzbz'])) //Einheit
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
$gruppe_kurzbz='';
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid = $_GET['lvid'];
else
die('Fehler bei der Parameteruebergabe');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
die('Studiensemester wurde nicht uebergeben');
$lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:'');
if(isset($_GET['prestudent_id']))
{
$ids = explode(';',$_GET['prestudent_id']);
$idstring='';
foreach ($ids as $id)
{
if($idstring!='')
$idstring.=',';
$idstring.="'$id'";
}
$qry = "SELECT distinct on(person_id) foto, vorname, nachname, person_id, prestudent_id, tbl_prestudent.studiengang_kz, semester, verband, gruppe FROM public.tbl_person JOIN public.tbl_prestudent USING(person_id) WHERE prestudent_id in($idstring)";
}
else
{
$qry = "SELECT
distinct on(person_id) foto, vorname, nachname, person_id, tbl_studentlehrverband.studiengang_kz, tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id)
JOIN public.tbl_prestudent ON(tbl_prestudent.uid=tbl_benutzer.uid)
LEFT JOIN public.tbl_studentlehrverband USING(prestudent_id)
WHERE
lehrveranstaltung_id='".addslashes($lvid)."' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."' AND
tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."'";
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'";
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Anwesenheitsliste</title>
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head><body><h2>Studentenliste - '.date('d.m.Y').'</h2><br>';
$db = new basis_db();
if($result = $db->db_query($qry))
{
echo "<table class='liste table-autosort:1 table-stripeclass:alternate table-autostripe'>";
echo '<thead><tr class="liste"><th>Foto</th><th class="table-sortable:default">Nachname</th><th class="table-sortable:default">Vorname</th><th class="table-sortable:default">Gruppe</th></tr></thead><tbody>';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
if($row->foto!='')
{
$akte = new akte();
$akte->getAkten($row->person_id, 'Lichtbil');
echo "<td><a href='../akte.php?id=".$akte->result[0]->akte_id."'><img src='../bild.php?src=person&person_id=$row->person_id'></a></td>";
}
else
echo "<td></td>";
echo "<td>$row->nachname</td>";
echo "<td class='table-sortable:default'>$row->vorname</td>";
echo "<td class='table-sortable:default'>".$stg_obj->kuerzel_arr[$row->studiengang_kz]."-$row->semester$row->verband$row->gruppe</td>";
echo '</tr>';
}
echo '</tbody></table>';
}
echo '</body></html>';
?>
File diff suppressed because it is too large Load Diff
+6 -5
View File
@@ -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>.
*/
/**
* Exportiert eine Liste der Absolventen in ein Excel File.
@@ -87,9 +88,9 @@ if($studiengang_kz!='')
// Daten holen
$qry = "SELECT DISTINCT nachname, vorname, prestudent_id, public.get_rolle_prestudent(prestudent_id, NULL) AS status, tbl_studentlehrverband.semester FROM
public.tbl_person JOIN public.tbl_prestudent USING(person_id)
LEFT JOIN public.tbl_student USING (prestudent_id)
LEFT JOIN public.tbl_studentlehrverband USING (student_uid)
public.tbl_person
JOIN public.tbl_prestudent USING(person_id)
LEFT JOIN public.tbl_studentlehrverband USING (prestudent_id)
WHERE
prestudent_id IN(
SELECT
@@ -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>.
*/
/**
* Erstellt ein Excel File mit einer Uebersicht der
@@ -157,7 +158,7 @@ if($result = $db->db_query($qry))
FROM lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
public.tbl_benutzer, lehre.tbl_projektarbeit, campus.vw_student
WHERE tbl_projektbetreuer.person_id=tbl_benutzer.person_id AND tbl_benutzer.uid=".$db->db_add_param($uid)." AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND student_uid=vw_student.uid
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND tbl_projektarbeit.prestudent_id=vw_student.prestudent_id
AND tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
@@ -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>.
*/
/**
* Erstellt ein Excel File mit einer Uebersicht der
@@ -294,7 +295,7 @@ if($result_stg = $db->db_query($qry_stg))
FROM lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
public.tbl_benutzer, lehre.tbl_projektarbeit, campus.vw_student
WHERE tbl_projektbetreuer.person_id=tbl_benutzer.person_id AND tbl_benutzer.uid=".$db->db_add_param($uid)." AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND student_uid=vw_student.uid
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND tbl_projektarbeit.prestudent_id=vw_student.prestudent_id
AND tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
+12 -7
View File
@@ -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');
@@ -262,12 +263,13 @@ if($studiengang_kz!='')
$qry = "SELECT
*
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, public.tbl_prestudent
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_person.person_id=tbl_projektbetreuer.person_id AND
tbl_prestudent.prestudent_id=tbl_projektarbeit.prestudent_id AND
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0
@@ -281,12 +283,13 @@ elseif($mitarbeiter_uid!='')
$qry = "SELECT
*
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, public.tbl_prestudent
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_person.person_id=tbl_projektbetreuer.person_id AND
tbl_prestudent.prestudent_id=tbl_projektarbeit.prestudent_id AND
tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0
@@ -297,7 +300,7 @@ elseif($oe_kurzbz!='')
$qry = "SELECT
*
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrveranstaltung as lehrfach
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrveranstaltung as lehrfach, public.tbl_prestudent, public.tbl_benutzer
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
@@ -306,7 +309,9 @@ elseif($oe_kurzbz!='')
tbl_person.person_id=tbl_projektbetreuer.person_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND
lehrfach.oe_kurzbz=".$db->db_add_param($oe_kurzbz)." AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0 AND
lehre.tbl_projektarbeit.prestudent_id = public.tbl_prestudent.prestudent_id AND
public.tbl_benutzer.uid = public.tbl_prestudent.uid
";
}
else
@@ -341,7 +346,7 @@ if($result = $db->db_query($qry))
//echo '<td>&nbsp;</td>';
echo "<td align='right'>".number_format($row->stunden,2)."</td>";
$benutzer = new benutzer();
$benutzer->load($row->student_uid);
$benutzer->load($row->uid);
echo "<td>$benutzer->nachname $benutzer->vorname</td>";
echo "<td>$row->nachname $row->vorname</td>";
echo "<td align='right'>".number_format(($row->stundensatz*$row->faktor*$row->stunden),2,',','.')." €</td>";
+471 -468
View File
@@ -1,468 +1,471 @@
<?php
/* Copyright (C) 2008 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
*/
// Erstellt ein Excel mit den Kosten der Lehrveranstaltungen
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/mitarbeiter.class.php');
$user = get_uid();
loadVariables($user);
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
else if(isset($_POST['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
else
die('studiensemester_kurzbz muss uebergeben werden');
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz='';
if(isset($_GET['semester']))
$semester = $_GET['semester'];
else
$semester='';
if(isset($_GET['oe_kurzbz']))
$oe_kurzbz = $_GET['oe_kurzbz'];
else
$oe_kurzbz = '';
if(isset($_GET['uid']))
$uid = $_GET['uid'];
else
$uid = '';
$db = new basis_db();
$stg_obj = new studiengang();
$stg_obj->getAll('typ, kurzbz', false);
$qry = "
SELECT (SELECT nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as koordinator,
(SELECT vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as vorname,
lehrfach.bezeichnung as lf_bezeichnung, tbl_lehrveranstaltung.studiengang_kz,
tbl_fachbereich.fachbereich_kurzbz as fachbereich_kurzbz, tbl_lehreinheitmitarbeiter.mitarbeiter_uid,
tbl_lehrveranstaltung.semester as lv_semester, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheitmitarbeiter.faktor,
tbl_lehreinheitmitarbeiter.stundensatz,
tbl_lehreinheitmitarbeiter.semesterstunden lemss, tbl_lehreinheitmitarbeiter.planstunden,
tbl_lehreinheit.stundenblockung, tbl_lehreinheit.wochenrythmus, tbl_lehreinheit.raumtyp, tbl_lehreinheit.raumtypalternativ,
tbl_lehreinheitmitarbeiter.anmerkung
,tbl_lehreinheit.studiensemester_kurzbz
,tbl_lehrveranstaltung.ects
,tbl_lehrveranstaltung.semesterstunden
,tbl_lehrveranstaltung.semesterstunden as sws
,tbl_lehrveranstaltung.lehrform_kurzbz
,tbl_lehrveranstaltung.lehrveranstaltung_id
,(SELECT nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=(SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehre.tbl_lehreinheitmitarbeiter.lehreinheit_id=lehre.tbl_lehreinheit.lehreinheit_id and lehre.tbl_lehreinheitmitarbeiter.lehrfunktion_kurzbz='LV-Leitung' LIMIT 1)
)as lv_leitung
,(SELECT vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=(SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehre.tbl_lehreinheitmitarbeiter.lehreinheit_id=lehre.tbl_lehreinheit.lehreinheit_id and lehre.tbl_lehreinheitmitarbeiter.lehrfunktion_kurzbz='LV-Leitung' LIMIT 1)
)as lv_leitung_vorname
,(SELECT bezeichnung FROM lehre.tbl_lehrform WHERE lehre.tbl_lehrform.lehrform_kurzbz=tbl_lehrveranstaltung.lehrform_kurzbz LIMIT 1) as lv_type
,tbl_lehrveranstaltung.lehrform_kurzbz
FROM
lehre.tbl_lehrveranstaltung
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
LEFT JOIN public.tbl_fachbereich ON(lehrfach.oe_kurzbz=tbl_fachbereich.oe_kurzbz)
WHERE
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
# ,(SELECT lv_semesterstunden FROM campus.vw_lehreinheit WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id and lehreinheit_id=lehre.tbl_lehreinheit.lehreinheit_id and studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' LIMIT 1) as sws
if($studiengang_kz!='')
$qry.=" AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if($oe_kurzbz!='')
$qry.=" AND tbl_fachbereich.oe_kurzbz=".$db->db_add_param($oe_kurzbz);
if($semester!='')
$qry.=" AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester, FHC_INTEGER);
if($uid!='')
$qry.=" AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=".$db->db_add_param($uid);
$qry.=" ORDER BY tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.bezeichnung";
/*
// exit($qry);
if($result = $db->db_query($qry))
{
$row = $db->db_fetch_object($result);
var_dump($row);
}
else
echo 'nix<br>';
var_dump($stg_obj);
exit;
*/
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("LVPlanung.xls");
$workbook->setVersion(8);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet($studiensemester_kurzbz);
$worksheet->setInputEncoding('utf-8');
//Formate Definieren
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_number =& $workbook->addFormat();
$format_number->setNumFormat('0,0.00');
$format_number_bold =& $workbook->addFormat();
$format_number_bold->setNumFormat('0,0.00');
$format_number_bold->setBold();
$zeile=0;
$spalte=0;
$worksheet->write($zeile,$spalte,"Studiengang", $format_bold);
$maxlength[$spalte]=11;
$worksheet->write($zeile,++$spalte,"Institut", $format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,"Koordinator", $format_bold);
$maxlength[$spalte]=11;
$worksheet->write($zeile,++$spalte,"Lektor", $format_bold);
$maxlength[$spalte]=6;
$worksheet->write($zeile,++$spalte,"Lehrfach", $format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,"Semester", $format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,"Gruppen", $format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,"Stunden", $format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,"Kosten", $format_bold);
$maxlength[$spalte]=6;
$worksheet->write($zeile,++$spalte,"Planstunden", $format_bold);
$maxlength[$spalte]=11;
$worksheet->write($zeile,++$spalte,"Stundenblockung", $format_bold);
$maxlength[$spalte]=15;
$worksheet->write($zeile,++$spalte,"Wochenrythmus", $format_bold);
$maxlength[$spalte]=13;
$worksheet->write($zeile,++$spalte,"Raum", $format_bold);
$maxlength[$spalte]=4;
$worksheet->write($zeile,++$spalte,"Raum alternativ", $format_bold);
$maxlength[$spalte]=15;
$worksheet->write($zeile,++$spalte,"Anmerkung", $format_bold);
$maxlength[$spalte]=9;
// Neu 13.11.2009 sequens
$worksheet->write($zeile,++$spalte,"LV-Leitung", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"LV-Nummer", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"ALVS", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"ECTS", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"LV-Typ", $format_bold);
$maxlength[$spalte]=9;
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$spalte=0;
$zeile++;
$mitarbeiter = new mitarbeiter();
$mitarbeiter->load($row->mitarbeiter_uid);
//Studiengang
$worksheet->write($zeile,$spalte,$stg_obj->kuerzel_arr[$row->studiengang_kz]);
if($maxlength[$spalte]<mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]))
$maxlength[$spalte]=mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]);
//Fachbereich
$worksheet->write($zeile,++$spalte,$row->fachbereich_kurzbz);
if($maxlength[$spalte]<mb_strlen($row->fachbereich_kurzbz))
$maxlength[$spalte]=mb_strlen($row->fachbereich_kurzbz);
//Koordinator
$worksheet->write($zeile,++$spalte,$row->koordinator.' '.$row->vorname);
if($maxlength[$spalte]<mb_strlen($row->koordinator.' '.$row->vorname))
$maxlength[$spalte]=mb_strlen($row->koordinator.' '.$row->vorname);
//Lektor
$worksheet->write($zeile,++$spalte,$mitarbeiter->nachname.' '.$mitarbeiter->vorname);
if($maxlength[$spalte]<mb_strlen($mitarbeiter->nachname.' '.$mitarbeiter->vorname))
$maxlength[$spalte]=mb_strlen($mitarbeiter->nachname.' '.$mitarbeiter->vorname);
//Lehrfach
$worksheet->write($zeile,++$spalte,$row->lf_bezeichnung);
if($maxlength[$spalte]<mb_strlen($row->lf_bezeichnung))
$maxlength[$spalte]=mb_strlen($row->lf_bezeichnung);
//Semester
$worksheet->write($zeile,++$spalte,$row->lv_semester);
if($maxlength[$spalte]<mb_strlen($row->lv_semester))
$maxlength[$spalte]=mb_strlen($row->lv_semester);
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
$result_gruppe = $db->db_query($qry);
$gruppe = '';
while($row_gruppe = $db->db_fetch_object($result_gruppe))
{
if($gruppe!='')
$gruppe.=', ';
if($row_gruppe->gruppe_kurzbz!='')
$gruppe.=$row_gruppe->gruppe_kurzbz;
else
$gruppe.=trim($stg_obj->kuerzel_arr[$row_gruppe->studiengang_kz].'-'.$row_gruppe->semester.$row_gruppe->verband.$row_gruppe->gruppe);
}
//Gruppen
$worksheet->write($zeile,++$spalte,$gruppe);
if($maxlength[$spalte]<mb_strlen($gruppe))
$maxlength[$spalte]=mb_strlen($gruppe);
//Semesterstunden
$worksheet->write($zeile,++$spalte,$row->lemss);
if($maxlength[$spalte]<mb_strlen($row->lemss))
$maxlength[$spalte]=mb_strlen($row->lemss);
$kosten = ($row->stundensatz*$row->lemss*$row->faktor);
//Kosten
$worksheet->write($zeile,++$spalte,$kosten);
if($maxlength[$spalte]<mb_strlen($kosten))
$maxlength[$spalte]=mb_strlen($kosten);
//Planstunden
$worksheet->write($zeile,++$spalte,$row->planstunden);
if($maxlength[$spalte]<mb_strlen($row->planstunden))
$maxlength[$spalte]=mb_strlen($row->planstunden);
//Stundenblockung
$worksheet->write($zeile,++$spalte,$row->stundenblockung);
if($maxlength[$spalte]<mb_strlen($row->stundenblockung))
$maxlength[$spalte]=mb_strlen($row->stundenblockung);
//Wochentrythmus
$worksheet->write($zeile,++$spalte,$row->wochenrythmus);
if($maxlength[$spalte]<mb_strlen($row->wochenrythmus))
$maxlength[$spalte]=mb_strlen($row->wochenrythmus);
//Raumtyp
$worksheet->write($zeile,++$spalte,$row->raumtyp);
if($maxlength[$spalte]<mb_strlen($row->raumtyp))
$maxlength[$spalte]=mb_strlen($row->raumtyp);
//Raumtypalternativ
$worksheet->write($zeile,++$spalte,$row->raumtypalternativ);
if($maxlength[$spalte]<mb_strlen($row->raumtypalternativ))
$maxlength[$spalte]=mb_strlen($row->raumtypalternativ);
//Anmerkung
$worksheet->write($zeile,++$spalte,$row->anmerkung);
if($maxlength[$spalte]<mb_strlen($row->anmerkung))
$maxlength[$spalte]=mb_strlen($row->anmerkung);
// Neu 13.11.2009 sequens
//LV-Leitung
$worksheet->write($zeile,++$spalte,$row->lv_leitung.' '.$row->lv_leitung_vorname);
if($maxlength[$spalte]<mb_strlen($row->lv_leitung.' '.$row->lv_leitung_vorname))
$maxlength[$spalte]=mb_strlen($row->lv_leitung.' '.$row->lv_leitung_vorname);
//LV-Nummer
$worksheet->write($zeile,++$spalte,$row->lehrveranstaltung_id);
if($maxlength[$spalte]<mb_strlen($row->lehrveranstaltung_id))
$maxlength[$spalte]=mb_strlen($row->lehrveranstaltung_id);
//SWS
/* $worksheet->write($zeile,++$spalte,$row->sws);
if($maxlength[$spalte]<mb_strlen($row->sws))
$maxlength[$spalte]=mb_strlen($row->sws);
*/
$semesterstunden = $row->semesterstunden;
if ($row->stundensatz==0 || $row->lemss==0 || $row->faktor==0)
$semesterstunden = 0;
$worksheet->write($zeile,++$spalte,$semesterstunden);
if($maxlength[$spalte]<mb_strlen($semesterstunden))
$maxlength[$spalte]=mb_strlen($semesterstunden);
//ECTS
$worksheet->write($zeile,++$spalte,$row->ects);
if($maxlength[$spalte]<mb_strlen($row->ects))
$maxlength[$spalte]=mb_strlen($row->ects);
//LV-Typ
if (empty($row->lv_type) || $row->lehrform_kurzbz=='-' )
$row->lv_type='keine';
$worksheet->write($zeile,++$spalte,$row->lv_type);
if($maxlength[$spalte]<mb_strlen($row->lv_type))
$maxlength[$spalte]=mb_strlen($row->lv_type);
}
//Betreuungen
$qry = "SELECT
tbl_lehrveranstaltung.studiengang_kz, fachbereich_kurzbz,
(SELECT nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as koordinator,
(SELECT vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as koordinator_vorname, nachname, vorname, lehrfach.bezeichnung,
tbl_lehrveranstaltung.semester, student_uid, stunden, tbl_projektbetreuer.stundensatz,
tbl_projektbetreuer.faktor
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrveranstaltung as lehrfach, public.tbl_fachbereich
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id AND
lehrfach.oe_kurzbz=tbl_fachbereich.oe_kurzbz AND
tbl_person.person_id=tbl_projektbetreuer.person_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0
";
if($uid!=='')
{
$mitarbeiter = new mitarbeiter($uid);
$qry.=" AND tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER);
}
if($oe_kurzbz!='')
$qry.=" AND tbl_fachbereich.oe_kurzbz=".$db->db_add_param($oe_kurzbz);
if($studiengang_kz!='')
$qry.=" AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if($result = $db->db_query($qry))
{
$spalte=0;
$zeile++;
$zeile++;
$worksheet->write($zeile,$spalte,"Betreuungen", $format_bold);
while($row = $db->db_fetch_object($result))
{
$spalte=0;
$zeile++;
//Studiengang
$worksheet->write($zeile,$spalte,$stg_obj->kuerzel_arr[$row->studiengang_kz]);
if($maxlength[$spalte]<mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]))
$maxlength[$spalte]=mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]);
//Fachbereich
$worksheet->write($zeile,++$spalte,$row->fachbereich_kurzbz);
if($maxlength[$spalte]<mb_strlen($row->fachbereich_kurzbz))
$maxlength[$spalte]=mb_strlen($row->fachbereich_kurzbz);
//Koordinator
$worksheet->write($zeile,++$spalte,$row->koordinator.' '.$row->koordinator_vorname);
if($maxlength[$spalte]<mb_strlen($row->koordinator.' '.$row->koordinator_vorname))
$maxlength[$spalte]=mb_strlen($row->koordinator.' '.$row->koordinator_vorname);
//Lektor
$worksheet->write($zeile,++$spalte,$row->nachname.' '.$row->vorname);
if($maxlength[$spalte]<mb_strlen($row->nachname.' '.$row->vorname))
$maxlength[$spalte]=mb_strlen($row->nachname.' '.$row->vorname);
//Lehrfach
$worksheet->write($zeile,++$spalte,$row->bezeichnung);
if($maxlength[$spalte]<mb_strlen($row->bezeichnung))
$maxlength[$spalte]=mb_strlen($row->bezeichnung);
//Semester
$worksheet->write($zeile,++$spalte,$row->semester);
if($maxlength[$spalte]<mb_strlen($row->semester))
$maxlength[$spalte]=mb_strlen($row->semester);
$benutzer = new benutzer();
$benutzer->load($row->student_uid);
//Student
$worksheet->write($zeile,++$spalte,$benutzer->nachname.' '.$benutzer->vorname);
if($maxlength[$spalte]<mb_strlen($benutzer->nachname.' '.$benutzer->vorname))
$maxlength[$spalte]=mb_strlen($benutzer->nachname.' '.$benutzer->vorname);
//Stunden
$worksheet->write($zeile,++$spalte,$row->stunden);
if($maxlength[$spalte]<mb_strlen($row->stunden))
$maxlength[$spalte]=mb_strlen($row->stunden);
//Kosten
$worksheet->write($zeile,++$spalte,$row->stunden*$row->stundensatz*$row->faktor);
if($maxlength[$spalte]<mb_strlen($row->stunden*$row->stundensatz*$row->faktor))
$maxlength[$spalte]=mb_strlen($row->stunden*$row->stundensatz*$row->faktor);
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
}
$workbook->close();
?>
<?php
/* Copyright (C) 2008 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
// Erstellt ein Excel mit den Kosten der Lehrveranstaltungen
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/mitarbeiter.class.php');
$user = get_uid();
loadVariables($user);
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
else if(isset($_POST['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
else
die('studiensemester_kurzbz muss uebergeben werden');
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz='';
if(isset($_GET['semester']))
$semester = $_GET['semester'];
else
$semester='';
if(isset($_GET['oe_kurzbz']))
$oe_kurzbz = $_GET['oe_kurzbz'];
else
$oe_kurzbz = '';
if(isset($_GET['uid']))
$uid = $_GET['uid'];
else
$uid = '';
$db = new basis_db();
$stg_obj = new studiengang();
$stg_obj->getAll('typ, kurzbz', false);
$qry = "
SELECT (SELECT nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as koordinator,
(SELECT vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as vorname,
lehrfach.bezeichnung as lf_bezeichnung, tbl_lehrveranstaltung.studiengang_kz,
tbl_fachbereich.fachbereich_kurzbz as fachbereich_kurzbz, tbl_lehreinheitmitarbeiter.mitarbeiter_uid,
tbl_lehrveranstaltung.semester as lv_semester, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheitmitarbeiter.faktor,
tbl_lehreinheitmitarbeiter.stundensatz,
tbl_lehreinheitmitarbeiter.semesterstunden lemss, tbl_lehreinheitmitarbeiter.planstunden,
tbl_lehreinheit.stundenblockung, tbl_lehreinheit.wochenrythmus, tbl_lehreinheit.raumtyp, tbl_lehreinheit.raumtypalternativ,
tbl_lehreinheitmitarbeiter.anmerkung
,tbl_lehreinheit.studiensemester_kurzbz
,tbl_lehrveranstaltung.ects
,tbl_lehrveranstaltung.semesterstunden
,tbl_lehrveranstaltung.semesterstunden as sws
,tbl_lehrveranstaltung.lehrform_kurzbz
,tbl_lehrveranstaltung.lehrveranstaltung_id
,(SELECT nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=(SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehre.tbl_lehreinheitmitarbeiter.lehreinheit_id=lehre.tbl_lehreinheit.lehreinheit_id and lehre.tbl_lehreinheitmitarbeiter.lehrfunktion_kurzbz='LV-Leitung' LIMIT 1)
)as lv_leitung
,(SELECT vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=(SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehre.tbl_lehreinheitmitarbeiter.lehreinheit_id=lehre.tbl_lehreinheit.lehreinheit_id and lehre.tbl_lehreinheitmitarbeiter.lehrfunktion_kurzbz='LV-Leitung' LIMIT 1)
)as lv_leitung_vorname
,(SELECT bezeichnung FROM lehre.tbl_lehrform WHERE lehre.tbl_lehrform.lehrform_kurzbz=tbl_lehrveranstaltung.lehrform_kurzbz LIMIT 1) as lv_type
,tbl_lehrveranstaltung.lehrform_kurzbz
FROM
lehre.tbl_lehrveranstaltung
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
LEFT JOIN public.tbl_fachbereich ON(lehrfach.oe_kurzbz=tbl_fachbereich.oe_kurzbz)
WHERE
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
# ,(SELECT lv_semesterstunden FROM campus.vw_lehreinheit WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id and lehreinheit_id=lehre.tbl_lehreinheit.lehreinheit_id and studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' LIMIT 1) as sws
if($studiengang_kz!='')
$qry.=" AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if($oe_kurzbz!='')
$qry.=" AND tbl_fachbereich.oe_kurzbz=".$db->db_add_param($oe_kurzbz);
if($semester!='')
$qry.=" AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester, FHC_INTEGER);
if($uid!='')
$qry.=" AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=".$db->db_add_param($uid);
$qry.=" ORDER BY tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.bezeichnung";
/*
// exit($qry);
if($result = $db->db_query($qry))
{
$row = $db->db_fetch_object($result);
var_dump($row);
}
else
echo 'nix<br>';
var_dump($stg_obj);
exit;
*/
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("LVPlanung.xls");
$workbook->setVersion(8);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet($studiensemester_kurzbz);
$worksheet->setInputEncoding('utf-8');
//Formate Definieren
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_number =& $workbook->addFormat();
$format_number->setNumFormat('0,0.00');
$format_number_bold =& $workbook->addFormat();
$format_number_bold->setNumFormat('0,0.00');
$format_number_bold->setBold();
$zeile=0;
$spalte=0;
$worksheet->write($zeile,$spalte,"Studiengang", $format_bold);
$maxlength[$spalte]=11;
$worksheet->write($zeile,++$spalte,"Institut", $format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,"Koordinator", $format_bold);
$maxlength[$spalte]=11;
$worksheet->write($zeile,++$spalte,"Lektor", $format_bold);
$maxlength[$spalte]=6;
$worksheet->write($zeile,++$spalte,"Lehrfach", $format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,"Semester", $format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,"Gruppen", $format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,"Stunden", $format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,"Kosten", $format_bold);
$maxlength[$spalte]=6;
$worksheet->write($zeile,++$spalte,"Planstunden", $format_bold);
$maxlength[$spalte]=11;
$worksheet->write($zeile,++$spalte,"Stundenblockung", $format_bold);
$maxlength[$spalte]=15;
$worksheet->write($zeile,++$spalte,"Wochenrythmus", $format_bold);
$maxlength[$spalte]=13;
$worksheet->write($zeile,++$spalte,"Raum", $format_bold);
$maxlength[$spalte]=4;
$worksheet->write($zeile,++$spalte,"Raum alternativ", $format_bold);
$maxlength[$spalte]=15;
$worksheet->write($zeile,++$spalte,"Anmerkung", $format_bold);
$maxlength[$spalte]=9;
// Neu 13.11.2009 sequens
$worksheet->write($zeile,++$spalte,"LV-Leitung", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"LV-Nummer", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"ALVS", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"ECTS", $format_bold);
$maxlength[$spalte]=9;
$worksheet->write($zeile,++$spalte,"LV-Typ", $format_bold);
$maxlength[$spalte]=9;
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$spalte=0;
$zeile++;
$mitarbeiter = new mitarbeiter();
$mitarbeiter->load($row->mitarbeiter_uid);
//Studiengang
$worksheet->write($zeile,$spalte,$stg_obj->kuerzel_arr[$row->studiengang_kz]);
if($maxlength[$spalte]<mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]))
$maxlength[$spalte]=mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]);
//Fachbereich
$worksheet->write($zeile,++$spalte,$row->fachbereich_kurzbz);
if($maxlength[$spalte]<mb_strlen($row->fachbereich_kurzbz))
$maxlength[$spalte]=mb_strlen($row->fachbereich_kurzbz);
//Koordinator
$worksheet->write($zeile,++$spalte,$row->koordinator.' '.$row->vorname);
if($maxlength[$spalte]<mb_strlen($row->koordinator.' '.$row->vorname))
$maxlength[$spalte]=mb_strlen($row->koordinator.' '.$row->vorname);
//Lektor
$worksheet->write($zeile,++$spalte,$mitarbeiter->nachname.' '.$mitarbeiter->vorname);
if($maxlength[$spalte]<mb_strlen($mitarbeiter->nachname.' '.$mitarbeiter->vorname))
$maxlength[$spalte]=mb_strlen($mitarbeiter->nachname.' '.$mitarbeiter->vorname);
//Lehrfach
$worksheet->write($zeile,++$spalte,$row->lf_bezeichnung);
if($maxlength[$spalte]<mb_strlen($row->lf_bezeichnung))
$maxlength[$spalte]=mb_strlen($row->lf_bezeichnung);
//Semester
$worksheet->write($zeile,++$spalte,$row->lv_semester);
if($maxlength[$spalte]<mb_strlen($row->lv_semester))
$maxlength[$spalte]=mb_strlen($row->lv_semester);
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
$result_gruppe = $db->db_query($qry);
$gruppe = '';
while($row_gruppe = $db->db_fetch_object($result_gruppe))
{
if($gruppe!='')
$gruppe.=', ';
if($row_gruppe->gruppe_kurzbz!='')
$gruppe.=$row_gruppe->gruppe_kurzbz;
else
$gruppe.=trim($stg_obj->kuerzel_arr[$row_gruppe->studiengang_kz].'-'.$row_gruppe->semester.$row_gruppe->verband.$row_gruppe->gruppe);
}
//Gruppen
$worksheet->write($zeile,++$spalte,$gruppe);
if($maxlength[$spalte]<mb_strlen($gruppe))
$maxlength[$spalte]=mb_strlen($gruppe);
//Semesterstunden
$worksheet->write($zeile,++$spalte,$row->lemss);
if($maxlength[$spalte]<mb_strlen($row->lemss))
$maxlength[$spalte]=mb_strlen($row->lemss);
$kosten = ($row->stundensatz*$row->lemss*$row->faktor);
//Kosten
$worksheet->write($zeile,++$spalte,$kosten);
if($maxlength[$spalte]<mb_strlen($kosten))
$maxlength[$spalte]=mb_strlen($kosten);
//Planstunden
$worksheet->write($zeile,++$spalte,$row->planstunden);
if($maxlength[$spalte]<mb_strlen($row->planstunden))
$maxlength[$spalte]=mb_strlen($row->planstunden);
//Stundenblockung
$worksheet->write($zeile,++$spalte,$row->stundenblockung);
if($maxlength[$spalte]<mb_strlen($row->stundenblockung))
$maxlength[$spalte]=mb_strlen($row->stundenblockung);
//Wochentrythmus
$worksheet->write($zeile,++$spalte,$row->wochenrythmus);
if($maxlength[$spalte]<mb_strlen($row->wochenrythmus))
$maxlength[$spalte]=mb_strlen($row->wochenrythmus);
//Raumtyp
$worksheet->write($zeile,++$spalte,$row->raumtyp);
if($maxlength[$spalte]<mb_strlen($row->raumtyp))
$maxlength[$spalte]=mb_strlen($row->raumtyp);
//Raumtypalternativ
$worksheet->write($zeile,++$spalte,$row->raumtypalternativ);
if($maxlength[$spalte]<mb_strlen($row->raumtypalternativ))
$maxlength[$spalte]=mb_strlen($row->raumtypalternativ);
//Anmerkung
$worksheet->write($zeile,++$spalte,$row->anmerkung);
if($maxlength[$spalte]<mb_strlen($row->anmerkung))
$maxlength[$spalte]=mb_strlen($row->anmerkung);
// Neu 13.11.2009 sequens
//LV-Leitung
$worksheet->write($zeile,++$spalte,$row->lv_leitung.' '.$row->lv_leitung_vorname);
if($maxlength[$spalte]<mb_strlen($row->lv_leitung.' '.$row->lv_leitung_vorname))
$maxlength[$spalte]=mb_strlen($row->lv_leitung.' '.$row->lv_leitung_vorname);
//LV-Nummer
$worksheet->write($zeile,++$spalte,$row->lehrveranstaltung_id);
if($maxlength[$spalte]<mb_strlen($row->lehrveranstaltung_id))
$maxlength[$spalte]=mb_strlen($row->lehrveranstaltung_id);
//SWS
/* $worksheet->write($zeile,++$spalte,$row->sws);
if($maxlength[$spalte]<mb_strlen($row->sws))
$maxlength[$spalte]=mb_strlen($row->sws);
*/
$semesterstunden = $row->semesterstunden;
if ($row->stundensatz==0 || $row->lemss==0 || $row->faktor==0)
$semesterstunden = 0;
$worksheet->write($zeile,++$spalte,$semesterstunden);
if($maxlength[$spalte]<mb_strlen($semesterstunden))
$maxlength[$spalte]=mb_strlen($semesterstunden);
//ECTS
$worksheet->write($zeile,++$spalte,$row->ects);
if($maxlength[$spalte]<mb_strlen($row->ects))
$maxlength[$spalte]=mb_strlen($row->ects);
//LV-Typ
if (empty($row->lv_type) || $row->lehrform_kurzbz=='-' )
$row->lv_type='keine';
$worksheet->write($zeile,++$spalte,$row->lv_type);
if($maxlength[$spalte]<mb_strlen($row->lv_type))
$maxlength[$spalte]=mb_strlen($row->lv_type);
}
//Betreuungen
$qry = "SELECT
tbl_lehrveranstaltung.studiengang_kz, fachbereich_kurzbz,
(SELECT nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as koordinator,
(SELECT vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=COALESCE(tbl_lehrveranstaltung.koordinator, (SELECT uid FROM public.tbl_benutzerfunktion
WHERE fachbereich_kurzbz=tbl_fachbereich.fachbereich_kurzbz AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) AND
funktion_kurzbz='fbk' AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
LIMIT 1
)
)
) as koordinator_vorname, nachname, vorname, lehrfach.bezeichnung,
tbl_lehrveranstaltung.semester, tbl_benutzer.uid as student_uid, stunden, tbl_projektbetreuer.stundensatz,
tbl_projektbetreuer.faktor
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrveranstaltung as lehrfach, public.tbl_fachbereich, public.tbl_prestudent, public.tbl_benutzer
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_projektarbeit.prestudent_id = tbl_prestudent.prestudent_id AND
tbl_prestudent.uid = tbl_benutzer.uid AND
tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id AND
lehrfach.oe_kurzbz=tbl_fachbereich.oe_kurzbz AND
tbl_person.person_id=tbl_projektbetreuer.person_id AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0
";
if($uid!=='')
{
$mitarbeiter = new mitarbeiter($uid);
$qry.=" AND tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER);
}
if($oe_kurzbz!='')
$qry.=" AND tbl_fachbereich.oe_kurzbz=".$db->db_add_param($oe_kurzbz);
if($studiengang_kz!='')
$qry.=" AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if($result = $db->db_query($qry))
{
$spalte=0;
$zeile++;
$zeile++;
$worksheet->write($zeile,$spalte,"Betreuungen", $format_bold);
while($row = $db->db_fetch_object($result))
{
$spalte=0;
$zeile++;
//Studiengang
$worksheet->write($zeile,$spalte,$stg_obj->kuerzel_arr[$row->studiengang_kz]);
if($maxlength[$spalte]<mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]))
$maxlength[$spalte]=mb_strlen($stg_obj->kuerzel_arr[$row->studiengang_kz]);
//Fachbereich
$worksheet->write($zeile,++$spalte,$row->fachbereich_kurzbz);
if($maxlength[$spalte]<mb_strlen($row->fachbereich_kurzbz))
$maxlength[$spalte]=mb_strlen($row->fachbereich_kurzbz);
//Koordinator
$worksheet->write($zeile,++$spalte,$row->koordinator.' '.$row->koordinator_vorname);
if($maxlength[$spalte]<mb_strlen($row->koordinator.' '.$row->koordinator_vorname))
$maxlength[$spalte]=mb_strlen($row->koordinator.' '.$row->koordinator_vorname);
//Lektor
$worksheet->write($zeile,++$spalte,$row->nachname.' '.$row->vorname);
if($maxlength[$spalte]<mb_strlen($row->nachname.' '.$row->vorname))
$maxlength[$spalte]=mb_strlen($row->nachname.' '.$row->vorname);
//Lehrfach
$worksheet->write($zeile,++$spalte,$row->bezeichnung);
if($maxlength[$spalte]<mb_strlen($row->bezeichnung))
$maxlength[$spalte]=mb_strlen($row->bezeichnung);
//Semester
$worksheet->write($zeile,++$spalte,$row->semester);
if($maxlength[$spalte]<mb_strlen($row->semester))
$maxlength[$spalte]=mb_strlen($row->semester);
$benutzer = new benutzer();
$benutzer->load($row->student_uid);
//Student
$worksheet->write($zeile,++$spalte,$benutzer->nachname.' '.$benutzer->vorname);
if($maxlength[$spalte]<mb_strlen($benutzer->nachname.' '.$benutzer->vorname))
$maxlength[$spalte]=mb_strlen($benutzer->nachname.' '.$benutzer->vorname);
//Stunden
$worksheet->write($zeile,++$spalte,$row->stunden);
if($maxlength[$spalte]<mb_strlen($row->stunden))
$maxlength[$spalte]=mb_strlen($row->stunden);
//Kosten
$worksheet->write($zeile,++$spalte,$row->stunden*$row->stundensatz*$row->faktor);
if($maxlength[$spalte]<mb_strlen($row->stunden*$row->stundensatz*$row->faktor))
$maxlength[$spalte]=mb_strlen($row->stunden*$row->stundensatz*$row->faktor);
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
}
$workbook->close();
?>
+9 -6
View File
@@ -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');
@@ -45,11 +46,11 @@ function drawBetreuungen()
global $gesamtkosten_lva, $zeile, $spalte, $stsem1, $stsem2, $last_fb, $worksheet;
global $format_bold, $format_colored, $gesamtkosten_betreuung;
global $gesamtkosten_fb, $format_number, $format_number1;
$qry_fb = "SELECT
*
*, tbl_prestudent.uid as student_uid
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrfach
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrfach, public.tbl_prestudent
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
@@ -59,8 +60,10 @@ function drawBetreuungen()
(tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem1)."' OR
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem2)."') AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0 AND
tbl_prestudent.prestudent_id = tbl_projektarbeit.prestudent_id AND
tbl_lehrfach.fachbereich_kurzbz='".addslashes($last_fb)."'
";
$db = new basis_db();
$gesamtkosten_betreuung=0;
if($result_fb = $db->db_query($qry_fb))
@@ -329,4 +332,4 @@ $worksheet->setColumn(0, 10, 10); //Kosten
$worksheet->setColumn(0, 11, 20); //Gesamtkosten
$workbook->close();
?>
?>
+13 -12
View File
@@ -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>.
*/
/**
* Erstellt einen Notenspiegel
@@ -76,16 +77,16 @@ foreach ($stg->result as $studiengang)
$stg = new studiengang();
$stg->load($studiengang_kz);
$student = new student();
$result_student = $student->getStudents($studiengang_kz,$semester,null,null,null, $semester_aktuell);
$uids='';
$prestudent = new prestudent();
$result_student = $prestudent->getStudents($studiengang_kz,$semester,null,null,null, $semester_aktuell);
$preids='';
foreach ($result_student as $row)
{
if($uids!='')
$uids.=',';
$uids.=$db->db_add_param($row->uid);
if($preids!='')
$preids.=',';
$preids.=$db->db_add_param($row->prestudent_id, FHC_INTEGER);
}
if($uids=='')
if($preids=='')
die('Es befinden sich keine Studierende in diesem Semester');
$qry = "SELECT
@@ -114,7 +115,7 @@ $qry = "SELECT
lehre.tbl_lehrveranstaltung JOIN lehre.tbl_zeugnisnote USING(lehrveranstaltung_id)
WHERE
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
tbl_zeugnisnote.student_uid in($uids) AND
tbl_zeugnisnote.prestudent_id in($preids) AND
tbl_zeugnisnote.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)."
ORDER BY bezeichnung";
@@ -256,7 +257,7 @@ if($typ=='xls')
//Alle Zeugnisnoten des Studierenden holen
$noten = array();
$qry = "SELECT * FROM lehre.tbl_zeugnisnote WHERE student_uid=".$db->db_add_param($row_student->uid)." AND studiensemester_kurzbz=".$db->db_add_param($semester_aktuell);
$qry = "SELECT * FROM lehre.tbl_zeugnisnote WHERE prestudent_id=".$db->db_add_param($row_student->prestudent_id, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($semester_aktuell);
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$noten[$row->lehrveranstaltung_id] = $row->note;
@@ -444,7 +445,7 @@ else
echo "<tr><td>$i</td><td>$row_student->nachname $row_student->vorname</td><td>$row_student->matrikelnr</td>";
$noten = array();
$qry = "SELECT * FROM lehre.tbl_zeugnisnote WHERE student_uid=".$db->db_add_param($row_student->uid)." AND studiensemester_kurzbz=".$db->db_add_param($semester_aktuell);
$qry = "SELECT * FROM lehre.tbl_zeugnisnote WHERE prestudent_id=".$db->db_add_param($row_student->prestudent_id, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($semester_aktuell);
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$noten[$row->lehrveranstaltung_id] = $row->note;
+33 -35
View File
@@ -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>.
*/
/**
* Exportiert eine Liste der OEH-Beitragszahler in ein Excel File.
@@ -30,15 +31,15 @@ require_once('../../include/datum.class.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('admin'))
die('Sie haben keine Berechtigung fuer diese Seite');
require_once('../../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('admin'))
die('Sie haben keine Berechtigung fuer diese Seite');
$erhalter='';
$heute=date("d.m.Y");
@@ -144,7 +145,7 @@ if($studiensemester_kurzbz!='')
$maxlength[$spalte]=20;
// Daten holen - Alle Personen mit akt. Status Student, Diplomand oder Praktikant
$qry="SELECT DISTINCT ON (matrikelnr) matrikelnr AS personenkennzahl, tbl_student.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
$qry="SELECT DISTINCT ON (perskz) perskz AS personenkennzahl, tbl_prestudent.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
geburtsnation AS nation, titelpre, uid || '@".DOMAIN."' AS email,
(SELECT kontakt FROM public.tbl_kontakt WHERE person_id=public.tbl_person.person_id and (kontakttyp='mobil' OR kontakttyp='telefon') LIMIT 1) AS telefon,
(SELECT nation FROM public.tbl_adresse WHERE person_id=public.tbl_person.person_id ORDER BY heimatadresse ASC LIMIT 1) AS s_nation,
@@ -159,12 +160,11 @@ if($studiensemester_kurzbz!='')
(SELECT ausbildungssemester FROM public.tbl_prestudentstatus WHERE prestudent_id=public.tbl_prestudent.prestudent_id AND tbl_prestudentstatus.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' ORDER BY datum desc LIMIT 1) AS semester
FROM public.tbl_person
JOIN public.tbl_benutzer using(person_id)
JOIN public.tbl_student on(uid=student_uid)
JOIN public.tbl_prestudent using(prestudent_id)
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_student.prestudent_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
JOIN public.tbl_prestudent using(uid)
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_prestudent.prestudent_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Praktikant')
AND tbl_student.studiengang_kz<999 AND tbl_prestudent.bismelden=true";
AND tbl_prestudent.studiengang_kz<999 AND tbl_prestudent.bismelden=true";
// AND tbl_benutzer.aktiv=true
if($result = $db->db_query($qry))
@@ -318,7 +318,7 @@ if($studiensemester_kurzbz!='')
$maxlength[$spalte]=20;
// Daten holen - Alle Personen mit akt. Status Student, Diplomand oder Praktikant, die bezahlt haben
$qry="SELECT DISTINCT ON (matrikelnr) matrikelnr AS personenkennzahl, tbl_student.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
$qry="SELECT DISTINCT ON (perskz) perskz AS personenkennzahl, tbl_prestudent.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
geburtsnation AS nation, titelpre, uid || '@".DOMAIN."' AS email,
(SELECT kontakt FROM public.tbl_kontakt WHERE person_id=public.tbl_person.person_id and (kontakttyp='mobil' OR kontakttyp='telefon') LIMIT 1) AS telefon,
(SELECT nation FROM public.tbl_adresse WHERE person_id=public.tbl_person.person_id ORDER BY heimatadresse ASC LIMIT 1) AS s_nation,
@@ -335,14 +335,13 @@ if($studiensemester_kurzbz!='')
JOIN public.tbl_konto as ka using(person_id)
JOIN public.tbl_konto as kb using(person_id)
JOIN public.tbl_benutzer using(person_id)
JOIN public.tbl_student on(uid=student_uid)
JOIN public.tbl_prestudent using(prestudent_id)
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_student.prestudent_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
JOIN public.tbl_prestudent using(uid)
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_prestudent.prestudent_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Praktikant')
AND tbl_student.studiengang_kz<999 AND
ka.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND ka.buchungstyp_kurzbz='OEH' AND tbl_student.studiengang_kz=ka.studiengang_kz
AND kb.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND kb.buchungstyp_kurzbz='OEH' AND tbl_student.studiengang_kz=kb.studiengang_kz
AND tbl_prestudent.studiengang_kz<999 AND
ka.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND ka.buchungstyp_kurzbz='OEH' AND tbl_prestudent.studiengang_kz=ka.studiengang_kz
AND kb.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND kb.buchungstyp_kurzbz='OEH' AND tbl_prestudent.studiengang_kz=kb.studiengang_kz
AND kb.buchungsnr_verweis=ka.buchungsnr";
//AND tbl_benutzer.aktiv=true
@@ -500,7 +499,7 @@ if($studiensemester_kurzbz!='')
// Daten holen
$qry="SELECT DISTINCT ON (matrikelnr) matrikelnr AS personenkennzahl, '005' as erhalter, tbl_student.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
$qry="SELECT DISTINCT ON (perskz) perskz AS personenkennzahl, '005' as erhalter, tbl_prestudent.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
geburtsnation AS nation, titelpre, uid || '@technikum-wien.at' AS email,
(SELECT kontakt FROM public.tbl_kontakt WHERE tbl_kontakt.person_id=public.tbl_person.person_id and (kontakttyp='mobil' OR kontakttyp='telefon') LIMIT 1) AS telefon,
(SELECT nation FROM public.tbl_adresse WHERE tbl_adresse.person_id=public.tbl_person.person_id ORDER BY heimatadresse ASC LIMIT 1) AS s_nation,
@@ -513,15 +512,14 @@ if($studiensemester_kurzbz!='')
(SELECT strasse FROM public.tbl_adresse WHERE tbl_adresse.person_id=public.tbl_person.person_id ORDER BY heimatadresse desc LIMIT 1) AS w_strasse,
titelpost
FROM tbl_person
JOIN tbl_benutzer on(tbl_person.person_id=tbl_benutzer.person_id)
JOIN tbl_student on(uid=student_uid)
JOIN tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_student.prestudent_id)
LEFT JOIN public.tbl_konto on(tbl_person.person_id=tbl_konto.person_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'
JOIN tbl_benutzer on(tbl_person.person_id=tbl_benutzer.person_id)
JOIN tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_prestudent.prestudent_id)
LEFT JOIN public.tbl_konto on(tbl_person.person_id=tbl_konto.person_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'
AND (status_kurzbz='Student' OR status_kurzbz='Diplomand' OR status_kurzbz='Praktikant')
AND tbl_student.studiengang_kz<999
AND tbl_person.person_id NOT IN (SELECT person_id FROM tbl_konto WHERE tbl_konto.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'
AND tbl_konto.buchungstyp_kurzbz='OEH' AND tbl_student.studiengang_kz=tbl_konto.studiengang_kz AND tbl_konto.buchungsnr_verweis IS NOT NULL
AND tbl_prestudent.studiengang_kz<999
AND tbl_person.person_id NOT IN (SELECT person_id FROM tbl_konto WHERE tbl_konto.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'
AND tbl_konto.buchungstyp_kurzbz='OEH' AND tbl_prestudent.studiengang_kz=tbl_konto.studiengang_kz AND tbl_konto.buchungsnr_verweis IS NOT NULL
AND person_id=tbl_person.person_id)";
if($result = $db->db_query($conn, $qry))
@@ -651,4 +649,4 @@ else
echo " <input type='submit' value='Erstellen'>";
echo "</form></body></html>";
}
?>
?>
+174 -172
View File
@@ -1,172 +1,174 @@
<?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>.
*/
/**
* Exportiert die Studentendaten in ein Excel File.
* Die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen werden immer dazugehaengt
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/Excel/excel.php');
$db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$verband = isset($_GET['verband'])?$_GET['verband']:'';
$gruppe = isset($_GET['gruppe'])?$_GET['gruppe']:'';
$gruppe_kurzbz = isset($_GET['gruppe_kurzbz'])?$_GET['gruppe_kurzbz']:'';
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
$maxlength= array();
$zeile=1;
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send("Projektarbeit". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$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('Typ der Projektarbeit','Titel der Projektarbeit','Student',
'Note','Punkte','Beginn','Ende','Freigegeben','Gesperrt bis','Gesamtstunden','Themenbereich',
'Anmerkung','Projektarbeit ID');
$i=0;
foreach ($headline as $title)
{
$worksheet->write(0,$i,$title, $format_bold);
$maxlength[$i]=mb_strlen($title);
$i++;
}
// Daten holen
$qry = "SELECT
tbl_projekttyp.bezeichnung, titel, trim(COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'')),
(SELECT anmerkung FROM lehre.tbl_note WHERE note=tbl_projektarbeit.note) as anmerkung, punkte, beginn,
ende, CASE WHEN freigegeben THEN 'Ja' ELSE 'Nein' END, gesperrtbis, gesamtstunden, themenbereich, tbl_projektarbeit.anmerkung, projektarbeit_id
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
public.tbl_benutzer, public.tbl_person, lehre.tbl_projekttyp
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_projektarbeit.student_uid=tbl_benutzer.uid AND
tbl_benutzer.person_id=tbl_person.person_id AND
tbl_projektarbeit.projekttyp_kurzbz=tbl_projekttyp.projekttyp_kurzbz AND
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
tbl_lehrveranstaltung.studiengang_kz='".addslashes($studiengang_kz)."' AND
tbl_projektarbeit.projekttyp_kurzbz IN ('Bachelor','Diplom','Projekt')";
if($semester!='')
$qry.= " AND tbl_lehrveranstaltung.semester='".addslashes($semester)."'";
//echo $qry;
$zeile=1;
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_array($result))
{
$zeile++;
$i=0;
//Projektarbeit
foreach ($row as $idx=>$content)
{
if(is_numeric($idx))
{
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
$i++;
}
}
$zeile++;
//Betreuer
$qry_betreuer = "SELECT betreuerart_kurzbz, COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,''), tbl_note.anmerkung, faktor, name, punkte, stunden, stundensatz FROM (lehre.tbl_projektbetreuer JOIN tbl_person USING(person_id)) LEFT JOIN lehre.tbl_note USING(note) WHERE projektarbeit_id='".$row['projektarbeit_id']."'";
if($result_betreuer = $db->db_query($qry_betreuer))
{
if($db->db_num_rows($result_betreuer)>0)
{
$headline=array('Betreuerart','Betreuer','Note','Faktor','Name','Punkte','Stunden','Stundensatz');
$i=1;
foreach ($headline as $title)
{
$worksheet->write($zeile,$i,$title, $format_bold);
if(mb_strlen($title)>$maxlength[$i])
$maxlength[$i]=mb_strlen($title);
$i++;
}
$zeile++;
while($row_betreuer = $db->db_fetch_array($result_betreuer))
{
$i=1;
foreach ($row_betreuer as $idx=>$content)
{
if(is_numeric($idx))
{
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
$i++;
}
}
$zeile++;
}
}
}
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
/**
* Exportiert die Studentendaten in ein Excel File.
* Die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen werden immer dazugehaengt
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/Excel/excel.php');
$db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$verband = isset($_GET['verband'])?$_GET['verband']:'';
$gruppe = isset($_GET['gruppe'])?$_GET['gruppe']:'';
$gruppe_kurzbz = isset($_GET['gruppe_kurzbz'])?$_GET['gruppe_kurzbz']:'';
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
$maxlength= array();
$zeile=1;
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send("Projektarbeit". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$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('Typ der Projektarbeit','Titel der Projektarbeit','Student',
'Note','Punkte','Beginn','Ende','Freigegeben','Gesperrt bis','Gesamtstunden','Themenbereich',
'Anmerkung','Projektarbeit ID');
$i=0;
foreach ($headline as $title)
{
$worksheet->write(0,$i,$title, $format_bold);
$maxlength[$i]=mb_strlen($title);
$i++;
}
// Daten holen
$qry = "SELECT
tbl_projekttyp.bezeichnung, titel, trim(COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'')),
(SELECT anmerkung FROM lehre.tbl_note WHERE note=tbl_projektarbeit.note) as anmerkung, punkte, beginn,
ende, CASE WHEN freigegeben THEN 'Ja' ELSE 'Nein' END, gesperrtbis, gesamtstunden, themenbereich, tbl_projektarbeit.anmerkung, projektarbeit_id
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
public.tbl_prestudent, lehre.tbl_projekttyp, public.tbl_person, public.tbl_benutzer
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_projektarbeit.prestudent_id=tbl_prestudent.prestudent_id AND
tbl_prestudent.uid=tbl_benutzer.uid AND
tbl_person.person_id=tbl_benutzer.person_id AND
tbl_projektarbeit.projekttyp_kurzbz=tbl_projekttyp.projekttyp_kurzbz AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
tbl_projektarbeit.projekttyp_kurzbz IN ('Bachelor','Diplom','Projekt')";
if($semester!='')
$qry.= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
//echo $qry;
$zeile=1;
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_array($result))
{
$zeile++;
$i=0;
//Projektarbeit
foreach ($row as $idx=>$content)
{
if(is_numeric($idx))
{
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
$i++;
}
}
$zeile++;
//Betreuer
$qry_betreuer = "SELECT betreuerart_kurzbz, COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,''), tbl_note.anmerkung, faktor, name, punkte, stunden, stundensatz FROM (lehre.tbl_projektbetreuer JOIN tbl_person USING(person_id)) LEFT JOIN lehre.tbl_note USING(note) WHERE projektarbeit_id='".$row['projektarbeit_id']."'";
if($result_betreuer = $db->db_query($qry_betreuer))
{
if($db->db_num_rows($result_betreuer)>0)
{
$headline=array('Betreuerart','Betreuer','Note','Faktor','Name','Punkte','Stunden','Stundensatz');
$i=1;
foreach ($headline as $title)
{
$worksheet->write($zeile,$i,$title, $format_bold);
if(mb_strlen($title)>$maxlength[$i])
$maxlength[$i]=mb_strlen($title);
$i++;
}
$zeile++;
while($row_betreuer = $db->db_fetch_array($result_betreuer))
{
$i=1;
foreach ($row_betreuer as $idx=>$content)
{
if(is_numeric($idx))
{
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
$i++;
}
}
$zeile++;
}
}
}
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
+75 -74
View File
@@ -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>.
*/
/**
* Exportiert die Studentendaten in ein Excel File.
@@ -37,7 +38,7 @@ $db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
//Parameter holen
$data = $_POST['data'];
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
@@ -46,7 +47,7 @@ loadVariables($user);
$zeile=1;
$zgv_arr=array();
$zgvmas_arr=array();
//ZGV laden
$qry = "SELECT * FROM bis.tbl_zgv ORDER BY zgv_kurzbz";
if($result = $db->db_query($qry))
@@ -56,7 +57,7 @@ loadVariables($user);
$zgv_arr[$row->zgv_code]=$row->zgv_kurzbz;
}
}
//ZGV Master laden
$qry = "SELECT * FROM bis.tbl_zgvmaster ORDER BY zgvmas_kurzbz";
if($result = $db->db_query($qry))
@@ -66,7 +67,7 @@ loadVariables($user);
$zgvmas_arr[$row->zgvmas_code]=$row->zgvmas_kurzbz;
}
}
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
@@ -76,7 +77,7 @@ loadVariables($user);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
@@ -88,7 +89,7 @@ loadVariables($user);
//Zeilenueberschriften ausgeben
$i=0;
$zeile=1;
$worksheet->write($zeile,$i,"ANREDE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"TITELPRE", $format_bold);
@@ -127,7 +128,7 @@ loadVariables($user);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"GESCHLECHT", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"STUDIENGANG", $format_bold);
$maxlength[$i]=11;
$worksheet->write($zeile,++$i,"SEMESTER IM $studiensemester_kurzbz", $format_bold);
@@ -138,7 +139,7 @@ loadVariables($user);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"GRUPPE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Ort", $format_bold);
@@ -151,7 +152,7 @@ loadVariables($user);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Master Datum", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"STATUS", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"EMail Intern", $format_bold);
@@ -175,13 +176,13 @@ loadVariables($user);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"PRESTUDENTID", $format_bold);
$maxlength[$i]=12;
$zeile++;
$ids = explode(';',$data);
$prestudent_ids = '';
foreach ($ids as $id)
foreach ($ids as $id)
{
if($id!='')
{
@@ -190,12 +191,12 @@ loadVariables($user);
$prestudent_ids .= "'".addslashes($id)."'";
}
}
if($prestudent_ids!='')
{
// Student holen
$qry = "SELECT *, (SELECT UPPER(typ || kurzbz) FROM public.tbl_studiengang WHERE studiengang_kz=tbl_prestudent.studiengang_kz) as stgbez FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student USING(prestudent_id) WHERE prestudent_id in($prestudent_ids) ORDER BY nachname, vorname";
$qry = "SELECT *, (SELECT UPPER(typ || kurzbz) FROM public.tbl_studiengang WHERE studiengang_kz=tbl_prestudent.studiengang_kz) as stgbez FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE prestudent_id in($prestudent_ids) ORDER BY nachname, vorname";
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
@@ -205,7 +206,7 @@ loadVariables($user);
}
}
}
function draw_content($row)
{
global $maxlength, $datum_obj;
@@ -213,80 +214,80 @@ loadVariables($user);
global $zgv_arr, $zgvmas_arr;
global $studiensemester_kurzbz;
$db = new basis_db();
$prestudent = new prestudent();
$prestudent->getLastStatus($row->prestudent_id);
$status = $prestudent->status_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
$i=0;
//Anrede
if(mb_strlen($row->anrede)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->anrede);
$worksheet->write($zeile,$i, $row->anrede);
$i++;
//Titelpre
if(mb_strlen($row->titelpre)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->titelpre);
$worksheet->write($zeile,$i, $row->titelpre);
$i++;
//Nachname
if(mb_strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->nachname);
$worksheet->write($zeile,$i, $row->nachname);
$i++;
//Vorname
if(mb_strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vorname);
$worksheet->write($zeile,$i, $row->vorname);
$i++;
//Titelpost
if(mb_strlen($row->titelpost)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->titelpost);
$worksheet->write($zeile,$i, $row->titelpost);
$i++;
//Email Privat
//ZustellEmailAdresse aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp='email' AND person_id='$row->person_id' AND zustellung=true ORDER BY kontakt_id DESC LIMIT 1";
if($result_1 = $db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object($result_1))
{
{
if(mb_strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->kontakt);
$worksheet->write($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Zustelladresse
//Zustelladresse aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id' AND zustelladresse=true LIMIT 1";
if($result_1 = $db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object($result_1))
{
{
if(mb_strlen($row_1->strasse)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->strasse);
$worksheet->write($zeile,$i, $row_1->strasse);
$i++;
if(mb_strlen($row_1->plz)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->plz);
$worksheet->writeString($zeile,$i, $row_1->plz);
$i++;
if(mb_strlen($row_1->ort)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->ort);
$worksheet->write($zeile,$i, $row_1->ort);
$i++;
if(mb_strlen($row_1->nation)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->nation);
$worksheet->write($zeile,$i, $row_1->nation);
@@ -297,13 +298,13 @@ loadVariables($user);
}
else
$i+=4;
//Geburtsdatum
if(mb_strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->gebdatum);
$worksheet->write($zeile,$i, $datum_obj->convertISODate($row->gebdatum));
$i++;
//Geburtsort
if(mb_strlen($row->gebort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->gebort);
@@ -315,7 +316,7 @@ loadVariables($user);
$maxlength[$i] = mb_strlen($row->geburtsnation);
$worksheet->write($zeile,$i,$row->geburtsnation);
$i++;
//Personenkennzeichen
if(isset($row->matrikelnr))
{
@@ -324,38 +325,38 @@ loadVariables($user);
$worksheet->writeString($zeile,$i, $row->matrikelnr);
}
$i++;
//Staatsbuergerschaft
if(mb_strlen($row->staatsbuergerschaft)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->staatsbuergerschaft);
$worksheet->write($zeile,$i, $row->staatsbuergerschaft);
$i++;
//SVNR
if(mb_strlen($row->svnr)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->svnr);
$worksheet->write($zeile,$i, $row->svnr);
$i++;
//Ersatzkennzeichen
if(mb_strlen($row->ersatzkennzeichen)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->ersatzkennzeichen);
$worksheet->write($zeile,$i, $row->ersatzkennzeichen);
$i++;
//Geschlecht
if(mb_strlen($row->geschlecht)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->geschlecht);
$worksheet->write($zeile,$i, $row->geschlecht);
$i++;
//Studiengang
//Studiengang
if(mb_strlen($row->stgbez)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->stgbez);
$worksheet->write($zeile,$i, $row->stgbez);
$i++;
$qry = "SELECT tbl_studentlehrverband.semester AS semester_studiensemester, tbl_student.semester AS semester_aktuell,* FROM public.tbl_studentlehrverband JOIN public.tbl_student USING(student_uid) WHERE prestudent_id='$row->prestudent_id' AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
$qry = "SELECT tbl_studentlehrverband.semester AS semester_studiensemester, tbl_studentlehrverband.semester AS semester_aktuell,* FROM public.tbl_studentlehrverband WHERE prestudent_id='$row->prestudent_id' AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
if($result_sem = $db->db_query($qry))
{
if($row_sem = $db->db_fetch_object($result_sem))
@@ -377,10 +378,10 @@ loadVariables($user);
$semester_aktuell = '';
$verband = '';
$gruppe = '';
}
}
}
}
//Semester im eingestellten Studiensemester
//Semester im eingestellten Studiensemester
if(isset($semester_studiensemester))
{
if(mb_strlen($semester_studiensemester)>$maxlength[$i])
@@ -388,8 +389,8 @@ loadVariables($user);
$worksheet->write($zeile,$i, $semester_studiensemester);
}
$i++;
//Semester aktuell
//Semester aktuell
if(isset($semester_aktuell))
{
if(mb_strlen($semester_aktuell)>$maxlength[$i])
@@ -397,7 +398,7 @@ loadVariables($user);
$worksheet->write($zeile,$i, $semester_aktuell);
}
$i++;
//Verband
if(isset($verband))
{
@@ -406,7 +407,7 @@ loadVariables($user);
$worksheet->write($zeile,$i, $verband);
}
$i++;
//Gruppe
if(isset($gruppe))
{
@@ -415,8 +416,8 @@ loadVariables($user);
$worksheet->write($zeile,$i, $gruppe);
}
$i++;
//ZGV
//ZGV
if($row->zgv_code!='' && isset($zgv_arr[$row->zgv_code]))
{
if(mb_strlen($zgv_arr[$row->zgv_code])>$maxlength[$i])
@@ -424,19 +425,19 @@ loadVariables($user);
$worksheet->write($zeile,$i, $zgv_arr[$row->zgv_code]);
}
$i++;
//ZGV Ort
if(mb_strlen($row->zgvort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvort);
$worksheet->write($zeile,$i, $row->zgvort);
$i++;
//ZGV Datum
if(mb_strlen($row->zgvdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvdatum);
$worksheet->write($zeile,$i, $row->zgvdatum);
$i++;
//ZGV Master
if($row->zgvmas_code!='' && isset($zgvmas_arr[$row->zgvmas_code]))
{
@@ -445,25 +446,25 @@ loadVariables($user);
$worksheet->write($zeile,$i, $zgvmas_arr[$row->zgvmas_code]);
}
$i++;
//ZGV Master Ort
if(mb_strlen($row->zgvmaort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvmaort);
$worksheet->write($zeile,$i, $row->zgvmaort);
$i++;
//ZGV Master Datum
if(mb_strlen($row->zgvmadatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvmadatum);
$worksheet->write($zeile,$i, $row->zgvmadatum);
$i++;
//Status
//Status
if(mb_strlen($status)>$maxlength[$i])
$maxlength[$i] = mb_strlen($status);
$worksheet->write($zeile,$i, $status);
$i++;
//Email Intern
if(isset($row->student_uid))
{
@@ -472,24 +473,24 @@ loadVariables($user);
$worksheet->write($zeile,$i, $row->student_uid.'@'.DOMAIN);
}
$i++;
//Nebenwohnsitz
//Nebenwohnsitz aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id' AND typ='n' LIMIT 1";
if($result_1 = $db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object($result_1))
{
{
if(mb_strlen($row_1->strasse)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->strasse);
$worksheet->write($zeile,$i, $row_1->strasse);
$i++;
if(mb_strlen($row_1->plz)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->plz);
$worksheet->writeString($zeile,$i, $row_1->plz);
$i++;
if(mb_strlen($row_1->ort)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->ort);
$worksheet->write($zeile,$i, $row_1->ort);
@@ -500,7 +501,7 @@ loadVariables($user);
}
else
$i+=3;
//Telefon
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp in('mobil','telefon','so.tel') AND person_id='$row->person_id' AND zustellung=true LIMIT 1";
if($result_1 = $db->db_query($qry_1))
@@ -513,17 +514,17 @@ loadVariables($user);
}
}
$i++;
//Spezialgruppen
$grps='';
$qry_1 = "SELECT gruppe_kurzbz FROM public.tbl_student JOIN public.tbl_benutzergruppe ON (student_uid=uid) WHERE tbl_student.prestudent_id='$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='$row->prestudent_id' AND tbl_benutzergruppe.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
if($result_1 = $db->db_query($qry_1))
{
while($row_1 = $db->db_fetch_object($result_1))
{
if($grps!='')
$grps.=',';
$grps.=$row_1->gruppe_kurzbz;
}
}
@@ -531,7 +532,7 @@ loadVariables($user);
$maxlength[$i]=mb_strlen($grps);
$worksheet->write($zeile,$i, $grps);
$i++;
//UID
if(isset($row->student_uid))
{
@@ -540,31 +541,31 @@ loadVariables($user);
$worksheet->write($zeile,$i, $row->student_uid);
}
$i++;
//Orgform
if(mb_strlen($orgform)>$maxlength[$i])
$maxlength[$i] = mb_strlen($orgform);
$worksheet->write($zeile,$i, $orgform);
$i++;
//Vornamen
if(mb_strlen($row->vornamen)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vornamen);
$worksheet->write($zeile,$i, $row->vornamen);
$i++;
//PrestudentID
if(mb_strlen($row->prestudent_id)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->prestudent_id);
$worksheet->write($zeile,$i, $row->prestudent_id);
$i++;
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
+485 -468
View File
@@ -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>.
*/
/**
* Exportiert die Daten von Prestudenten und Studenten in ein Excel File.
@@ -37,485 +38,501 @@ require_once('../../include/student.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiensemester.class.php');
$user = get_uid();
$datum_obj = new datum();
$db = new basis_db();
loadVariables($user);
//Parameter holen
$data = $_REQUEST['data'];
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
$maxlength= array();
$zeile=1;
$zgv_arr=array();
$zgvmas_arr=array();
//ZGV laden
$qry = "SELECT * FROM bis.tbl_zgv ORDER BY zgv_kurzbz";
if($result = $db->db_query($qry))
//Parameter holen
$data = $_REQUEST['data'];
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
$maxlength= array();
$zeile=1;
$zgv_arr=array();
$zgvmas_arr=array();
//ZGV laden
$qry = "SELECT * FROM bis.tbl_zgv ORDER BY zgv_kurzbz";
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
while($row = $db->db_fetch_object($result))
$zgv_arr[$row->zgv_code]=$row->zgv_kurzbz;
}
}
//ZGV Master laden
$qry = "SELECT * FROM bis.tbl_zgvmaster ORDER BY zgvmas_kurzbz";
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$zgvmas_arr[$row->zgvmas_code]=$row->zgvmas_kurzbz;
}
}
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send("Studenten". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$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
$i=0;
$zeile=1;
$worksheet->write($zeile,$i,"ANREDE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"TITELPRE", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"NACHNAME", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"VORNAME", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"TITELPOST", $format_bold);
$maxlength[$i]=9;
$worksheet->write($zeile,++$i,"EMail Privat", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"GEBURTSDATUM", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"PERSONENKENNZEICHEN", $format_bold);
$maxlength[$i]=19;
$worksheet->write($zeile,++$i,"STAATSBÜRGERSCHAFT", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"SVNR", $format_bold);
$maxlength[$i]=4;
$worksheet->write($zeile,++$i,"ERSATZKENNZEICHEN", $format_bold);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"GESCHLECHT", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"STUDIENGANG", $format_bold);
$maxlength[$i]=11;
$worksheet->write($zeile,++$i,"SEMESTER IM $studiensemester_kurzbz", $format_bold);
$maxlength[$i]=19;
$worksheet->write($zeile,++$i,"SEMESTER AKTUELL", $format_bold);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"VERBAND", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"GRUPPE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Datum", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV Master", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Master Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Master Datum", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"STATUS", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"STATI IN ANDEREN STUDIENGÄNGEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"EMail Intern", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"TELEFON", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"GRUPPEN", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"UID", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"ORGFORM", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"VORNAMEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"RT_PUNKTE1", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_PUNKTE2", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_GESAMTPUNKTE", $format_bold);
$maxlength[$i]=18;
$zeile++;
$ids = explode(';',$data);
$prestudent_ids = '';
foreach ($ids as $id)
{
if($id!='')
{
if($prestudent_ids!='')
$prestudent_ids .= ',';
$prestudent_ids .= "'".addslashes($id)."'";
}
}
if($prestudent_ids!='')
{
// Student holen
$qry = "SELECT *, tbl_prestudent.studiengang_kz as prestgkz, (SELECT UPPER(typ || kurzbz) FROM public.tbl_studiengang WHERE studiengang_kz=tbl_prestudent.studiengang_kz) as stgbez
FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id)
WHERE prestudent_id in($prestudent_ids) ORDER BY nachname, vorname";
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$zgv_arr[$row->zgv_code]=$row->zgv_kurzbz;
draw_content($row);
$zeile++;
}
}
//ZGV Master laden
$qry = "SELECT * FROM bis.tbl_zgvmaster ORDER BY zgvmas_kurzbz";
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$zgvmas_arr[$row->zgvmas_code]=$row->zgvmas_kurzbz;
}
}
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send("Studenten". "_" . date("d_m_Y") . ".xls");
}
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
function draw_content($row)
{
global $maxlength, $datum_obj;
global $zeile, $worksheet;
global $zgv_arr, $zgvmas_arr;
global $studiensemester_kurzbz;
$db = new basis_db();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
$prestudent = new prestudent();
$prestudent->getLastStatus($row->prestudent_id);
$status = $prestudent->status_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
//Zeilenueberschriften ausgeben
$i=0;
$zeile=1;
$worksheet->write($zeile,$i,"ANREDE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"TITELPRE", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"NACHNAME", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"VORNAME", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"TITELPOST", $format_bold);
$maxlength[$i]=9;
$worksheet->write($zeile,++$i,"EMail Privat", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"GEBURTSDATUM", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"PERSONENKENNZEICHEN", $format_bold);
$maxlength[$i]=19;
$worksheet->write($zeile,++$i,"STAATSBÜRGERSCHAFT", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"SVNR", $format_bold);
$maxlength[$i]=4;
$worksheet->write($zeile,++$i,"ERSATZKENNZEICHEN", $format_bold);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"GESCHLECHT", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"STUDIENGANG", $format_bold);
$maxlength[$i]=11;
$worksheet->write($zeile,++$i,"SEMESTER IM $studiensemester_kurzbz", $format_bold);
$maxlength[$i]=19;
$worksheet->write($zeile,++$i,"SEMESTER AKTUELL", $format_bold);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"VERBAND", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"GRUPPE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Datum", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV Master", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Master Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Master Datum", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"STATUS", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"STATI IN ANDEREN STUDIENGÄNGEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"EMail Intern", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"TELEFON", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"GRUPPEN", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"UID", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"ORGFORM", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"VORNAMEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"RT_PUNKTE1", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_PUNKTE2", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_GESAMTPUNKTE", $format_bold);
$maxlength[$i]=18;
$zeile++;
$ids = explode(';',$data);
$prestudent_ids = '';
foreach ($ids as $id)
{
if($id!='')
{
if($prestudent_ids!='')
$prestudent_ids .= ',';
$prestudent_ids .= "'".addslashes($id)."'";
}
}
if($prestudent_ids!='')
{
// Student holen
$qry = "SELECT *, tbl_prestudent.studiengang_kz as prestgkz, (SELECT UPPER(typ || kurzbz) FROM public.tbl_studiengang WHERE studiengang_kz=tbl_prestudent.studiengang_kz) as stgbez
FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student USING(prestudent_id)
WHERE prestudent_id in($prestudent_ids) ORDER BY nachname, vorname";
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
draw_content($row);
$zeile++;
}
}
}
function draw_content($row)
{
global $maxlength, $datum_obj;
global $zeile, $worksheet;
global $zgv_arr, $zgvmas_arr;
global $studiensemester_kurzbz;
$db = new basis_db();
$prestudent = new prestudent();
$prestudent->getLastStatus($row->prestudent_id);
$status = $prestudent->status_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
$i=0;
//Anrede
if(mb_strlen($row->anrede)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->anrede);
$worksheet->write($zeile,$i, $row->anrede);
$i++;
//Titelpre
if(mb_strlen($row->titelpre)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->titelpre);
$worksheet->write($zeile,$i, $row->titelpre);
$i++;
//Nachname
if(mb_strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->nachname);
$worksheet->write($zeile,$i, $row->nachname);
$i++;
//Vorname
if(mb_strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vorname);
$worksheet->write($zeile,$i, $row->vorname);
$i++;
//Titelpost
if(mb_strlen($row->titelpost)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->titelpost);
$worksheet->write($zeile,$i, $row->titelpost);
$i++;
//Email Privat
//ZustellEmailAdresse aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt
WHERE kontakttyp='email' AND person_id='".addslashes($row->person_id)."' AND zustellung=true
ORDER BY kontakt_id DESC LIMIT 1";
if($db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object())
{
if(mb_strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->kontakt);
$worksheet->write($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Geburtsdatum
if(mb_strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->gebdatum);
$worksheet->write($zeile,$i, $datum_obj->convertISODate($row->gebdatum));
$i++;
//Personenkennzeichen
if(isset($row->matrikelnr))
{
if(mb_strlen($row->matrikelnr)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->matrikelnr);
$worksheet->writeString($zeile,$i, $row->matrikelnr);
}
$i++;
//Staatsbuergerschaft
if(mb_strlen($row->staatsbuergerschaft)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->staatsbuergerschaft);
$worksheet->write($zeile,$i, $row->staatsbuergerschaft);
$i++;
//SVNR
if(mb_strlen($row->svnr)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->svnr);
$worksheet->write($zeile,$i, $row->svnr);
$i++;
//Ersatzkennzeichen
if(mb_strlen($row->ersatzkennzeichen)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->ersatzkennzeichen);
$worksheet->write($zeile,$i, $row->ersatzkennzeichen);
$i++;
//Geschlecht
if(mb_strlen($row->geschlecht)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->geschlecht);
$worksheet->write($zeile,$i, $row->geschlecht);
$i++;
//Studiengang
if(mb_strlen($row->stgbez)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->stgbez);
$worksheet->write($zeile,$i, $row->stgbez);
$i++;
$qry = "SELECT tbl_studentlehrverband.semester AS semester_studiensemester, tbl_student.semester AS semester_aktuell,* FROM public.tbl_studentlehrverband JOIN public.tbl_student USING(student_uid)
WHERE prestudent_id='".addslashes($row->prestudent_id)."'
AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
if($db->db_query($qry))
{
if($row_sem = $db->db_fetch_object())
{
$semester_aktuell = $row_sem->semester_aktuell;
$semester_studiensemester = $row_sem->semester_studiensemester;
$verband = $row_sem->verband;
$gruppe = $row_sem->gruppe;
}
else
{
$semester_aktuell = '';
$verband = '';
$gruppe = '';
}
}
//Semester im eingestellten Studiensemester
if(isset($semester_studiensemester))
{
if(mb_strlen($semester_studiensemester)>$maxlength[$i])
$maxlength[$i] = mb_strlen($semester_studiensemester);
$worksheet->write($zeile,$i, $semester_studiensemester);
}
$i++;
//Semester aktuell
if(isset($semester_aktuell))
{
if(mb_strlen($semester_aktuell)>$maxlength[$i])
$maxlength[$i] = mb_strlen($semester_aktuell);
$worksheet->write($zeile,$i, $semester_aktuell);
}
$i++;
//Verband
if(isset($verband))
{
if(mb_strlen($verband)>$maxlength[$i])
$maxlength[$i] = mb_strlen($verband);
$worksheet->write($zeile,$i, $verband);
}
$i++;
//Gruppe
if(isset($gruppe))
{
if(mb_strlen($gruppe)>$maxlength[$i])
$maxlength[$i] = mb_strlen($gruppe);
$worksheet->write($zeile,$i, $gruppe);
}
$i++;
//ZGV
if($row->zgv_code!='' && isset($zgv_arr[$row->zgv_code]))
{
if(mb_strlen($zgv_arr[$row->zgv_code])>$maxlength[$i])
$maxlength[$i] = mb_strlen($zgv_arr[$row->zgv_code]);
$worksheet->write($zeile,$i, $zgv_arr[$row->zgv_code]);
}
$i++;
//ZGV Ort
if(mb_strlen($row->zgvort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvort);
$worksheet->write($zeile,$i, $row->zgvort);
$i++;
//ZGV Datum
if(mb_strlen($row->zgvdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvdatum);
$worksheet->write($zeile,$i, $row->zgvdatum);
$i++;
//ZGV Master
if($row->zgvmas_code!='' && isset($zgvmas_arr[$row->zgvmas_code]))
{
if(mb_strlen($zgvmas_arr[$row->zgvmas_code])>$maxlength[$i])
$maxlength[$i] = mb_strlen($zgvmas_arr[$row->zgvmas_code]);
$worksheet->write($zeile,$i, $zgvmas_arr[$row->zgvmas_code]);
}
$i++;
//ZGV Master Ort
if(mb_strlen($row->zgvmaort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvmaort);
$worksheet->write($zeile,$i, $row->zgvmaort);
$i++;
//ZGV Master Datum
if(mb_strlen($row->zgvmadatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvmadatum);
$worksheet->write($zeile,$i, $row->zgvmadatum);
$i++;
//Status
if(mb_strlen($status)>$maxlength[$i])
$maxlength[$i] = mb_strlen($status);
$worksheet->write($zeile,$i, $status);
$i++;
//Stati in anderen Studiengaengen
$stati='';
$qry_1 = "SELECT UPPER(typ::varchar(1) || kurzbz) as stg, get_rolle_prestudent(prestudent_id, null) as status FROM
public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE person_id='".addslashes($row->person_id)."' AND tbl_prestudent.studiengang_kz<>'".addslashes($row->prestgkz)."'";
if($db->db_query($qry_1))
{
while($row_1 = $db->db_fetch_object())
{
if($stati!='')
$stati.=', ';
$stati.= $row_1->status.' ('.$row_1->stg.')';
}
}
if(mb_strlen($stati)>$maxlength[$i])
$maxlength[$i] = mb_strlen($stati);
$worksheet->write($zeile,$i, $stati);
$i++;
//Email Intern
if(isset($row->student_uid))
{
if(mb_strlen($row->student_uid.'@'.DOMAIN)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->student_uid.'@'.DOMAIN);
$worksheet->write($zeile,$i, $row->student_uid.'@'.DOMAIN);
}
$i++;
//Telefon
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt
WHERE kontakttyp in('mobil','telefon','so.tel') AND person_id='".addslashes($row->person_id)."' AND zustellung=true LIMIT 1";
if($db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object())
{
if(mb_strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->kontakt);
$worksheet->writeString($zeile,$i, $row_1->kontakt);
}
}
$i++;
//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)."'";
if($db->db_query($qry_1))
{
while($row_1 = $db->db_fetch_object())
{
if($grps!='')
$grps.=',';
$grps.=$row_1->gruppe_kurzbz;
}
}
if(mb_strlen($grps)>$maxlength[$i])
$maxlength[$i]=mb_strlen($grps);
$worksheet->write($zeile,$i, $grps);
$i++;
//UID
if(isset($row->student_uid))
{
if(mb_strlen($row->student_uid)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->student_uid);
$worksheet->write($zeile,$i, $row->student_uid);
}
$i++;
//Orgform
if(mb_strlen($orgform)>$maxlength[$i])
$maxlength[$i] = mb_strlen($orgform);
$worksheet->write($zeile,$i, $orgform);
$i++;
//Vornamen
if(mb_strlen($row->vornamen)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vornamen);
$worksheet->write($zeile,$i, $row->vornamen);
$i++;
//RT_Punkte1
if(mb_strlen($row->rt_punkte1)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->rt_punkte1);
$worksheet->write($zeile,$i, $row->rt_punkte1);
$i++;
//RT_Punkte2
if(mb_strlen($row->rt_punkte2)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->rt_punkte2);
$worksheet->write($zeile,$i, $row->rt_punkte2);
$i++;
//RT_Gesamtpunkte
if(mb_strlen($row->rt_gesamtpunkte)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->rt_gesamtpunkte);
$worksheet->write($zeile,$i, $row->rt_gesamtpunkte);
$i++;
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
//Anrede
if(mb_strlen($row->anrede)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->anrede);
$worksheet->write($zeile,$i, $row->anrede);
$i++;
//Titelpre
if(mb_strlen($row->titelpre)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->titelpre);
$worksheet->write($zeile,$i, $row->titelpre);
$i++;
//Nachname
if(mb_strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->nachname);
$worksheet->write($zeile,$i, $row->nachname);
$i++;
//Vorname
if(mb_strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vorname);
$worksheet->write($zeile,$i, $row->vorname);
$i++;
//Titelpost
if(mb_strlen($row->titelpost)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->titelpost);
$worksheet->write($zeile,$i, $row->titelpost);
$i++;
//Email Privat
//ZustellEmailAdresse aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt
WHERE kontakttyp='email' AND person_id='".addslashes($row->person_id)."' AND zustellung=true
ORDER BY kontakt_id DESC LIMIT 1";
if($db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object())
{
if(mb_strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->kontakt);
$worksheet->write($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Geburtsdatum
if(mb_strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->gebdatum);
$worksheet->write($zeile,$i, $datum_obj->convertISODate($row->gebdatum));
$i++;
//Personenkennzeichen
if(isset($row->matrikelnr))
{
if(mb_strlen($row->matrikelnr)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->matrikelnr);
$worksheet->writeString($zeile,$i, $row->matrikelnr);
}
$i++;
//Staatsbuergerschaft
if(mb_strlen($row->staatsbuergerschaft)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->staatsbuergerschaft);
$worksheet->write($zeile,$i, $row->staatsbuergerschaft);
$i++;
//SVNR
if(mb_strlen($row->svnr)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->svnr);
$worksheet->write($zeile,$i, $row->svnr);
$i++;
//Ersatzkennzeichen
if(mb_strlen($row->ersatzkennzeichen)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->ersatzkennzeichen);
$worksheet->write($zeile,$i, $row->ersatzkennzeichen);
$i++;
//Geschlecht
if(mb_strlen($row->geschlecht)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->geschlecht);
$worksheet->write($zeile,$i, $row->geschlecht);
$i++;
//Studiengang
if(mb_strlen($row->stgbez)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->stgbez);
$worksheet->write($zeile,$i, $row->stgbez);
$i++;
$stsem = new studiensemester();
$studiensemester_kurzbz_aktuell = $stsem->getaktorNext();
$qry_aktuell="SELECT semester FROM public.tbl_studentlehrverband WHERE studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz_aktuell);
if($db->db_query($qry_aktuell))
{
if($row_sem_aktuell = $db->db_fetch_object())
{
$semester_aktuell = $row_sem_aktuell->semester;
}
else
{
$semester_aktuell = '';
}
}
$qry = "SELECT tbl_studentlehrverband.semester AS semester_studiensemester,* FROM public.tbl_studentlehrverband
WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)."
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
if($db->db_query($qry))
{
if($row_sem = $db->db_fetch_object())
{
$semester_studiensemester = $row_sem->semester_studiensemester;
$verband = $row_sem->verband;
$gruppe = $row_sem->gruppe;
}
else
{
$verband = '';
$gruppe = '';
}
}
//Semester im eingestellten Studiensemester
if(isset($semester_studiensemester))
{
if(mb_strlen($semester_studiensemester)>$maxlength[$i])
$maxlength[$i] = mb_strlen($semester_studiensemester);
$worksheet->write($zeile,$i, $semester_studiensemester);
}
$i++;
//Semester aktuell
if(isset($semester_aktuell))
{
if(mb_strlen($semester_aktuell)>$maxlength[$i])
$maxlength[$i] = mb_strlen($semester_aktuell);
$worksheet->write($zeile,$i, $semester_aktuell);
}
$i++;
//Verband
if(isset($verband))
{
if(mb_strlen($verband)>$maxlength[$i])
$maxlength[$i] = mb_strlen($verband);
$worksheet->write($zeile,$i, $verband);
}
$i++;
//Gruppe
if(isset($gruppe))
{
if(mb_strlen($gruppe)>$maxlength[$i])
$maxlength[$i] = mb_strlen($gruppe);
$worksheet->write($zeile,$i, $gruppe);
}
$i++;
//ZGV
if($row->zgv_code!='' && isset($zgv_arr[$row->zgv_code]))
{
if(mb_strlen($zgv_arr[$row->zgv_code])>$maxlength[$i])
$maxlength[$i] = mb_strlen($zgv_arr[$row->zgv_code]);
$worksheet->write($zeile,$i, $zgv_arr[$row->zgv_code]);
}
$i++;
//ZGV Ort
if(mb_strlen($row->zgvort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvort);
$worksheet->write($zeile,$i, $row->zgvort);
$i++;
//ZGV Datum
if(mb_strlen($row->zgvdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvdatum);
$worksheet->write($zeile,$i, $row->zgvdatum);
$i++;
//ZGV Master
if($row->zgvmas_code!='' && isset($zgvmas_arr[$row->zgvmas_code]))
{
if(mb_strlen($zgvmas_arr[$row->zgvmas_code])>$maxlength[$i])
$maxlength[$i] = mb_strlen($zgvmas_arr[$row->zgvmas_code]);
$worksheet->write($zeile,$i, $zgvmas_arr[$row->zgvmas_code]);
}
$i++;
//ZGV Master Ort
if(mb_strlen($row->zgvmaort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvmaort);
$worksheet->write($zeile,$i, $row->zgvmaort);
$i++;
//ZGV Master Datum
if(mb_strlen($row->zgvmadatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->zgvmadatum);
$worksheet->write($zeile,$i, $row->zgvmadatum);
$i++;
//Status
if(mb_strlen($status)>$maxlength[$i])
$maxlength[$i] = mb_strlen($status);
$worksheet->write($zeile,$i, $status);
$i++;
//Stati in anderen Studiengaengen
$stati='';
$qry_1 = "SELECT UPPER(typ::varchar(1) || kurzbz) as stg, get_rolle_prestudent(prestudent_id, null) as status FROM
public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE person_id='".addslashes($row->person_id)."' AND tbl_prestudent.studiengang_kz<>'".addslashes($row->prestgkz)."'";
if($db->db_query($qry_1))
{
while($row_1 = $db->db_fetch_object())
{
if($stati!='')
$stati.=', ';
$stati.= $row_1->status.' ('.$row_1->stg.')';
}
}
if(mb_strlen($stati)>$maxlength[$i])
$maxlength[$i] = mb_strlen($stati);
$worksheet->write($zeile,$i, $stati);
$i++;
//Email Intern
if(isset($row->student_uid))
{
if(mb_strlen($row->student_uid.'@'.DOMAIN)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->student_uid.'@'.DOMAIN);
$worksheet->write($zeile,$i, $row->student_uid.'@'.DOMAIN);
}
$i++;
//Telefon
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt
WHERE kontakttyp in('mobil','telefon','so.tel') AND person_id='".addslashes($row->person_id)."' AND zustellung=true LIMIT 1";
if($db->db_query($qry_1))
{
if($row_1 = $db->db_fetch_object())
{
if(mb_strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->kontakt);
$worksheet->writeString($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Spezialgruppen
$grps='';
$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())
{
if($grps!='')
$grps.=',';
$grps.=$row_1->gruppe_kurzbz;
}
}
if(mb_strlen($grps)>$maxlength[$i])
$maxlength[$i]=mb_strlen($grps);
$worksheet->write($zeile,$i, $grps);
$i++;
//UID
if(isset($row->student_uid))
{
if(mb_strlen($row->student_uid)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->student_uid);
$worksheet->write($zeile,$i, $row->student_uid);
}
$i++;
//Orgform
if(mb_strlen($orgform)>$maxlength[$i])
$maxlength[$i] = mb_strlen($orgform);
$worksheet->write($zeile,$i, $orgform);
$i++;
//Vornamen
if(mb_strlen($row->vornamen)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vornamen);
$worksheet->write($zeile,$i, $row->vornamen);
$i++;
//RT_Punkte1
if(mb_strlen($row->rt_punkte1)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->rt_punkte1);
$worksheet->write($zeile,$i, $row->rt_punkte1);
$i++;
//RT_Punkte2
if(mb_strlen($row->rt_punkte2)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->rt_punkte2);
$worksheet->write($zeile,$i, $row->rt_punkte2);
$i++;
//RT_Gesamtpunkte
if(mb_strlen($row->rt_gesamtpunkte)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->rt_gesamtpunkte);
$worksheet->write($zeile,$i, $row->rt_gesamtpunkte);
$i++;
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
+21 -20
View File
@@ -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');
@@ -48,22 +49,22 @@ foreach ($studiengang->result as $row)
$qry = "
SELECT stdlvb.studiengang_kz,
count(*) AS all,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=1 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s1_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=1 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s1_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=2 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s2_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=2 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s2_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=3 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s3_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=3 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s3_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=4 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s4_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=4 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s4_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=5 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s5_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=5 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s5_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=6 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s6_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=6 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s6_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=7 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s7_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=7 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s7_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=8 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s8_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student ON (student_uid=uid) WHERE tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_studentlehrverband.semester=8 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s8_w
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=1 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s1_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=1 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s1_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=2 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s2_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=2 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s2_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=3 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s3_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=3 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s3_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=4 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s4_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=4 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s4_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=5 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s5_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=5 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s5_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=6 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s6_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=6 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s6_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=7 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s7_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=7 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s7_w,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=8 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='m') AS s8_m,
(SELECT count(*) FROM public.tbl_studentlehrverband JOIN campus.vw_student USING (prestudent_id) WHERE tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_studentlehrverband.semester=8 AND tbl_studentlehrverband.studiengang_kz=stdlvb.studiengang_kz AND geschlecht='w') AS s8_w
FROM
tbl_studentlehrverband stdlvb JOIN tbl_studiengang USING(studiengang_kz)
WHERE
@@ -204,7 +205,7 @@ if($format=='xls')
$var_w = 's'.$i.'_w';
if(!isset($summe_m_[$i]))
$summe_m_[$i]=0;
if(!isset($summe_w_[$i]))
if(!isset($summe_w_[$i]))
$summe_w_[$i]=0;
$summe_m_[$i]+= $row->$var_m;
@@ -214,7 +215,7 @@ if($format=='xls')
$gesamtsumme=0;
if(!isset($gesamtsumme_m))
$gesamtsumme_m=0;
if(!isset($gesamtsumme_w))
if(!isset($gesamtsumme_w))
$gesamtsumme_w=0;
$gesamtsumme+= $row->all;
+6 -5
View File
@@ -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>.
*/
/*
* Erstellt eine Liste der Studenten eines Studiensemesters
@@ -112,7 +113,7 @@ if($stsem!='')
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Incoming' AND studiensemester_kurzbz='".addslashes($stsem)."'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_prestudent JOIN bis.tbl_bisio USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='".addslashes($stsem_obj->start)."' OR bis is null) AND von<='".addslashes($stsem_obj->ende)."'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
@@ -307,7 +308,7 @@ if($stsem!='')
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Incoming' AND studiensemester_kurzbz='".addslashes($stsem)."'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_prestudent JOIN bis.tbl_bisio USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='".addslashes($stsem_obj->start)."' OR bis is null) AND von<='".addslashes($stsem_obj->ende)."'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
@@ -491,4 +492,4 @@ if($stsem!='')
}
?>
</body>
</html>
</html>
@@ -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>.
*/
/*
* Erstellt eine Liste der Studenten eines Studiensemesters
@@ -110,7 +111,7 @@ if($stsem!='')
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Incoming' AND studiensemester_kurzbz='".addslashes($stsem)."'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_prestudent JOIN bis.tbl_bisio USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='".addslashes($stsem_obj->start)."' OR bis is null) AND von<='".addslashes($stsem_obj->ende)."'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
@@ -264,7 +265,7 @@ if($stsem!='')
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Incoming' AND studiensemester_kurzbz='".addslashes($stsem)."'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_prestudent JOIN bis.tbl_bisio USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='".addslashes($stsem_obj->start)."' OR bis is null) AND von<='".addslashes($stsem_obj->ende)."'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
@@ -407,4 +408,4 @@ if($stsem!='')
}
?>
</body>
</html>
</html>
+28 -28
View File
@@ -45,7 +45,7 @@ $datum_obj = new datum();
if($studiensemester_kurzbz=='')
{
$stsem = new studiensemester();
$studiensemester_kurzbz = $stsem->getAktOrNext();
$studiensemester_kurzbz = $stsem->getaktorNext();
}
if($studiensemester_kurzbz!='')
@@ -64,8 +64,8 @@ if($studiensemester_kurzbz!='')
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_number =& $workbook->addFormat();
$format_number->setNumFormat('0,0.00');
$format_number =& $workbook->addFormat();
$format_number->setNumFormat('0,0.00');
$spalte=0;
@@ -175,30 +175,30 @@ else
';
}
function BerechneGesamtTage($startdatum, $endedatum)
{
$gesamttage=0;
$datum = new DateTime($startdatum);
$ende = new DateTime($endedatum);
$i=0;
while($datum<$ende)
{
$i++;
if($i>100)
die('Rekursion? Abbruch');
$tag = $datum->format('d');
if($tag==31)
$gesamttage+=1;
else
$gesamttage+=31-$tag;
$datum = new DateTime(date('Y-m-t',$datum->getTimestamp())); // Letzten Tag im Monat
$datum->add(new DateInterval('P1D')); // 1 Tag dazuzaehlen
}
return $gesamttage;
function BerechneGesamtTage($startdatum, $endedatum)
{
$gesamttage=0;
$datum = new DateTime($startdatum);
$ende = new DateTime($endedatum);
$i=0;
while($datum<$ende)
{
$i++;
if($i>100)
die('Rekursion? Abbruch');
$tag = $datum->format('d');
if($tag==31)
$gesamttage+=1;
else
$gesamttage+=31-$tag;
$datum = new DateTime(date('Y-m-t',$datum->getTimestamp())); // Letzten Tag im Monat
$datum->add(new DateInterval('P1D')); // 1 Tag dazuzaehlen
}
return $gesamttage;
}
?>
File diff suppressed because it is too large Load Diff
+232 -231
View File
@@ -1,231 +1,232 @@
<?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');
?>
// ****************** FUNKTIONEN ************************** //
// ****
// * neuen Interessenten anlegen
// ****
function InteressentNeu()
{
try
{
var verband_tree=document.getElementById('tree-verband');
var col = verband_tree.columns ? verband_tree.columns["stg_kz"] : "stg_kz";
var stg_kz=verband_tree.view.getCellText(verband_tree.currentIndex,col);
}
catch(e)
{}
window.open('<?php echo APP_ROOT; ?>vilesci/personen/import/interessentenimport.php?studiengang_kz='+stg_kz,'Interessent anlegen', 'height=768,width=1024,resizable=yes,status=yes,scrollbars=yes,toolbar=yes,location=yes,menubar=yes');
}
// ****
// * Macht aus einem Interessenten einen Bewerber
// * Voraussetzungen:
// * - Datum fuer Anmeldung zum RT muss eingetragen sein
// * - Hakerl "zum Reihungstest angetreten" muss angekreuzt sein
// * Wenn die Voraussetzungen erfuellt sind wird die Rolle Bewerber hinzugefuegt
// ****
function InteressentzuBewerber()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-tree');
//Wenn kein Interessent ausgewaehlt ist, dann abbrechen
if (tree.currentIndex==-1) return;
//Alle markierten Personen holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
paramList += ';'+prestudent_id;
anzahl = anzahl+1;
}
}
//Rolle Bewerber hinzufuegen
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('status_kurzbz', 'Bewerber');
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
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
StudentTreeRefresh();
SetStatusBarText('Daten wurden gespeichert');
}
}
// ****
// * macht aus einem Bewerber einen Studenten
// * Voraussetzungen:
// * - ZGV muss ausgefuellt sein (bei Master beide)
// * - Kaution muss bezahlt sein
// * - Rolle Bewerber muss existieren
// * Wenn die Voraussetzungen erfuellt sind, dann wird die Matrikelnr
// * und UID generiert und der Studentendatensatz angelegt.
// ****
function InteressentzuStudent()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-tree');
//Wenn kein Interessent ausgewaehlt ist, dann abbrechen
if (tree.currentIndex==-1) return;
//Alle markierten Personen holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
paramList += ';'+prestudent_id;
anzahl = anzahl+1;
}
}
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'BewerberZuStudent');
req.add('prestudent_id', paramList);
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
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
StudentTreeRefresh();
SetStatusBarText('Daten wurden gespeichert');
}
}
// ****
// * Fuegt eine Rolle zu einem Interessenten hinzu
// ****
function InteressentAddRolle(rolle)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-tree');
if (tree.currentIndex==-1) return;
//Alle markierten Personen holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
paramList += ';'+prestudent_id;
anzahl = anzahl+1;
}
}
if(anzahl>1)
conf = 'Diese '+anzahl+' Studenten';
else
conf = 'Diesen Studenten';
if(confirm(conf+' zum '+rolle+' machen?'))
{
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('status_kurzbz', rolle);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
StudentTreeRefresh();
}
else
{
StudentTreeRefresh();
SetStatusBarText('Rolle hinzugefuegt');
}
}
}
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Andreas Moik <moik@technikum-wien.at>.
*/
require_once('../../config/vilesci.config.inc.php');
?>
// ****************** FUNKTIONEN ************************** //
// ****
// * neuen Interessenten anlegen
// ****
function InteressentNeu()
{
try
{
var verband_tree=document.getElementById('tree-verband');
var col = verband_tree.columns ? verband_tree.columns["stg_kz"] : "stg_kz";
var stg_kz=verband_tree.view.getCellText(verband_tree.currentIndex,col);
}
catch(e)
{}
window.open('<?php echo APP_ROOT; ?>vilesci/personen/import/interessentenimport.php?studiengang_kz='+stg_kz,'Interessent anlegen', 'height=768,width=1024,resizable=yes,status=yes,scrollbars=yes,toolbar=yes,location=yes,menubar=yes');
}
// ****
// * Macht aus einem Interessenten einen Bewerber
// * Voraussetzungen:
// * - Datum fuer Anmeldung zum RT muss eingetragen sein
// * - Hakerl "zum Reihungstest angetreten" muss angekreuzt sein
// * Wenn die Voraussetzungen erfuellt sind wird die Rolle Bewerber hinzugefuegt
// ****
function InteressentzuBewerber()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-tree');
//Wenn kein Interessent ausgewaehlt ist, dann abbrechen
if (tree.currentIndex==-1) return;
//Alle markierten Personen holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
paramList += ';'+prestudent_id;
anzahl = anzahl+1;
}
}
//Rolle Bewerber hinzufuegen
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('status_kurzbz', 'Bewerber');
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
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
StudentTreeRefresh();
SetStatusBarText('Daten wurden gespeichert');
}
}
// ****
// * macht aus einem Bewerber einen Studenten
// * Voraussetzungen:
// * - ZGV muss ausgefuellt sein (bei Master beide)
// * - Kaution muss bezahlt sein
// * - Rolle Bewerber muss existieren
// * Wenn die Voraussetzungen erfuellt sind, dann wird die Matrikelnr
// * und UID generiert und der Studentendatensatz angelegt.
// ****
function InteressentzuStudent()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-tree');
//Wenn kein Interessent ausgewaehlt ist, dann abbrechen
if (tree.currentIndex==-1) return;
//Alle markierten Personen holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
paramList += ';'+prestudent_id;
anzahl = anzahl+1;
}
}
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'BewerberZuStudent');
req.add('prestudent_id', paramList);
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
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
StudentTreeRefresh();
SetStatusBarText('Daten wurden gespeichert');
}
}
// ****
// * Fuegt eine Rolle zu einem Interessenten hinzu
// ****
function InteressentAddRolle(rolle)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-tree');
if (tree.currentIndex==-1) return;
//Alle markierten Personen holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
paramList += ';'+prestudent_id;
anzahl = anzahl+1;
}
}
if(anzahl>1)
conf = 'Diese '+anzahl+' Studenten';
else
conf = 'Diesen Studenten';
if(confirm(conf+' zum '+rolle+' machen?'))
{
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('status_kurzbz', rolle);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
StudentTreeRefresh();
}
else
{
StudentTreeRefresh();
SetStatusBarText('Rolle hinzugefuegt');
}
}
}
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More