This commit is contained in:
kindlm
2015-02-27 20:42:32 +01:00
95 changed files with 11336 additions and 9274 deletions
+9
View File
@@ -0,0 +1,9 @@
[submodule "submodules/tablesorter"]
path = submodules/tablesorter
url = https://github.com/christianbach/tablesorter.git
[submodule "submodules/bootstrap"]
path = submodules/bootstrap
url = https://github.com/twbs/bootstrap.git
[submodule "submodules/pivottable"]
path = submodules/pivottable
url = https://github.com/nicolaskruchten/pivottable.git
@@ -0,0 +1,48 @@
<?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.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
*/
/**
*
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/notenschluessel.class.php');
$uid = get_uid();
if(!check_lektor($uid))
die('Sie haben keine Berechtigung fuer diese Seite');
if(!isset($_POST['work']))
die('Fehlerhafte Parameteruebergabe');
$lehrveranstaltung_id = $_POST['lehrveranstaltung_id'];
$punkte = $_POST['punkte'];
$studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
$work = $_POST['work'];
switch($work)
{
case 'getGradeFromPoints':
$notenschluessel = new notenschluessel();
$note = $notenschluessel->getNote($punkte, $lehrveranstaltung_id, $studiensemester_kurzbz);
echo $note;
exit;
}
?>
@@ -40,6 +40,7 @@ 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');
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
@@ -108,20 +109,29 @@ if(!$rechte->isBerechtigt('admin',0) &&
}
}
function savenote($db,$lvid, $student_uid, $note)
function savenote($db,$lvid, $student_uid, $note, $punkte=null)
{
global $stsem, $user, $p;
$jetzt = date("Y-m-d H:i:s");
//Ermitteln ob der Student diesem Kurs zugeteilt ist
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE uid=".$db->db_add_param($student_uid)." AND lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
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";
}
}
// Wenn punkte vorhanden sind, dann die note dazu ermitteln
if($punkte!='' && $note=='')
{
$notenschluessel = new notenschluessel();
$note = $notenschluessel->getNote($punkte, $lvid, $stsem);
}
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
@@ -138,12 +148,14 @@ function savenote($db,$lvid, $student_uid, $note)
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$lvgesamtnote->punkte = $punkte;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = trim($note);
$lvgesamtnote->punkte = $punkte;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
@@ -167,26 +179,34 @@ if (isset($_REQUEST["submit"]))
{
$student_uid = $_REQUEST["student_uid"];
$note = $_REQUEST["note"];
$punkte = (isset($_REQUEST["punkte"])?$_REQUEST["punkte"]:'');
//if((($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
$response = savenote($db,$lvid, $student_uid, $note);
/*else
$response = $p->t('benotungstool/noteEingeben')."!";
*/
$response = savenote($db,$lvid, $student_uid, $note, $punkte);
echo $response;
}
else
{
foreach ($_POST as $row=>$val)
{
if(mb_strstr(mb_strtolower($row), 'matrikelnr_'))
{
$id=mb_substr($row, mb_strlen('matrikelnr_'));
if(isset($_POST['matrikelnr_'.$id]) && isset($_POST['note_'.$id]))
if(isset($_POST['matrikelnr_'.$id]) && (isset($_POST['note_'.$id]) || isset($_POST['punkte_'.$id])))
{
$matrikelnummer = $_POST['matrikelnr_'.$id];
$note = $_POST['note_'.$id];
$note=null;
$punkte=null;
if(isset($_POST['note_'.$id]))
$note = $_POST['note_'.$id];
elseif(isset($_POST['punkte_'.$id]))
$punkte = $_POST['punkte_'.$id];
else
{
$response.="\nNote oder Punkte fehlen";
continue;
}
$punkte=str_replace(',','.', $punkte);
//UID ermitteln
$student = new student();
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer))
@@ -196,26 +216,15 @@ if (isset($_REQUEST["submit"]))
}
// Hole Zeugnisnote wenn schon eine eingetragen ist
/*
if ($zeugnisnote = new zeugnisnote($lvid, $student_uid, $stsem))
$znote = $zeugnisnote->note;
else
$znote = null;
/*if(((($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14)))
{*/
$val=savenote($db,$lvid, $student_uid, $note);
if($val!='neu' && $val!='update' && $val!='update_f')
$response.=$val;
/*}
else
{
// Wenn Zeugnisnote schon 6 ist -> keine Fehlermeldung mehr
if($znote != 6)
{
$student->load($student_uid);
$response .= "\n".$p->t('benotungstool/fehlerhafteNoteBeiStudent', array($student->vorname, $student->nachname))." ".$p->t('benotungstool/noteEingeben');
}
}*/
*/
$val=savenote($db,$lvid, $student_uid, $note, $punkte);
if($val!='neu' && $val!='update' && $val!='update_f')
$response.=$val;
}
else
{
File diff suppressed because it is too large Load Diff
@@ -59,8 +59,6 @@ else
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
//else
// die('Fehlerhafte Parameteruebergabe');
if(isset($_GET['lehreinheit_id_pr']) && is_numeric($_GET['lehreinheit_id_pr'])) //Lehreinheit_id der pruefung
$lehreinheit_id = $_GET['lehreinheit_id_pr'];
@@ -87,14 +85,9 @@ if(isset($_GET['stsem']))
else
$stsem = '';
//Vars
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Kopfzeile
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
@@ -102,78 +95,93 @@ if($stsem=='')
$student_uid = $_REQUEST["student_uid"];
//if($lehreinheit_id=='')
// die('Es wurde keine passende Lehreinheit in diesem Studiensemester gefunden');
$note = $_REQUEST["note"];
if ( (($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
$note = $_REQUEST["note"];
if(isset($_REQUEST['punkte']))
$punkte = $_REQUEST['punkte'];
else
$punkte = '';
if($note=='')
$note = 9;
$old_note = $note;
// lvgesamtnote für studenten speichern
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
// lehreinheiten holen, in denen der student ist
$le_arr = array();
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehrveranstaltung_id = '".$lvid."' and uid='".$student_uid."' ORDER BY lehrform_kurzbz DESC";
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
$le_arr[] = $row_stud->lehreinheit_id;
}
}
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
{
// Die Pruefung muss einer Lehreinheit zugeordnet werden
// deshalb wird hier versucht eine passende Lehreinheit zu ermitteln.
$le_arr = array();
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz
FROM
campus.vw_student_lehrveranstaltung
JOIN campus.vw_student using(uid)
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)."
ORDER BY lehrform_kurzbz DESC";
if (!in_array($lehreinheit_id,$le_arr))
$lehreinheit_id = $le_arr[0];
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
$le_arr[] = $row_stud->lehreinheit_id;
}
}
if (!in_array($lehreinheit_id,$le_arr))
$lehreinheit_id = $le_arr[0];
$jetzt = date("Y-m-d H:i:s");
$pr = new Pruefung();
// 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->result)
$termin1 = 1;
else
{
$lvnote = new lvgesamtnote();
if ($lvnote->load($lvid, $student_uid, $stsem))
{
$lvnote = new lvgesamtnote();
if ($lvnote->load($lvid, $student_uid, $stsem))
{
$pr_note = $lvnote->note;
$benotungsdatum = $lvnote->benotungsdatum;
}
else
{
$pr_note = 9;
$benotungsdatum = $jetzt;
}
$pr_1 = new Pruefung();
$pr_1->lehreinheit_id = $lehreinheit_id;
$pr_1->student_uid = $student_uid;
$pr_1->mitarbeiter_uid = $user;
$pr_1->note = $pr_note;
$pr_1->pruefungstyp_kurzbz = "Termin1";
$pr_1->datum = $benotungsdatum;
$pr_1->anmerkung = "";
$pr_1->insertamum = $jetzt;
$pr_1->insertvon = $user;
$pr_1->updateamum = Null;
$pr_1->updatevon = Null;
$pr_1->ext_id = Null;
$pr_1->new = 1;
$pr_1->save();
$pr_note = $lvnote->note;
$pr_punkte = $lvnote->punkte;
$benotungsdatum = $lvnote->benotungsdatum;
}
else
{
$pr_note = 9;
$benotungsdatum = $jetzt;
}
$pr_1 = new Pruefung();
$pr_1->lehreinheit_id = $lehreinheit_id;
$pr_1->student_uid = $student_uid;
$pr_1->mitarbeiter_uid = $user;
$pr_1->note = $pr_note;
$pr_1->punkte = $pr_punkte;
$pr_1->pruefungstyp_kurzbz = "Termin1";
$pr_1->datum = $benotungsdatum;
$pr_1->anmerkung = "";
$pr_1->insertamum = $jetzt;
$pr_1->insertvon = $user;
$pr_1->updateamum = null;
$pr_1->updatevon = null;
$pr_1->ext_id = null;
$pr_1->new = true;
$pr_1->save();
}
}
$prTermin2 = new Pruefung();
$pr_2 = new Pruefung();
// Die Pruefung wird als Termin2 eingetragen
if ($prTermin2->getPruefungen($student_uid, "Termin2", $lvid, $stsem))
{
if ($prTermin2->result)
@@ -184,6 +192,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
$pr_2->updatevon = $user;
$old_note = $pr_2->note;
$pr_2->note = $note;
$pr_2->punkte = $punkte;
$pr_2->datum = $datum;
$pr_2->anmerkung = "";
}
@@ -193,125 +202,65 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
$pr_2->student_uid = $student_uid;
$pr_2->mitarbeiter_uid = $user;
$pr_2->note = $note;
$pr_2->punkte = $punkte;
$pr_2->pruefungstyp_kurzbz = "Termin2";
$pr_2->datum = $datum;
$pr_2->anmerkung = "";
$pr_2->insertamum = $jetzt;
$pr_2->insertvon = $user;
$pr_2->updateamum = Null;
$pr_2->updatevon = Null;
$pr_2->ext_id = Null;
$pr_2->new = 1;
$pr_2->updateamum = null;
$pr_2->updatevon = null;
$pr_2->ext_id = null;
$pr_2->new = true;
$old_note = -1;
}
$pr_2->save();
}
if ( (($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
{
// Wenn eine Pruefung eingetragen wird, wird danach die LV-Note korrigiert
$jetzt = date("Y-m-d H:i:s");
$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;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = $_REQUEST["note"];
$lvgesamtnote->mitarbeiter_uid = $user;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->freigabedatum = null;
$lvgesamtnote->freigabevon_uid = null;
$lvgesamtnote->bemerkung = null;
$lvgesamtnote->updateamum = null;
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = $_REQUEST["note"];
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
if (!$lvgesamtnote->save($new))
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
echo $response;
$lvid = $_REQUEST["lvid"];
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = $note;
$lvgesamtnote->punkte = $punkte;
$lvgesamtnote->mitarbeiter_uid = $user;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->freigabedatum = null;
$lvgesamtnote->freigabevon_uid = null;
$lvgesamtnote->bemerkung = null;
$lvgesamtnote->updateamum = null;
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = $note;
$lvgesamtnote->punkte = $punkte;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
else
echo "update_pr";
if (!$lvgesamtnote->save($new))
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
echo $response;
}
else
echo "Fehler beim Eintragen der Pr&uuml;fungen";
/*
Beim Eintragen von Nachpruefungen wird ein Mail an die Assistenz geschickt.
17.06.2010 auf Wunsch der Assistenz werden keine Mails mehr versendet
if ($old_note != $note)
{
$qry = "SELECT distinct on(uid) vorname, nachname, tbl_benutzer.uid as uid, oe_kurzbz
FROM lehre.tbl_lehreinheit
JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id)
JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
JOIN public.tbl_person USING (person_id)
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
JOIN public.tbl_studiengang USING (studiengang_kz)
WHERE
lehrveranstaltung_id='$lvid' AND
tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND
tbl_benutzer.aktiv=true AND tbl_person.aktiv=true AND
studiensemester_kurzbz='$stsem'";
$mailto = '';
if(($result = $db->db_query($qry)) != FALSE)
{
if ($db->db_num_rows($result) > 0)
{
$row_lector = $db->db_fetch_object($result);
$oe_kurzbz = $row_lector->oe_kurzbz;
$mailto = $row_lector->uid.'@'.DOMAIN;
while (($row_lector = $db->db_fetch_object($result)) != FALSE)
$mailto .= ','.$row_lector->uid.'@'.DOMAIN;
}
}
$ass = new benutzerfunktion();
if ($ass->getBenutzerFunktionen("ass",$oe_kurzbz))
foreach ($ass->result as $res) $mailto .= (empty($mailto) ? "" : ",").$res->uid.'@'.DOMAIN;
if($mailto != '')
{
$culprit = new benutzer($user);
$victim = new student($student_uid);
$mail = new mail( $mailto,
'CIS-System@do.not.reply',
'[CIS-System] Note der Nachprüfung wurde '.($old_note < 0 ? 'eingetragen' : 'geändert'),
"Automatische Benachrichtigung:\n\nDie Nachprüfungsnote von\n\n$victim->vorname $victim->nachname ($student_uid)\n\nwurde im Studiensemester $stsem von $culprit->vorname $culprit->nachname ($user)\n\n".
($old_note < 0
? "mit '$note' eingetragen."
: "von '$old_note' auf '$note' geändert.").
"\n");
if (!$mail->send())
{
sleep(3);
$mail->send(); // Desperate second attempt.
}
}
}
*/
?>
@@ -0,0 +1,82 @@
<?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
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../config/global.config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/notenschluessel.class.php');
require_once('../../../../include/phrasen.class.php');
$uid = get_uid();
$sprache = getSprache();
$p = new phrasen($sprache);
if(isset($_GET['lehrveranstaltung_id']))
$lehrveranstaltung_id = $_GET['lehrveranstaltung_id'];
else
die('Fehlerhafte Parameteruebergabe');
if(isset($_GET['stsem']))
$studiensemester_kurzbz = $_GET['stsem'];
else
die('Fehlerhafte Parameteruebergabe');
echo '<!DOCTYPE HTML>
<html>
<head>
<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/jquery.css" rel="stylesheet" type="text/css"/>
<link href="../../../../skin/tablesort.css" rel="stylesheet" type="text/css"/>
<link href="../../../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
<script src="../../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
<title>Grade</title>
</head>
<body>';
$notenschluessel = new notenschluessel();
if($kurzbz = $notenschluessel->getNotenschluessel($lehrveranstaltung_id, $studiensemester_kurzbz))
{
if($notenschluessel->loadAufteilung($kurzbz))
{
echo '<table id="t1" class="tablesorter">
<thead>
<tr>
<th>'.$p->t('benotungstool/note').'</th>
<th>'.$p->t('benotungstool/punkte').'</th>
</tr>
</thead>
<tbody>';
foreach($notenschluessel->result as $row)
{
echo '<tr>';
echo '<td>'.$row->notenbezeichnung.'</td>';
echo '<td>'.$row->punkte.'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
}
else
{
echo $p->t('gesamtnote/keinNotenschluesselvorhanden');
}
echo '</body></html>';
?>
+54 -9
View File
@@ -32,6 +32,7 @@ require_once('../../../include/note.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/pruefung.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
@@ -96,6 +97,12 @@ else
$stg_obj->load($row->studiengang_kz);
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
}
$notenarr=array();
$note = new note();
$note->getAll();
foreach($note->result as $row)
$notenarr[$row->note]=$row->bezeichnung;
//Aktuelles Studiensemester ermitteln
@@ -124,7 +131,10 @@ else
//Lehrveranstaltungen und Noten holen
$qry = "SELECT
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_lvgesamtnote.note as lvnote, tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum, tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum
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
@@ -140,7 +150,14 @@ else
if($result=$db->db_query($qry))
{
//Tabelle anzeigen
$tbl= "<table><tr class='liste'><th>".$p->t('global/lehrveranstaltung')."</th><th>".$p->t('benotungstool/lvNote')."</th><th>".$p->t('benotungstool/zeugnisnote')."</th><th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th></tr>";
$tbl= "<table>
<tr class='liste'>
<th>".$p->t('global/lehrveranstaltung')."</th>
<th>".$p->t('benotungstool/lvNote')."</th>
<th>".$p->t('benotungstool/zeugnisnote')."</th>
<th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th>
<th>".$p->t('benotungstool/pruefung')."</th>
</tr>";
$i=0;
while($row=$db->db_fetch_object($result))
{
@@ -148,18 +165,20 @@ else
$lv_obj->load($row->lehrveranstaltung_id);
$i++;
$tbl.= "<tr class='liste".($i%2)."'><td>".$lv_obj->bezeichnung_arr[$sprache].' '.$lv_obj->lehrform_kurzbz."</td>";
$tbl.= "<tr class='liste".($i%2)."'><td>".$lv_obj->lehrform_kurzbz.' '.$lv_obj->bezeichnung_arr[$sprache]."</td>";
$tbl.= "<td>";
//Nur freigegebene Noten anzeigen
if($row->freigabedatum>=$row->lvbenotungsdatum)
{
$note = new note();
if($note->load($row->lvnote))
$tbl.=$note->bezeichnung;
if(isset($notenarr[$row->lvnote]))
$tbl.=$notenarr[$row->lvnote];
else
$tbl.=$row->lvnote;
}
if($row->lvpunkte!='')
$tbl.=' ('.((float)$row->lvpunkte).')';
$tbl.= "</td>";
if ($row->note != $row->lvnote && $row->lvnote != NULL)
$markier = " style='border: 1px solid red;'";
@@ -167,15 +186,41 @@ else
$markier = "";
$tbl .= "<td".$markier.">";
$note = new note();
if($note->load($row->note))
$tbl.=$note->bezeichnung;
if(isset($notenarr[$row->note]))
$tbl.=$notenarr[$row->note];
else
$tbl.=$row->note;
if($row->punkte!='')
$tbl.=' ('.((float)$row->punkte).')';
$tbl .= "</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>';
}
$tbl .= "</tr>";
}
+108 -83
View File
@@ -20,81 +20,71 @@
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
/*
* Erstellt Notenliste im Excel Format
*/
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/lehrveranstaltung.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/note.class.php');
require_once('../../../include/notenschluessel.class.php');
require_once('../../../include/Excel/excel.php');
require_once('../../../config/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/Excel/excel.php');
$uid = get_uid();
if(!check_lektor($uid))
die('Sie haben keine Berechtigung fuer diese Seite');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
# require_once('../../../include/Excel/PEAR.php');
# require_once('../../../include/Excel/BIFFwriter.php');
# require_once('../../../include/Excel/Workbook.php');
# require_once('../../../include/Excel/Format.php');
# require_once('../../../include/Excel/Worksheet.php');
# require_once('../../../include/Excel/Parser.php');
# require_once('../../../include/Excel/OLE.php');
# require_once('../../../include/Excel/PPS.php');
# require_once('../../../include/Excel/Root.php');
# require_once('../../../include/Excel/File.php');
# require_once('../../../include/Excel/Writer.php');
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid=$_GET['lvid'];
else
die("Fehlerhafte Parameteruebergabe");
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
die("Fehlerhafte Parameteruebergabe");
if(isset($_GET['stg']) && is_numeric($_GET['stg']))
$stg=$_GET['stg'];
else
die("Fehlerhafte Parameteruebergabe");
if(isset($_GET['gruppe_kurzbz']))
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
$gruppe_kurzbz = '';
if(isset($_GET['gruppe_kurzbz']))
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
$gruppe_kurzbz = '';
if(isset($_GET['sem']) && is_numeric($_GET['sem']))
$sem = $_GET['sem'];
else
$sem = '';
if(isset($_GET['sem']) && is_numeric($_GET['sem']))
$sem = $_GET['sem'];
else
$sem = '';
if(isset($_GET['verband']))
$verband = $_GET['verband'];
else
$verband = '';
if(isset($_GET['verband']))
$verband = $_GET['verband'];
else
$verband = '';
if(isset($_GET['gruppe']) && is_numeric($_GET['gruppe']))
$gruppe = $_GET['gruppe'];
else
$gruppe = '';
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['stsem']))
$stsem = $_GET['stsem'];
else
die('Studiensemester muss uebergeben werden');
if(isset($_GET['lehreinheit_id']))
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
if(isset($_GET['lehreinheit_id']))
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
/*
* Create Excel File
*/
/*
* Create Excel File
*/
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
@@ -135,10 +125,16 @@
$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 from campus.vw_lehreinheit WHERE lehrveranstaltung_id='".addslashes($lvid)."' AND studiensemester_kurzbz='".addslashes($stsem)."'";
$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=".$db->db_add_param($lvid, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'";
$qry.=" AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$gruppen='';
if($result = $db->db_query($qry))
{
@@ -164,11 +160,11 @@
WHERE
uid=mitarbeiter_uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
lehrveranstaltung_id='".addslashes($lvid)."' AND
studiensemester_kurzbz='".addslashes($stsem)."'";
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='".addslashes($lehreinheit_id)."'";
$qry.=" AND tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$qry.=' ORDER BY nachname, vorname';
@@ -187,13 +183,18 @@
$worksheet->write($lines,2,"Vorname",$format_border_bottom);
$worksheet->write($lines,3,"Gruppe",$format_border_bottom);
$worksheet->write($lines,4,"Kennzeichen",$format_border_bottom);
$worksheet->write($lines,5,"Note",$format_border_bottom);
$stsem_obj = new studiensemester();
$stsem_obj->load($stsem);
$stsemdatumvon = $stsem_obj->start;
$stsemdatumbis = $stsem_obj->ende;
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$worksheet->write($lines,5,"Punkte",$format_border_bottom);
else
$worksheet->write($lines,5,"Note",$format_border_bottom);
$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_student.student_uid as 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,
@@ -206,11 +207,11 @@ $qry = "SELECT
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
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."'";
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='".addslashes($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';
@@ -251,11 +252,36 @@ $qry = "SELECT
}
}
//Notenschluessel
$worksheet->write(++$lines,0,'Notenschlüssel: 1 (Sehr Gut), 2 (Gut), 3 (Befriedigend), 4 (Genügend),');
$worksheet->write(++$lines,0,'5 (Nicht Genügend), 7 (nicht beurteilt), 10 (bestanden)');
//$worksheet->write(++$lines,0,'8-teilgenommen, 9-noch nicht eingetragen, 10-bestanden,');
$worksheet->write(++$lines,0,'14 (nicht bestanden), 16 (Mit Erfolg teilgenommen)');
//Noten
$note = new note();
$note->getAll();
$notenschluessel = new notenschluessel();
$schluessel = $notenschluessel->getNotenschluessel($lvid, $stsem);
$notenschluessel->loadAufteilung($schluessel);
$aufteilung = array();
foreach($notenschluessel->result as $row)
$aufteilung[$row->note]=$row->punkte;
$worksheet->write(++$lines,0,'Noten:');
foreach($note->result as $row)
{
if($row->aktiv && $row->lehre)
{
if(CIS_GESAMTNOTE_PUNKTE)
{
if(isset($aufteilung[$row->note]))
$punkte = '>='.(float)$aufteilung[$row->note].' Punkte - ';
else
$punkte='';
$worksheet->write(++$lines,0,$punkte.$row->bezeichnung.' ('.$row->anmerkung.')');
}
else
$worksheet->write(++$lines,0,$row->bezeichnung.' ('.$row->anmerkung.')');
}
}
$worksheet->writeBlank(++$lines,0,0);
$worksheet->writeBlank(++$lines,0,$format_highlight);
$worksheet->write($lines,1,'...Kopieren Sie diese Zellen in den Zwischenspeicher, um damit die Import-Spalte des Gesamtnotenformulars zu befüllen');
@@ -270,5 +296,4 @@ $qry = "SELECT
$worksheet->setColumn(3, 3, 7);
$worksheet->setColumn(4, 4, 13);
$workbook->close();
?>
+7 -3
View File
@@ -449,7 +449,8 @@ $addon_obj = new addon();
$addon_obj->loadAddons();
foreach($addon_obj->result as $addon)
{
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
if(file_exists('./../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
}
// Wenn Seite fertig geladen ist Addons aufrufen
@@ -457,9 +458,12 @@ echo '
<script>
$( document ).ready(function()
{
for(i in addon)
if(typeof addon !== \'undefined\')
{
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
for(i in addon)
{
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
}
}
});
</script>';
@@ -86,7 +86,8 @@ $addon_obj = new addon();
$addon_obj->loadAddons();
foreach($addon_obj->result as $addon)
{
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
if(file_exists('./../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
}
// Wenn Seite fertig geladen ist Addons aufrufen
@@ -94,9 +95,12 @@ echo '
<script>
$( document ).ready(function()
{
for(i in addon)
if(typeof addon !== \'undefined\')
{
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
for(i in addon)
{
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
}
}
});
</script>';
+128 -78
View File
@@ -20,6 +20,7 @@
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>
* Karl Burkhart <burkhart@technikum-wien.at>
* Manfred Kindl <kindlm@technikum.wien.at>.
* Gerald Raab <raab@technikum-wien.at>
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
@@ -28,6 +29,7 @@ require_once('../../../include/benutzer.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/fachbereich.class.php');
require_once('../../../include/zeitaufzeichnung.class.php');
require_once('../../../include/zeitsperre.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/projekt.class.php');
require_once('../../../include/phrasen.class.php');
@@ -35,6 +37,7 @@ require_once('../../../include/organisationseinheit.class.php');
require_once('../../../include/service.class.php');
require_once('../../../include/mitarbeiter.class.php');
require_once('../../../include/betriebsmittelperson.class.php');
require_once('../../../include/globals.inc.php');
$sprache = getSprache();
$p=new phrasen($sprache);
@@ -45,15 +48,16 @@ if (!$db = new basis_db())
$user = get_uid();
$datum = new datum();
$zeitaufzeichnung_id = (isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
$projekt_kurzbz = (isset($_POST['projekt'])?$_POST['projekt']:'');
$oe_kurzbz_1 = (isset($_POST['oe_kurzbz_1'])?$_POST['oe_kurzbz_1']:'');
$oe_kurzbz_2 = (isset($_POST['oe_kurzbz_2'])?$_POST['oe_kurzbz_2']:'');
$aktivitaet_kurzbz = (isset($_POST['aktivitaet'])?$_POST['aktivitaet']:'');
$von_datum = (isset($_POST['von_datum'])?$_POST['von_datum']:date('d.m.Y'));
$von_datum = (isset($_REQUEST['von_datum'])?$_REQUEST['von_datum']:date('d.m.Y'));
$von_uhrzeit = (isset($_POST['von_uhrzeit'])?$_POST['von_uhrzeit']:date('H:i'));
$von = $von_datum.' '.$von_uhrzeit;
$bis_datum = (isset($_POST['bis_datum'])?$_POST['bis_datum']:date('d.m.Y'));
$bis_datum = (isset($_REQUEST['bis_datum'])?$_REQUEST['bis_datum']:date('d.m.Y'));
$bis_uhrzeit = (isset($_POST['bis_uhrzeit'])?$_POST['bis_uhrzeit']:date('H:i',mktime(date('H'), date('i')+10)));
$bis = $bis_datum.' '.$bis_uhrzeit;
$beschreibung = (isset($_POST['beschreibung'])?$_POST['beschreibung']:'');
@@ -61,9 +65,13 @@ $service_id = (isset($_POST['service_id'])?$_POST['service_id']:'');
$kunde_uid = (isset($_POST['kunde_uid'])?$_POST['kunde_uid']:'');
$kartennummer = (isset($_POST['kartennummer'])?$_POST['kartennummer']:'');
$filter = (isset($_GET['filter'])?$_GET['filter']:'foo');
$alle = (isset($_POST['alle'])?(isset($_POST['normal'])?false:true):false);
$alle = (isset($_GET['alle'])?(isset($_GET['normal'])?false:true):false);
$angezeigte_tage = '50';
$zs = new zeitsperre();
$zs->getZeitsperrenForZeitaufzeichnung($user,$angezeigte_tage);
$zeitsperren = $zs->result;
echo '<!DOCTYPE HTML>
<html>
<head>
@@ -487,7 +495,7 @@ if($projekt->getProjekteMitarbeiter($user))
echo '<option value="'.$db->convert_html_chars($row_projekt->projekt_kurzbz).'" '.$selected.'>'.$db->convert_html_chars($row_projekt->titel).'</option>';
}
echo '</SELECT><input type="button" value="'.$p->t("zeitaufzeichnung/uebersicht").'" onclick="loaduebersicht();"></td>';
echo '</SELECT><!--<input type="button" value="'.$p->t("zeitaufzeichnung/uebersicht").'" onclick="loaduebersicht();">--></td>';
echo '</tr><tr>';
//OE_KURZBZ_1
echo '<td nowrap>'.$p->t("zeitaufzeichnung/organisationseinheiten").'</td>
@@ -651,7 +659,11 @@ if($projekt->getProjekteMitarbeiter($user))
echo '<hr>';
echo '<h3>'.($alle===true?$p->t('zeitaufzeichnung/alleEintraege'):$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage))).'</h3>';
echo '<input type="submit" value="'.($alle===true?$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)):$p->t('zeitaufzeichnung/alleAnzeigen')).'" name="'.($alle===true?'normal':'alle').'">';
if ($alle===true)
echo '<a href="?normal" style="text-decoration:none"><input type="button" value="'.$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)).'"></a>';
else
echo '<a href="?alle" style="text-decoration:none"><input type="button" value="'.$p->t('zeitaufzeichnung/alleAnzeigen').'"></a>';
//echo '<input type="submit" value="'.($alle===true?$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)):$p->t('zeitaufzeichnung/alleAnzeigen')).'" name="'.($alle===true?'normal':'alle').'">';
echo '</form>';
$za = new zeitaufzeichnung();
@@ -660,9 +672,9 @@ if($projekt->getProjekteMitarbeiter($user))
else
{
if ($alle==true)
$za->getListeUser($user, '');
$za->getListeUserFull($user, '');
else
$za->getListeUser($user, $angezeigte_tage);
$za->getListeUserFull($user, $angezeigte_tage);
}
$summe=0;
@@ -672,24 +684,24 @@ if($projekt->getProjekteMitarbeiter($user))
//Uebersichtstabelle
$woche=date('W');
echo '
<table id="t1" class="tablesorter">
<table id="t1" class="" style="width:100%">
<thead>
<tr>
<th style="background-color: #8DBDD8;" align="center" class="{sorter: false}" colspan="13">'.$p->t("eventkalender/kw").' '.$woche.'</th>
</tr>
<tr>
<th>'.$p->t("zeitaufzeichnung/id").'</th>
<th>'.$p->t("zeitaufzeichnung/user").'</th>
<th>'.$p->t("zeitaufzeichnung/projekt").'</th>
<th>'.$p->t("zeitaufzeichnung/oe").' 1</th>
<th>'.$p->t("zeitaufzeichnung/oe").' 2</th>
<th>'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
<th>'.$p->t("zeitaufzeichnung/service").'</th>
<th>'.$p->t("zeitaufzeichnung/start").'</th>
<th>'.$p->t("zeitaufzeichnung/ende").'</th>
<th>'.$p->t("zeitaufzeichnung/dauer").'</th>
<th>'.$p->t("global/beschreibung").'</th>
<th colspan="2">'.$p->t("global/aktion").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/id").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/user").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/projekt").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 1</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 2</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/service").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/start").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/ende").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/dauer").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("global/beschreibung").'</th>
<th style="background-color:#DCE4EF" align="center" colspan="2">'.$p->t("global/aktion").'</th>
</tr>
</thead>
<tbody>';
@@ -704,52 +716,81 @@ if($projekt->getProjekteMitarbeiter($user))
$tagesende = '';
$wochensaldo = '00:00';
$pflichtpause = false;
foreach($za->result as $row)
{
$datumtag = $datum_obj->formatDatum($row->start, 'Y-m-d');
$datumtag = $datum_obj->formatDatum($row->datum, 'Y-m-d');
//echo '<tr><th colspan="13">foo<th></tr>';
// Nach jedem Tag eine Summenzeile einfuegen
if(is_null($tag))
$tag = $datumtag;
if($tag!=$datumtag)
{
$style = '';
$style = 'style="background-color:#DCE4EF; font-size: 8pt;"';
list($h1, $m1) = explode(':', $pausesumme);
$pausesumme = $h1*3600+$m1*60;
$tagessaldo = $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s'))-$datum->mktime_fromtimestamp($datum->formatDatum($tagesbeginn, $format='Y-m-d H:i:s'))-3600;
if ($tagessaldo>18000 && $pflichtpause==false)
{
$pausesumme = $pausesumme+1800;
}
$tagessaldo = $tagessaldo-$pausesumme;
$tagessaldo = date('H:i', ($tagessaldo));
echo '<tr>
<td '.$style.' colspan="7">';
// Zusaetzlicher span fuer Addon Informationen
echo '<span id="tag_'.$datum->formatDatum($tagesbeginn,'d_m_Y').'"></span>';
echo '</td>
<td align="right" colspan="2" '.$style.'>
<b>'.$p->t("zeitaufzeichnung/arbeitszeit").': '.$datum->formatDatum($tagesbeginn, $format='H:i').'-'.$datum->formatDatum($tagesende, $format='H:i').' '.$p->t("eventkalender/uhr").'</b><br>
'.$p->t("zeitaufzeichnung/pause").' '.($pflichtpause==false?$p->t("zeitaufzeichnung/inklusivePflichtpause"):'').':
</td>
<td '.$style.' align="right"><b>'.$tagessaldo.'</b><br>'.date('H:i', ($pausesumme-3600)).'</td>
<td '.$style.' colspan="3"></td>';
$tag=$datumtag;
$tagessumme='00:00';
$pausesumme='00:00';
$tagesbeginn = '';
$tagesende = '';
$pflichtpause = false;
$wochensaldo = $datum_obj->sumZeit($wochensaldo,$tagessaldo );
//if ($row->uid)
//{
if ($datum->formatDatum($tag,'N') == '6' || $datum->formatDatum($tag,'N') == '7')
$style = 'style="background-color:#eeeeee; font-size: 8pt;"';
else
$style = 'style="background-color:#DCE4EF; font-size: 8pt;"';
// zeitsperren anzeigen
if (array_key_exists($datum->formatDatum($tag,'Y-m-d'), $zeitsperren))
{
$zeitsperre_text = " -- ".$zeitsperren[$datum->formatDatum($tag,'Y-m-d')]." -- ";
$style = 'style="background-color:#cccccc; font-size: 8pt;"';
}
else
$zeitsperre_text = '';
//var_dump($zs->result);
if (isset($_GET["von_datum"]) && $datum->formatDatum($tag, 'd.m.Y') == $_GET["von_datum"])
$style = 'style="border-top: 3px solid #8DBDD8; border-bottom: 3px solid #8DBDD8"';
list($h1, $m1) = explode(':', $pausesumme);
$pausesumme = $h1*3600+$m1*60;
$tagessaldo = $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s'))-$datum->mktime_fromtimestamp($datum->formatDatum($tagesbeginn, $format='Y-m-d H:i:s'))-3600;
if ($tagessaldo>18000 && $pflichtpause==false)
{
$pausesumme = $pausesumme+1800;
}
$tagessaldo = $tagessaldo-$pausesumme;
$tagessaldo = date('H:i', ($tagessaldo));
echo '<tr id="tag_row_'.$datum->formatDatum($tag,'d_m_Y').'"><td '.$style.' colspan="7">';
// Zusaetzlicher span fuer Addon Informationen
$lang = getSprache();
if ($lang == 'German')
$langindex = 1;
else
$langindex = 2;
echo '<b>'.$tagbez[$langindex][$datum->formatDatum($tag,'N')].' '.$datum->formatDatum($tag,'d.m.Y').'</b> <span id="tag_'.$datum->formatDatum($tag,'d_m_Y').'">'.$zeitsperre_text.'</span>';
echo '</td>
<td align="right" colspan="2" '.$style.'>
<b>'.$p->t("zeitaufzeichnung/arbeitszeit").': '.$datum->formatDatum($tagesbeginn, $format='H:i').'-'.$datum->formatDatum($tagesende, $format='H:i').' '.$p->t("eventkalender/uhr").'</b><br>
'.$p->t("zeitaufzeichnung/pause").' '.($pflichtpause==false?$p->t("zeitaufzeichnung/inklusivePflichtpause"):'').':
</td>
<td '.$style.' align="right"><b>'.$tagessaldo.'</b><br>'.date('H:i', ($pausesumme-3600)).'</td>
<td '.$style.' colspan="3" align="right"><a href="?von_datum='.$datum->formatDatum($tag,'d.m.Y').'&bis_datum='.$datum->formatDatum($tag,'d.m.Y').'" class="item">&lt;-</a></td>';
$tag=$datumtag;
$tagessumme='00:00';
$pausesumme='00:00';
$tagesbeginn = '';
$tagesende = '';
$pflichtpause = false;
$wochensaldo = $datum_obj->sumZeit($wochensaldo,$tagessaldo );
//}
//else
//{
// echo '<tr><td style="background-color:#DCE4EF; font-size: 8pt;" colspan="13"><b>'.$datum->formatDatum($row->datum,'D d.m.Y').'</b></b> <span id="tag_'.$datum->formatDatum($row->datum,'d_m_Y').'"></span></td></tr>';
//}
}
// Nach jeder Woche eine Summenzeile einfuegen und eine neue Tabelle beginnen
$datumwoche = $datum_obj->formatDatum($row->start, 'W');
$datumwoche = $datum_obj->formatDatum($row->datum, 'W');
if(is_null($woche))
$woche = $datumwoche;
if($woche!=$datumwoche)
@@ -758,33 +799,35 @@ if($projekt->getProjekteMitarbeiter($user))
</tbody>
<tfoot>
<tr>
<th colspan="7"></th>
<th align="right" colspan="2" style="font-weight: normal;"><b>'.$p->t("zeitaufzeichnung/wochensummeArbeitszeit").':</b></th>
<th align="right" style="font-weight: normal;"><b>'.$wochensaldo.'</b></th>
<th colspan="3"></th>
<th colspan="7" style="background-color: #8DBDD8;"></th>
<th style="background-color: #8DBDD8;" align="right" colspan="2" style="font-weight: normal;"><b>'.$p->t("zeitaufzeichnung/wochensummeArbeitszeit").':</b></th>
<th style="background-color: #8DBDD8;" align="right" style="font-weight: normal;"><b>'.$wochensaldo.'</b></th>
<th style="background-color: #8DBDD8;" colspan="3"></th>
</tr>
</tfoot>
</table>';
<!--</table>-->';
echo '
<table id="t'.$datumwoche.'" class="tablesorter">
<!--<table id="t'.$datumwoche.'" class="tablesorter">-->
<tr><th colspan="13">&nbsp;</th></tr>
<thead>
<tr>
<th style="background-color: #8DBDD8;" align="center" class="{sorter: false}" colspan="13">'.$p->t("eventkalender/kw").' '.$datumwoche.'</th>
</tr>
<tr>
<th>'.$p->t("zeitaufzeichnung/id").'</th>
<th>'.$p->t("zeitaufzeichnung/user").'</th>
<th>'.$p->t("zeitaufzeichnung/projekt").'</th>
<th>'.$p->t("zeitaufzeichnung/oe").' 1</th>
<th>'.$p->t("zeitaufzeichnung/oe").' 2</th>
<th>'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
<th>'.$p->t("zeitaufzeichnung/service").'</th>
<th>'.$p->t("zeitaufzeichnung/start").'</th>
<th>'.$p->t("zeitaufzeichnung/ende").'</th>
<th>'.$p->t("zeitaufzeichnung/dauer").'</th>
<th>'.$p->t("global/beschreibung").'</th>
<th colspan="2">'.$p->t("global/aktion").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/id").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/user").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/projekt").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 1</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 2</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/service").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/start").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/ende").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/dauer").'</th>
<th style="background-color:#DCE4EF" align="center">'.$p->t("global/beschreibung").'</th>
<th style="background-color:#DCE4EF" align="center" colspan="2">'.$p->t("global/aktion").'</th>
</tr>
</thead>
<tbody>';
@@ -796,7 +839,8 @@ if($projekt->getProjekteMitarbeiter($user))
$pausesumme='00:00';
$wochensaldo = '00:00';
}
if ($row->uid)
{
$wochensumme = $datum_obj->sumZeit($wochensumme, $row->diff);
if ($row->aktivitaet_kurzbz=='Pause')
{
@@ -825,8 +869,8 @@ if($projekt->getProjekteMitarbeiter($user))
<td '.$style.'>'.$db->convert_html_chars($row->oe_kurzbz_2).'</td>
<td '.$style.'>'.$db->convert_html_chars($row->aktivitaet_kurzbz).'</td>
<td '.$style.' title="'.$service->bezeichnung.'">'.StringCut($db->convert_html_chars($service->bezeichnung),20,null,'...').'</td>
<td '.$style.' nowrap>'.date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->start)).'</td>
<td '.$style.' nowrap>'.date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->ende)).'</td>
<td '.$style.' nowrap>'.date('H:i', $datum->mktime_fromtimestamp($row->start)).'</td>
<td '.$style.' nowrap>'.date('H:i', $datum->mktime_fromtimestamp($row->ende)).'</td>
<td '.$style.' align="right">'.$db->convert_html_chars($row->diff).'</td>
<td '.$style.' title="'.$db->convert_html_chars(mb_eregi_replace("\r\n",' ',$row->beschreibung)).'">'.StringCut($db->convert_html_chars($row->beschreibung),20,null,'...').'</td>
<td '.$style.'>';
@@ -844,18 +888,22 @@ if($projekt->getProjekteMitarbeiter($user))
if ($tagesende=='' || $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s')) < $datum->mktime_fromtimestamp($datum->formatDatum($row->ende, $format='Y-m-d H:i:s')))
$tagesende = $row->ende;
}
}
echo '</tbody>';
if ($alle===false)
{
echo '<tfoot>
<tr>
<th align="center" colspan="13">'.$p->t('zeitaufzeichnung/endeXTageAnsicht', array($angezeigte_tage)).'</th>
</tr>
</tfoot>';
echo '</table>';
}
//echo '</table>';
//echo $p->t("zeitaufzeichnung/gesamtdauer").": ".$db->convert_html_chars($summe); Aukommentiert. Irrelevant
}
echo '</table>';
/*
}
else
@@ -869,6 +917,8 @@ else
echo $p->t("zeitaufzeichnung/fehlerBeimErmittelnDerProjekte");
}
echo '
<span id="globalmessages"></span>
</body>
File diff suppressed because it is too large Load Diff
-711
View File
@@ -1,711 +0,0 @@
<?php
/* Copyright (C) 2012 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: Karl Burkhart <burkhart@technikum-wien.at>
* Manfred Kindl <kindlm@technikum-wien.at>
*/
require_once '../../config/cis.config.inc.php';
require_once '../../include/phrasen.class.php';
require_once '../../include/person.class.php';
require_once '../../include/studiengang.class.php';
require_once '../../include/datum.class.php';
require_once '../../include/mail.class.php';
require_once '../../include/prestudent.class.php';
require_once '../../include/preinteressent.class.php';
require_once '../../include/kontakt.class.php';
require_once '../../include/studiensemester.class.php';
require_once '../../include/datum.class.php';
require_once('../../include/sprache.class.php');
require_once '../../include/securimage/securimage.php';
$lang = filter_input(INPUT_GET, 'lang');
if(isset($lang))
{
setSprache($lang);
}
$method = filter_input(INPUT_GET, 'method');
$message = '';
$datum = new datum();
$sprache = filter_input(INPUT_GET, 'sprache');
if(isset($sprache))
{
$sprache = new sprache();
if($sprache->load($_GET['sprache']))
{
setSprache($_GET['sprache']);
}
else
setSprache(DEFAULT_LANGUAGE);
}
$sprache = getSprache();
$p = new phrasen($sprache);
$db = new basis_db();
$userid = trim(filter_input(INPUT_POST, 'userid'));
// Login gestartet
if ($userid)
{
$person = new person();
session_start();
$person_id = $person->checkZugangscodePerson($userid);
//Zugangscode wird überprüft
if($person_id != false)
{
$_SESSION['bewerbung/user'] = $userid;
$_SESSION['bewerbung/personId'] = $person_id;
header('Location: bewerbung.php');
exit;
}
else
{
$message = "<script type=\"text/javascript\">alert('".$p->t('bewerbung/zugangsdatenFalsch')."')</script>";
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Registration für Studiengänge</title>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="robots" content="noindex">
<link href="../../include/css/bootstrap.min.css" rel="stylesheet" type="text/css">
<link href="../../include/css/registration.css" rel="stylesheet" type="text/css">
</head>
<body class="main">
<div class="container">
<?php
$sprache2 = new sprache();
$sprache2->getAll(true);
?>
<div class="dropdown pull-right">
<button class="btn btn-default dropdown-toggle" type="button" id="sprache-label" data-toggle="dropdown" aria-expanded="true">
<?php echo $sprache2->getBezeichnung(getSprache(), getSprache()) ?>
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu" aria-labelledby="sprache-label" id="sprache-dropdown">
<?php foreach($sprache2->result as $row): ?>
<li role="presentation">
<a href="#" role="menuitem" tabindex="-1" data-sprache="<?php echo $row->sprache ?>">
<?php echo $row->bezeichnung_arr[getSprache()] ?>
</a>
</li>
<?php endforeach; ?>
</ul>
</div>
<ol class="breadcrumb">
<?php if($method === 'registration'): ?>
<li>
<a href="<?php echo basename(__FILE__) ?>">
<?php echo $p->t('bewerbung/login') ?>
</a>
</li>
<li class="active">
<?php echo $p->t('bewerbung/registration') ?>
</li>
<?php else: ?>
<li class="active">
<?php echo $p->t('bewerbung/login') ?>
</li>
<?php endif; ?>
</ol>
<?php
/**
* Maske zum Registrieren wird angezeigt
* Nach erfolgreicher Registration wird eine Benutzer ID erstellt und an den Benutzer geschickt
*/
if($method == 'registration'):
// Falls Sicherheitscode falsch ist - übergebene Werte speichern und vorausfüllen
$date = new datum();
$vorname = filter_input(INPUT_POST, 'vorname');
$nachname = filter_input(INPUT_POST, 'nachname');
$geb_datum = filter_input(INPUT_POST, 'geb_datum');
$geschlecht = filter_input(INPUT_POST, 'geschlecht');
$email = filter_input(INPUT_POST, 'email');
$studiengaenge = filter_input(INPUT_POST, 'studiengaenge');
$std_semester = filter_input(INPUT_POST, 'studiensemester_kurzbz');
$stg_auswahl = filter_input(INPUT_POST, 'stg');
if(!is_array($studiengaenge))
{
$studiengaenge = array();
}
if($geb_datum)
{
$geb_datum = date('Y-m-d', strtotime($geb_datum));
}
$submit = filter_input(INPUT_POST, 'submit');
if(isset($submit))
{
$securimage = new Securimage();
// Sicherheitscode wurde falsch eingegeben
if ($securimage->check($_POST['captcha_code']) == false)
{
$message = '<span class="error">'.$p->t('bewerbung/sicherheitscodeFalsch').'</span><br />';
}
elseif (count($studiengaenge)==0)
{
$message = '<span class="error">'.$p->t('bewerbung/bitteStudienrichtungWaehlen').'</span><br />';
}
else
{
// Person anlegen
$person = new person();
$zugangscode = uniqid();
$person->nachname = $nachname;
$person->vorname = $vorname;
$person->gebdatum = $geb_datum;
$person->geschlecht = $geschlecht;
$person->aktiv = true;
$person->zugangscode = $zugangscode;
$person->insertamum = date('Y-m-d H:i:s');
$person->updateamum = date('Y-m-d H:i:s');
$person->new = true;
if(!$person->save())
{
die('Fehler beim Anlegen der Person aufgetreten.');
}
// Email Kontakt zu Person speichern
$kontakt = new kontakt();
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'email';
$kontakt->kontakt = $email;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->updateamum = date('Y-m-d H:i:s');
$kontakt->new = true;
if(!$kontakt->save())
{
die('Fehler beim speichern des Kontaktes');
}
$anzStg = count($studiengaenge);
// ab wieviel ausgewählten Studiengängen kommt Student ins Preinteressententool
if(count($studiengaenge) < ANZAHL_PREINTERESSENT)
{
// Prestudenten anlegen
for($i = 0; $i<$anzStg; $i++)
{
$prestudent = new prestudent();
$prestudent->person_id = $person->person_id;
$prestudent->studiengang_kz = $studiengaenge[$i];
$prestudent->aufmerksamdurch_kurzbz = 'k.A.';
$prestudent->insertamum = date('Y-m-d H:i:s');
$prestudent->updateamum = date('Y-m-d H:i:s');
$prestudent->reihungstestangetreten = false;
$prestudent->new = true;
if(!$prestudent->save())
{
die('Fehler beim anlegen des Prestudenten');
}
// Interessenten Status anlegen
$prestudent_status = new prestudent();
$prestudent_status->load($prestudent->prestudent_id);
$prestudent_status->status_kurzbz = 'Interessent';
$prestudent_status->studiensemester_kurzbz = $std_semester;
$prestudent_status->ausbildungssemester = '1';
$prestudent_status->datum = date("Y-m-d H:m:s");
$prestudent_status->insertamum = date("Y-m-d H:m:s");
$prestudent_status->insertvon = '';
$prestudent_status->updateamum = date("Y-m-d H:m:s");
$prestudent_status->updatevon = '';
$prestudent_status->new = true;
if(!$prestudent_status->save_rolle())
{
die('Fehler beim anlegen der Rolle');
}
}
}
else
{
// Preinteressent anlegen
$timestamp = time();
$preInteressent = new preinteressent();
$preInteressent->person_id = $person->person_id;
$preInteressent->aufmerksamdurch_kurzbz = 'k.A.';
$preInteressent->kontaktmedium_kurzbz = 'bewerbungonline';
$preInteressent->erfassungsdatum = date('Y-m-d', $timestamp);
$preInteressent->insertamum = date('Y-m-d H:i:s');
$preInteressent->updateamum = date('Y-m-d H:i:s');
$preInteressent->new = true;
if(!$preInteressent->save())
{
die('Fehler beim anlegen des Preinteressenten');
}
// Zuordnungen anlegen
for($i = 0; $i<$anzStg; $i++)
{
$preIntZuordnung = new preinteressent();
$preIntZuordnung->preinteressent_id = $preInteressent->preinteressent_id;
$preIntZuordnung->studiengang_kz = $studiengaenge[$i];
$preIntZuordnung->prioritaet = '1';
$preIntZuordnung->insertamum = date('Y-m-d H:i:s');
$preIntZuordnung->updateamum = date('Y-m-d H:i:s');
$preIntZuordnung->new = true;
if(!$preIntZuordnung->saveZuordnung())
{
die('Fehler beim anlegen des Preinteressenten');
}
}
}
//Email schicken
echo sendMail($zugangscode, $email);
exit();
}
} ?>
<?php echo $message ?>
<form method="post" action="<?php echo basename(__FILE__) ?>?method=registration" name="RegistrationLoginForm" class="form-horizontal">
<p class="infotext">
<?php echo $p->t('bewerbung/einleitungstext') ?>
</p>
<div class="form-group">
<label for="zugangscode" class="col-sm-3 control-label">
<?php echo $p->t('bewerbung/zugangscode') ?> <?php echo $p->t('bewerbung/fallsVorhanden') ?>
</label>
<div class="col-sm-4">
<div class="input-group">
<input type="text" class="form-control" id="zugangscode" name="userid" placeholder="<?php echo $p->t('bewerbung/zugangscode') ?>">
<span class="input-group-btn">
<button type="submit" class="btn btn-primary" value="Login">
<?php echo $p->t('bewerbung/login') ?>
</button>
</span>
</div>
</div>
</div>
<div class="form-group">
<label for="vorname" class="col-sm-3 control-label">
<?php echo $p->t('global/vorname') ?>
</label>
<div class="col-sm-4">
<input type="text" maxlength="32" name="vorname" id="vorname" value="<?php echo $vorname ?>" class="form-control">
</div>
</div>
<div class="form-group">
<label for="nachname" class="col-sm-3 control-label">
<?php echo $p->t('global/nachname') ?>
</label>
<div class="col-sm-4">
<input type="text" maxlength="64" name="nachname" id="nachname" value="<?php echo $nachname ?>" class="form-control">
</div>
</div>
<div class="form-group">
<label for="geburtsdatum" class="col-sm-3 control-label">
<?php echo $p->t('global/geburtsdatum') ?>
</label>
<div class="col-sm-4">
<input type="datetime" name="geb_datum" id="geburtsdatum" value="<?php echo $geb_datum ?>" class="form-control" placeholder="<?php echo $p->t('bewerbung/datumFormat') ?>">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">
<?php echo $p->t('global/geschlecht') ?>
</label>
<div class="col-sm-4 text-center">
<label class="radio-inline">
<input type="radio" name="geschlecht" id="geschlechtm" value="m" <?php echo $geschlecht == 'm' ? 'checked' : '' ?>>
<?php echo $p->t('global/mann'); ?>
</label>
<label class="radio-inline">
<input type="radio" name="geschlecht" id="geschlechtw" value="w" <?php echo $geschlecht == 'w' ? 'checked' : '' ?>>
<?php echo $p->t('global/frau') ?>
</label>
</div>
</div>
<div class="form-group">
<label for="email" class="col-sm-3 control-label">
<?php echo $p->t('global/emailAdresse') ?>
</label>
<div class="col-sm-4">
<input type="email" maxlength="128" name="email" id="email" value="<?php echo $email ?>" class="form-control">
</div>
</div>
<div class="form-group">
<label for="studiensemester_kurzbz" class="col-sm-3 control-label">
<?php echo $p->t('bewerbung/geplanterStudienbeginn') ?>
</label>
<div class="col-sm-4 dropdown">
<select id="studiensemester_kurzbz" name="studiensemester_kurzbz" class="form-control">
<option value=""><?php echo $p->t('bewerbung/bitteWaehlen') ?></option>
<?php
$stsem = new studiensemester();
$stsem->getFutureStudiensemester('',4);
foreach($stsem->studiensemester as $row): ?>
<option value="<?php echo $row->studiensemester_kurzbz ?>"
<?php echo $std_semester == $row->studiensemester_kurzbz ? 'selected' : '' ?>>
<?php echo $row->bezeichnung ?>
</option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">
<?php echo $p->t('bewerbung/studienrichtung') ?>
</label>
<div class="col-sm-6" id="liste-studiengaenge">
<?php
$stg = new studiengang();
$stg->getAll('typ,bezeichnung',true);
foreach($stg->result as $result):
if($result->studiengang_kz > 0):
$checked = '';
$typ = new studiengang();
$typ->getStudiengangTyp($result->typ);
if(in_array($result->studiengang_kz, $studiengaenge) || $result->studiengang_kz == $stg_auswahl)
{
$checked = 'checked';
} ?>
<div class="checkbox">
<label>
<input type="checkbox" name="studiengaenge[]" value="<?php echo $result->studiengang_kz ?>" <?php echo $checked ?>>
<?php echo $result->bezeichnung ?>
<span class="badge" id="badge<?php echo $result->studiengang_kz ?>"></span>
<input type="hidden" id="anmerkung<?php echo $result->studiengang_kz ?>">
</label>
</div>
<?php endif;
endforeach; ?>
</div>
</div>
<div class="form-group">
<div class="col-sm-3">
<img id="captcha" class="center-block img-responsive" src="<?php echo APP_ROOT ?>include/securimage/securimage_show.php" alt="CAPTCHA Image" />
<a href="#" onclick="document.getElementById('captcha').src = '<?php echo APP_ROOT ?>include/securimage/securimage_show.php?' + Math.random(); return false">
<?php echo $p->t('bewerbung/andereGrafik') ?>
</a>
</div>
<div class="col-sm-4">
<?php echo $p->t('bewerbung/captcha') ?>
<input type="text" name="captcha_code" maxlength="6" id="captcha" class="form-control">
<input type="hidden" name="zugangscode" value="<?php echo uniqid() ?>">
</div>
</div>
<div class="form-group">
<div class="col-sm-4 col-sm-offset-3">
<input type="submit" name="submit" value="<?php echo $p->t('bewerbung/registrieren') ?>" onclick="return checkRegistration()" class="btn btn-primary">
</div>
</div>
</form>
<?php else: ?>
<?php echo $message ?>
<div class="row">
<div class="col-xs-10 col-xs-offset-1 col-sm-6 col-sm-offset-3">
<form action ="<?php echo basename(__FILE__) ?>" method="POST" id="lp">
<h1 class="text-center">
<?php echo $p->t('bewerbung/welcome') ?>
</h1>
<img class="center-block img-responsive" src="../../skin/styles/<?php echo DEFAULT_STYLE ?>/logo.png">
<p class="text-center"><?php echo $p->t('bewerbung/registrierenOderZugangscode') ?></p>
<div class="form-group">
<div class="input-group">
<input class="form-control" type="text" placeholder="<?php echo $p->t('bewerbung/zugangscode') ?>" name="userid">
<span class="input-group-btn">
<button class="btn btn-primary" type="submit" name="submit">
Login
</button>
</span>
</div>
</div>
<?php
if(isset($errormsg))
{
echo $errormsg;
}
?>
</form>
</div>
</div>
<?php endif; ?>
</div>
<div class="modal fade" id="prio-dialog"><div class="modal-dialog"><div class="modal-content">
<div class="modal-header">
<button type="button" class="close cancel-prio" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title"><?php echo $p->t('bewerbung/priowaehlen') ?></h4>
</div>
<div class="model-body">
<?php foreach(array('topprio', 'alternative') as $prio): ?>
<div class="" id="<?php echo $prio ?>">
<div class="col-sm-6">
<h4><?php echo $p->t('bewerbung/orgform') ?></h4>
<div class="radio">
<label>
<input type="radio" name="<?php echo $prio ?>Orgform" value="egal">
<?php echo $p->t('bewerbung/egal') ?>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="<?php echo $prio ?>Orgform" value="VZ">
<?php echo $p->t('bewerbung/orgform/vollzeit') ?>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="<?php echo $prio ?>Orgform" value="BB">
<?php echo $p->t('bewerbung/orgform/berufsbegleitend') ?>
</label>
</div>
</div>
<div class="col-sm-6">
<h4><?php echo $p->t('bewerbung/sprache') ?></h4>
<div class="radio">
<label>
<input type="radio" name="<?php echo $prio ?>Sprache" value="egal">
<?php echo $p->t('bewerbung/egal') ?>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="<?php echo $prio ?>Sprache" value="De">
<?php echo $p->t('bewerbung/sprache/deutsch') ?>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="<?php echo $prio ?>Sprache" value="En">
<?php echo $p->t('bewerbung/sprache/englisch') ?>
</label>
</div>
</div>
</div>
<?php endforeach; ?>
<div class="modal-footer">
<button class="btn btn-default cancel-prio" data-dismiss="modal"><?php echo $p->t('bewerbung/abbrechen') ?></button>
<button class="btn btn-primary ok-prio" data-dismiss="modal"><?php echo $p->t('bewerbung/ok') ?></button>
</div>
</div>
</div></div></div>
<script src="../../include/js/jquery.min.1.11.1.js"></script>
<script src="../../include/js/bootstrap.min.js"></script>
<script type="text/javascript">
function changeSprache(sprache)
{
method = '<?php echo $db->convert_html_chars($method);?>';
window.location.href="registration.php?sprache="+sprache+"&method="+method;
}
function checkRegistration()
{
if(document.RegistrationLoginForm.vorname.value == "")
{
alert("<?php echo $p->t('bewerbung/bitteVornameAngeben')?>");
return false;
}
if(document.RegistrationLoginForm.nachname.value == "")
{
alert("<?php echo $p->t('bewerbung/bitteNachnameAngeben')?>");
return false;
}
if(document.RegistrationLoginForm.geb_datum.value == "")
{
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
return false;
}
else
{
var gebDat = document.RegistrationLoginForm.geb_datum.value;
gebDat = gebDat.split(".");
if(gebDat.length !== 3)
{
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
return false;
}
if(gebDat[0].length !==2 && gebDat[1].length !== 2 && gebDat[2].length !== 4)
{
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
return false;
}
var date = new Date(gebDat[2], gebDat[1], gebDat[0]);
date.setMonth(date.getMonth()-1);
gebDat[0] = parseInt(gebDat[0], 10);
gebDat[1] = parseInt(gebDat[1], 10)-1;
gebDat[2] = parseInt(gebDat[2], 10);
if(!(date.getFullYear() === gebDat[2] && date.getMonth() === gebDat[1] && date.getDate() === gebDat[0]))
{
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
return false;
}
}
if((document.getElementById('geschlechtm').checked == false)&&(document.getElementById('geschlechtw').checked == false))
{
alert("<?php echo $p->t('bewerbung/bitteGeschlechtWaehlen')?>");
return false;
}
if(document.RegistrationLoginForm.email.value == "")
{
alert("<?php echo $p->t('bewerbung/bitteEmailAngeben')?>");
return false;
}
if(document.RegistrationLoginForm.studiensemester_kurzbz.value == "")
{
alert("<?php echo $p->t('bewerbung/bitteStudienbeginnWaehlen')?>");
return false;
}
return true;
}
function checkPrios(slideDuration) {
var stgkz = $('#prio-dialog').data('stgkz'),
anm = $('#anmerkung' + stgkz);
if($('#topprio input:checked[value="egal"]').length === 2) {
$('#alternative')
.addClass('inactive')
.slideUp(slideDuration);
anm.val('keine Prio');
$('#badge' + stgkz).html(anm.val());
} else {
$('#alternative')
.removeClass('inactive')
.slideDown(slideDuration);
anm.val('');
anm.val('Prio: ' + $('#topprio input[name="topprioOrgform"]:checked').val() + '/'
+ $('#topprio input[name="topprioSprache"]:checked').val());
if($('#alternative input:checked[value="egal"]').length !== 2) {
anm.val(anm.val() + '; Alt: ' + $('#alternative input[name="alternativeOrgform"]:checked').val() + '/'
+ $('#alternative input[name="alternativeSprache"]:checked').val());
}
$('#badge' + stgkz).html(anm.val());
}
}
$(function() {
$('#sprache-dropdown a').on('click', function() {
var sprache = $(this).attr('data-sprache');
changeSprache(sprache);
});
$('#liste-studiengaenge input').on('change', function() {
var stgkz = $(this).val();
$('#prio-dialog').data({stgkz: stgkz});
if($(this).prop('checked')) {
$('#prio-dialog input[value="egal"]').prop('checked', true);
checkPrios(0);
$('#prio-dialog').modal('show');
} else {
$('#badge' + stgkz).html('');
}
});
$('#prio-dialog button.cancel-prio').on('click', function() {
var stgkz = $('#prio-dialog').data('stgkz');
$('#liste-studiengaenge input[value="' + stgkz + '"]').prop('checked', false);
$('#badge' + stgkz).html('');
});
$('#prio-dialog button.ok-prio').on('click', function() {
checkPrios(0);
});
$('#prio-dialog input').on('change', function() {
checkPrios(200);
});
});
</script>
</body>
</html>
<?php
function sendMail($zugangscode, $email)
{
global $p, $vorname, $nachname;
$mail = new mail($email, 'no-reply', $p->t('bewerbung/registration'), $p->t('bewerbung/mailtextHtml'));
$text = $p->t('bewerbung/mailtext',array($vorname, $nachname, $zugangscode));
$mail->setHTMLContent($text);
if(!$mail->send())
$msg= '<span class="error">'.$p->t('bewerbung/fehlerBeimSenden').'</span><br /><a href='.$_SERVER['PHP_SELF'].'?method=registration>'.$p->t('bewerbung/zurueckZurAnmeldung').'</a>';
else
$msg= $p->t('global/emailgesendetan')." $email!<br><a href=".$_SERVER['PHP_SELF'].">".$p->t('bewerbung/zurueckZurAnmeldung')."</a>";
// sende Nachricht an Assistenz
return $msg;
}
+3
View File
@@ -39,6 +39,9 @@ define('CIS_SUCHE_LVPLAN_ANZEIGEN',true);
// Link zu den Excel Notenlisten im CIS Anzeigen
define('CIS_ANWESENHEITSLISTE_NOTENLISTE_ANZEIGEN',true);
// Punkte bei der Noteneingabe anzeigen
define('CIS_GESAMTNOTE_PUNKTE',false);
// Anzeigeoptionen für LV-Plan Menü
define('CIS_LVPLAN_EXPORT_ANZEIGEN',true);
define('CIS_LVPLAN_PERSONENAUSWAHL_ANZEIGEN',true);
+5 -2
View File
@@ -19,8 +19,6 @@
* 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');
@@ -46,6 +44,11 @@ if(!$variable->loadVariables($user))
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('basis/fas'))
die('Sie haben keine Berechtigung für diese Seite');
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css" ?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type="text/css"?>';
@@ -26,6 +26,14 @@ 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\" ?>";
@@ -112,6 +120,10 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
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>
@@ -132,6 +144,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
<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>
@@ -201,6 +214,10 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
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>
@@ -219,6 +236,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
<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>
@@ -240,9 +258,11 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
</menupopup>
</template>
</menulist>
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="true"/>
<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>
</vbox>
</overlay>
</overlay>
@@ -1322,6 +1322,7 @@ function LehrveranstaltungNotenDetailDisableFields(val)
{
document.getElementById('lehrveranstaltung-noten-button-speichern').disabled=val;
document.getElementById('lehrveranstaltung-noten-menulist-note').disabled=val;
document.getElementById('lehrveranstaltung-noten-textbox-punkte').disabled=val;
}
// ****
@@ -1645,6 +1646,7 @@ function LehrveranstaltungNoteSpeichern()
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
note = document.getElementById('lehrveranstaltung-noten-menulist-note').value;
punkte = document.getElementById('lehrveranstaltung-noten-textbox-punkte').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
@@ -1656,6 +1658,7 @@ function LehrveranstaltungNoteSpeichern()
req.add('student_uid', student_uid);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
req.add('note', note);
req.add('punkte', punkte);
var response = req.executePOST();
@@ -1712,11 +1715,13 @@ function LehrveranstaltungNotenAuswahl()
//Daten holen
note = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#note" ));
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
if(note=='')
note='9';
document.getElementById('lehrveranstaltung-noten-menulist-note').value=note;
document.getElementById('lehrveranstaltung-noten-textbox-punkte').value=punkte;
}
// ****
@@ -1762,7 +1767,13 @@ function LehrveranstaltungNotenImport()
if(zeile[0]!='' && zeile[1]!='')
{
req.add('matrikelnummer_'+i, zeile[0]);
req.add('note_'+i, zeile[1]);
<?php
if(CIS_GESAMTNOTE_PUNKTE)
echo "req.add('punkte_'+i, zeile[1]);";
else
echo "req.add('note_'+i, zeile[1]);";
?>
i++;
}
}
@@ -1790,6 +1801,47 @@ function LehrveranstaltungNotenImport()
}
}
/**
* Wird aufgerufen wenn Punkte zu einer Note eingetragen werden
* Laedt die Note anhand des Notenschluessels
*/
function LehrveranstaltungNotenPunkteChange()
{
var punkte = document.getElementById('lehrveranstaltung-noten-textbox-punkte').value;
punkte = punkte.replace(',','.');
if(punkte!='')
{
var tree=document.getElementById('lehrveranstaltung-noten-tree');
//Ausgewaehlte LV holen
var col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-lehrveranstaltung_id"] : "lehrveranstaltung-noten-tree-lehrveranstaltung_id";
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getnotenotenschluessel');
req.add('lehrveranstaltung_id', lehrveranstaltung_id);
req.add('punkte', punkte);
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
{
document.getElementById('lehrveranstaltung-noten-menulist-note').value=val.dbdml_data;
}
}
}
// ****
// * Erstellt das Zertifikat fuer die Freifaecher
// ****
@@ -2269,4 +2321,4 @@ function LvAngebotNew()
{
LvAngebotReset();
LvAngebotGruppeTreeRefresh();
}
}
+654 -654
View File
File diff suppressed because it is too large Load Diff
+22 -2
View File
@@ -1,6 +1,21 @@
<?php
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
/* 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');
@@ -14,6 +29,11 @@ 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"?>';
+65 -46
View File
@@ -41,17 +41,24 @@ require_once('../../include/student.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/note.class.php');
require_once('../../include/lehrveranstaltung.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/Excel/excel.php');
$db = new basis_db();
$user = get_uid();
loadVariables($user);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!isset($_GET['studiengang_kz']))
die('Falsche Parameteruebergabe');
else
$studiengang_kz = $_GET['studiengang_kz'];
if(!$rechte->isBerechtigt('student/noten',$studiengang_kz, 's'))
die('Sie haben keine Berechtigung fuer diese Seite');
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$typ = isset($_GET['typ'])?$_GET['typ']:'';
@@ -76,7 +83,7 @@ foreach ($result_student as $row)
{
if($uids!='')
$uids.=',';
$uids.="'".addslashes($row->uid)."'";
$uids.=$db->db_add_param($row->uid);
}
if($uids=='')
die('Es befinden sich keine Studierende in diesem Semester');
@@ -93,9 +100,9 @@ $qry = "SELECT
FROM
campus.vw_student_lehrveranstaltung, public.tbl_studentlehrverband
WHERE
tbl_studentlehrverband.studiengang_kz='".addslashes($studiengang_kz)."' AND
tbl_studentlehrverband.semester='".addslashes($semester)."' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($semester_aktuell)."' AND
tbl_studentlehrverband.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
tbl_studentlehrverband.semester=".$db->db_add_param($semester, FHC_INTEGER)." AND
vw_student_lehrveranstaltung.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)." AND
uid=student_uid AND
vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz
)
@@ -106,11 +113,11 @@ $qry = "SELECT
FROM
lehre.tbl_lehrveranstaltung JOIN lehre.tbl_zeugnisnote USING(lehrveranstaltung_id)
WHERE
tbl_lehrveranstaltung.studiengang_kz='".addslashes($studiengang_kz)."' AND
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
tbl_zeugnisnote.student_uid in($uids) AND
tbl_zeugnisnote.studiensemester_kurzbz='".addslashes($semester_aktuell)."'
tbl_zeugnisnote.studiensemester_kurzbz=".$db->db_add_param($semester_aktuell)."
ORDER BY bezeichnung";
//tbl_lehrveranstaltung.semester='".addslashes($semester)."' AND
if(!$result_lva = $db->db_query($qry))
die('Fehler beim Ermitteln der Lehrveranstaltungen');
@@ -122,6 +129,7 @@ $noten_farben = array();
foreach ($noten->result as $row)
{
$noten_arr[$row->note]=$row->anmerkung;
$noten_wert[$row->note]=$row->notenwert;
$noten_farben[$row->note]=$row->farbe;
}
@@ -174,9 +182,24 @@ if($typ=='xls')
{
$workbook->setCustomColor($note+10, 255, 255, 255);
}
$format_colored[$note] =& $workbook->addFormat();
$format_colored[$note]->setFgColor($note+10);
$format_colored[$note]->setBorder(1);
$format_colored[$note]->setAlign('center');
}
//30 = Grau = Nicht teilgenommen
$workbook->setCustomColor(30,90,90,90);
$format_colored_nichtzugeteilt =& $workbook->addFormat();
$format_colored_nichtzugeteilt->setFgColor(30);
$format_colored_nichtzugeteilt->setBorder(1);
$format_colored_nichtzugeteilt->setAlign('center');
$format_colored_nichteingetragen =& $workbook->addFormat();
$format_colored_nichteingetragen->setFgColor(19);
$format_colored_nichteingetragen->setBorder(1);
$format_colored_nichteingetragen->setAlign('center');
$spalte=0;
$zeile=1;
@@ -233,7 +256,7 @@ if($typ=='xls')
//Alle Zeugnisnoten des Studierenden holen
$noten = array();
$qry = "SELECT * FROM lehre.tbl_zeugnisnote WHERE student_uid='".addslashes($row_student->uid)."' AND studiensemester_kurzbz='".addslashes($semester_aktuell)."'";
$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);
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$noten[$row->lehrveranstaltung_id] = $row->note;
@@ -244,8 +267,8 @@ if($typ=='xls')
FROM
campus.vw_student_lehrveranstaltung
WHERE
uid='".addslashes($row_student->uid)."' AND
studiensemester_kurzbz='".addslashes($semester_aktuell)."'";
uid=".$db->db_add_param($row_student->uid)." AND
studiensemester_kurzbz=".$db->db_add_param($semester_aktuell);
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
@@ -256,36 +279,31 @@ if($typ=='xls')
$rowcount=0;
$summeects=0;
$gewichtetenote=0;
while($rowcount<$db->db_num_rows($result_lva))
{
$row_lva = $db->db_fetch_object($result_lva,$rowcount);
$rowcount++;
if(isset($noten[$row_lva->lehrveranstaltung_id]))
{
unset($format_colored);
$format_colored =& $workbook->addFormat();
$format_colored->setFgColor($noten[$row_lva->lehrveranstaltung_id]+10);
$format_colored->setBorder(1);
$format_colored->setAlign('center');
if(isset($format_colored))
$worksheet->write($zeile,++$spalte,$noten_arr[$noten[$row_lva->lehrveranstaltung_id]],$format_colored);
if(isset($format_colored[$noten[$row_lva->lehrveranstaltung_id]]))
$worksheet->write($zeile,++$spalte,$noten_arr[$noten[$row_lva->lehrveranstaltung_id]],$format_colored[$noten[$row_lva->lehrveranstaltung_id]]);
else
$worksheet->write($zeile,++$spalte,$noten_arr[$noten[$row_lva->lehrveranstaltung_id]]);
if(is_numeric($noten_arr[$noten[$row_lva->lehrveranstaltung_id]]))
if($noten_wert[$noten[$row_lva->lehrveranstaltung_id]]!='')
{
if(!isset($summe_lv[$row_lva->lehrveranstaltung_id]))
{
$summe_lv[$row_lva->lehrveranstaltung_id]=0;
$anzahl_lv[$row_lva->lehrveranstaltung_id]=0;
}
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten[$row_lva->lehrveranstaltung_id];
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten_wert[$noten[$row_lva->lehrveranstaltung_id]];
$anzahl_lv[$row_lva->lehrveranstaltung_id]++;
$summe+=$noten[$row_lva->lehrveranstaltung_id];
$summe+=$noten_wert[$noten[$row_lva->lehrveranstaltung_id]];
if(is_numeric($row_lva->ects))
{
$gewichtetenote += $noten[$row_lva->lehrveranstaltung_id]*$row_lva->ects;
$gewichtetenote += $noten_wert[$noten[$row_lva->lehrveranstaltung_id]]*$row_lva->ects;
$summeects+=$row_lva->ects;
}
$anzahl++;
@@ -293,21 +311,16 @@ if($typ=='xls')
}
else
{
//Keine Note fuer diese LV vorhanden
unset($format_colored);
$format_colored =& $workbook->addFormat();
//Keine Note fuer diese LV vorhanden
if(in_array($row_lva->lehrveranstaltung_id, $zugeteilte_lvs))
$format_colored->setFgColor(19); // zugeteilt zur LV aber noch nicht eingetragen
{
$worksheet->write($zeile,++$spalte,'',$format_colored_nichteingetragen);
}
else
$format_colored->setFgColor(30); //Grau - nicht zugeteilt zur LV
$format_colored->setBorder(1);
$format_colored->setAlign('center');
$worksheet->write($zeile,++$spalte,'',$format_colored);
unset($format_colored);
{
$worksheet->write($zeile,++$spalte,'',$format_colored_nichtzugeteilt);
}
}
}
if($anzahl!=0)
@@ -320,8 +333,11 @@ if($typ=='xls')
$worksheet->write($zeile,++$spalte,sprintf("%.2f",$schnitt), $format_number);
$worksheet->write($zeile,++$spalte,sprintf("%.2f",$gewichtetenote), $format_number);
$summegewichtet+=$gewichtetenote;
$anzahlgewichtet++;
if($gewichtetenote!=0)
{
$summegewichtet+=$gewichtetenote;
$anzahlgewichtet++;
}
}
$zeile++;
@@ -428,7 +444,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='".addslashes($row_student->uid)."' AND studiensemester_kurzbz='".addslashes($semester_aktuell)."'";
$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);
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$noten[$row->lehrveranstaltung_id] = $row->note;
@@ -439,8 +455,8 @@ else
FROM
campus.vw_student_lehrveranstaltung
WHERE
uid='".addslashes($row_student->uid)."' AND
studiensemester_kurzbz='".addslashes($semester_aktuell)."'";
uid=".$db->db_add_param($row_student->uid)." AND
studiensemester_kurzbz=".$db->db_add_param($semester_aktuell);
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
@@ -464,19 +480,19 @@ else
echo "<td $farbe>".$noten_arr[$noten[$row_lva->lehrveranstaltung_id]]."</td>";
if(is_numeric($noten_arr[$noten[$row_lva->lehrveranstaltung_id]]))
if($noten_wert[$noten[$row_lva->lehrveranstaltung_id]]!='')
{
if(!isset($summe_lv[$row_lva->lehrveranstaltung_id]))
{
$summe_lv[$row_lva->lehrveranstaltung_id]=0;
$anzahl_lv[$row_lva->lehrveranstaltung_id]=0;
}
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten[$row_lva->lehrveranstaltung_id];
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten_wert[$noten[$row_lva->lehrveranstaltung_id]];
$anzahl_lv[$row_lva->lehrveranstaltung_id]++;
$summe+=$noten[$row_lva->lehrveranstaltung_id];
$summe+=$noten_wert[$noten[$row_lva->lehrveranstaltung_id]];
if(is_numeric($row_lva->ects))
{
$gewichtetenote += $noten[$row_lva->lehrveranstaltung_id]*$row_lva->ects;
$gewichtetenote += $noten_wert[$noten[$row_lva->lehrveranstaltung_id]]*$row_lva->ects;
$summeects+=$row_lva->ects;
}
$anzahl++;
@@ -501,8 +517,11 @@ else
$gewichtetenote /= $summeects;
echo "<td>".($schnitt==0?'&nbsp;':sprintf("%.2f", $schnitt))."</td>";
echo "<td>".($gewichtetenote==0?'&nbsp;':sprintf("%.2f", $gewichtetenote))."</td>";
$summegewichtet+=$gewichtetenote;
$anzahlgewichtet++;
if($gewichtetenote!=0)
{
$summegewichtet+=$gewichtetenote;
$anzahlgewichtet++;
}
echo '</tr>';
}
+59 -6
View File
@@ -61,6 +61,7 @@ require_once('../../include/pruefling.class.php');
require_once('../../include/mail.class.php');
require_once('../../include/kontakt.class.php');
require_once('../../include/dms.class.php');
require_once('../../include/notenschluessel.class.php');
$user = get_uid();
$db = new basis_db();
@@ -2372,6 +2373,37 @@ if(!$error)
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='getnotenotenschluessel')
{
if(!$rechte->isBerechtigt('admin', null, 's') && !$rechte->isBerechtigt('assistenz', null, 's') &&
!$rechte->isBerechtigt('student/noten', null, 's'))
{
$return = false;
$error = true;
$errormsg = 'Sie haben keine Berechtigung';
}
else
{
$punkte=$_POST['punkte'];
$lehrveranstaltung_id=$_POST['lehrveranstaltung_id'];
$studiensemester_kurzbz=$semester_aktuell;
$notenschluessel = new notenschluessel();
if($note = $notenschluessel->getNote($punkte, $lehrveranstaltung_id, $studiensemester_kurzbz))
{
$return = true;
$error = false;
$data = $note;
}
else
{
$return = false;
$error = true;
$errormsg=$notenschluessel->errormsg;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='savenote')
{
//Speichert einen Noteneintrag
@@ -2453,6 +2485,8 @@ if(!$error)
$noten->studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
$noten->benotungsdatum = date('Y-m-d H:i:s');
$noten->note = $_POST['note'];
if(isset($_POST['punkte']))
$noten->punkte=$_POST['punkte'];
if($noten->save())
{
@@ -2530,8 +2564,7 @@ if(!$error)
if(!$error)
{
if(!$rechte->isBerechtigt('admin', $stg_lva, 'suid') && !$rechte->isBerechtigt('admin', $stg_std, 'suid') &&
!$rechte->isBerechtigt('assistenz', $stg_lva, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_std, 'suid'))
if(!$rechte->isBerechtigt('student/noten', $stg_lva, 'suid') && !$rechte->isBerechtigt('student/noten', $stg_std, 'suid'))
{
$return = false;
$error = true;
@@ -2564,6 +2597,7 @@ if(!$error)
}
$zeugnisnote->note = $lvgesamtnote->note;
$zeugnisnote->punkte = $lvgesamtnote->punkte;
$zeugnisnote->uebernahmedatum = date('Y-m-d H:i:s');
$zeugnisnote->benotungsdatum = $lvgesamtnote->benotungsdatum;
$zeugnisnote->bemerkung = $lvgesamtnote->bemerkung;
@@ -2605,7 +2639,7 @@ if(!$error)
{
$zeugnisnote = new zeugnisnote();
$error = false;
if(!is_numeric(trim($_POST['matrikelnummer_'.$i])) || !is_numeric($_POST['note_'.$i]))
if(!is_numeric(trim($_POST['matrikelnummer_'.$i])) || (isset($_POST['note_'.$i]) && !is_numeric($_POST['note_'.$i])))
{
$error = true;
$errormsg = "\nMatrikelnummer oder Note ist ungueltig: ".$_POST['matrikelnummer_'.$i].' - '.$_POST['note_'.$i];
@@ -2688,7 +2722,19 @@ if(!$error)
$zeugnisnote->studiensemester_kurzbz = $semester_aktuell;
}
$zeugnisnote->note = $_POST['note_'.$i];
if(isset($_POST['note_'.$i]))
{
$zeugnisnote->note = $_POST['note_'.$i];
$zeugnisnote->punkte = null;
}
elseif(isset($_POST['punkte_'.$i]))
{
$zeugnisnote->punkte=$_POST['punkte_'.$i];
$zeugnisnote->punkte = str_replace(',','.', $zeugnisnote->punkte);
$notenschluessel = new notenschluessel();
$note = $notenschluessel->getNote($zeugnisnote->punkte, $_POST['lehrveranstaltung_id'], $semester_aktuell);
$zeugnisnote->note = $note;
}
$zeugnisnote->uebernahmedatum = date('Y-m-d H:i:s');
$zeugnisnote->benotungsdatum = date('Y-m-d H:i:s');
@@ -2871,7 +2917,7 @@ if(!$error)
{
if($db->db_num_rows($result)==0)
{
$qry = "SELECT note, benotungsdatum FROM lehre.tbl_zeugnisnote JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE
$qry = "SELECT note,punkte, benotungsdatum FROM lehre.tbl_zeugnisnote JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE
student_uid=".$db->db_add_param($_POST['student_uid'])." AND
tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($_POST['lehreinheit_id'], FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz = tbl_zeugnisnote.studiensemester_kurzbz";
@@ -2888,6 +2934,7 @@ if(!$error)
$ersttermin->student_uid = $_POST['student_uid'];
$ersttermin->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
$ersttermin->note = $row->note;
$ersttermin->punkte = $row->punkte;
$ersttermin->pruefungstyp_kurzbz = 'Termin1';
$ersttermin->datum = $row->benotungsdatum;
$ersttermin->anmerkung = '';
@@ -2919,6 +2966,8 @@ if(!$error)
$pruefung->student_uid = $_POST['student_uid'];
$pruefung->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
$pruefung->note = $_POST['note'];
if(isset($_POST['punkte']))
$pruefung->punkte = $_POST['punkte'];
$pruefung->pruefungstyp_kurzbz = $_POST['pruefungstyp_kurzbz'];
$pruefung->datum = $_POST['datum'];
$pruefung->anmerkung = $_POST['anmerkung'];
@@ -2978,7 +3027,7 @@ if(!$error)
}
else
{
@$zeungisnote->new = false;
$zeugnisnote->new = false;
}
}
else
@@ -2994,6 +3043,10 @@ if(!$error)
$zeugnisnote->lehrveranstaltung_id = $lehrveranstaltung_id;
$zeugnisnote->studiensemester_kurzbz = $studiensemester_kurzbz;
$zeugnisnote->note = $_POST['note'];
if(isset($_POST['punkte']))
$zeugnisnote->punkte = $_POST['punkte'];
else
$zeugnisnote->punkte='';
$zeugnisnote->uebernahmedatum = date('Y-m-d H:i:s');
$zeugnisnote->benotungsdatum = date('Y-m-d',$datum_obj->mktime_fromdate($_POST['datum']));
$zeugnisnote->updateamum = date('Y-m-d H:i:s');
File diff suppressed because it is too large Load Diff
+20 -4
View File
@@ -26,8 +26,14 @@ 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');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$punktehidden = 'false';
else
$punktehidden = 'true';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css\" ?>";
?>
@@ -52,9 +58,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
context="student-noten-tree-popup"
flags="dont-build-content"
>
<!-- onselect="StudentNotenAuswahl()" - wird jetzt per JS gesetzt -->
>
<treecols>
<treecol id="student-noten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="false" primary="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
@@ -114,6 +118,10 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="student-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>
@@ -134,6 +142,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang_lv"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_lehrform"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
@@ -197,6 +206,10 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="student-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>
@@ -213,6 +226,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
<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>
@@ -234,8 +248,10 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
</menupopup>
</template>
</menulist>
<label value="Punkte" control="student-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
<textbox id="student-noten-textbox-punkte" oninput="StudentNotenPunkteChange()" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<button id="student-noten-button-speichern" oncommand="StudentNoteSpeichern()" label="Speichern" disabled="true" hidden="true"/>
<button id="student-noten-button-speichern" oncommand="StudentNoteSpeichern()" label="Speichern" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<spacer flex="1" />
</hbox>
+50
View File
@@ -3496,6 +3496,7 @@ function StudentNoteDisableFields(val)
function StudentNoteDetailDisableFields(val)
{
document.getElementById('student-noten-menulist-note').disabled=val;
document.getElementById('student-noten-textbox-punkte').disabled=val;
document.getElementById('student-noten-button-speichern').disabled=val;
}
@@ -3542,11 +3543,13 @@ function StudentNotenAuswahl()
//Daten holen
note = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#note" ));
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
if(note=='')
note='9';
document.getElementById('student-noten-menulist-note').value=note;
document.getElementById('student-noten-textbox-punkte').value=punkte;
}
// ****
@@ -3572,6 +3575,7 @@ function StudentNoteSpeichern()
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
note = document.getElementById('student-noten-menulist-note').value;
punkte = document.getElementById('student-noten-textbox-punkte').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
@@ -3583,6 +3587,7 @@ function StudentNoteSpeichern()
req.add('student_uid', student_uid);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
req.add('note', note);
req.add('punkte', punkte);
var response = req.executePOST();
@@ -3717,6 +3722,46 @@ function StudentNotenDelete()
}
}
/**
* Wird aufgerufen wenn Punkte zu einer Note eingetragen werden
* Laedt die Note anhand des Notenschluessels
*/
function StudentNotenPunkteChange()
{
var punkte = document.getElementById('student-noten-textbox-punkte').value;
punkte = punkte.replace(',','.');
if(punkte!='')
{
var tree=document.getElementById('student-noten-tree');
//Ausgewaehlte LV holen
var col = tree.columns ? tree.columns["student-noten-tree-lehrveranstaltung_id"] : "student-noten-tree-lehrveranstaltung_id";
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getnotenotenschluessel');
req.add('lehrveranstaltung_id', lehrveranstaltung_id);
req.add('punkte', punkte);
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
{
document.getElementById('student-noten-menulist-note').value=val.dbdml_data;
}
}
}
// **************** PRUEFUNG ************** //
@@ -3779,6 +3824,7 @@ function StudentPruefungDetailDisableFields(val)
document.getElementById('student-pruefung-menulist-note').disabled=val;
document.getElementById('student-pruefung-textbox-datum').disabled=val;
document.getElementById('student-pruefung-textbox-anmerkung').disabled=val;
document.getElementById('student-pruefung-textbox-punkte').disabled=val;
document.getElementById('student-pruefung-button-speichern').disabled=val;
}
@@ -3979,6 +4025,7 @@ function StudentPruefungDetailSpeichern()
neu = document.getElementById('student-pruefung-checkbox-neu').checked;
pruefung_id = document.getElementById('student-pruefung-textbox-pruefung_id').value;
studiengang_kz = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
punkte = document.getElementById('student-pruefung-textbox-punkte').value;
if(lehreinheit_id=='')
{
@@ -4022,6 +4069,7 @@ function StudentPruefungDetailSpeichern()
req.add('pruefung_id', pruefung_id);
req.add('student_uid', student_uid);
req.add('studiengang_kz', studiengang_kz);
req.add('punkte', punkte);
var response = req.executePOST();
@@ -4088,6 +4136,7 @@ function StudentPruefungAuswahl()
datum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum" ));
anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
studiensemester_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiensemester_kurzbz" ));
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
try
{
@@ -4194,6 +4243,7 @@ function StudentPruefungAuswahl()
document.getElementById('student-pruefung-textbox-anmerkung').value=anmerkung;
document.getElementById('student-pruefung-checkbox-neu').checked=false;
document.getElementById('student-pruefung-textbox-pruefung_id').value=pruefung_id;
document.getElementById('student-pruefung-textbox-punkte').value=punkte;
}
// ****
+21 -1
View File
@@ -26,6 +26,14 @@ 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" ?>';
?>
@@ -97,6 +105,10 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#mitarbeiter_uid" />
<splitter class="tree-splitter"/>
<treecol id="student-pruefung-tree-punkte" label="Punkte" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#punkte" />
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -113,6 +125,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#lehreinheit_id"/>
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#student_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#mitarbeiter_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
@@ -208,6 +221,13 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</template>
</menulist>
</row>
<row hidden="<?php echo $punktehidden; ?>">
<label value="Punkte" control="student-pruefung-textbox-punkte"/>
<hbox>
<textbox id="student-pruefung-textbox-punkte" disabled="true" checked="false"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Datum" control="student-pruefung-textbox-datum"/>
<hbox>
@@ -233,4 +253,4 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</hbox>
<spacer flex="1" />
</vbox>
</overlay>
</overlay>
+22 -2
View File
@@ -1,6 +1,21 @@
<?php
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
/* 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');
@@ -14,6 +29,11 @@ loadVariables($uid);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('basis/tempus'))
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/tempus.css" type="text/css"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/tempusoverlay.xul.php"?>';
+1 -1
View File
@@ -123,7 +123,7 @@ if(copy($zipfile, $tempname_zip))
}
else
{
$oe = NULL;
$oe = new organisationseinheit();
}
$xml.="
<mitarbeiter>
-5
View File
File diff suppressed because one or more lines are too long
-30
View File
@@ -1,30 +0,0 @@
/*
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 3 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, see <http://www.gnu.org/licenses/>.
Authors: Robert Hofer <robert.hofer@technikum-wien.at>
*/
/*
Created on : Feb 11, 2015, 10:17:08 AM
Author : Robert Hofer <robert.hofer@technikum-wien.at>
*/
#lp h1, #lp img {
margin: 50px 0;
}
p.infotext {
margin: 40px 0;
}
-122
View File
@@ -1,122 +0,0 @@
function checkNotEmpty(ids)
{
var errors = [];
for(var i in ids) {
var input = $('#' + ids[i]);
if(!$.trim(input.val())) {
errors.push(ids[i]);
input.closest('div.form-group').removeClass('has-success').addClass('has-error');
} else {
input.closest('div.form-group').removeClass('has-error').addClass('has-success');
}
}
return errors;
}
function checkKontakt()
{
var errors;
errors = checkNotEmpty([
'telefonnummer',
'email',
'strasse',
'plz',
'ort'
]);
if(errors.length) {
return false;
}
return true;
}
function checkPerson()
{
var errors;
errors = checkNotEmpty([
'nachname',
'vorname',
'staatsbuergerschaft'
]);
if ($("#gebdatum").val() !== '')
{
var patt1 = new RegExp("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})");
if (!patt1.test($("#gebdatum").val()))
{
$('#gebdatum').closest('div.form-group').removeClass('has-success').addClass('has-error');
errors.push('gebdatum');
}
else
{
$('#gebdatum').closest('div.form-group').removeClass('has-error').addClass('has-success');
}
}
// Berechnung der Sozialversicherungsnummer wenn AT
if ($("#staatsbuergerschaft").val() === 'A')
{
var soz_nr = $.trim($("#svnr").val());
if (!/^\d{10}$/.test(soz_nr))
{
$('#svnr').closest('div.form-group').removeClass('has-success').addClass('has-error');
errors.push('svnr');
}
var checksum = 0;
checksum = (3 * soz_nr[0]) + (7 * soz_nr[1]) + (9 * soz_nr[2]) + (5 * soz_nr[4]) + (8 * soz_nr[5]) + (4 * soz_nr[6]) + (2 * soz_nr[7]) + (1 * soz_nr[8]) + (6 * soz_nr[9]);
checksum = checksum % 11;
if (checksum !== parseInt(soz_nr[3], 10))
{
$('#svnr').closest('div.form-group').removeClass('has-success').addClass('has-error');
errors.push('svnr');
}
else
{
$('#svnr').closest('div.form-group').removeClass('has-error').addClass('has-success');
}
}
if(errors.length) {
return false;
}
return true;
}
function FensterOeffnen(adresse)
{
MeinFenster = window.open(adresse, "Info", "width=700,height=200");
MeinFenster.focus();
}
function toggleDiv(div)
{
$('#'+div).toggle();
}
$(function() {
if(activeTab) {
$('#bewerber-navigation a[href="#' + activeTab + '"]').tab('show');
}
$('.btn-nav').on('click', function() {
var tabname = $(this).attr('data-jump-tab');
$('#bewerber-navigation a[href="#' + tabname + '"]').tab('show');
});
$('#bewerber-navigation a').on('click', function() {
$(this).closest('.collapse').collapse('hide');
});
});
-7
View File
File diff suppressed because one or more lines are too long
+5 -4
View File
@@ -172,8 +172,8 @@ class lvgesamtnote extends basis_db
if($new)
{
//Neuen Datensatz einfuegen
$qry='INSERT INTO campus.tbl_lvgesamtnote (lehrveranstaltung_id, student_uid, studiensemester_kurzbz,
mitarbeiter_uid, note, freigabedatum, freigabevon_uid, benotungsdatum, bemerkung, updateamum,
$qry='INSERT INTO campus.tbl_lvgesamtnote (lehrveranstaltung_id, student_uid, studiensemester_kurzbz,
mitarbeiter_uid, note, freigabedatum, freigabevon_uid, benotungsdatum, bemerkung, updateamum,
updatevon, insertamum, insertvon, punkte) VALUES('.
$this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER).', '.
$this->db_add_param($this->student_uid).', '.
@@ -187,13 +187,13 @@ class lvgesamtnote extends basis_db
$this->db_add_param($this->updateamum).', '.
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->insertamum).', '.
$this->db_add_param($this->insertvon).','.
$this->db_add_param($this->insertvon).','.
$this->db_add_param($this->punkte).');';
}
else
{
$qry='UPDATE campus.tbl_lvgesamtnote SET '.
'note='.$this->db_add_param($this->note, FHC_INTEGER).', '.
'note='.$this->db_add_param($this->note, FHC_INTEGER).', '.
'punkte='.$this->db_add_param($this->punkte).','.
'freigabedatum='.$this->db_add_param($this->freigabedatum).', '.
'freigabevon_uid='.$this->db_add_param($this->freigabevon_uid).', '.
@@ -283,6 +283,7 @@ class lvgesamtnote extends basis_db
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->note = $row->note;
$obj->punkte = $row->punkte;
$obj->freigabedatum = $row->freigabedatum;
$obj->freigabevon_uid = $row->freigabevon_uid;
$obj->benotungsdatum = $row->benotungsdatum;
+11 -2
View File
@@ -660,7 +660,13 @@ class moodle24_course extends basis_db
try
{
$client = new SoapClient($this->serverurl);
$response = $client->fhcomplete_get_course_grades($row_moodle->mdl_course_id);
if(CIS_GESAMTNOTE_PUNKTE)
$type=2; // Prozentpunkte
else
$type=3; // Noten aufgrund Skala
// 1 = Punkte, 2 = Prozentpunkte, 3 = Note laut Skala
$response = $client->fhcomplete_get_course_grades($row_moodle->mdl_course_id, $type);
if (count($response)>0)
{
@@ -682,7 +688,10 @@ class moodle24_course extends basis_db
}
}
catch(SoapFault $e)
{}
{
//echo print_r($e, true);
//return false;
}
}
return true;
+32
View File
@@ -131,5 +131,37 @@ class notenschluessel extends basis_db
return false;
}
/**
* Laedt die Aufteilung eines Notenschluessels
*/
public function loadAufteilung($notenschluessel_kurzbz)
{
$qry = 'SELECT
tbl_notenschluesselaufteilung.*, tbl_notenschluessel.bezeichnung,
tbl_note.bezeichnung as notenbezeichnung
FROM
lehre.tbl_notenschluesselaufteilung
JOIN lehre.tbl_notenschluessel USING(notenschluessel_kurzbz)
JOIN lehre.tbl_note USING(note)
WHERE
notenschluessel_kurzbz='.$this->db_add_param($notenschluessel_kurzbz).'
ORDER BY punkte desc';
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new notenschluessel();
$obj->notenschluessel_kurzbz = $row->notenschluessel_kurzbz;
$obj->punkte = $row->punkte;
$obj->note = $row->note;
$obj->bezeichnung = $row->bezeichnung;
$obj->notenbezeichnung = $row->notenbezeichnung;
$this->result[] = $obj;
}
return true;
}
}
}
?>
+18 -4
View File
@@ -50,6 +50,9 @@ class ort extends basis_db
public $insertamum; // timestamp without timezone
public $insertvon; // varchar(32)
public $content_id; // integer
public $oe_kurzbz; // varchar(32)
public $m2; // numeric(8,2)
public $gebteil; // varchar(32)
public $ort_kurzbz_old; // string
@@ -109,7 +112,9 @@ class ort extends basis_db
$ort_obj->standort_id = $row->standort_id;
$ort_obj->telefonklappe = $row->telefonklappe;
$ort_obj->content_id = $row->content_id;
$ort_obj->m2 = $row->m2;
$ort_obj->oe_kurzbz = $row->oe_kurzbz;
$ort_obj->gebteil = $row->gebteil;
$this->result[] = $ort_obj;
}
return true;
@@ -153,6 +158,9 @@ class ort extends basis_db
$this->standort_id = $row->standort_id;
$this->telefonklappe = $row->telefonklappe;
$this->content_id = $row->content_id;
$this->gebteil = $row->gebteil;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->m2 = $row->m2;
}
else
{
@@ -208,7 +216,7 @@ class ort extends basis_db
{
//Neuen Datensatz anlegen
$qry = 'INSERT INTO public.tbl_ort (ort_kurzbz, bezeichnung, planbezeichnung, max_person, aktiv, lehre, reservieren, lageplan,
dislozierung, kosten, stockwerk, standort_id, telefonklappe, insertamum, insertvon, updateamum, updatevon, content_id,ausstattung) VALUES ('.
dislozierung, kosten, stockwerk, standort_id, telefonklappe, insertamum, insertvon, updateamum, updatevon, content_id,ausstattung,m2,gebteil,oe_kurzbz) VALUES ('.
$this->db_add_param($this->ort_kurzbz).', '.
$this->db_add_param($this->bezeichnung).', '.
$this->db_add_param($this->planbezeichnung).', '.
@@ -227,7 +235,10 @@ class ort extends basis_db
$this->db_add_param($this->updateamum).','.
$this->db_add_param($this->updatevon).','.
$this->db_add_param($this->content_id).','.
$this->db_add_param($this->ausstattung).');';
$this->db_add_param($this->ausstattung).','.
$this->db_add_param($this->m2).','.
$this->db_add_param($this->gebteil).','.
$this->db_add_param($this->oe_kurzbz).');';
}
else
{
@@ -250,7 +261,10 @@ class ort extends basis_db
'stockwerk='.$this->db_add_param($this->stockwerk).', '.
'updateamum='.$this->db_add_param($this->updateamum).', '.
'updatevon='.$this->db_add_param($this->updatevon).', '.
'content_id='.$this->db_add_param($this->content_id).' '.
'content_id='.$this->db_add_param($this->content_id).', '.
'm2='.$this->db_add_param($this->m2).', '.
'gebteil='.$this->db_add_param($this->gebteil).', '.
'oe_kurzbz='.$this->db_add_param($this->oe_kurzbz).' '.
'WHERE ort_kurzbz = '.$this->db_add_param(($this->ort_kurzbz_old!='')?$this->ort_kurzbz_old:$this->ort_kurzbz).';';
}
+9 -3
View File
@@ -47,6 +47,7 @@ class prestudent extends person
public $rt_punkte3=0;
public $bismelden=true;
public $anmerkung;
public $anmerkung_status;
public $mentor;
public $ext_id_prestudent;
public $dual=false;
@@ -733,7 +734,8 @@ class prestudent extends person
$qry = 'INSERT INTO public.tbl_prestudentstatus (prestudent_id, status_kurzbz,
studiensemester_kurzbz, ausbildungssemester, datum, insertamum, insertvon,
updateamum, updatevon, ext_id, orgform_kurzbz, bestaetigtam, bestaetigtvon, studienplan_id) VALUES('.
updateamum, updatevon, ext_id, orgform_kurzbz, bestaetigtam, bestaetigtvon, anmerkung,
studienplan_id) VALUES('.
$this->db_add_param($this->prestudent_id).",".
$this->db_add_param($this->status_kurzbz).",".
$this->db_add_param($this->studiensemester_kurzbz).",".
@@ -747,6 +749,7 @@ class prestudent extends person
$this->db_add_param($this->orgform_kurzbz).",".
$this->db_add_param($this->bestaetigtam).",".
$this->db_add_param($this->bestaetigtvon).",".
$this->db_add_param($this->anmerkung_status).",".
$this->db_add_param($this->studienplan_id,FHC_INTEGER).");";
}
else
@@ -774,6 +777,7 @@ class prestudent extends person
' bestaetigtam='.$this->db_add_param($this->bestaetigtam).",".
' bestaetigtvon='.$this->db_add_param($this->bestaetigtvon).",".
' studienplan_id='.$this->db_add_param($this->studienplan_id, FHC_INTEGER).",".
' anmerkung_status='.$this->db_add_param($this->anmerkung_status).",".
' orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).
" WHERE
prestudent_id=".$this->db_add_param($this->prestudent_id, FHC_INTEGER, false)."
@@ -827,8 +831,9 @@ class prestudent extends person
$log->beschreibung = 'Loeschen der Rolle '.$status_kurzbz.' bei '.$prestudent_id;
$log->mitarbeiter_uid = get_uid();
$log->sql = $qry;
$log->sqlundo = 'INSERT INTO public.tbl_prestudentstatus(prestudent_id, status_kurzbz, studiensemester_kurzbz,'.
' ausbildungssemester, datum, insertamum, insertvon, updateamum, updatevon, ext_id, orgform_kurzbz, bestaetigtam, bestaetigtvon, studienplan_id) VALUES('.
$log->sqlundo = 'INSERT INTO public.tbl_prestudentstatus(prestudent_id, status_kurzbz, studiensemester_kurzbz,'
. ' ausbildungssemester, datum, insertamum, insertvon, updateamum, updatevon, ext_id, orgform_kurzbz,'
. ' bestaetigtam, bestaetigtvon, anmerkung_status, studienplan_id) VALUES('.
$this->db_add_param($this->prestudent_id).','.
$this->db_add_param($this->status_kurzbz).','.
$this->db_add_param($this->studiensemester_kurzbz).','.
@@ -842,6 +847,7 @@ class prestudent extends person
$this->db_add_param($this->orgform_kurzbz).','.
$this->db_add_param($this->bestaetigtam).','.
$this->db_add_param($this->bestaetigtvon).','.
$this->db_add_param($this->anmerkung_status).','.
$this->db_add_param($this->studienplan_id, FHC_INTEGER).');';
if($log->save(true))
{
+463 -460
View File
@@ -1,460 +1,463 @@
<?php
/* Copyright (C) 2007 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>.
*/
/**
* Klasse projektarbeit
* @create 08-02-2007
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class projektarbeit extends basis_db
{
public $new; // boolean
public $result = array(); // adresse Objekt
//Tabellenspalten
public $projektarbeit_id; // integer
public $projekttyp_kurzbz; // string
public $bezeichnung; // string
public $titel; // string
public $titel_english; // string
public $lehreinheit_id; // integer
public $student_uid; // integer
public $firma_id; // integer
public $note; // integer
public $punkte; // numeric(6,2)
public $beginn; // date
public $ende; // date
public $faktor; // numeric(3,2)
public $freigegeben; // boolean
public $gesperrtbis; // date
public $stundensatz; // numeric(6,2)
public $gesamtstunden; // numeric(8,2)
public $themenbereich; // sting
public $anmerkung; // string
public $ext_id; // integer
public $insertamum; // timestamp
public $insertvon; // bigint
public $updateamum; // timestamp
public $updatevon; // bigint
/**
* Konstruktor
* @param $projektarbeit_id ID der Projektarbeit, die geladen werden soll (Default=null)
*/
public function __construct($projektarbeit_id=null)
{
parent::__construct();
if($projektarbeit_id != null)
$this->load($projektarbeit_id);
}
/**
* Laedt die Projektarbeit mit der ID $projektarbeit_id
* @param $projektarbeit_id ID der zu ladenden Projektarbeit
* @return true wenn ok, false im Fehlerfall
*/
public function load($projektarbeit_id)
{
if(!is_numeric($projektarbeit_id))
{
$this->errormsg = 'Projektarbeit_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=".$this->db_add_param($projektarbeit_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projektarbeit_id = $row->projektarbeit_id;
$this->projekttyp_kurzbz = $row->projekttyp_kurzbz;
$this->titel = $row->titel;
$this->titel_english = $row->titel_english;
$this->lehreinheit_id = $row->lehreinheit_id;
$this->student_uid = $row->student_uid;
$this->firma_id = $row->firma_id;
$this->note = $row->note;
$this->punkte = $row->punkte;
$this->beginn = $row->beginn;
$this->ende = $row->ende;
$this->faktor = $row->faktor;
$this->freigegeben = $this->db_parse_bool($row->freigegeben);
$this->gesperrtbis = $row->gesperrtbis;
$this->stundensatz = $row->stundensatz;
$this->gesamtstunden = $row->gesamtstunden;
$this->themenbereich = $row->themenbereich;
$this->anmerkung = $row->anmerkung;
$this->ext_id = $row->ext_id;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
return true;
}
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Prueft die Variablen auf Gueltigkeit
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
//Gesamtlaenge pruefen
if ($this->projekttyp_kurzbz==null)
{
$this->errormsg='Projekttyp_kurzbz darf nicht NULL sein!';
}
if ($this->lehreinheit_id==null)
{
$this->errormsg='Lehreinheit_id darf nicht NULL sein!';
}
if(mb_strlen($this->projekttyp_kurzbz)>16)
{
$this->errormsg = 'Projektyp_kurzbz darf nicht länger als 16 Zeichen sein';
return false;
}
if(mb_strlen($this->titel)>1024)
{
$this->errormsg = 'Titel darf nicht länger als 1024 Zeichen sein';
return false;
}
if(mb_strlen($this->titel_english)>1024)
{
$this->errormsg = 'Titel darf nicht länger als 1024 Zeichen sein';
return false;
}
if(mb_strlen($this->themenbereich)>64)
{
$this->errormsg = 'Themenbereich darf nicht länger als 64 Zeichen sein';
return false;
}
if(mb_strlen($this->anmerkung)>256)
{
$this->errormsg = 'Anmerkung darf nicht länger als 256 Zeichen sein';
return false;
}
/*if(!is_numeric($this->note))
{
$this->errormsg = 'Note muß ein numerischer Wert sein - student_uid: '.$this->student_uid;
return false;
}*/
if($this->punkte!='' && !is_numeric($this->punkte))
{
$this->errormsg = 'Punkte muss ein numerischer Wert sein';
return false;
}
if($this->faktor!='' && !is_numeric($this->faktor))
{
$this->errormsg = 'Faktor muss ein numerischer Wert sein';
return false;
}
if($this->stundensatz!='' && !is_numeric($this->stundensatz))
{
$this->errormsg = 'Stundensatz muss ein numerischer Wert sein';
return false;
}
if($this->gesamtstunden!='' && !is_numeric($this->gesamtstunden))
{
$this->errormsg = 'Gesamtstunden muss ein numerischer Wert sein';
return false;
}
if(!is_bool($this->freigegeben))
{
$this->errormsg = 'freigegeben ist ungueltig';
return false;
}
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $projektarbeit_id aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
public function save($new=null)
{
//Variablen pruefen
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz einfuegen
$qry='BEGIN; INSERT INTO lehre.tbl_projektarbeit (projekttyp_kurzbz, titel, lehreinheit_id, student_uid, firma_id, note, punkte,
beginn, ende, faktor, freigegeben, gesperrtbis, stundensatz, gesamtstunden, themenbereich, anmerkung,
ext_id, insertamum, insertvon, updateamum, updatevon, titel_english) VALUES('.
$this->db_add_param($this->projekttyp_kurzbz).', '.
$this->db_add_param($this->titel).', '.
$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
$this->db_add_param($this->student_uid).', '.
$this->db_add_param($this->firma_id, FHC_INTEGER).', '.
$this->db_add_param($this->note).', '.
$this->db_add_param($this->punkte).', '.
$this->db_add_param($this->beginn).', '.
$this->db_add_param($this->ende).', '.
$this->db_add_param($this->faktor).', '.
$this->db_add_param($this->freigegeben, FHC_BOOLEAN).', '.
$this->db_add_param($this->gesperrtbis).', '.
$this->db_add_param($this->stundensatz).', '.
$this->db_add_param($this->gesamtstunden).', '.
$this->db_add_param($this->themenbereich).', '.
$this->db_add_param($this->anmerkung).', '.
$this->db_add_param($this->ext_id).', now(), '.
$this->db_add_param($this->insertvon).', now(), '.
$this->db_add_param($this->updatevon).','.
$this->db_add_param($this->titel_english).');';
}
else
{
//Updaten des bestehenden Datensatzes
//Pruefen ob projektarbeit_id eine gueltige Zahl ist
if(!is_numeric($this->projektarbeit_id))
{
$this->errormsg = 'projektarbeit_id muss eine gueltige Zahl sein';
return false;
}
$qry='UPDATE lehre.tbl_projektarbeit SET '.
'projekttyp_kurzbz='.$this->db_add_param($this->projekttyp_kurzbz).', '.
'titel='.$this->db_add_param($this->titel).', '.
'titel_english='.$this->db_add_param($this->titel_english).', '.
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
'student_uid='.$this->db_add_param($this->student_uid).', '.
'firma_id='.$this->db_add_param($this->firma_id, FHC_INTEGER).', '.
'note='.$this->db_add_param($this->note).', '.
'punkte='.$this->db_add_param($this->punkte).', '.
'beginn='.$this->db_add_param($this->beginn).', '.
'ende='.$this->db_add_param($this->ende).', '.
'faktor='.$this->db_add_param($this->faktor).', '.
'freigegeben='.$this->db_add_param($this->freigegeben, FHC_BOOLEAN).', '.
'gesperrtbis='.$this->db_add_param($this->gesperrtbis).', '.
'stundensatz='.$this->db_add_param($this->stundensatz).', '.
'gesamtstunden='.$this->db_add_param($this->gesamtstunden).', '.
'themenbereich='.$this->db_add_param($this->themenbereich).', '.
'anmerkung='.$this->db_add_param($this->anmerkung).', '.
'updateamum= now(), '.
'updatevon='.$this->db_add_param($this->updatevon).' '.
'WHERE projektarbeit_id='.$this->db_add_param($this->projektarbeit_id, FHC_INTEGER).';';
}
if($this->db_query($qry))
{
if($new)
{
//Sequence auslesen
$qry = "SELECT currval('lehre.tbl_projektarbeit_projektarbeit_id_seq') as id;";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projektarbeit_id = $row->id;
$this->db_query('COMMIT');
return true;
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern der Daten';
return false;
}
}
/**
* Loescht den Datenensatz mit der ID die uebergeben wird
* @param $projektarbeit_id ID die geloescht werden soll
* @return true wenn ok, false im Fehlerfall
*/
public function delete($projektarbeit_id)
{
if(!is_numeric($projektarbeit_id))
{
$this->errormsg = 'Projektarbeit_id ist ungueltig';
return true;
}
$qry = "DELETE FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=".$this->db_add_param($projektarbeit_id, FHC_INTEGER);
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen des Datensatzes';
return false;
}
}
/**
* Laedt alle Projektarbeiten eines Studenten
* @param student_uid
* @return true wenn ok, false wenn Fehler
*/
public function getProjektarbeit($student_uid)
{
$qry = "SELECT * FROM lehre.tbl_projektarbeit JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
WHERE student_uid=".$this->db_add_param($student_uid);
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projektarbeit();
$obj->projektarbeit_id = $row->projektarbeit_id;
$obj->projekttyp_kurzbz = $row->projekttyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->titel = $row->titel;
$obj->titel_english = $row->titel_english;
$obj->lehreinheit_id = $row->lehreinheit_id;
$obj->student_uid = $row->student_uid;
$obj->firma_id = $row->firma_id;
$obj->note = $row->note;
$obj->punkte = $row->punkte;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->faktor = $row->faktor;
$obj->freigegeben = $this->db_parse_bool($row->freigegeben);
$obj->gesperrtbis = $row->gesperrtbis;
$obj->stundensatz = $row->stundensatz;
$obj->gesamtstunden = $row->gesamtstunden;
$obj->themenbereich = $row->themenbereich;
$obj->anmerkung = $row->anmerkung;
$obj->ext_id = $row->ext_id;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle Projektarbeiten eines Studienganges/Studiensemesters
* @param studiengang_kz, studiensemester_kurzbz
* @return true wenn ok, false wenn Fehler
*/
public function getProjektarbeitStudiensemester($studiengang_kz, $studiensemester_kurzbz)
{
$qry = "SELECT
tbl_projektarbeit.* , tbl_projekttyp.bezeichnung
FROM
lehre.tbl_projektarbeit
JOIN
lehre.tbl_projekttyp USING (projekttyp_kurzbz), lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehrveranstaltung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projektarbeit();
$obj->projektarbeit_id = $row->projektarbeit_id;
$obj->projekttyp_kurzbz = $row->projekttyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->titel = $row->titel;
$obj->titel_english = $row->titel_english;
$obj->lehreinheit_id = $row->lehreinheit_id;
$obj->student_uid = $row->student_uid;
$obj->firma_id = $row->firma_id;
$obj->note = $row->note;
$obj->punkte = $row->punkte;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->faktor = $row->faktor;
$obj->freigegeben = $this->db_parse_bool($row->freigegeben);
$obj->gesperrtbis = $row->gesperrtbis;
$obj->stundensatz = $row->stundensatz;
$obj->gesamtstunden = $row->gesamtstunden;
$obj->themenbereich = $row->themenbereich;
$obj->anmerkung = $row->anmerkung;
$obj->ext_id = $row->ext_id;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
<?php
/* Copyright (C) 2007 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>.
*/
/**
* Klasse projektarbeit
* @create 08-02-2007
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class projektarbeit extends basis_db
{
public $new; // boolean
public $result = array(); // adresse Objekt
//Tabellenspalten
public $projektarbeit_id; // integer
public $projekttyp_kurzbz; // string
public $bezeichnung; // string
public $titel; // string
public $titel_english; // string
public $lehreinheit_id; // integer
public $student_uid; // integer
public $firma_id; // integer
public $note; // integer
public $punkte; // numeric(6,2)
public $beginn; // date
public $ende; // date
public $faktor; // numeric(3,2)
public $freigegeben; // boolean
public $gesperrtbis; // date
public $stundensatz; // numeric(6,2)
public $gesamtstunden; // numeric(8,2)
public $themenbereich; // sting
public $anmerkung; // string
public $ext_id; // integer
public $insertamum; // timestamp
public $insertvon; // bigint
public $updateamum; // timestamp
public $updatevon; // bigint
/**
* Konstruktor
* @param $projektarbeit_id ID der Projektarbeit, die geladen werden soll (Default=null)
*/
public function __construct($projektarbeit_id=null)
{
parent::__construct();
if($projektarbeit_id != null)
$this->load($projektarbeit_id);
}
/**
* Laedt die Projektarbeit mit der ID $projektarbeit_id
* @param $projektarbeit_id ID der zu ladenden Projektarbeit
* @return true wenn ok, false im Fehlerfall
*/
public function load($projektarbeit_id)
{
if(!is_numeric($projektarbeit_id))
{
$this->errormsg = 'Projektarbeit_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM lehre.tbl_projektarbeit "
. "JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz) "
. "WHERE projektarbeit_id=".$this->db_add_param($projektarbeit_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projektarbeit_id = $row->projektarbeit_id;
$this->projekttyp_kurzbz = $row->projekttyp_kurzbz;
$this->titel = $row->titel;
$this->titel_english = $row->titel_english;
$this->lehreinheit_id = $row->lehreinheit_id;
$this->student_uid = $row->student_uid;
$this->firma_id = $row->firma_id;
$this->note = $row->note;
$this->punkte = $row->punkte;
$this->beginn = $row->beginn;
$this->ende = $row->ende;
$this->faktor = $row->faktor;
$this->freigegeben = $this->db_parse_bool($row->freigegeben);
$this->gesperrtbis = $row->gesperrtbis;
$this->stundensatz = $row->stundensatz;
$this->gesamtstunden = $row->gesamtstunden;
$this->themenbereich = $row->themenbereich;
$this->anmerkung = $row->anmerkung;
$this->ext_id = $row->ext_id;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->projekttyp_bezeichnung = $row->bezeichnung;
return true;
}
else
{
$this->errormsg = 'Datensatz wurde nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Prueft die Variablen auf Gueltigkeit
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
//Gesamtlaenge pruefen
if ($this->projekttyp_kurzbz==null)
{
$this->errormsg='Projekttyp_kurzbz darf nicht NULL sein!';
}
if ($this->lehreinheit_id==null)
{
$this->errormsg='Lehreinheit_id darf nicht NULL sein!';
}
if(mb_strlen($this->projekttyp_kurzbz)>16)
{
$this->errormsg = 'Projektyp_kurzbz darf nicht länger als 16 Zeichen sein';
return false;
}
if(mb_strlen($this->titel)>1024)
{
$this->errormsg = 'Titel darf nicht länger als 1024 Zeichen sein';
return false;
}
if(mb_strlen($this->titel_english)>1024)
{
$this->errormsg = 'Titel darf nicht länger als 1024 Zeichen sein';
return false;
}
if(mb_strlen($this->themenbereich)>64)
{
$this->errormsg = 'Themenbereich darf nicht länger als 64 Zeichen sein';
return false;
}
if(mb_strlen($this->anmerkung)>256)
{
$this->errormsg = 'Anmerkung darf nicht länger als 256 Zeichen sein';
return false;
}
/*if(!is_numeric($this->note))
{
$this->errormsg = 'Note muß ein numerischer Wert sein - student_uid: '.$this->student_uid;
return false;
}*/
if($this->punkte!='' && !is_numeric($this->punkte))
{
$this->errormsg = 'Punkte muss ein numerischer Wert sein';
return false;
}
if($this->faktor!='' && !is_numeric($this->faktor))
{
$this->errormsg = 'Faktor muss ein numerischer Wert sein';
return false;
}
if($this->stundensatz!='' && !is_numeric($this->stundensatz))
{
$this->errormsg = 'Stundensatz muss ein numerischer Wert sein';
return false;
}
if($this->gesamtstunden!='' && !is_numeric($this->gesamtstunden))
{
$this->errormsg = 'Gesamtstunden muss ein numerischer Wert sein';
return false;
}
if(!is_bool($this->freigegeben))
{
$this->errormsg = 'freigegeben ist ungueltig';
return false;
}
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $projektarbeit_id aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
public function save($new=null)
{
//Variablen pruefen
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz einfuegen
$qry='BEGIN; INSERT INTO lehre.tbl_projektarbeit (projekttyp_kurzbz, titel, lehreinheit_id, student_uid, firma_id, note, punkte,
beginn, ende, faktor, freigegeben, gesperrtbis, stundensatz, gesamtstunden, themenbereich, anmerkung,
ext_id, insertamum, insertvon, updateamum, updatevon, titel_english) VALUES('.
$this->db_add_param($this->projekttyp_kurzbz).', '.
$this->db_add_param($this->titel).', '.
$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
$this->db_add_param($this->student_uid).', '.
$this->db_add_param($this->firma_id, FHC_INTEGER).', '.
$this->db_add_param($this->note).', '.
$this->db_add_param($this->punkte).', '.
$this->db_add_param($this->beginn).', '.
$this->db_add_param($this->ende).', '.
$this->db_add_param($this->faktor).', '.
$this->db_add_param($this->freigegeben, FHC_BOOLEAN).', '.
$this->db_add_param($this->gesperrtbis).', '.
$this->db_add_param($this->stundensatz).', '.
$this->db_add_param($this->gesamtstunden).', '.
$this->db_add_param($this->themenbereich).', '.
$this->db_add_param($this->anmerkung).', '.
$this->db_add_param($this->ext_id).', now(), '.
$this->db_add_param($this->insertvon).', now(), '.
$this->db_add_param($this->updatevon).','.
$this->db_add_param($this->titel_english).');';
}
else
{
//Updaten des bestehenden Datensatzes
//Pruefen ob projektarbeit_id eine gueltige Zahl ist
if(!is_numeric($this->projektarbeit_id))
{
$this->errormsg = 'projektarbeit_id muss eine gueltige Zahl sein';
return false;
}
$qry='UPDATE lehre.tbl_projektarbeit SET '.
'projekttyp_kurzbz='.$this->db_add_param($this->projekttyp_kurzbz).', '.
'titel='.$this->db_add_param($this->titel).', '.
'titel_english='.$this->db_add_param($this->titel_english).', '.
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
'student_uid='.$this->db_add_param($this->student_uid).', '.
'firma_id='.$this->db_add_param($this->firma_id, FHC_INTEGER).', '.
'note='.$this->db_add_param($this->note).', '.
'punkte='.$this->db_add_param($this->punkte).', '.
'beginn='.$this->db_add_param($this->beginn).', '.
'ende='.$this->db_add_param($this->ende).', '.
'faktor='.$this->db_add_param($this->faktor).', '.
'freigegeben='.$this->db_add_param($this->freigegeben, FHC_BOOLEAN).', '.
'gesperrtbis='.$this->db_add_param($this->gesperrtbis).', '.
'stundensatz='.$this->db_add_param($this->stundensatz).', '.
'gesamtstunden='.$this->db_add_param($this->gesamtstunden).', '.
'themenbereich='.$this->db_add_param($this->themenbereich).', '.
'anmerkung='.$this->db_add_param($this->anmerkung).', '.
'updateamum= now(), '.
'updatevon='.$this->db_add_param($this->updatevon).' '.
'WHERE projektarbeit_id='.$this->db_add_param($this->projektarbeit_id, FHC_INTEGER).';';
}
if($this->db_query($qry))
{
if($new)
{
//Sequence auslesen
$qry = "SELECT currval('lehre.tbl_projektarbeit_projektarbeit_id_seq') as id;";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->projektarbeit_id = $row->id;
$this->db_query('COMMIT');
return true;
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern der Daten';
return false;
}
}
/**
* Loescht den Datenensatz mit der ID die uebergeben wird
* @param $projektarbeit_id ID die geloescht werden soll
* @return true wenn ok, false im Fehlerfall
*/
public function delete($projektarbeit_id)
{
if(!is_numeric($projektarbeit_id))
{
$this->errormsg = 'Projektarbeit_id ist ungueltig';
return true;
}
$qry = "DELETE FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=".$this->db_add_param($projektarbeit_id, FHC_INTEGER);
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen des Datensatzes';
return false;
}
}
/**
* Laedt alle Projektarbeiten eines Studenten
* @param student_uid
* @return true wenn ok, false wenn Fehler
*/
public function getProjektarbeit($student_uid)
{
$qry = "SELECT * FROM lehre.tbl_projektarbeit JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
WHERE student_uid=".$this->db_add_param($student_uid);
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projektarbeit();
$obj->projektarbeit_id = $row->projektarbeit_id;
$obj->projekttyp_kurzbz = $row->projekttyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->titel = $row->titel;
$obj->titel_english = $row->titel_english;
$obj->lehreinheit_id = $row->lehreinheit_id;
$obj->student_uid = $row->student_uid;
$obj->firma_id = $row->firma_id;
$obj->note = $row->note;
$obj->punkte = $row->punkte;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->faktor = $row->faktor;
$obj->freigegeben = $this->db_parse_bool($row->freigegeben);
$obj->gesperrtbis = $row->gesperrtbis;
$obj->stundensatz = $row->stundensatz;
$obj->gesamtstunden = $row->gesamtstunden;
$obj->themenbereich = $row->themenbereich;
$obj->anmerkung = $row->anmerkung;
$obj->ext_id = $row->ext_id;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle Projektarbeiten eines Studienganges/Studiensemesters
* @param studiengang_kz, studiensemester_kurzbz
* @return true wenn ok, false wenn Fehler
*/
public function getProjektarbeitStudiensemester($studiengang_kz, $studiensemester_kurzbz)
{
$qry = "SELECT
tbl_projektarbeit.* , tbl_projekttyp.bezeichnung
FROM
lehre.tbl_projektarbeit
JOIN
lehre.tbl_projekttyp USING (projekttyp_kurzbz), lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehrveranstaltung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new projektarbeit();
$obj->projektarbeit_id = $row->projektarbeit_id;
$obj->projekttyp_kurzbz = $row->projekttyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->titel = $row->titel;
$obj->titel_english = $row->titel_english;
$obj->lehreinheit_id = $row->lehreinheit_id;
$obj->student_uid = $row->student_uid;
$obj->firma_id = $row->firma_id;
$obj->note = $row->note;
$obj->punkte = $row->punkte;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->faktor = $row->faktor;
$obj->freigegeben = $this->db_parse_bool($row->freigegeben);
$obj->gesperrtbis = $row->gesperrtbis;
$obj->stundensatz = $row->stundensatz;
$obj->gesamtstunden = $row->gesamtstunden;
$obj->themenbereich = $row->themenbereich;
$obj->anmerkung = $row->anmerkung;
$obj->ext_id = $row->ext_id;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+56 -40
View File
@@ -42,6 +42,7 @@ class pruefung extends basis_db
public $ext_id; // bigint
public $pruefungsanmeldung_id; // bigint
public $vertrag_id; // bigint
public $punkte; // numeric(8,4)
public $lehrveranstaltung_bezeichnung;
public $lehrveranstaltung_id;
@@ -74,8 +75,15 @@ class pruefung extends basis_db
return false;
}
$qry = "SELECT tbl_pruefung.*, tbl_lehreinheit.lehrveranstaltung_id, tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz
FROM lehre.tbl_pruefung JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) WHERE pruefung_id=".$this->db_add_param($pruefung_id, FHC_INTEGER);
$qry = "SELECT
tbl_pruefung.*,
tbl_lehreinheit.lehrveranstaltung_id,
tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz
FROM
lehre.tbl_pruefung
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
pruefung_id=".$this->db_add_param($pruefung_id, FHC_INTEGER);
if($this->db_query($qry))
{
@@ -98,6 +106,7 @@ class pruefung extends basis_db
$this->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->punkte = $row->punkte;
}
}
else
@@ -145,6 +154,7 @@ class pruefung extends basis_db
$pruef_obj->ext_id=$row->ext_id;
$pruef_obj->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
$pruef_obj->vertrag_id = $row->vertrag_id;
$pruef_obj->punkte = $row->punkte;
$this->result[] = $pruef_obj;
}
@@ -209,7 +219,8 @@ class pruefung extends basis_db
if($this->new)
{
//Neuen Datensatz anlegen
$qry = 'BEGIN;INSERT INTO lehre.tbl_pruefung (lehreinheit_id, student_uid, mitarbeiter_uid, note, pruefungstyp_kurzbz, datum, anmerkung, insertamum, insertvon, updateamum, updatevon, ext_id, pruefungsanmeldung_id, vertrag_id) VALUES ('.
$qry = 'BEGIN;INSERT INTO lehre.tbl_pruefung (lehreinheit_id, student_uid, mitarbeiter_uid, note, pruefungstyp_kurzbz,
datum, anmerkung, insertamum, insertvon, updateamum, updatevon, ext_id, pruefungsanmeldung_id, vertrag_id, punkte) VALUES ('.
$this->db_add_param($this->lehreinheit_id).', '.
$this->db_add_param($this->student_uid).', '.
$this->db_add_param($this->mitarbeiter_uid).', '.
@@ -223,7 +234,8 @@ class pruefung extends basis_db
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->ext_id).', '.
$this->db_add_param($this->pruefungsanmeldung_id).','.
$this->db_add_param($this->vertrag_id).');';
$this->db_add_param($this->vertrag_id).','.
$this->db_add_param($this->punkte).');';
}
else
{
@@ -237,7 +249,7 @@ class pruefung extends basis_db
}
$qry = 'UPDATE lehre.tbl_pruefung SET '.
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id).', '.
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
'student_uid='.$this->db_add_param($this->student_uid).', '.
'mitarbeiter_uid='.$this->db_add_param($this->mitarbeiter_uid).', '.
'note='.$this->db_add_param($this->note).', '.
@@ -249,9 +261,10 @@ class pruefung extends basis_db
'updateamum='.$this->db_add_param($this->updateamum).', '.
'updatevon='.$this->db_add_param($this->updatevon).', '.
'ext_id='.$this->db_add_param($this->ext_id).', '.
'pruefungsanmeldung_id='.$this->db_add_param($this->pruefungsanmeldung_id).', '.
'vertrag_id='.$this->db_add_param($this->vertrag_id).' '.
'WHERE pruefung_id='.$this->db_add_param($this->pruefung_id).';';
'pruefungsanmeldung_id='.$this->db_add_param($this->pruefungsanmeldung_id, FHC_INTEGER).', '.
'vertrag_id='.$this->db_add_param($this->vertrag_id, FHC_INTEGER).', '.
'punkte='.$this->db_add_param($this->punkte).' '.
'WHERE pruefung_id='.$this->db_add_param($this->pruefung_id, FHC_INTEGER).';';
}
if($this->db_query($qry))
@@ -339,6 +352,7 @@ class pruefung extends basis_db
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->pruefungsanmeldung_id = $row->pruefungsanmeldung_id;
$obj->punkte = $row->punkte;
$this->result[] = $obj;
}
@@ -400,6 +414,7 @@ class pruefung extends basis_db
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->punkte = $row->punkte;
$this->result[] = $obj;
}
@@ -419,41 +434,42 @@ class pruefung extends basis_db
*/
public function getPruefungByAnmeldung($pruefungsanmeldung_id)
{
if(!is_numeric($pruefungsanmeldung_id))
{
$this->errormsg = 'pruefungsanmeldung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($pruefungsanmeldung_id))
{
$this->errormsg = 'pruefungsanmeldung_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM lehre.tbl_pruefung WHERE pruefungsanmeldung_id=".$this->db_add_param($pruefungsanmeldung_id).";";
$qry = "SELECT * FROM lehre.tbl_pruefung WHERE pruefungsanmeldung_id=".$this->db_add_param($pruefungsanmeldung_id).";";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefung_id = $row->pruefung_id;
$this->lehreinheit_id=$row->lehreinheit_id;
$this->student_uid=$row->student_uid;
$this->mitarbeiter_uid=$row->mitarbeiter_uid;
$this->note=$row->note;
$this->pruefungstyp_kurzbz=$row->pruefungstyp_kurzbz;
$this->datum=$row->datum;
$this->anmerkung=$row->anmerkung;
$this->insertamum=$row->insertamum;
$this->insertvon=$row->insertvon;
$this->updateamum=$row->updateamum;
$this->updatevon=$row->updatevon;
$this->ext_id=$row->ext_id;
$this->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
}
}
else
{
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefung_id = $row->pruefung_id;
$this->lehreinheit_id=$row->lehreinheit_id;
$this->student_uid=$row->student_uid;
$this->mitarbeiter_uid=$row->mitarbeiter_uid;
$this->note=$row->note;
$this->pruefungstyp_kurzbz=$row->pruefungstyp_kurzbz;
$this->datum=$row->datum;
$this->anmerkung=$row->anmerkung;
$this->insertamum=$row->insertamum;
$this->insertvon=$row->insertvon;
$this->updateamum=$row->updateamum;
$this->updatevon=$row->updatevon;
$this->ext_id=$row->ext_id;
$this->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
$this->punkte = $row->punkte;
}
}
else
{
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
return true;
return true;
}
}
?>
+34
View File
@@ -523,6 +523,40 @@ class studiensemester extends basis_db
}
}
/**
* Liefert das Studiensemester das aktuell am naehesten zu $studiensemester_kurzbz liegt
*
* @param $studiensemester_kurzbz
* @return $studiensemester_kurzbz oder false wenn Fehler
*/
public function getNearestFrom($studiensemester_kurzbz)
{
$qry = "SELECT studiensemester_kurzbz, start, ende FROM public.vw_studiensemester
WHERE studiensemester_kurzbz<>".$this->db_add_param($studiensemester_kurzbz)."
ORDER BY delta LIMIT 1";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->start = $row->start;
$this->ende = $row->ende;
return $row->studiensemester_kurzbz;
}
else
{
$this->errormsg = 'Es wurde kein folgendes Studiensemester gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Ermitteln des folgenden Studiensemesters';
return false;
}
}
/**
* Springt von Studiensemester $studiensemester_kurzbz um $wert Studiensemester vor/zurueck
*
+4 -21
View File
@@ -183,8 +183,9 @@ $menu=array
),
'Wartung'=> array
(
'name'=>'Wartung', 'opener'=>'true', 'hide'=>'true', 'DokumenteZuteilung'=>array('name'=>'DokumenteZuteilung', 'link'=>'stammdaten/studiengang_dokumente.php', 'target'=>'main'), 'image'=>'vilesci_wartung.png',
'link'=>'left.php?categorie=Wartung', 'target'=>'nav',
'name'=>'Wartung', 'opener'=>'true', 'hide'=>'true', 'image'=>'vilesci_wartung.png', 'link'=>'left.php?categorie=Wartung', 'target'=>'nav',
'DokumenteZuteilung'=>array('name'=>'Dokumente Zuteilung', 'link'=>'stammdaten/studiengang_dokumente.php', 'target'=>'main', 'permissions'=>array('basis/studiengang')),
'Vorrueckung'=> array
(
'name'=>'Vorrueckung', 'permissions'=>array('admin','lv-plan','support'),
@@ -192,13 +193,10 @@ $menu=array
'Studenten'=>array('name'=>'Studenten', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main')
),
'LVWartung'=>array('name'=>'LVwartung', 'link'=>'stammdaten/lv_wartung.php', 'target'=>'main'),
'LehreinheitWartung'=>array('name'=>'Lehreinheitwartung', 'link'=>'stammdaten/le_wartung.php', 'target'=>'main'),
'lvverteilung'=>array('name'=>'LVVerteilung', 'link'=>'lehre/lv_verteilung/lv_verteilung.php', 'target'=>'main'),
'Kreuzerllistekopieren'=>array('name'=>'Kreuzerllisten kopieren', 'link'=>CIS_ROOT.'cis/private/lehre/benotungstool/copy_uebung.php', 'target'=>'_blank'),
'Firmenwartung'=>array('name'=>'Firmenwartung', 'link'=>'stammdaten/firma_zusammen_uebersicht.php', 'target'=>'main'),
'checkStudenten'=>array('name'=>'CheckStudenten', 'link'=>'../system/checkStudenten.php', 'target'=>'main'),
'StudienplanZuteilung'=>array('name'=>'StudienplanZuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main'),
'DokumenteZuteilung'=>array('name'=>'DokumenteZuteilung', 'link'=>'stammdaten/studiengang_dokumente.php', 'target'=>'main'),
'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main'),
),
'Auswertung'=> array
(
@@ -229,21 +227,6 @@ $menu=array
(
'name'=>'Admin', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'vilesci_admin.png',
'link'=>'left.php?categorie=Admin', 'target'=>'nav',
'Tools'=> array
(
'name'=>'Tools', 'permissions'=>array('admin'),
'phpPgAdmin'=>array('name'=>'phpPgAdmin', 'link'=>APP_ROOT.'phppgadmin/index.php', 'target'=>'_blank'),
'phpMyAdmin'=>array('name'=>'phpMyAdmin', 'link'=>APP_ROOT.'phpmyadmin/index.php', 'target'=>'_blank'),
'SiPassDB'=>array('name'=>'SiPass Datenbank', 'link'=>'admin/sipassdb.php', 'target'=>'main'),
'ServerTests'=>array('name'=>'Server-Tests', 'link'=>'admin/test/index.php', 'target'=>'main'),
'htaccessGenerator'=>array('name'=>'.htaccess-Generator', 'link'=>'admin/htaccess/access.php', 'target'=>'main'),
),
'Hilfe'=> array
(
'name'=>'Hilfe',
'FAS-Installation'=>array('name'=>'FAS-Installation', 'link'=>'admin/fasinstall.html', 'target'=>'main'),
'ViReferenz'=>array('name'=>'VI-Kurzreferenz', 'link'=>'admin/VI-Kurzreferenz.html', 'target'=>'main'),
),
'Cronjobs'=>array('name'=>'Cronjobs', 'link'=>'stammdaten/cronjobverwaltung.php', 'target'=>'main','permissions'=>array('basis/cronjob')),
),
'SD-Tools'=> array
+1 -1
View File
@@ -1210,7 +1210,7 @@ class wochenplan extends basis_db
echo '<vbox style="border:1px solid black; background-color:'.$bgcolor.'"';
if($tooltip!='')
{
echo ' tooltiptext="'.str_replace('"','&quot;',$tooltip).'"';
echo ' tooltiptext="'.$this->convert_html_chars($tooltip).'"';
}
echo '
ondragdrop="nsDragAndDrop.drop(event,boardObserver)"
+68 -3
View File
@@ -309,9 +309,9 @@ class zeitaufzeichnung extends basis_db
{
$where = "uid=".$this->db_add_param($user);
if ($days!='')
$where.= " AND ende>(now() - INTERVAL '".$days." days')";
$where.= " AND ende>(now() - INTERVAL '".$days." days')";
$qry = "SELECT
$qry = "SELECT
*, to_char ((ende-start),'HH24:MI') as diff,
(SELECT (to_char(sum(ende-start),'DD')::integer)*24+to_char(sum(ende-start),'HH24')::integer || ':' || to_char(sum(ende-start),'MI')
FROM campus.tbl_zeitaufzeichnung
@@ -342,7 +342,72 @@ class zeitaufzeichnung extends basis_db
$obj->service_id = $row->service_id;
$obj->kunde_uid = $row->kunde_uid;
$obj->summe = $row->summe;
$obj->diff = $row->diff;
$obj->diff = $row->diff;
$obj->datum = $row->start;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt die Zeitaufzeichnungen eines Users aufgefüllt mit lehren Tagen.
* Default: Die letzten 40 Tage
* @param string $user
* @param integer $days deafult: 40 Tage
*/
public function getListeUserFull($user, $days='40')
{
$where = "uid=".$this->db_add_param($user);
if ($days!='')
$where.= " AND ende>(now() - INTERVAL '".$days." days')";
$where_join = "and z.uid=".$this->db_add_param($user);
if ($days!='')
$where_join.= " AND z.ende>(now() - INTERVAL '".$days." days')";
if ($days=='')
$max_anz = 180;
else
$max_anz = $days;
$qry = "SELECT
d.dates, z.*, to_char ((z.ende-z.start),'HH24:MI') as diff,
(SELECT (to_char(sum(ende-start),'DD')::integer)*24+to_char(sum(ende-start),'HH24')::integer || ':' || to_char(sum(ende-start),'MI')
FROM campus.tbl_zeitaufzeichnung
WHERE $where) as summe
FROM campus.tbl_zeitaufzeichnung z
right join (select current_date - s.a as dates from generate_series(0,$max_anz,1) as s(a)) d on date(z.ende) = d.dates $where_join order by d.dates desc, z.start desc
";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new zeitaufzeichnung();
$obj->zeitaufzeichnung_id = $row->zeitaufzeichnung_id;
$obj->uid = $row->uid;
$obj->aktivitaet_kurzbz = $row->aktivitaet_kurzbz;
$obj->start = $row->start;
$obj->ende = $row->ende;
$obj->beschreibung = $row->beschreibung;
$obj->oe_kurzbz_1 = $row->oe_kurzbz_1;
$obj->oe_kurzbz_2 = $row->oe_kurzbz_2;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->projekt_kurzbz = $row->projekt_kurzbz;
$obj->ext_id = $row->ext_id;
$obj->service_id = $row->service_id;
$obj->kunde_uid = $row->kunde_uid;
$obj->summe = $row->summe;
$obj->diff = $row->diff;
$obj->datum = $row->dates;
$this->result[] = $obj;
}
Regular → Executable
+44
View File
@@ -467,5 +467,49 @@ class zeitsperre extends basis_db
return false;
}
}
/**
* Liefert die Zeitsperren eines Users für die Zeitaufzeichnung
*
* @param $uid
* @param $anz_tage
* @return array 'datum'->'zeitsperre_kurzbz'
*/
public function getZeitsperrenForZeitaufzeichnung($uid, $anz_tage=50)
{
unset($this->result);
$this->result=array();
$qry = "select datum::date, freigabevon, zeitsperretyp_kurzbz
from (SELECT generate_series(vondatum::timestamp, bisdatum::timestamp, '1 day') as datum, freigabevon, mitarbeiter_uid, zeitsperretyp_kurzbz FROM campus.tbl_zeitsperre ) a
where a.mitarbeiter_uid = ".$this->db_add_param($uid)." and datum>(now() - interval '50 Days') and zeitsperretyp_kurzbz in ('Krank','Urlaub')";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
if ($row->zeitsperretyp_kurzbz == 'Urlaub' && $row->freigabevon == NULL)
$result[$row->datum] = "Urlaubsantrag (Freigabe fehlt)";
else
$result[$row->datum] = $row->zeitsperretyp_kurzbz;
$this->result = $result;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Zeitsperren';
return false;
}
}
}
?>
+9 -4
View File
@@ -43,6 +43,7 @@ class zeugnisnote extends basis_db
public $insertvon; // varchar(16)
public $ext_id; // bigint
public $bemerkung; // text
public $punkte; // numeric(8,4)
public $lehrveranstaltung_bezeichung;
public $note_bezeichnung;
@@ -106,6 +107,7 @@ class zeugnisnote extends basis_db
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
$this->bemerkung = $row->bemerkung;
$this->punkte = $row->punkte;
return true;
}
else
@@ -179,7 +181,7 @@ class zeugnisnote extends basis_db
//Neuen Datensatz einfuegen
$qry='INSERT INTO lehre.tbl_zeugnisnote (lehrveranstaltung_id, student_uid,
studiensemester_kurzbz, note, uebernahmedatum, benotungsdatum, bemerkung,
updateamum, updatevon, insertamum, insertvon, ext_id) VALUES('.
updateamum, updatevon, insertamum, insertvon, ext_id, punkte) VALUES('.
$this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER).', '.
$this->db_add_param($this->student_uid).', '.
$this->db_add_param($this->studiensemester_kurzbz).', '.
@@ -191,12 +193,14 @@ class zeugnisnote extends basis_db
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->insertamum).', '.
$this->db_add_param($this->insertvon).', '.
$this->db_add_param($this->ext_id).');';
$this->db_add_param($this->ext_id).','.
$this->db_add_param($this->punkte).');';
}
else
{
$qry='UPDATE lehre.tbl_zeugnisnote SET '.
'note='.$this->db_add_param($this->note).', '.
'punkte='.$this->db_add_param($this->punkte).','.
'uebernahmedatum='.$this->db_add_param($this->uebernahmedatum).', '.
'benotungsdatum='.$this->db_add_param($this->benotungsdatum).', '.
'bemerkung='.$this->db_add_param($this->bemerkung).', '.
@@ -266,7 +270,7 @@ class zeugnisnote extends basis_db
$where2.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
$qry = "SELECT vw_student_lehrveranstaltung.lehrveranstaltung_id, uid,
vw_student_lehrveranstaltung.studiensemester_kurzbz, note, uebernahmedatum, benotungsdatum,
vw_student_lehrveranstaltung.studiensemester_kurzbz, note, punkte, uebernahmedatum, benotungsdatum,
vw_student_lehrveranstaltung.ects, vw_student_lehrveranstaltung.semesterstunden,
tbl_zeugnisnote.updateamum, tbl_zeugnisnote.updatevon, tbl_zeugnisnote.insertamum,
tbl_zeugnisnote.insertvon, tbl_zeugnisnote.ext_id,
@@ -288,7 +292,7 @@ class zeugnisnote extends basis_db
) LEFT JOIN lehre.tbl_note USING(note)
WHERE true $where
UNION
SELECT lehre.tbl_lehrveranstaltung.lehrveranstaltung_id,student_uid AS uid,studiensemester_kurzbz, note,
SELECT lehre.tbl_lehrveranstaltung.lehrveranstaltung_id,student_uid AS uid,studiensemester_kurzbz, note, punkte,
uebernahmedatum, benotungsdatum,lehre.tbl_lehrveranstaltung.ects,lehre.tbl_lehrveranstaltung.semesterstunden, tbl_zeugnisnote.updateamum, tbl_zeugnisnote.updatevon, tbl_zeugnisnote.insertamum,
tbl_zeugnisnote.insertvon, tbl_zeugnisnote.ext_id, lehre.tbl_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung, lehre.tbl_lehrveranstaltung.bezeichnung_english as lehrveranstaltung_bezeichnung_english,
tbl_note.bezeichnung as note_bezeichnung, tbl_zeugnisnote.bemerkung as bemerkung, tbl_lehrveranstaltung.sort, tbl_lehrveranstaltung.zeugnis, tbl_lehrveranstaltung.studiengang_kz,
@@ -310,6 +314,7 @@ class zeugnisnote extends basis_db
$obj->student_uid = $row->uid;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->note = $row->note;
$obj->punkte = $row->punkte;
$obj->uebernahmedatum = $row->uebernahmedatum;
$obj->benotungsdatum = $row->benotungsdatum;
$obj->updateamum = $row->updateamum;
+3
View File
@@ -167,4 +167,7 @@ $this->phrasen['benotungstool/mussPositivSein']='* muss positiv sein';
$this->phrasen['benotungstool/eingetrageneNoten']='Eingetragene Noten';
$this->phrasen['benotungstool/zeunis']='Zeugnis';
$this->phrasen['benotungstool/handbuch']='Handbuch';
$this->phrasen['benotungstool/punkte']='Punkte';
$this->phrasen['benotungstool/importAnweisung']='Kopieren Sie die Spalten Kennzahl und Note aus der Notenliste und fügen Sie diese in folgendes Feld ein';
$this->phrasen['benotungstool/pruefung']='Prüfung';
?>
+3
View File
@@ -45,3 +45,6 @@ $this->phrasen['bewerbung/alternative']='Alternative';
$this->phrasen['bewerbung/priowaehlen']='Primären und alternative Variante auswählen';
$this->phrasen['bewerbung/ok']='OK';
$this->phrasen['bewerbung/abbrechen']='Abbrechen';
$this->phrasen['bewerbung/prioBeschreibungstext'] = 'Bitte wählen Sie die Organisationsform und Sprache. Für den Fall dass es keine Plätze mehr gibt können Sie auch eine Alternative auswählen.';
$this->phrasen['bewerbung/prioUeberschrifttopprio'] = 'Oberste Priorität';
$this->phrasen['bewerbung/prioUeberschriftalternative'] = 'Alternative';
+2
View File
@@ -2,4 +2,6 @@
$this->phrasen['gesamtnote/wollenSieWirklichLoeschen']='Wollen Sie die markierten Einträge wirklich löschen? Alle bereits eingetragenen Kreuzerl gehen dabei verloren';
$this->phrasen['gesamtnote/noteUnveraendert']='Note unverändert';
$this->phrasen['gesamtnote/passwortFalsch']='Fehler beim Freigeben der Noten: Das Uebergebene Passwort ist falsch';
$this->phrasen['gesamtnote/notenschluesselanzeigen']='Notenschlüssel anzeigen';
$this->phrasen['gesamtnote/keinNotenschluesselvorhanden']='Für diese Lehrveranstaltung ist kein Notenschluessel definiert';
?>
+2
View File
@@ -167,4 +167,6 @@ $this->phrasen['benotungstool/mussPositivSein']='* must be positive';
$this->phrasen['benotungstool/eingetrageneNoten']='Submitted Grades';
$this->phrasen['benotungstool/zeunis']='Transcript';
$this->phrasen['benotungstool/handbuch']='Handbook';
$this->phrasen['benotungstool/punkte']='Points';
$this->phrasen['benotungstool/importAnweisung']='Kopieren Sie die Spalten Kennzahl und Note aus der Notenliste und fügen Sie diese in folgendes Feld ein';
?>
+3
View File
@@ -45,3 +45,6 @@ $this->phrasen['bewerbung/alternative']='Alternative';
$this->phrasen['bewerbung/priowaehlen']='Select primary and alternative course of studies';
$this->phrasen['bewerbung/ok']='OK';
$this->phrasen['bewerbung/abbrechen']='Cancel';
$this->phrasen['bewerbung/prioBeschreibungstext'] = 'Please choose the type of program. If possible, choose an alternative in case it\'s fully booked.';
$this->phrasen['bewerbung/prioUeberschrifttopprio'] = 'Top priority';
$this->phrasen['bewerbung/prioUeberschriftalternative'] = 'Alternative';
+17
View File
@@ -0,0 +1,17 @@
build_settings:
verbose: false
prefer_symlink: false
setup:
test:
codeception:
config: "tests"
php_loc:
php_docblock_checker:
allowed_warnings: -1
# php_unit:
# directory: "tests/phpunit/"
# args: "--bootstrap 'test/phpunit/bootstrap.php' --configuration 'tests/phpunit/phpunit.xml'"
complete:
+40 -2
View File
@@ -38,6 +38,11 @@ require_once('../include/nation.class.php');
require_once('../include/datum.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/akadgrad.class.php');
require_once('../include/organisationseinheit.class.php');
require_once('../include/projektarbeit.class.php');
require_once('../include/lehreinheit.class.php');
require_once('../include/lehrveranstaltung.class.php');
require_once('../include/note.class.php');
$xmlformat='rdf';
if(isset($_GET['xmlformat']))
@@ -88,7 +93,10 @@ if($db->db_query($qry))
$akadgrad = new akadgrad($row->akadgrad_id);
if($mitarbeiter->load($row->vorsitz))
$vorsitz = trim($mitarbeiter->titelpre.' '.$mitarbeiter->vorname.' '.$mitarbeiter->nachname.' '.$mitarbeiter->titelpost);
{
$vorsitz = trim($mitarbeiter->titelpre.' '.$mitarbeiter->vorname.' '.$mitarbeiter->nachname.' '.$mitarbeiter->titelpost);
$vorsitz_geschlecht = $mitarbeiter->geschlecht;
}
if($person->load($row->pruefer1))
$pruefer1 = trim($person->titelpre.' '.$person->vorname.' '.$person->nachname.' '.$person->titelpost);
if($person->load($row->pruefer2))
@@ -104,7 +112,7 @@ if($db->db_query($qry))
if($row_rek = $db->db_fetch_object())
$rektor = $row_rek->titelpre.' '.$row_rek->vorname.' '.$row_rek->nachname.' '.$row_rek->titelpost;
$qry = "SELECT * FROM (SELECT titel as themenbereich, ende, projektarbeit_id, note, beginn FROM lehre.tbl_projektarbeit a
WHERE student_uid='$student->uid' AND (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom')
WHERE student_uid='$student->uid' AND (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom' OR projekttyp_kurzbz='Master' OR projekttyp_kurzbz='Dissertation' OR projekttyp_kurzbz='Lizenziat' OR projekttyp_kurzbz='Magister')
ORDER BY beginn DESC, projektarbeit_id ASC LIMIT 2) as a ORDER BY beginn asc";
$themenbereich='';
$datum_projekt='';
@@ -127,6 +135,10 @@ if($db->db_query($qry))
$themenbereich = $row_proj->themenbereich;
$note = (isset($note_arr[$row_proj->note])?$note_arr[$row_proj->note]:$row_proj->note);
$datum_projekt = $datum_obj->convertISODate($row_proj->ende);
$projektarbeit = new projektarbeit($row_proj->projektarbeit_id);
$lehreinheit = new lehreinheit($projektarbeit->lehreinheit_id);
$lehrveranstaltung = new lehrveranstaltung($lehreinheit->lehrveranstaltung_id);
$projektnote = new note($note);
}
if($row_proj = $db->db_fetch_object($result_proj))
@@ -175,11 +187,29 @@ if($db->db_query($qry))
$stg_art_engl='diploma';
}
$oe = new organisationseinheit();
$parents = $oe->getParents($studiengang->oe_kurzbz);
$oe_parent = "";
foreach ($parents as $parent)
{
$oe_temp = new organisationseinheit();
$oe_temp->load($parent);
if($oe_temp->organisationseinheittyp_kurzbz == 'Fakultät')
{
$oe_parent = $oe_temp->bezeichnung;
break;
}
}
$studiengang_bezeichnung2 = explode(" ", $studiengang->bezeichnung, 2);
echo "\t<pruefung>".'
<abschlusspruefung_id><![CDATA['.$row->abschlusspruefung_id.']]></abschlusspruefung_id>
<student_uid><![CDATA['.$row->student_uid.']]></student_uid>
<vorsitz><![CDATA['.$row->vorsitz.']]></vorsitz>
<vorsitz_nachname><![CDATA['.$vorsitz.']]></vorsitz_nachname>
<vorsitz_geschlecht><![CDATA['.$vorsitz_geschlecht.']]></vorsitz_geschlecht>
<pruefer1><![CDATA['.$row->pruefer1.']]></pruefer1>
<pruefer1_nachname><![CDATA['.$pruefer1.']]></pruefer1_nachname>
<pruefer2><![CDATA['.$row->pruefer2.']]></pruefer2>
@@ -194,6 +224,7 @@ if($db->db_query($qry))
<sponsion><![CDATA['.$datum_obj->convertISODate($row->sponsion).']]></sponsion>
<sponsion_iso><![CDATA['.$row->sponsion.']]></sponsion_iso>
<pruefungstyp_kurzbz><![CDATA['.$row->pruefungstyp_kurzbz.']]></pruefungstyp_kurzbz>
<pruefungstyp_beschreibung><![CDATA['.$row->beschreibung.']]></pruefungstyp_beschreibung>
<anrede><![CDATA['.$anrede.']]></anrede>
<anrede_engl><![CDATA['.$anrede_engl.']]></anrede_engl>
<titelpre><![CDATA['.$student->titelpre.']]></titelpre>
@@ -203,6 +234,7 @@ if($db->db_query($qry))
<titelpost><![CDATA['.$student->titelpost.']]></titelpost>
<matrikelnr><![CDATA['.$student->matrikelnr.']]></matrikelnr>
<gebdatum_iso><![CDATA['.$student->gebdatum.']]></gebdatum_iso>
<geschlecht><![CDATA['.$student->geschlecht.']]></geschlecht>
<gebdatum><![CDATA['.$datum_obj->convertISODate($student->gebdatum).']]></gebdatum>
<gebort><![CDATA['.$student->gebort.']]></gebort>
<staatsbuergerschaft><![CDATA['.$staatsbuergerschaft.']]></staatsbuergerschaft>
@@ -211,7 +243,9 @@ if($db->db_query($qry))
<geburtsnation_engl><![CDATA['.$geburtsnation_engl.']]></geburtsnation_engl>
<studiengang_kz><![CDATA['.sprintf('%04s',$student->studiengang_kz).']]></studiengang_kz>
<stg_bezeichnung><![CDATA['.$studiengang->bezeichnung.']]></stg_bezeichnung>
<stg_bezeichnung2><![CDATA['.$studiengang_bezeichnung2[1].']]></stg_bezeichnung2>
<stg_bezeichnung_engl><![CDATA['.$studiengang->english.']]></stg_bezeichnung_engl>
<stg_oe_parent><![CDATA['.$oe_parent.']]></stg_oe_parent>
<stg_art><![CDATA['.$stg_art.']]></stg_art>
<stg_art_engl><![CDATA['.$stg_art_engl.']]></stg_art_engl>
<akadgrad_kurzbz><![CDATA['.$akadgrad->akadgrad_kurzbz.']]></akadgrad_kurzbz>
@@ -225,10 +259,14 @@ if($db->db_query($qry))
<titelbescheidvom><![CDATA['.$datum_obj->convertISODate($studiengang->titelbescheidvom).']]></titelbescheidvom>
<rektor><![CDATA['.$rektor.']]></rektor>
<themenbereich><![CDATA['.$themenbereich.']]></themenbereich>
<projekt_typ><![CDATA['.$projektarbeit->projekttyp_bezeichnung.']]></projekt_typ>
<projekt_fach><![CDATA['.$lehrveranstaltung->bezeichnung.']]></projekt_fach>
<projekt_titel><![CDATA['.$projektarbeit->titel.']]></projekt_titel>
<themenbereich_2><![CDATA['.$themenbereich_2.']]></themenbereich_2>
<betreuer><![CDATA['.$betreuer.']]></betreuer>
<betreuer_2><![CDATA['.$betreuer_2.']]></betreuer_2>
<note><![CDATA['.$note.']]></note>
<note_bezeichnung><![CDATA['.$projektnote->bezeichnung.']]></note_bezeichnung>
<note2><![CDATA['.$note2.']]></note2>
<notekommpruef><![CDATA['.$row->note.']]></notekommpruef>
<datum_projekt><![CDATA['.$datum_projekt.']]></datum_projekt>
+16 -3
View File
@@ -158,18 +158,31 @@ Attribute:</span><br>
<li>anmerkung</li>
</ul>
<br>
<h2>LVInfo</h2>
Liefert das RDF fuer die Lehrveranstaltungsinformationen<br>
Liefert das RDF fuer die Lehrveranstaltungsinformationen.<br>
<br>
<span style="font-weight: bold;">Aufruf:</span>
lvinfo.rdf.php?stg_kz=...&amp;semester=...<br><br>
<strong>Beispiele:</strong>
<ul>
<li><a target="_blank" href="lvinfo.rdf.php?stg_kz=258&amp;semester=2">lvinfo.rdf.php?stg_kz=258&amp;semester=2</a></li>
<li><a target="_blank" href="lvinfo.rdf.php?stg_kz=258&amp;semester=2">lvinfo.rdf.php?mitarbeiter_uid=pam&amp;studiensemester_kurzbz=WS2014</a></li>
<li><a target="_blank" href="lvinfo.rdf.php?stg_kz=258&amp;studiensemester_kurzbz=WS2014">lvinfo.rdf.php?stg_kz=258&amp;studiensemester_kurzbz=WS2014</a></li>
<li><a target="_blank" href="lvinfo.rdf.php?mitarbeiter_uid=pam&studiensemester_kurzbz=WS2014">lvinfo.rdf.php?mitarbeiter_uid=pam&amp;studiensemester_kurzbz=WS2014</a></li>
</ul>
<strong>Standardfilter:</strong><br>
<ul>
<li>tbl_lehrveranstaltung.aktiv=true</li>
<li>tbl_lehrveranstaltung.lehre=true</li>
<li>tbl_lvinfo.aktiv=true</li>
<li>tbl_lvinfo.genehmigt=true</li
<li>tbl_lehreinheitmitarbeiter muss gesetzt sein</li>
</ul>
<span style="font-weight: bold;">Parameter</span>: <br>
<ul>
<li>stg_kz - Studiengangskennzahl</li>
<li>stg_kz - Studiengangskennzahl (optional wenn Mitarbeiter gesetzt)</li>
<li>studiensemester_kurzbz - Studiensemester (optional)</li>
<li>mitarbeiter_uid - Lehrbeauftragter (optional wenn Studiengang gesetzt)</li>
<li>semester - Semester (optional)</li>
</ul>
<span style="font-weight: bold;">
+9 -1
View File
@@ -32,6 +32,7 @@ require_once('../include/functions.inc.php');
require_once('../include/lvgesamtnote.class.php');
require_once('../include/datum.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/benutzerberechtigung.class.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
@@ -39,6 +40,12 @@ $user = get_uid();
loadVariables($user);
$datum = new datum();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('student/noten'))
die('Sie haben keine Berechtigung fuer diese Seite');
$stg_arr = array();
$stg_obj = new studiengang();
$stg_obj->getAll(null, false);
@@ -78,7 +85,7 @@ foreach ($obj->result as $row)
{
$vorname = '';
$nachname = '';
$qry_name = "SELECT vorname, nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid='$row->student_uid'";
$qry_name = "SELECT vorname, nachname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=".$db->db_add_param($row->student_uid);
if($db->db_query($qry_name))
{
if($row_name = $db->db_fetch_object())
@@ -96,6 +103,7 @@ foreach ($obj->result as $row)
<NOTE:mitarbeiter_uid><![CDATA['.$row->mitarbeiter_uid.']]></NOTE:mitarbeiter_uid>
<NOTE:studiensemester_kurzbz><![CDATA['.$row->studiensemester_kurzbz.']]></NOTE:studiensemester_kurzbz>
<NOTE:note><![CDATA['.$row->note.']]></NOTE:note>
<NOTE:punkte><![CDATA['.$row->punkte.']]></NOTE:punkte>
<NOTE:freigabedatum_iso><![CDATA['.$row->freigabedatum.']]></NOTE:freigabedatum_iso>
<NOTE:freigabedatum><![CDATA['.$datum->convertISODate($row->freigabedatum).']]></NOTE:freigabedatum>
<NOTE:benotungsdatum_iso><![CDATA['.$row->benotungsdatum.']]></NOTE:benotungsdatum_iso>
+44 -15
View File
@@ -34,19 +34,29 @@ require_once('../include/basis_db.class.php');
require_once('../include/functions.inc.php');
$rdf_url='http://www.technikum-wien.at/lvinfo';
$request=false;
?>
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:LVINFO="<?php echo $rdf_url; ?>/rdf#"
>
<?php
if(isset($_GET['stg_kz']) && is_numeric($_GET['stg_kz']))
$stg_kz=$_GET['stg_kz'];
{
$stg_kz=$_GET['stg_kz'];
$request=true;
}
else
unset($stg_kz);
if(isset($_GET['mitarbeiter_uid']))
{
$mitarbeiter_uid=$_GET['mitarbeiter_uid'];
$request=true;
}
else
unset($mitarbeiter_uid);
if(isset($_GET['semester']))
if(is_numeric($_GET['semester']))
@@ -55,16 +65,21 @@ if(isset($_GET['semester']))
die('Semester muss eine gueltige Zahl sein');
else
unset($sem);
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz=$_GET['studiensemester_kurzbz'];
else
unset($studiensemester_kurzbz);
$qry = "
SELECT
SELECT DISTINCT
tbl_lehrveranstaltung.lehrveranstaltung_id as lv_lehrveranstaltung_id,
tbl_lehrveranstaltung.kurzbz as lv_kurzbz,
tbl_lehrveranstaltung.lehreverzeichnis as lv_lehrevz,
tbl_lehrveranstaltung.bezeichnung as lv_bezeichnung,
tbl_lehrveranstaltung.bezeichnung_english as lv_bezeichnung_english,
tbl_lehrveranstaltung.studiengang_kz as lv_studiengang_kz,
tbl_lehrveranstaltung.semester as lv_semester,
tbl_lehrveranstaltung.kurzbz as lv_kurzbz,
tbl_lehrveranstaltung.lehreverzeichnis as lv_lehrevz,
tbl_lehrveranstaltung.bezeichnung as lv_bezeichnung,
tbl_lehrveranstaltung.bezeichnung_english as lv_bezeichnung_english,
tbl_lehrveranstaltung.studiengang_kz as lv_studiengang_kz,
tbl_lehrveranstaltung.semester as lv_semester,
tbl_lehrveranstaltung.sprache as unterrichtssprache,
tbl_lehrveranstaltung.ects as ects,
tbl_lehrveranstaltung.semesterstunden as lv_semesterstunden,
@@ -72,8 +87,13 @@ tbl_lehrveranstaltung.orgform_kurzbz as orgform_kurzbz,
tbl_lehrveranstaltung.incoming as incoming,
lower(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as stg_kuerzel,
tbl_lvinfo.*
FROM (lehre.tbl_lehrveranstaltung JOIN campus.tbl_lvinfo USING(lehrveranstaltung_id)) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE
FROM (lehre.tbl_lehrveranstaltung JOIN campus.tbl_lvinfo USING (lehrveranstaltung_id))
JOIN public.tbl_studiengang USING (studiengang_kz)";
if(isset($mitarbeiter_uid) || isset($studiensemester_kurzbz))
$qry.= " JOIN lehre.tbl_lehreinheit USING (lehrveranstaltung_id) ";
if(isset($mitarbeiter_uid))
$qry.= " JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id) ";
$qry.="WHERE
tbl_lehrveranstaltung.aktiv=true AND
tbl_lehrveranstaltung.lehre=true AND
tbl_lvinfo.aktiv=true AND
@@ -81,11 +101,20 @@ tbl_lvinfo.genehmigt=true ";
if(isset($stg_kz))
$qry.= " AND tbl_lehrveranstaltung.studiengang_kz='".addslashes($stg_kz)."'";
if(isset($mitarbeiter_uid))
$qry.= " AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid='".addslashes($mitarbeiter_uid)."'";
if(isset($studiensemester_kurzbz))
$qry.= " AND tbl_lehreinheit.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
if(isset($sem))
$qry .= " AND tbl_lehrveranstaltung.semester='".addslashes($sem)."'";
$qry .= "ORDER BY lv_studiengang_kz, lv_semester, lv_kurzbz, sprache";
$qry .= " ORDER BY lv_studiengang_kz, lv_semester, lv_kurzbz, sprache";
//echo $qry;
if (!$request)
$qry='SELECT 1 WHERE 1=2;';
$db = new basis_db();
if($db->db_query($qry))
@@ -145,4 +174,4 @@ if($db->db_query($qry))
echo "</RDF:Seq>\n";
}
?>
</RDF:RDF>
</RDF:RDF>
+14 -5
View File
@@ -24,14 +24,20 @@ 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");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
require_once('../config/vilesci.config.inc.php');
require_once('../include/pruefung.class.php');
require_once('../include/datum.class.php');
require_once('../include/functions.inc.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 für diese Seite');
if(isset($_GET['student_uid']))
$student_uid = $_GET['student_uid'];
@@ -49,6 +55,8 @@ $pruefung = new pruefung();
$rdf_url='http://www.technikum-wien.at/pruefung';
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
@@ -92,10 +100,11 @@ function draw_rdf($row)
<PRUEFUNG:pruefungstyp_beschreibung><![CDATA['.$row->pruefungstyp_beschreibung.']]></PRUEFUNG:pruefungstyp_beschreibung>
<PRUEFUNG:lehrveranstaltung_id><![CDATA['.$row->lehrveranstaltung_id.']]></PRUEFUNG:lehrveranstaltung_id>
<PRUEFUNG:studiensemester_kurzbz><![CDATA['.$row->studiensemester_kurzbz.']]></PRUEFUNG:studiensemester_kurzbz>
<PRUEFUNG:punkte><![CDATA['.($row->punkte!=''?(float)$row->punkte:'').']]></PRUEFUNG:punkte>
</RDF:Description>
</RDF:li>
';
}
?>
</RDF:Seq>
</RDF:RDF>
</RDF:RDF>
+1
View File
@@ -725,6 +725,7 @@ else
<studienbeginn_beginn><![CDATA['.$datum_obj->convertISODate($studienbeginn).']]></studienbeginn_beginn>
<studiensemester_beginn><![CDATA['.$studiensemester.']]></studiensemester_beginn>
<studiensemester_aktuell><![CDATA['.$stsem->studiensemester_kurzbz.']]></studiensemester_aktuell>
<studiensemester_aktuell_bezeichnung><![CDATA['.$stsem->bezeichnung.']]></studiensemester_aktuell_bezeichnung>
<studienbeginn_aktuell><![CDATA['.$datum_obj->convertISODate($stsem->start).']]></studienbeginn_aktuell>
<tagesdatum><![CDATA['.date('d.m.Y').']]></tagesdatum>
<max_semester><![CDATA['.$studiengang->max_semester.']]></max_semester>
+25 -12
View File
@@ -37,7 +37,7 @@ $db = new basis_db();
function draw_studienerfolg($uid, $studiensemester_kurzbz)
{
global $xml, $note_arr, $datum;
global $xml, $note_arr, $datum, $note_wert;
$db = new basis_db();
$query = "SELECT
@@ -153,12 +153,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
if(!$obj->getZeugnisnoten($lehrveranstaltung_id=null, $uid, $studiensemester_kurzbz))
die('Fehler beim Laden der Noten:'.$obj->errormsg);
$qry = "SELECT wochen FROM public.tbl_semesterwochen
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)." AND semester=".$db->db_add_param($row->semester);
$wochen = 15;
if($db->db_query($qry))
if($row_wochen = $db->db_fetch_object())
$wochen = $row_wochen->wochen;
$gesamtstunden=0;
$gesamtects=0;
@@ -175,23 +170,37 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
$note = "";
if($note!='')
{
$qry = "SELECT
wochen
FROM
public.tbl_semesterwochen
JOIN lehre.tbl_lehrveranstaltung USING(studiengang_kz, semester)
WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id);
$wochen = 15;
if($db->db_query($qry))
if($row_wochen = $db->db_fetch_object())
$wochen = $row_wochen->wochen;
$xml .= " <unterrichtsfach>";
$xml .= " <bezeichnung><![CDATA[".$row->lehrveranstaltung_bezeichnung."]]></bezeichnung>";
$xml .= " <bezeichnung_englisch><![CDATA[".$row->lehrveranstaltung_bezeichnung_english."]]></bezeichnung_englisch>";
$xml .= " <note>".$note."</note>";
$xml .= " <note_idx>".$row->note."</note_idx>";
$xml .= " <sws>".sprintf('%.1f',$row->semesterstunden/$wochen)."</sws>";
$sws = sprintf('%.1F',$row->semesterstunden/$wochen);
$xml .= " <sws>".$sws."</sws>";
$xml .= " <ects>".$row->ects."</ects>";
$xml .= " <lehrform><![CDATA[".$row->lv_lehrform_kurzbz."]]></lehrform>";
if($row->benotungsdatum!='')
$xml .= " <benotungsdatum>".date('d.m.Y',$datum->mktime_fromtimestamp($row->benotungsdatum))."</benotungsdatum>";
$xml .= " </unterrichtsfach>";
$gesamtstunden +=$row->semesterstunden/$wochen;
$gesamtstunden +=$sws;
$gesamtects += $row->ects;
if(is_numeric($note))
if($note_wert[$row->note]!='')
{
$notensumme += $note;
$notensumme += $note_wert[$row->note];
$anzahl++;
}
}
@@ -205,7 +214,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
}
else
$schnitt = 0;
$xml .= " <gesamtstunden>$gesamtstunden</gesamtstunden>";
$xml .= " <gesamtstunden>".$gesamtstunden."</gesamtstunden>";
$xml .= " <gesamtects>$gesamtects</gesamtects>";
$xml .= " <schnitt>".sprintf('%.2f',$schnitt)."</schnitt>";
$xml .= " </studienerfolg>";
@@ -228,10 +237,14 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
}
$note_arr = array();
$note_wert = array();
$note = new note();
$note->getAll();
foreach ($note->result as $n)
{
$note_arr[$n->note] = $n->anmerkung;
$note_wert[$n->note] = $n->notenwert;
}
if(isset($_GET['ss']))
$studiensemester_kurzbz = $_GET['ss'];
+9 -1
View File
@@ -36,6 +36,7 @@ require_once('../include/benutzer.class.php');
require_once('../include/student.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/lehrveranstaltung.class.php');
require_once('../include/benutzerberechtigung.class.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
@@ -43,6 +44,12 @@ $user = get_uid();
loadVariables($user);
$datum = new datum();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('student/noten'))
die('Sie haben keine Berechtigung fuer diese Seite');
$stg_arr = array();
$stg_obj = new studiengang();
$stg_obj->getAll(null, false);
@@ -108,9 +115,10 @@ foreach ($obj->result as $row)
<NOTE:studiengang_kz><![CDATA['.$benutzer->studiengang_kz.']]></NOTE:studiengang_kz>
<NOTE:studiengang_lv><![CDATA['.$stg_arr[$lv_obj->studiengang_kz].']]></NOTE:studiengang_lv>
<NOTE:student_semester><![CDATA['.$benutzer->semester.']]></NOTE:student_semester>
<NOTE:punkte><![CDATA['.($row->punkte!=''?(float)$row->punkte:'').']]></NOTE:punkte>
</RDF:Description>
</RDF:li>';
}
?>
</RDF:Seq>
</RDF:RDF>
</RDF:RDF>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 382 B

After

Width:  |  Height:  |  Size: 458 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 344 B

After

Width:  |  Height:  |  Size: 417 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 740 B

After

Width:  |  Height:  |  Size: 819 B

+29
View File
@@ -598,3 +598,32 @@ option.inactive
{
text-decoration:line-through;
}
html.reports, html.reports body {
height: 100%;
}
html.reports .icons strong {
font-size: 26px;
vertical-align: middle;
}
html.reports .icons img {
width: 48px;
vertical-align: middle;
}
#rp_main {
width: 100%;
border: 0;
height: 85%;
}
img.mini-icon {
width: 15px;
vertical-align: middle;
}
td.overview-id {
text-align: right;
}
+1678 -995
View File
File diff suppressed because it is too large Load Diff
+3142 -3079
View File
File diff suppressed because it is too large Load Diff
+40 -2
View File
@@ -59,11 +59,14 @@ $error_msg='';
$stsem_obj = new studiensemester();
/*
if(mb_substr($studiensemester,0,1)=='W')
$stsem2 = $stsem_obj->getPreviousFrom($studiensemester);
else
$stsem2 = $stsem_obj->getNextFrom($studiensemester);
*/
$stsem2 = $stsem_obj->getNearestFrom($studiensemester);
function setGeneriert($gruppe)
{
$db = new basis_db();
@@ -104,6 +107,40 @@ $error_msg='';
echo '-';
flush();
}
// **************************************************************
// Weibliche Mitarbeiterinnen Verteiler abgleichen
$mlist_name='tw_ma_w';
setGeneriert($mlist_name);
// MitarbeiterInnen holen die nicht mehr in den Verteiler gehoeren
echo $mlist_name.' wird abgeglichen!<BR>';
flush();
$sql_query="SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER(".$db->db_add_param($mlist_name).") AND uid NOT IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_person USING(person_id) WHERE tbl_benutzer.aktiv AND geschlecht='w' AND personalnummer >=0)";
if(!($result = $db->db_query($sql_query)))
$error_msg.=$db->db_last_error();
while($row = $db->db_fetch_object($result))
{
$sql_query="DELETE FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER(".$db->db_add_param($mlist_name).") AND uid=".$db->db_add_param($row->uid);
if(!$db->db_query($sql_query))
$error_msg.=$db->db_last_error().$sql_query;
echo '-';
flush();
}
// MitarbeiterInnen holen die nicht im Verteiler sind
echo '<BR>';
$sql_query="SELECT mitarbeiter_uid AS uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_person USING(person_id) WHERE tbl_benutzer.aktiv AND geschlecht='w' AND personalnummer >=0 AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER(".$db->db_add_param($mlist_name)."))";
if(!($result = $db->db_query($sql_query)))
$error_msg.= $db->db_last_error();
while($row = $db->db_fetch_object($result))
{
$sql_query="INSERT INTO public.tbl_benutzergruppe(uid, gruppe_kurzbz, insertamum, insertvon) VALUES (".$db->db_add_param($row->uid).",".$db->db_add_param(strtoupper($mlist_name)).", now(), 'mlists_generate')";
if(!$db->db_query($sql_query))
$error_msg.=$db->db_last_error().$sql_query;
echo '-';
flush();
}
// **************************************************************
// LektorenVerteiler abgleichen
@@ -349,7 +386,7 @@ $error_msg='';
echo '<BR>Lektoren-Verteiler der Studiengaenge werden abgeglichen!<BR>';
flush();
$sql_query="SELECT uid, gruppe_kurzbz FROM public.tbl_benutzergruppe
WHERE gruppe_kurzbz LIKE '%\\\\_LKT' AND UPPER(gruppe_kurzbz)!=UPPER('tw_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_fix_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_ext_lkt')
WHERE gruppe_kurzbz LIKE '%\\\\_LKT' AND UPPER(gruppe_kurzbz)!=UPPER('tw_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_fix_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_ext_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('moodle_lkt')
AND (uid,UPPER(gruppe_kurzbz)) NOT IN
(SELECT mitarbeiter_uid,UPPER(typ::varchar(1) || tbl_studiengang.kurzbz || '_lkt')
FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_studiengang
@@ -678,6 +715,7 @@ WHERE
$error_msg.=$db->db_last_error().' '.$sql_querys;
}
$sql_query.=" AND NOT EXISTS(SELECT 1 FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz=UPPER(".$db->db_add_param($mlist_name).") AND uid=vw_lehreinheit.mitarbeiter_uid)";
if(!($result = $db->db_query($sql_query)))
$error_msg.=$db->db_last_error().' '.$sql_query;
// Lektoren holen die nicht im Verteiler sind
@@ -32,7 +32,10 @@ class local_fhcompletews_external extends external_api
public static function get_course_grades_parameters()
{
return new external_function_parameters(
array('courseid' => new external_value(PARAM_INT, 'CourseID')), 'ID of the Course'
array(
'courseid' => new external_value(PARAM_INT, 'Moodle CourseID'),
'type' => new external_value(PARAM_INT,'Type 1=Punkte, 2=Prozent, 3=Endnote lt Skala')
), 'Get Course Grades'
);
}
@@ -41,7 +44,7 @@ class local_fhcompletews_external extends external_api
* @param int courseid
* @return array
*/
public static function get_course_grades($courseid)
public static function get_course_grades($courseid, $type)
{
global $CFG, $DB;
require_once($CFG->dirroot . "/course/lib.php");
@@ -49,9 +52,10 @@ class local_fhcompletews_external extends external_api
//validate parameter
$params = self::validate_parameters(self::get_course_grades_parameters(),
array('courseid' => $courseid));
array('courseid' => $courseid, 'type'=>$type));
$notenart=3; // 2=Prozent; 3=Endnote nach Skala
$notenart = $type;
//$notenart=3; // 1=Punkte, 2=Prozent; 3=Endnote nach Skala
$gui=array();
$final_id='';
$data = array();
@@ -121,6 +125,10 @@ class local_fhcompletews_external extends external_api
$gradestr = $export->format_grade($userdata->grades[$final_id]);
$user_item['note']=$gradestr;
// Wenn Prozent dann Prozentzeichen entfernen
if(strpos($user_item['note'],'%')!==false)
$user_item['note']=trim(str_replace('%','',$user_item['note']));
// nur zurueckliefern wenn eine Note gefunden wurde und diese nicht '-' ist
if($user_item['note']!='-')
$data[]=$user_item;
+2 -2
View File
@@ -12,7 +12,7 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
$plugin->version = 2014030605; // The (date) version of this module + 2 extra digital for daily versions
$plugin->version = 2015020401; // The (date) version of this module + 2 extra digital for daily versions
// This version number is displayed into /admin/forms.php
// TODO: if ever this plugin get branched, the old branch number
// will not be updated to the current date but just incremented. We will
@@ -20,5 +20,5 @@ $plugin->version = 2014030605; // The (date) version of this module + 2 extra
// display this version number with userdate (dev friendly)
$plugin->requires = 2010112400; // Requires this Moodle version - at least 2.0
$plugin->cron = 0;
$plugin->release = '1.0 (Build: 2014030605)';
$plugin->release = '1.2 (Build: 2015020401)';
$plugin->maturity = MATURITY_STABLE;
@@ -32,7 +32,10 @@ class local_fhcompletews_external extends external_api
public static function get_course_grades_parameters()
{
return new external_function_parameters(
array('courseid' => new external_value(PARAM_INT, 'CourseID')), 'ID of the Course'
array(
'courseid' => new external_value(PARAM_INT, 'Moodle CourseID'),
'type' => new external_value(PARAM_INT,'Type 1=Punkte, 2=Prozent, 3=Endnote lt Skala')
), 'Get Course Grades'
);
}
@@ -41,7 +44,7 @@ class local_fhcompletews_external extends external_api
* @param int courseid
* @return array
*/
public static function get_course_grades($courseid)
public static function get_course_grades($courseid, $type)
{
global $CFG, $DB;
require_once($CFG->dirroot . "/course/lib.php");
@@ -49,9 +52,10 @@ class local_fhcompletews_external extends external_api
//validate parameter
$params = self::validate_parameters(self::get_course_grades_parameters(),
array('courseid' => $courseid));
array('courseid' => $courseid, 'type'=>$type));
$notenart=3; // 2=Prozent; 3=Endnote nach Skala
$notenart = $type;
//$notenart=2; // 1=Punkte; 2=Prozent; 3=Endnote nach Skala
$gui=array();
$final_id='';
$data = array();
@@ -72,12 +76,41 @@ class local_fhcompletews_external extends external_api
$context = get_context_instance(CONTEXT_COURSE, $courseid);
require_once($CFG->dirroot.'/grade/export/ods/grade_export_ods.php');
if (!$export = new grade_export_ods($course, 0, 0, false, false, $notenart, 2))
$moodle28=false;
try
{
$method = new ReflectionMethod('grade_export_ods','__construct');
if(count($method->getParameters())==3)
$moodle28=true;
}
catch(ReflectionException $e)
{
throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden");
return false;
}
if($moodle28)
{
//ab Moodle 2.8 hat grade_export_ods nur noch 3 Parameter
$formdata = new stdClass();
$formdata->display=$notenart;
$formdata->itemids=0;
$formdata->decimals=2;
$formdata->export_feedback=false;
if (!$export = new grade_export_ods($course, 0, $formdata))
{
throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden");
return false;
}
}
else
{
if (!$export = new grade_export_ods($course, 0, 0, false, false, $notenart, 2))
{
throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden");
return false;
}
}
$grad =$export->columns;
// Im Export sind die Noten fuer alle Abgaben, Quiz, etc enthalten
@@ -120,6 +153,10 @@ class local_fhcompletews_external extends external_api
{
$gradestr = $export->format_grade($userdata->grades[$final_id]);
$user_item['note']=$gradestr;
// Wenn Prozent dann Prozentzeichen entfernen
if(strpos($user_item['note'],'%')!==false)
$user_item['note']=trim(str_replace('%','',$user_item['note']));
// nur zurueckliefern wenn eine Note gefunden wurde und diese nicht '-' ist
if($user_item['note']!='-')
@@ -15,11 +15,11 @@
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Web service template plugin related strings
* @package localwstemplate
* plugin related strings
* @package localfhcompletws
* @copyright 2011 Moodle Pty Ltd (http://moodle.com)
* @author Jerome Mouneyrac
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['pluginname'] = 'FH Complete Web service Plugin';
$string['pluginname'] = 'FH-Complete Webservice Plugin';
@@ -12,7 +12,7 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
$plugin->version = 2014061103; // The (date) version of this module + 2 extra digital for daily versions
$plugin->version = 2015020404; // The (date) version of this module + 2 extra digital for daily versions
// This version number is displayed into /admin/forms.php
// TODO: if ever this plugin get branched, the old branch number
// will not be updated to the current date but just incremented. We will
@@ -20,5 +20,5 @@ $plugin->version = 2014061103; // The (date) version of this module + 2 extra
// display this version number with userdate (dev friendly)
$plugin->requires = 2013051400; // Requires this Moodle version - at least 2.5
$plugin->cron = 0;
$plugin->release = '1.1 (Build: 2014061103)';
$plugin->release = '1.2 (Build: 2015020404)';
$plugin->maturity = MATURITY_STABLE;
+17
View File
@@ -0,0 +1,17 @@
actor: Tester
paths:
tests: codeception
log: codeception/_output
data: codeception/_data
helpers: codeception/_support
settings:
bootstrap: _bootstrap.php
colors: true
memory_limit: 1024M
modules:
config:
Db:
dsn: ''
user: ''
password: ''
dump: codeception/_data/dump.sql
+2
View File
@@ -0,0 +1,2 @@
<?php
// This is global bootstrap for autoloading
+1
View File
@@ -0,0 +1 @@
/* Replace this file with actual dump of your database */
@@ -0,0 +1,10 @@
<?php
namespace Codeception\Module;
// here you can define custom actions
// all public methods declared in helper class will be available in $I
class AcceptanceHelper extends \Codeception\Module
{
}
@@ -0,0 +1,10 @@
<?php
namespace Codeception\Module;
// here you can define custom actions
// all public methods declared in helper class will be available in $I
class FunctionalHelper extends \Codeception\Module
{
}
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace Codeception\Module;
// here you can define custom actions
// all public methods declared in helper class will be available in $I
class UnitHelper extends \Codeception\Module
{
}
+14
View File
@@ -0,0 +1,14 @@
# Codeception Test Suite Configuration
# suite for acceptance tests.
# perform tests in browser using the WebDriver or PhpBrowser.
# If you need both WebDriver and PHPBrowser tests - create a separate suite.
class_name: AcceptanceTester
modules:
enabled:
- PhpBrowser
- AcceptanceHelper
config:
PhpBrowser:
url: 'http://localhost/myapp/'
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,6 @@
<?php
$I = new AcceptanceTester($scenario);
$I->wantTo('CIS Startseite Testen');
//$I->amOnPage('/cis/index.html');
//$I->see('Powered by FH Complete');
?>
@@ -0,0 +1,2 @@
<?php
// Here you can initialize variables that will be available to your tests
+9
View File
@@ -0,0 +1,9 @@
# Codeception Test Suite Configuration
# suite for functional (integration) tests.
# emulate web requests and make application process them.
# Include one of framework modules (Symfony2, Yii2, Laravel4) to use it.
class_name: FunctionalTester
modules:
enabled: [Filesystem, FunctionalHelper]
@@ -0,0 +1,360 @@
<?php //[STAMP] 40f12b65758ce0396ebc7f7f0af11f8c
// This class was automatically generated by build task
// You should not change it manually as it will be overwritten on next build
// @codingStandardsIgnoreFile
use Codeception\Module\Filesystem;
use Codeception\Module\FunctionalHelper;
/**
* Inherited Methods
* @method void wantToTest($text)
* @method void wantTo($text)
* @method void execute($callable)
* @method void expectTo($prediction)
* @method void expect($prediction)
* @method void amGoingTo($argumentation)
* @method void am($role)
* @method void lookForwardTo($achieveValue)
* @method void comment($description)
* @method void haveFriend($name, $actorClass = null)
*
* @SuppressWarnings(PHPMD)
*/
class FunctionalTester extends \Codeception\Actor
{
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Enters a directory In local filesystem.
* Project root directory is used by default
*
* @param $path
* @see \Codeception\Module\Filesystem::amInPath()
*/
public function amInPath($path) {
return $this->scenario->runStep(new \Codeception\Step\Condition('amInPath', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Opens a file and stores it's content.
*
* Usage:
*
* ``` php
* <?php
* $I->openFile('composer.json');
* $I->seeInThisFile('codeception/codeception');
* ?>
* ```
*
* @param $filename
* @see \Codeception\Module\Filesystem::openFile()
*/
public function openFile($filename) {
return $this->scenario->runStep(new \Codeception\Step\Action('openFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Deletes a file
*
* ``` php
* <?php
* $I->deleteFile('composer.lock');
* ?>
* ```
*
* @param $filename
* @see \Codeception\Module\Filesystem::deleteFile()
*/
public function deleteFile($filename) {
return $this->scenario->runStep(new \Codeception\Step\Action('deleteFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Deletes directory with all subdirectories
*
* ``` php
* <?php
* $I->deleteDir('vendor');
* ?>
* ```
*
* @param $dirname
* @see \Codeception\Module\Filesystem::deleteDir()
*/
public function deleteDir($dirname) {
return $this->scenario->runStep(new \Codeception\Step\Action('deleteDir', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Copies directory with all contents
*
* ``` php
* <?php
* $I->copyDir('vendor','old_vendor');
* ?>
* ```
*
* @param $src
* @param $dst
* @see \Codeception\Module\Filesystem::copyDir()
*/
public function copyDir($src, $dst) {
return $this->scenario->runStep(new \Codeception\Step\Action('copyDir', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks If opened file has `text` in it.
*
* Usage:
*
* ``` php
* <?php
* $I->openFile('composer.json');
* $I->seeInThisFile('codeception/codeception');
* ?>
* ```
*
* @param $text
* Conditional Assertion: Test won't be stopped on fail
* @see \Codeception\Module\Filesystem::seeInThisFile()
*/
public function canSeeInThisFile($text) {
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeInThisFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks If opened file has `text` in it.
*
* Usage:
*
* ``` php
* <?php
* $I->openFile('composer.json');
* $I->seeInThisFile('codeception/codeception');
* ?>
* ```
*
* @param $text
* @see \Codeception\Module\Filesystem::seeInThisFile()
*/
public function seeInThisFile($text) {
return $this->scenario->runStep(new \Codeception\Step\Assertion('seeInThisFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks the strict matching of file contents.
* Unlike `seeInThisFile` will fail if file has something more than expected lines.
* Better to use with HEREDOC strings.
* Matching is done after removing "\r" chars from file content.
*
* ``` php
* <?php
* $I->openFile('process.pid');
* $I->seeFileContentsEqual('3192');
* ?>
* ```
*
* @param $text
* Conditional Assertion: Test won't be stopped on fail
* @see \Codeception\Module\Filesystem::seeFileContentsEqual()
*/
public function canSeeFileContentsEqual($text) {
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeFileContentsEqual', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks the strict matching of file contents.
* Unlike `seeInThisFile` will fail if file has something more than expected lines.
* Better to use with HEREDOC strings.
* Matching is done after removing "\r" chars from file content.
*
* ``` php
* <?php
* $I->openFile('process.pid');
* $I->seeFileContentsEqual('3192');
* ?>
* ```
*
* @param $text
* @see \Codeception\Module\Filesystem::seeFileContentsEqual()
*/
public function seeFileContentsEqual($text) {
return $this->scenario->runStep(new \Codeception\Step\Assertion('seeFileContentsEqual', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks If opened file doesn't contain `text` in it
*
* ``` php
* <?php
* $I->openFile('composer.json');
* $I->dontSeeInThisFile('codeception/codeception');
* ?>
* ```
*
* @param $text
* Conditional Assertion: Test won't be stopped on fail
* @see \Codeception\Module\Filesystem::dontSeeInThisFile()
*/
public function cantSeeInThisFile($text) {
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('dontSeeInThisFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks If opened file doesn't contain `text` in it
*
* ``` php
* <?php
* $I->openFile('composer.json');
* $I->dontSeeInThisFile('codeception/codeception');
* ?>
* ```
*
* @param $text
* @see \Codeception\Module\Filesystem::dontSeeInThisFile()
*/
public function dontSeeInThisFile($text) {
return $this->scenario->runStep(new \Codeception\Step\Assertion('dontSeeInThisFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Deletes a file
* @see \Codeception\Module\Filesystem::deleteThisFile()
*/
public function deleteThisFile() {
return $this->scenario->runStep(new \Codeception\Step\Action('deleteThisFile', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks if file exists in path.
* Opens a file when it's exists
*
* ``` php
* <?php
* $I->seeFileFound('UserModel.php','app/models');
* ?>
* ```
*
* @param $filename
* @param string $path
* Conditional Assertion: Test won't be stopped on fail
* @see \Codeception\Module\Filesystem::seeFileFound()
*/
public function canSeeFileFound($filename, $path = null) {
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeFileFound', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks if file exists in path.
* Opens a file when it's exists
*
* ``` php
* <?php
* $I->seeFileFound('UserModel.php','app/models');
* ?>
* ```
*
* @param $filename
* @param string $path
* @see \Codeception\Module\Filesystem::seeFileFound()
*/
public function seeFileFound($filename, $path = null) {
return $this->scenario->runStep(new \Codeception\Step\Assertion('seeFileFound', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks if file does not exists in path
*
* @param $filename
* @param string $path
* Conditional Assertion: Test won't be stopped on fail
* @see \Codeception\Module\Filesystem::dontSeeFileFound()
*/
public function cantSeeFileFound($filename, $path = null) {
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('dontSeeFileFound', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks if file does not exists in path
*
* @param $filename
* @param string $path
* @see \Codeception\Module\Filesystem::dontSeeFileFound()
*/
public function dontSeeFileFound($filename, $path = null) {
return $this->scenario->runStep(new \Codeception\Step\Assertion('dontSeeFileFound', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Erases directory contents
*
* ``` php
* <?php
* $I->cleanDir('logs');
* ?>
* ```
*
* @param $dirname
* @see \Codeception\Module\Filesystem::cleanDir()
*/
public function cleanDir($dirname) {
return $this->scenario->runStep(new \Codeception\Step\Action('cleanDir', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Saves contents to file
*
* @param $filename
* @param $contents
* @see \Codeception\Module\Filesystem::writeToFile()
*/
public function writeToFile($filename, $contents) {
return $this->scenario->runStep(new \Codeception\Step\Action('writeToFile', func_get_args()));
}
}
@@ -0,0 +1,2 @@
<?php
// Here you can initialize variables that will be available to your tests
+6
View File
@@ -0,0 +1,6 @@
# Codeception Test Suite Configuration
# suite for unit (internal) tests.
class_name: UnitTester
modules:
enabled: [Asserts, UnitHelper]
@@ -0,0 +1,27 @@
<?php
require_once(dirname(__FILE__).'/../../../include/basis.class.php');
class ExampleTest extends \Codeception\TestCase\Test
{
/**
* @var \UnitTester
*/
protected $tester;
protected function _before()
{
}
protected function _after()
{
}
// tests
public function testMe()
{
$bc = new basis();
$bc->errormsg=true;
$this->assertTrue($bc->getErrorMsg());
}
}
+268
View File
@@ -0,0 +1,268 @@
<?php //[STAMP] ee2ab7cabfab0d617b65bfcb0547943f
// This class was automatically generated by build task
// You should not change it manually as it will be overwritten on next build
// @codingStandardsIgnoreFile
use Codeception\Module\Asserts;
use Codeception\Module\UnitHelper;
/**
* Inherited Methods
* @method void wantToTest($text)
* @method void wantTo($text)
* @method void execute($callable)
* @method void expectTo($prediction)
* @method void expect($prediction)
* @method void amGoingTo($argumentation)
* @method void am($role)
* @method void lookForwardTo($achieveValue)
* @method void comment($description)
* @method void haveFriend($name, $actorClass = null)
*
* @SuppressWarnings(PHPMD)
*/
class UnitTester extends \Codeception\Actor
{
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that two variables are equal.
*
* @param $expected
* @param $actual
* @param string $message
*
* @return mixed
* @see \Codeception\Module\Asserts::assertEquals()
*/
public function assertEquals($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertEquals', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that two variables are not equal
*
* @param $expected
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertNotEquals()
*/
public function assertNotEquals($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertNotEquals', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that expected is greater than actual
*
* @param $expected
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertGreaterThan()
*/
public function assertGreaterThan($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertGreaterThan', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* @deprecated
* @see \Codeception\Module\Asserts::assertGreaterThen()
*/
public function assertGreaterThen($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertGreaterThen', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that expected is greater or equal than actual
*
* @param $expected
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertGreaterThanOrEqual()
*/
public function assertGreaterThanOrEqual($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertGreaterThanOrEqual', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* @deprecated
* @see \Codeception\Module\Asserts::assertGreaterThenOrEqual()
*/
public function assertGreaterThenOrEqual($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertGreaterThenOrEqual', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that expected is less than actual
*
* @param $expected
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertLessThan()
*/
public function assertLessThan($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertLessThan', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that expected is less or equal than actual
*
* @param $expected
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertLessThanOrEqual()
*/
public function assertLessThanOrEqual($expected, $actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertLessThanOrEqual', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that haystack contains needle
*
* @param $needle
* @param $haystack
* @param string $message
* @see \Codeception\Module\Asserts::assertContains()
*/
public function assertContains($needle, $haystack, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertContains', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that haystack doesn't contain needle.
*
* @param $needle
* @param $haystack
* @param string $message
* @see \Codeception\Module\Asserts::assertNotContains()
*/
public function assertNotContains($needle, $haystack, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertNotContains', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that variable is empty.
*
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertEmpty()
*/
public function assertEmpty($actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertEmpty', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that variable is not empty.
*
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertNotEmpty()
*/
public function assertNotEmpty($actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertNotEmpty', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that variable is NULL
*
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertNull()
*/
public function assertNull($actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertNull', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that variable is not NULL
*
* @param $actual
* @param string $message
* @see \Codeception\Module\Asserts::assertNotNull()
*/
public function assertNotNull($actual, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertNotNull', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that condition is positive.
*
* @param $condition
* @param string $message
* @see \Codeception\Module\Asserts::assertTrue()
*/
public function assertTrue($condition, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertTrue', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Checks that condition is negative.
*
* @param $condition
* @param string $message
* @see \Codeception\Module\Asserts::assertFalse()
*/
public function assertFalse($condition, $message = null) {
return $this->scenario->runStep(new \Codeception\Step\Action('assertFalse', func_get_args()));
}
/**
* [!] Method is generated. Documentation taken from corresponding module.
*
* Fails the test with message.
*
* @param $message
* @see \Codeception\Module\Asserts::fail()
*/
public function fail($message) {
return $this->scenario->runStep(new \Codeception\Step\Action('fail', func_get_args()));
}
}
+2
View File
@@ -0,0 +1,2 @@
<?php
// Here you can initialize variables that will be available to your tests
+2 -1
View File
@@ -1374,7 +1374,8 @@ function writeEctsSum(parent)
*/
function writeOverallSum(root)
{
$("#treeData").append('<div id="stplDetails" style="padding-top: 1.0em"></div>');
if(!$('#stplDetails').length)
$("#treeData").append('<div id="stplDetails" style="padding-top: 1.0em"></div>');
var cells = $(root).find(".jstree-grid-col-1");
var sum = 0;
+39 -3
View File
@@ -63,6 +63,9 @@
$telefonklappe = '';
$content_id='';
$ort_kurzbz_old = '';
$oe_kurzbz='';
$gebteil='';
$m2='';
$neu = "true";
@@ -85,6 +88,9 @@
$content_id = $_POST['content_id'];
$ort_kurzbz_old = $_POST["ort_kurzbz_old"];
$m2 = str_replace(',','.',$_POST["m2"]);
$oe_kurzbz = $_POST["oe_kurzbz"];
$gebteil = $_POST["gebteil"];
$sg_update = new ort();
$sg_update->ort_kurzbz = $ort_kurzbz;
@@ -103,7 +109,9 @@
$sg_update->standort_id = $standort_id;
$sg_update->content_id = $content_id;
$sg_update->ort_kurzbz_old = $ort_kurzbz_old;
$sg_update->m2 = $m2;
$sg_update->gebteil = $gebteil;
$sg_update->oe_kurzbz = $oe_kurzbz;
if ($_POST["neu"] == "true")
$sg_update->new = 1;
@@ -140,6 +148,9 @@
$standort_id = $sg->standort_id;
$telefonklappe = $sg->telefonklappe;
$content_id = $sg->content_id;
$gebteil = $sg->gebteil;
$m2 = $sg->m2;
$oe_kurzbz = $sg->oe_kurzbz;
$neu = "false";
}
@@ -301,8 +312,8 @@
$htmlstr .= '
</SELECT>
</td>
<td>Telefonklappe</td>
<td><input class="detail" type="text" name="telefonklappe" size="3" maxlength="8" value="'.$telefonklappe.'" onchange="submitable()"></td>
<td>Gebäudeteil</td>
<td><input class="detail" type="text" name="gebteil" size="5" maxlength="32" value="'.$gebteil.'" onchange="submitable()"></td>
</tr>
<tr>
<td valign="top">Lehre</td>
@@ -339,6 +350,31 @@
}
$htmlstr .= '<input type="checkbox" name="aktiv" value="t"'.$chk3.' onchange="submitable()"></td>
</tr>
<tr>
<td>Quadratmeter</td>
<td><input class="detail" type="text" name="m2" size="6" maxlength="9" value="'.$m2.'" onchange="submitable()"></td>
<td>Organisationseinheit</td>
<td colspan="3">';
$oe=new organisationseinheit();
$oe->getAll();
$htmlstr.='<select name="oe_kurzbz">';
$htmlstr.='<option value="">-- keine Auswahl --</option>';
foreach($oe->result as $row_oe)
{
if($row_oe->oe_kurzbz==$oe_kurzbz)
$selected='selected';
else
$selected='';
$htmlstr.='<option value="'.$row_oe->oe_kurzbz.'" '.$selected.'>'.$row_oe->organisationseinheittyp_kurzbz.' '.$row_oe->bezeichnung.'</option>';
}
$htmlstr.='</select>';
$htmlstr.='
</td>
</tr>
<tr>
<td>Telefonklappe</td>
<td><input class="detail" type="text" name="telefonklappe" size="3" maxlength="8" value="'.$telefonklappe.'" onchange="submitable()"></td>
</tr>
<tr>
<td valign="top">Lageplan</td>
<td><textarea name="lageplan" cols="37" rows="5" onchange="submitable()">'.$lageplan.'</textarea></td>
+1 -1
View File
@@ -27,7 +27,7 @@ require_once('../../include/studiengang.class.php');
require_once('../../include/dokument.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$stg_kz=isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:'';
$stg_kz=isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:'0';
$dokument_kurzbz=isset($_REQUEST['dokument_kurzbz'])?$_REQUEST['dokument_kurzbz']:'';
$onlinebewerbung=isset($_REQUEST['onlinebewerbung']);
+101 -64
View File
@@ -22,8 +22,6 @@ require_once('../../include/functions.inc.php');
require_once('../../include/filter.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$nl="\n";
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
@@ -45,74 +43,113 @@ if(isset($_POST['action']) && $_POST['action']=='delete' && isset($_POST['filter
$filter = new filter();
if (!$filter->loadAll())
die($filter->errormsg);
//$htmlstr = "<table class='liste sortable'>\n";
$htmlstr = "<form name='formular'><input type='hidden' name='check' value=''></form><table class='tablesorter' id='t1'>\n";
$htmlstr .= " <thead><tr>\n";
$htmlstr .= ' <th onmouseup="document.formular.check.value=0">ID</th>
<th title="Kurzbezeichnung des Filters">KurzBz</th>
<th>ValueName</th>
<th>Show Value</th>
<th>Type</th>
<th>HTMLAttributes</th>
<th>SQL</th>
<th>Action</th>';
$htmlstr .= " </tr></thead><tbody>\n";
$i = 0;
foreach ($filter->result as $filter)
{
//$htmlstr .= " <tr class='liste". ($i%2) ."'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td align='right'><a href='filter_details.php?filter_id=".$filter->filter_id."' target='frame_filter_details'>".$filter->filter_id." </a>
<a href='filter_vorschau.php?filter_id=".$filter->filter_id."' target='_blank'>
<img src='../../skin/images/x-office-presentation.png' height='15px'/>
</a>
</td>\n";
$htmlstr .= " <td><a href='filter_details.php?filter_id=".$filter->filter_id."' target='frame_filter_details'>".$filter->kurzbz."</a></td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($filter->valuename)."</td>\n";
$htmlstr .= " <td>".($filter->showvalue?'Ja':'Nein')."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($filter->type)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars($filter->htmlattr)."</td>\n";
$htmlstr .= " <td>".$db->convert_html_chars(substr($filter->sql,0,32))."...</td>\n";
$htmlstr .= ' <td><form action="'.$_SERVER['PHP_SELF'].'" style="display: inline" name="form_'.$filter->filter_id.'" method="POST"><input type="hidden" name="filter_id" value="'.$filter->filter_id.'"><input type="hidden" name="action" value="delete"/><a href="#Loeschen" onclick="ConfirmDelete('.$filter->filter_id.');">Delete</a></form></td>';
$htmlstr .= " </tr>\n";
$i++;
}
$htmlstr .= "</tbody></table>\n";
?>
<html>
<head>
<title>Filter &Uuml;bersicht</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.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" type="text/javascript">
$(document).ready(function()
{
<head>
<title>Filter Übersicht</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script type="text/javascript" src="../../include/js/jquery.min.1.11.1.js"></script>
<script type="text/javascript" src="../../submodules/tablesorter/jquery.tablesorter.min.js"></script>
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
<script language="JavaScript" type="text/javascript">
$(function() {
$("#t1").tablesorter(
{
sortList: [[2,0]],
widgets: ["zebra"]
});
});
});
function ConfirmDelete(filter_id)
{
if(confirm("Wollen Sie diesen Filter wirklich löschen?"))
{
document.forms['form_'+filter_id].submit();
}
}
</script>
</head>
<body>
<a href="filter_details.php" target="frame_filter_details">Neuer Filter</a>
<?php
echo $htmlstr;
?>
</body>
function ConfirmDelete(filter_id)
{
if(confirm("Wollen Sie diesen Filter wirklich löschen?"))
{
document.forms['form_'+filter_id].submit();
}
}
</script>
</head>
<body>
<a href="filter_details.php" target="frame_filter_details">Neuer Filter</a>
<form name="formular">
<input type="hidden" name="check" value="">
</form>
<table class="tablesorter" id="t1">
<thead>
<tr>
<th onmouseup="document.formular.check.value=0">
ID
</th>
<th title="Kurzbezeichnung des Filters">
KurzBz
</th>
<th>
ValueName
</th>
<th>
Show Value
</th>
<th>
Type
</th>
<th>
HTMLAttributes
</th>
<th>
SQL
</th>
<th>
Action
</th>
</tr>
</thead>
<tbody>
<?php foreach ($filter->result as $filter): ?>
<tr>
<td class="overview-id">
<a href="filter_details.php?filter_id=<?php echo $filter->filter_id ?>" target="frame_filter_details">
<?php echo $filter->filter_id ?>
</a>
<a href="filter_vorschau.php?filter_id=<?php echo $filter->filter_id ?>" target="_blank">
<img src="../../skin/images/x-office-presentation.png" class="mini-icon" />
</a>
</td>
<td>
<a href="filter_details.php?filter_id=<?php echo $filter->filter_id ?>" target="frame_filter_details">
<?php echo $filter->kurzbz ?>
</a>
</td>
<td>
<?php echo $db->convert_html_chars($filter->valuename) ?>
</td>
<td>
<?php echo $filter->showvalue ? 'Ja' : 'Nein' ?>
</td>
<td>
<?php echo $db->convert_html_chars($filter->type) ?>
</td>
<td>
<?php echo $db->convert_html_chars($filter->htmlattr) ?>
</td>
<td>
<?php echo $db->convert_html_chars(substr($filter->sql,0,32)) ?>...
</td>
<td>
<form action="<?php echo basename(__FILE__) ?>" name="form_<?php echo $filter->filter_id ?>" method="POST">
<input type="hidden" name="filter_id" value="<?php echo $filter->filter_id ?>">
<input type="hidden" name="action" value="delete" />
<a href="#Loeschen" onclick="ConfirmDelete(<?php echo $filter->filter_id ?>);">
Delete
</a>
</form>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</body>
</html>