mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Squashed commit of the following:
commit 94761687c9b9a75c74ec7311bfa9023b651bd0fd Author: Stefan Puraner <puraner@technikum-wien.at> Date: Thu Apr 9 12:56:25 2015 +0200 Prüfungsanmelung: Studenten können durch Lektor hinzugefügt werden; Es kann eine Liste aller Anmeldungen erstellt und ausgedruckt werden. Desing Änderungen commit 27bb213c8c70ec81916cf4a3b3dabf3e325c1dad Author: Stefan Puraner <puraner@technikum-wien.at> Date: Thu Apr 9 10:57:57 2015 +0200 Lageplan kann im Infoterminal ausgeblendet werden commit 471a39f816c4951b478b95f035dca85124fe5642 Author: Stefan Puraner <puraner@technikum-wien.at> Date: Thu Apr 9 10:39:27 2015 +0200 Drucken des Studienblattes im CIS commit 58c283a389c0b18ca5186e6fd012afa0cdc84103 Author: Stefan Puraner <puraner@technikum-wien.at> Date: Wed Mar 25 16:15:59 2015 +0100 Studenten können durch Lektor/Sekretariat manuell zu Prüfungen hinzugefügt werden. commit fc9ae291c5e13ce4cd7a65baf43242ba5124616f Author: Stefan Puraner <puraner@technikum-wien.at> Date: Tue Mar 24 08:55:55 2015 +0100 Änderungen/Löschen von Noten werden im Undo-Log protokolliert und können rückgängig gemacht werden.
This commit is contained in:
@@ -533,8 +533,10 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
else
|
||||
{
|
||||
// Lageplan
|
||||
if(defined('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN') && CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN)
|
||||
{
|
||||
echo '
|
||||
<tr class="cursor_hand">
|
||||
<tr class="cursor_hand">
|
||||
<td>
|
||||
<a href="'.htmlspecialchars($_SERVER['PHP_SELF']).'?work=lageplan&standort_id='.$standort_id.'">
|
||||
<span class="blau_mitteText">
|
||||
@@ -543,6 +545,7 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
</a>
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
|
||||
echo '<tr><td> </td></tr>';
|
||||
|
||||
@@ -453,9 +453,14 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
|
||||
*/
|
||||
function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
{
|
||||
var lehrveranstaltung_id = $("#lehrveranstaltungHidden").val();
|
||||
var termin_id = $("#terminHidden").val();
|
||||
var uid = $("#anmeldung_hinzufuegen_uid").val();
|
||||
if(lehrveranstaltung_id === undefined)
|
||||
lehrveranstaltung_id = $("#lehrveranstaltungHidden").val();
|
||||
if(termin_id === undefined)
|
||||
termin_id = $("#terminHidden").val();
|
||||
var bemerkungen = $("#anmeldungBemerkung").val();
|
||||
if(bemerkungen === undefined)
|
||||
bemerkungen = "von Lektor hinzugefügt";
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
@@ -465,7 +470,8 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
method: "saveAnmeldung",
|
||||
termin_id: termin_id,
|
||||
lehrveranstaltung_id: lehrveranstaltung_id,
|
||||
bemerkung: bemerkungen
|
||||
bemerkung: bemerkungen,
|
||||
uid: uid
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
@@ -480,7 +486,17 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
resetForm();
|
||||
}).complete(function(event, xhr, settings){
|
||||
$("#saveDialog").dialog("close");
|
||||
refresh();
|
||||
|
||||
if(uid === undefined)
|
||||
{
|
||||
//Wenn Anmeldung durch Student
|
||||
refresh();
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wenn Anmeldung durch Lektor
|
||||
showAnmeldungen(termin_id, lehrveranstaltung_id);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -653,6 +669,7 @@ function writeAnmeldungen(data)
|
||||
var ort_kurzbz = data.result.ort_kurzbz;
|
||||
var liste = "<ul id='sortable'>";
|
||||
var count = 0;
|
||||
var studiensemester = $("#filter_studiensemester option:selected").val();
|
||||
data.result.anmeldungen.forEach(function(d){
|
||||
count++;
|
||||
var vorname = d.student.vorname !== "null" ? d.student.vorname : "";
|
||||
@@ -683,8 +700,10 @@ function writeAnmeldungen(data)
|
||||
|
||||
});
|
||||
liste += "</ul>";
|
||||
$("#anmeldung_hinzufuegen").html("<input id='anmeldung_hinzufuegen_uid' type='text' placeholder='StudentIn-UID' /><input type='button' value='hinzufügen' onclick='saveAnmeldung(\""+lehrveranstaltung_id+"\",\""+terminId+"\");'/>");
|
||||
$("#reihungSpeichernButton").html("<input type='button' value='Reihung speichern' onclick='saveReihung(\""+terminId+"\", \""+lehrveranstaltung_id+"\");'>");
|
||||
$("#anmeldeDaten").html(liste);
|
||||
$("#listeDrucken").html("<a href='./pruefungsanmeldungen_liste.php?termin_id="+terminId+"&lehrveranstaltung_id="+lehrveranstaltung_id+"&studiensemester="+studiensemester+"' target='_blank'>Liste drucken</a>");
|
||||
if(ort_kurzbz !== null)
|
||||
{
|
||||
$("#raumLink").html("<span>Prüfungsraum: </span>"+ort_kurzbz);
|
||||
@@ -829,11 +848,12 @@ function loadStudiengaenge()
|
||||
$("#stgListe").empty();
|
||||
if(data.error === 'false')
|
||||
{
|
||||
var liste = "";
|
||||
var liste = "<select id='select_studiengang' onchange='loadPruefungStudiengang();'><option>Studiengang auswählen</option>";
|
||||
data.result.forEach(function(e){
|
||||
var kuerzel = e.typ+e.kurzbz
|
||||
liste += "<li id='stg"+e.studiengang_kz+"'><span class='studiengang'><a href='#' onclick='loadPruefungStudiengang(\""+e.studiengang_kz+"\");'>"+e.bezeichnung+" ("+kuerzel.toUpperCase()+")</a></span></li>";
|
||||
liste += "<option id='stg"+e.studiengang_kz+"' value='"+e.studiengang_kz+"'>"+e.bezeichnung+" ("+kuerzel.toUpperCase()+")</option>";
|
||||
});
|
||||
liste += "</select>";
|
||||
$("#stgListe").append(liste);
|
||||
}
|
||||
else
|
||||
@@ -848,15 +868,22 @@ function loadStudiengaenge()
|
||||
* @param {type} studiengang_kz Studiengangskennzahl
|
||||
* @returns {undefined}
|
||||
*/
|
||||
function loadPruefungStudiengang(studiengang_kz)
|
||||
function loadPruefungStudiengang(studiengang_kz, studiensemester)
|
||||
{
|
||||
if(studiengang_kz === undefined)
|
||||
studiengang_kz = $("#select_studiengang option:selected").val();
|
||||
|
||||
if(studiensemester === undefined)
|
||||
studiensemester = $("#filter_studiensemester option:selected").val();
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
url: "./pruefungsanmeldung.json.php",
|
||||
type: "POST",
|
||||
data: {
|
||||
method: "getPruefungenStudiengang",
|
||||
studiengang_kz: studiengang_kz
|
||||
studiengang_kz: studiengang_kz,
|
||||
studiensemester: studiensemester
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
@@ -867,6 +894,7 @@ function loadPruefungStudiengang(studiengang_kz)
|
||||
{
|
||||
var liste = "";
|
||||
data.result.forEach(function(e){
|
||||
console.log(e);
|
||||
liste += "<ul><li>"+e.bezeichnung+"<ul>";
|
||||
e.pruefung[0].termine.forEach(function(d){
|
||||
liste += "<li> <a onclick='showAnmeldungen(\""+d.pruefungstermin_id+"\", \""+e.lehrveranstaltung_id+"\");'>"+convertDateTime(d.von)+" "+convertDateTime(d.von, "time")+" - "+convertDateTime(d.bis, "time")+"</a></li>";
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -32,6 +32,9 @@ require_once('../../../../include/student.class.php');
|
||||
|
||||
|
||||
$uid = get_uid();
|
||||
//TODO uid entfernen
|
||||
|
||||
$uid="p20132443";
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
@@ -0,0 +1,264 @@
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
/*
|
||||
* Copyright 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/pruefungsanmeldung.class.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/pruefungstermin.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/mitarbeiter.class.php');
|
||||
require_once('../../../../include/student.class.php');
|
||||
require_once('../../../../include/datum.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
?>
|
||||
<html moznomarginboxes="">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<script src="../../../../include/js/jquery1.9.min.js"></script>
|
||||
<style type="text/css">
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
#page {
|
||||
width: 210mm;
|
||||
min-height: 297mm;
|
||||
padding: 20mm;
|
||||
margin: 10mm auto;
|
||||
border: 1px #D3D3D3 solid;
|
||||
border-radius: 5px;
|
||||
background: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
|
||||
font-family: Arial, Helvetica;
|
||||
}
|
||||
|
||||
#subpage {
|
||||
padding: 10mm;
|
||||
border: 1px black solid;
|
||||
height: 256mm;
|
||||
outline: 20mm
|
||||
}
|
||||
|
||||
#liste {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
width: 100%;
|
||||
margin-top: 5mm;
|
||||
font-size: 11pt;
|
||||
}
|
||||
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
td {
|
||||
border: 1px solid black;
|
||||
padding: 1mm;
|
||||
}
|
||||
|
||||
th {
|
||||
border: 1px solid black;
|
||||
}
|
||||
|
||||
thead > tr {
|
||||
background-color: white !important;
|
||||
}
|
||||
|
||||
tr:nth-child(odd){
|
||||
background-color: lightgrey;
|
||||
}
|
||||
|
||||
span {
|
||||
line-height: 16pt;
|
||||
font-size: 12pt;
|
||||
}
|
||||
|
||||
@page {
|
||||
size: A4;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
@media print {
|
||||
html, body {
|
||||
width: 210mm;
|
||||
height: 250mm;
|
||||
}
|
||||
#page {
|
||||
margin: 0;
|
||||
border: initial;
|
||||
border-radius: initial;
|
||||
width: initial;
|
||||
min-height: initial;
|
||||
box-shadow: initial;
|
||||
background: initial;
|
||||
page-break-after: auto;
|
||||
}
|
||||
|
||||
/*
|
||||
* Workaround um beim Drucken jede zweite Zeile der Tabelle
|
||||
* grau darzustellen. Standardmäßig werden von Browsern keine
|
||||
* Hintergrundfarben gedruckt.
|
||||
*/
|
||||
tr:nth-child(odd) > td{
|
||||
box-shadow: inset 0 0 0 1000px lightgrey;
|
||||
}
|
||||
|
||||
//Veranlasst Chrome Hintergrundfarben zu drucken
|
||||
body{
|
||||
-webkit-print-color-adjust:exact;
|
||||
background-color: #FFFFFF;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
//Anweisungen nur für Firefox
|
||||
@-moz-document url-prefix() {
|
||||
html, body {
|
||||
height: 280mm;
|
||||
}
|
||||
}
|
||||
@-moz-document url-prefix() {
|
||||
#page {
|
||||
padding: 15mm 25mm 25mm 15mm !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
window.print();
|
||||
});
|
||||
</script>
|
||||
<div id="page">
|
||||
<div id="subpage">
|
||||
<h1>Anmeldungsliste</h1>
|
||||
<?php
|
||||
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
$termin_id = filter_input(INPUT_GET,"termin_id");
|
||||
$lehrveranstaltung_id = filter_input(INPUT_GET,"lehrveranstaltung_id");
|
||||
$studiensemester = filter_input(INPUT_GET, "studiensemester");
|
||||
|
||||
if(is_null($lehrveranstaltung_id))
|
||||
{
|
||||
die('Fehlender Parameter lehrveranstaltung_id');
|
||||
}
|
||||
else if(is_null($termin_id))
|
||||
{
|
||||
die('Fehlender Parameter termin_id');
|
||||
}
|
||||
else if(is_null($studiensemester))
|
||||
{
|
||||
die('Fehlender Parameter studiensemester');
|
||||
}
|
||||
else
|
||||
{
|
||||
$datum = new datum();
|
||||
$stdsem = new studiensemester($studiensemester);
|
||||
$pruefungsanmeldung = new pruefungsanmeldung();
|
||||
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($termin_id, $lehrveranstaltung_id, $studiensemester, "bestaetigt");
|
||||
$lehrveranstaltung = new lehrveranstaltung($lehrveranstaltung_id);
|
||||
$einzeln = FALSE;
|
||||
if(!empty($anmeldungen))
|
||||
{
|
||||
$pruefung = new pruefungCis($anmeldungen[0]->pruefung_id);
|
||||
$pruefungstermin = new pruefungstermin($anmeldungen[0]->pruefungstermin_id);
|
||||
$mitarbeiter = new mitarbeiter($pruefung->mitarbeiter_uid);
|
||||
if($pruefung->einzeln)
|
||||
{
|
||||
$einzeln = TRUE;
|
||||
$pruefungsintervall = $pruefung->pruefungsintervall;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<span class="bold">Lehrveranstaltung: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
|
||||
<span class="bold">Studiensemester: </span><span><?=$stdsem->bezeichnung?></span><br/>
|
||||
<span class="bold">Prüfer: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
|
||||
<table id="liste">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Vorname</th>
|
||||
<th>Nachname</th>
|
||||
<th>Matrikelnummer</th>
|
||||
<th>Datum</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$count = 0;
|
||||
/*@var $anmeldung pruefungsanmeldung */
|
||||
foreach($anmeldungen as $anmeldung)
|
||||
{
|
||||
$student = new student($anmeldung->uid);
|
||||
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
|
||||
|
||||
if($einzeln)
|
||||
{
|
||||
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
|
||||
$date = strtotime($date);
|
||||
$date = $date+(60*$pruefungsintervall*($count));
|
||||
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("h:i",$date);
|
||||
$count++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i");
|
||||
}
|
||||
echo '<tr>';
|
||||
echo '<td>'.$anmeldung->reihung.'</td>';
|
||||
echo '<td>'.$student->vorname.'</td>';
|
||||
echo '<td>'.$student->nachname.'</td>';
|
||||
echo '<td>'.$student->matrikelnr.'</td>';
|
||||
echo '<td>'.$date.'</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
?>
|
||||
</tbody>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,269 +1,306 @@
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
/*
|
||||
* Copyright 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$pruefung = new pruefungCis();
|
||||
$pruefung->getPruefungByMitarbeiter($uid, $studiensemester->getaktorNext());
|
||||
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Prüfungsanmeldung Verwaltung</title>
|
||||
<script src="../../../../include/js/datecheck.js"></script>
|
||||
<script src="../../../../include/js/jquery1.9.min.js"></script>
|
||||
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
|
||||
<script src="./pruefung.js"></script>
|
||||
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
|
||||
<link rel="stylesheet" href="../../../../skin/style.css.php">
|
||||
<link rel="stylesheet" href="../../../../skin/tablesort.css">
|
||||
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding: 10px 0 0 10px;
|
||||
}
|
||||
|
||||
#stgWrapper {
|
||||
position: absolute;
|
||||
height: 80%;
|
||||
width: 450px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#studiengaenge {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
|
||||
#prfWrapper {
|
||||
position: absolute;
|
||||
height: 80%;
|
||||
width: 200px;
|
||||
left: 510px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#pruefungen {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmWrapper {
|
||||
position: absolute;
|
||||
/*top: 45px;*/
|
||||
left: 760px;
|
||||
width: 400px;
|
||||
height: 80%;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#anmeldungen {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmeldungen > * {
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
#raum > * {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
#message {
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
width: 100%;
|
||||
height: 2em;
|
||||
font-size: 1.5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#sortable {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
}
|
||||
#sortable li {
|
||||
margin: 0 3px 3px 3px;
|
||||
padding: 0.2em 0.4em 0.4em;
|
||||
padding-left: 1.5em;
|
||||
font-size: 1.4em;
|
||||
height: 18px;
|
||||
list-style-image: none;
|
||||
display: block;
|
||||
}
|
||||
#sortable li span {
|
||||
/*position: absolute;*/
|
||||
margin-left: -1.3em;
|
||||
float:left;
|
||||
}
|
||||
|
||||
.resultOK {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.resultNotOK {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#sortable li a {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#sortable li div {
|
||||
float: right;
|
||||
margin-left: 5px;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
.anmerkungInfo {
|
||||
text-align: right;
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
#progressbar {
|
||||
position: fixed;
|
||||
width: 300px;
|
||||
top: 30%;
|
||||
left: 50%;
|
||||
margin-left: -150px;
|
||||
z-index: 100;
|
||||
background: '#9CFF29';
|
||||
}
|
||||
.modalOverlay {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
|
||||
}
|
||||
|
||||
.studiengang {
|
||||
font-size: 1em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
loadStudiengaenge();
|
||||
$("#raumDialog").dialog({
|
||||
modal: true,
|
||||
autoOpen: false,
|
||||
width: "400px"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<h1>Anmeldungen Verwalten</h1>
|
||||
<div id='stgWrapper'>
|
||||
<div id='studiengaenge'>
|
||||
<h2>Studiengänge</h2>
|
||||
<ul id='stgListe'>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='prfWrapper'>
|
||||
<div id='pruefungen'>
|
||||
<h2>Prüfungen</h2>
|
||||
<ul id="pruefungenListe">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='anmWrapper'>
|
||||
<div id="anmeldungen">
|
||||
<h2>Anmeldungen</h2>
|
||||
<div id="anmeldeDaten">
|
||||
|
||||
</div>
|
||||
<div id="reihungSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="kommentar">
|
||||
|
||||
</div>
|
||||
<div id="kommentarSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="raumLink">
|
||||
|
||||
</div>
|
||||
<div id="raumDialog">
|
||||
<div id="raum">
|
||||
|
||||
</div>
|
||||
<div id="raumSpeichernButton">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="message"></div>
|
||||
<div id="progressbar"></div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
/*
|
||||
* Copyright 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$pruefung = new pruefungCis();
|
||||
$pruefung->getPruefungByMitarbeiter($uid, $studiensemester->getaktorNext());
|
||||
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Prüfungsanmeldung Verwaltung</title>
|
||||
<script src="../../../../include/js/datecheck.js"></script>
|
||||
<script src="../../../../include/js/jquery1.9.min.js"></script>
|
||||
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
|
||||
<script src="./pruefung.js"></script>
|
||||
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
|
||||
<link rel="stylesheet" href="../../../../skin/style.css.php">
|
||||
<link rel="stylesheet" href="../../../../skin/tablesort.css">
|
||||
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding: 10px 0 0 10px;
|
||||
}
|
||||
|
||||
#stgWrapper {
|
||||
position: absolute;
|
||||
height: 70px;
|
||||
width: 850px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#studiengaenge {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
|
||||
#prfWrapper {
|
||||
position: absolute;
|
||||
height: 70%;
|
||||
width: 300px;
|
||||
top: 180px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#pruefungen {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmWrapper {
|
||||
position: absolute;
|
||||
/*top: 45px;*/
|
||||
left: 350px;
|
||||
top: 180px;
|
||||
width: 500px;
|
||||
height: 70%;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#anmeldungen {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmeldungen > * {
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
#raum > * {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
#message {
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
width: 100%;
|
||||
height: 2em;
|
||||
font-size: 1.5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#sortable {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
}
|
||||
#sortable li {
|
||||
margin: 0 3px 3px 3px;
|
||||
padding: 0.2em 0.4em 0.4em;
|
||||
padding-left: 1.5em;
|
||||
font-size: 1.4em;
|
||||
height: 18px;
|
||||
list-style-image: none;
|
||||
display: block;
|
||||
}
|
||||
#sortable li span {
|
||||
/*position: absolute;*/
|
||||
margin-left: -1.3em;
|
||||
float:left;
|
||||
}
|
||||
|
||||
.resultOK {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.resultNotOK {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#sortable li a {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#sortable li div {
|
||||
float: right;
|
||||
margin-left: 5px;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
.anmerkungInfo {
|
||||
text-align: right;
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
#progressbar {
|
||||
position: fixed;
|
||||
width: 300px;
|
||||
top: 30%;
|
||||
left: 50%;
|
||||
margin-left: -150px;
|
||||
z-index: 100;
|
||||
background: '#9CFF29';
|
||||
}
|
||||
.modalOverlay {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
|
||||
}
|
||||
|
||||
.studiengang {
|
||||
font-size: 1em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#studiengaenge > div {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
loadStudiengaenge();
|
||||
$("#filter_studiensemester").css("visibility","visible");
|
||||
console.log($("#filter_studiensemester"));
|
||||
$("#raumDialog").dialog({
|
||||
modal: true,
|
||||
autoOpen: false,
|
||||
width: "400px"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<h1>Anmeldungen Verwalten</h1>
|
||||
<div id='stgWrapper'>
|
||||
<div id='studiengaenge'>
|
||||
<div>
|
||||
<h2>Studiengänge</h2>
|
||||
<div id='stgListe'>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h2>Studiensemester</h2>
|
||||
<?php
|
||||
echo '<select id="filter_studiensemester" onchange="loadPruefungStudiengang();" style="visibility: hidden;">';
|
||||
$aktuellesSemester = $studiensemester->getaktorNext();
|
||||
$studiensemester->getAll();
|
||||
foreach($studiensemester->studiensemester as $sem)
|
||||
{
|
||||
/*@var $sem studiensemester */
|
||||
if($aktuellesSemester == $sem->studiensemester_kurzbz)
|
||||
{
|
||||
echo '<option selected value="'.$sem->studiensemester_kurzbz.'">'.$sem->bezeichnung.'</option>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<option value="'.$sem->studiensemester_kurzbz.'">'.$sem->bezeichnung.'</option>';
|
||||
}
|
||||
}
|
||||
echo '</select></p>';
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id='prfWrapper'>
|
||||
<div id='pruefungen'>
|
||||
<h2>Prüfungen</h2>
|
||||
<ul id="pruefungenListe">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='anmWrapper'>
|
||||
<div id="anmeldungen">
|
||||
<h2>Anmeldungen</h2>
|
||||
<div id="anmeldung_hinzufuegen">
|
||||
|
||||
</div>
|
||||
<div id="anmeldeDaten">
|
||||
|
||||
</div>
|
||||
<div id="reihungSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="kommentar">
|
||||
|
||||
</div>
|
||||
<div id="kommentarSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="raumLink">
|
||||
|
||||
</div>
|
||||
<div id="listeDrucken">
|
||||
|
||||
</div>
|
||||
<div id="raumDialog">
|
||||
<div id="raum">
|
||||
|
||||
</div>
|
||||
<div id="raumSpeichernButton">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="message"></div>
|
||||
<div id="progressbar"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+221
-49
@@ -33,6 +33,7 @@ require_once('../../include/akte.class.php');
|
||||
require_once('../../include/konto.class.php');
|
||||
require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/vorlage.class.php');
|
||||
require_once('../../include/addon.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Oeffnen der Datenbankverbindung');
|
||||
@@ -89,31 +90,34 @@ if(isset($_GET['abschlusspruefung_id']))
|
||||
$params.='&abschlusspruefung_id='.$_GET['abschlusspruefung_id'];
|
||||
if(isset($_GET['typ']))
|
||||
$params.='&typ='.$_GET['typ'];
|
||||
|
||||
if(isset($_GET['output']))
|
||||
$output=$_GET['output'];
|
||||
else
|
||||
$output='pdf';
|
||||
|
||||
$konto = new konto();
|
||||
if (($user == $_GET["uid"]) || $rechte->isBerechtigt('admin'))
|
||||
{
|
||||
if($xsl=='Inskription' && (!$konto->checkStudienbeitrag($user, $_GET["ss"])))
|
||||
die('Der Studienbeitrag wurde noch nicht bezahlt');
|
||||
if(($xsl=='Inskription' || $xsl == 'Studienblatt') && (!$konto->checkStudienbeitrag($user, $_GET["ss"])))
|
||||
die('Der Studienbeitrag wurde noch nicht bezahlt');
|
||||
|
||||
if(isset($_GET['buchungsnummern']))
|
||||
{
|
||||
//Beim Drucken von Buchungsbestaetigungen pruefen ob diese Buchungen auch zu diesem Benutzer gehoeren
|
||||
$buchungsnr = explode(';',$_GET['buchungsnummern']);
|
||||
$user_obj = new benutzer();
|
||||
$user_obj->load($user);
|
||||
foreach($buchungsnr as $bnr)
|
||||
//Beim Drucken von Buchungsbestaetigungen pruefen ob diese Buchungen auch zu diesem Benutzer gehoeren
|
||||
$buchungsnr = explode(';',$_GET['buchungsnummern']);
|
||||
$user_obj = new benutzer();
|
||||
$user_obj->load($user);
|
||||
foreach($buchungsnr as $bnr)
|
||||
{
|
||||
if($bnr!='')
|
||||
{
|
||||
if($bnr!='')
|
||||
{
|
||||
$konto->load($bnr);
|
||||
if($konto->person_id!=$user_obj->person_id)
|
||||
die('Sie haben keine Berechtigung fuer diese Buchung');
|
||||
if($konto->getDifferenz($bnr)!=0)
|
||||
die('Diese Zahlung wurde noch nicht beglichen');
|
||||
}
|
||||
$konto->load($bnr);
|
||||
if($konto->person_id!=$user_obj->person_id)
|
||||
die('Sie haben keine Berechtigung fuer diese Buchung');
|
||||
if($konto->getDifferenz($bnr)!=0)
|
||||
die('Diese Zahlung wurde noch nicht beglichen');
|
||||
}
|
||||
}
|
||||
}
|
||||
$xml_url=XML_ROOT.$xml.$params;
|
||||
//echo $xml_url;
|
||||
@@ -134,49 +138,217 @@ if (($user == $_GET["uid"]) || $rechte->isBerechtigt('admin'))
|
||||
{
|
||||
if($xsl_stg_kz=='')
|
||||
$xsl_stg_kz='0';
|
||||
|
||||
|
||||
$vorlage->getAktuelleVorlage($xsl_stg_kz, $xsl, $version);
|
||||
}
|
||||
|
||||
// Load the XSL source
|
||||
$xsl_doc = new DOMDocument;
|
||||
|
||||
if(!$xsl_doc->loadXML($vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
|
||||
|
||||
$buffer = $proc->transformToXml($xml_doc);
|
||||
//in $buffer steht nun das xsl-fo file mit den daten
|
||||
$buffer = '<?xml version="1.0" encoding="utf-8" ?>'.substr($buffer, strpos($buffer,"\n"),strlen($buffer));
|
||||
|
||||
//Pdf erstellen
|
||||
$fo2pdf = new XslFo2Pdf();
|
||||
|
||||
//wenn uid gefunden wird, dann den Nachnamen zum Dateinamen dazuhaengen
|
||||
$nachname='';
|
||||
|
||||
if(mb_strstr($vorlage->mimetype, 'application/vnd.oasis.opendocument'))
|
||||
{
|
||||
switch($vorlage->mimetype)
|
||||
{
|
||||
case 'application/vnd.oasis.opendocument.text':
|
||||
$endung = 'odt';
|
||||
break;
|
||||
case 'application/vnd.oasis.opendocument.spreadsheet':
|
||||
$endung = 'ods';
|
||||
break;
|
||||
default:
|
||||
$endung = 'pdf';
|
||||
}
|
||||
|
||||
// Load the XSL source
|
||||
$xsl_doc = new DOMDocument;
|
||||
|
||||
if(!$xsl_doc->loadXML($vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
|
||||
|
||||
$buffer = $proc->transformToXml($xml_doc);
|
||||
//echo $buffer;
|
||||
//exit;
|
||||
$tempfolder = '/tmp/'.uniqid();
|
||||
mkdir($tempfolder);
|
||||
chdir($tempfolder);
|
||||
file_put_contents('content.xml', $buffer);
|
||||
|
||||
// Wenn ein Style XSL uebergeben wurde wird ein zweites XML File erstellt mit den
|
||||
// Styleanweisungen und ebenfalls zum Zip hinzugefuegt
|
||||
if(isset($_GET['style_xsl']))
|
||||
{
|
||||
$style_xsl=$_GET['style_xsl'];
|
||||
$style_vorlage = new vorlage();
|
||||
$style_vorlage->getAktuelleVorlage($xsl_stg_kz, $style_xsl, $version);
|
||||
$style_xsl_doc = new DOMDocument;
|
||||
if(!$style_xsl_doc->loadXML($style_vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$style_proc = new XSLTProcessor;
|
||||
$style_proc->importStyleSheet($style_xsl_doc); // attach the xsl rules
|
||||
|
||||
$stylebuffer = $style_proc->transformToXml($xml_doc);
|
||||
|
||||
file_put_contents('styles.xml', $stylebuffer);
|
||||
}
|
||||
|
||||
$vorlage_found=false;
|
||||
$addons = new addon();
|
||||
|
||||
foreach($addons->aktive_addons as $addon)
|
||||
{
|
||||
$zipfile = DOC_ROOT.'addons/'.$addon.'/system/vorlage_zip/'.$vorlage->vorlage_kurzbz.'.'.$endung;
|
||||
|
||||
if(file_exists($zipfile))
|
||||
{
|
||||
$vorlage_found=true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!$vorlage_found)
|
||||
$zipfile = DOC_ROOT.'system/vorlage_zip/'.$vorlage->vorlage_kurzbz.'.'.$endung;
|
||||
|
||||
|
||||
$tempname_zip = 'out.zip';
|
||||
if(copy($zipfile, $tempname_zip))
|
||||
{
|
||||
exec("zip $tempname_zip content.xml");
|
||||
if(isset($_GET['style_xsl']))
|
||||
exec("zip $tempname_zip styles.xml");
|
||||
|
||||
clearstatcache();
|
||||
if($vorlage->bezeichnung!='')
|
||||
$filename = $vorlage->bezeichnung;
|
||||
else
|
||||
$filename = $vorlage->vorlage_kurzbz;
|
||||
if($output == 'pdf')
|
||||
{
|
||||
if($xsl == 'LV_Informationen')
|
||||
{
|
||||
$studiengang = new studiengang($_GET['stg_kz']);
|
||||
$studiensemester = new studiensemester($_GET['ss']);
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'_'.$studiengang->kurzbzlang.'_'.$studiensemester->studiensemester_kurzbz.'.pdf';
|
||||
$filename = $filename.'_'.$studiengang->kurzbzlang.'_'.$studiensemester->studiensemester_kurzbz.'.pdf';
|
||||
}
|
||||
elseif($xsl == "Honorarvertrag")
|
||||
{
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'_'.$benutzer_obj->nachname.'_'.$benutzer_obj->vorname.'.pdf';
|
||||
$filename = $filename.'_'.$benutzer_obj->nachname.'_'.$benutzer_obj->vorname.'.pdf';
|
||||
}
|
||||
elseif($xsl == "Studienordnung")
|
||||
{
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->loadStudienordnung($_GET['studienordnung_id']);
|
||||
$filename = $filename.'_'.$studienordnung->studiengangkurzbzlang.'.pdf';
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'.pdf';
|
||||
}
|
||||
else
|
||||
{
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'.pdf';
|
||||
$filename = $filename.'.pdf';
|
||||
}
|
||||
exec("unoconv -e IsSkipEmptyPages=false --stdout -f pdf $tempname_zip > $tempPdfName");
|
||||
|
||||
$fsize = filesize($tempPdfName);
|
||||
$handle = fopen($tempPdfName,'r');
|
||||
header('Content-type: application/pdf');
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'"');
|
||||
header('Content-Length: '.$fsize);
|
||||
}
|
||||
else if($output =='odt')
|
||||
{
|
||||
if($xsl == "Studienordnung")
|
||||
{
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->loadStudienordnung($_GET['studienordnung_id']);
|
||||
$filename = $filename.'_'.$studienordnung->studiengangkurzbzlang;
|
||||
}
|
||||
$fsize = filesize($tempname_zip);
|
||||
$handle = fopen($tempname_zip,'r');
|
||||
header('Content-type: '.$vorlage->mimetype);
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'.'.$endung.'"');
|
||||
header('Content-Length: '.$fsize);
|
||||
}
|
||||
else if($output =='doc')
|
||||
{
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'.doc';
|
||||
if($xsl == "Studienordnung")
|
||||
{
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->loadStudienordnung($_GET['studienordnung_id']);
|
||||
$filename = $filename.'_'.$studienordnung->studiengangkurzbzlang.'.doc';
|
||||
}
|
||||
else
|
||||
{
|
||||
$filename = $filename.'.doc';
|
||||
}
|
||||
exec("unoconv -e IsSkipEmptyPages=false --stdout -f doc $tempname_zip > $tempPdfName");
|
||||
|
||||
$fsize = filesize($tempPdfName);
|
||||
$handle = fopen($tempPdfName,'r');
|
||||
header('Content-type: application/vnd.ms-word');
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'"');
|
||||
header('Content-Length: '.$fsize);
|
||||
}
|
||||
while (!feof($handle))
|
||||
{
|
||||
echo fread($handle, 8192);
|
||||
}
|
||||
fclose($handle);
|
||||
|
||||
unlink('content.xml');
|
||||
if(isset($_GET['style_xsl']))
|
||||
unlink('styles.xml');
|
||||
unlink($tempname_zip);
|
||||
if($output=='pdf' || $output=='doc')
|
||||
unlink($filename);
|
||||
rmdir($tempfolder);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Load the XSL source
|
||||
$xsl_doc = new DOMDocument;
|
||||
|
||||
if(!$xsl_doc->loadXML($vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
|
||||
|
||||
$buffer = $proc->transformToXml($xml_doc);
|
||||
//in $buffer steht nun das xsl-fo file mit den daten
|
||||
$buffer = '<?xml version="1.0" encoding="utf-8" ?>'.substr($buffer, strpos($buffer,"\n"),strlen($buffer));
|
||||
|
||||
//Pdf erstellen
|
||||
$fo2pdf = new XslFo2Pdf();
|
||||
|
||||
//wenn uid gefunden wird, dann den Nachnamen zum Dateinamen dazuhaengen
|
||||
$nachname='';
|
||||
|
||||
|
||||
if(isset($_GET['uid']) && $_GET['uid']!='')
|
||||
{
|
||||
if(isset($_GET['uid']) && $_GET['uid']!='')
|
||||
{
|
||||
$uid = str_replace(';','',$_GET['uid']);
|
||||
$qry = "SELECT nachname FROM campus.vw_benutzer WHERE uid=".$db->db_add_param($uid);
|
||||
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$nachname = '_'.$row->nachname;
|
||||
}
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$nachname = '_'.$row->nachname;
|
||||
}
|
||||
}
|
||||
}
|
||||
$filename=$xsl.$nachname;
|
||||
|
||||
if (!$fo2pdf->generatePdf($buffer, $filename, "D"))
|
||||
{
|
||||
}
|
||||
$filename=$xsl.$nachname;
|
||||
|
||||
if (!$fo2pdf->generatePdf($buffer, $filename, "D"))
|
||||
{
|
||||
echo('Failed to generate PDF');
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -135,6 +135,7 @@ echo $p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_ju
|
||||
echo "</SELECT><br />";
|
||||
|
||||
$konto = new konto();
|
||||
|
||||
if ($konto->checkStudienbeitrag($uid, $stsem))
|
||||
{
|
||||
echo "<a href='../pdfExport.php?xsl=Inskription&xml=student.rdf.php&ss=".$stsem."&uid=".$uid."&xsl_stg_kz=".$xsl_stg_kz."'>".$p->t('tools/inskriptionsbestaetigung')."</a>";
|
||||
@@ -145,6 +146,19 @@ else
|
||||
|
||||
echo "<hr>";
|
||||
|
||||
if(defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
|
||||
{
|
||||
if ($konto->checkStudienbeitrag($uid, $stsem))
|
||||
{
|
||||
echo "<a href='../pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&ss=".$stsem."&uid=".$uid."'>".$p->t('tools/studienbuchblatt')."</a>";
|
||||
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahltAmDatum',array($stsem, $konto->buchungsdatum));
|
||||
}
|
||||
else
|
||||
echo $p->t('tools/studienbuchblatt')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
|
||||
|
||||
echo "<hr>";
|
||||
}
|
||||
|
||||
echo "<a href='studienerfolgsbestaetigung.php' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
|
||||
echo "<a href='studienerfolgsbestaetigung.php?lang=en' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
|
||||
echo "<hr><br>";
|
||||
|
||||
@@ -167,7 +167,7 @@ define('MAIL_INTERNATIONAL_OUTGOING', 'invalid@technikum-wien.at');
|
||||
|
||||
define('ANZAHL_PREINTERESSENT','5');
|
||||
|
||||
//Name der aktiven Addons getrennt mit ;
|
||||
//Name der aktiven Addons getrennt mit ;
|
||||
define('ACTIVE_ADDONS','');
|
||||
|
||||
// ***** MOODLE *****
|
||||
@@ -195,4 +195,11 @@ define('TABLE_ID','_id');
|
||||
define('TABLE_BEGIN','tbl_');
|
||||
define('VIEW_BEGIN','vw_');
|
||||
|
||||
//Gibt an, ob das Studienbuchblatt im CIS gedruckt werden kann
|
||||
define('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN',false);
|
||||
|
||||
//**** INFOSCREEN ****
|
||||
//Gibt an, ob der Lageplan im Infoterminal angezeigt werden soll.
|
||||
define('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN',true);
|
||||
|
||||
?>
|
||||
|
||||
@@ -135,4 +135,7 @@ define('PRESTUDENT_ID_DUMMY_STUDENT', 13478);
|
||||
//Legt fest ob die Option für alle Räume im Saalplan Dropdown angezeigt werden soll. (true|false)
|
||||
define('CIS_SAALPLAN_ALLERAEUME_OPTION', false);
|
||||
|
||||
//Legt fest ob Bestätigungsmails über eine Anmelung zu einer Prüfung an eine einzelne Person erfolgt oder an den jeweiligen Lektor. (Leerstring für jeweiligen Lektro);
|
||||
define('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG',"p.vondrak");
|
||||
|
||||
?>
|
||||
|
||||
@@ -2436,11 +2436,14 @@ if(!$error)
|
||||
//Speichert einen Noteneintrag
|
||||
|
||||
$noten = new zeugnisnote();
|
||||
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
|
||||
$student_uid = filter_input(INPUT_POST, 'student_uid');
|
||||
$studiensemester_kurzbz = filter_input(INPUT_POST, 'studiensemester_kurzbz');
|
||||
|
||||
if(isset($_POST['lehrveranstaltung_id']) && isset($_POST['student_uid']) && isset($_POST['studiensemester_kurzbz']))
|
||||
if(!is_null($lehrveranstaltung_id) && !is_null($student_uid) && !is_null($studiensemester_kurzbz))
|
||||
{
|
||||
//Berechtigung pruefen
|
||||
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($_POST['lehrveranstaltung_id'], FHC_INTEGER);
|
||||
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -2461,7 +2464,7 @@ if(!$error)
|
||||
$errormsg = 'Fehler beim Ermitteln der LVA';
|
||||
}
|
||||
|
||||
$qry = "SELECT studiengang_kz FROM public.tbl_student WHERE student_uid=".$db->db_add_param($_POST['student_uid']);
|
||||
$qry = "SELECT studiengang_kz FROM public.tbl_student WHERE student_uid=".$db->db_add_param($student_uid);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -2494,11 +2497,28 @@ if(!$error)
|
||||
else
|
||||
{
|
||||
|
||||
if($noten->load($_POST['lehrveranstaltung_id'], $_POST['student_uid'], $_POST['studiensemester_kurzbz']))
|
||||
if($noten->load($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz))
|
||||
{
|
||||
$noten->new = false;
|
||||
$noten->updateamum = date('Y-m-d H:i:s');
|
||||
$noten->updatevon = $user;
|
||||
$log = new log();
|
||||
$log->executetime = date('Y-m-d H:i:s');
|
||||
$log->mitarbeiter_uid = $user;
|
||||
$log->beschreibung = "Ändern der Note ".$noten->note." bei ".$noten->student_uid;
|
||||
$log->sql = 'UPDATE lehre.tbl_zeugnisnote SET '.
|
||||
'note='.$db->db_add_param($noten->note).', '.
|
||||
'punkte='.$db->db_add_param($noten->punkte).','.
|
||||
'uebernahmedatum='.$db->db_add_param($noten->uebernahmedatum).', '.
|
||||
'benotungsdatum='.$db->db_add_param($noten->benotungsdatum).', '.
|
||||
'bemerkung='.$db->db_add_param($noten->bemerkung).', '.
|
||||
'updateamum= '.$db->db_add_param($noten->updateamum).', '.
|
||||
'updatevon='.$db->db_add_param($noten->updatevon).' '.
|
||||
'WHERE lehrveranstaltung_id='.$db->db_add_param($noten->lehrveranstaltung_id, FHC_INTEGER).' '.
|
||||
'AND student_uid='.$db->db_add_param($noten->student_uid).' '.
|
||||
'AND studiensemester_kurzbz='.$db->db_add_param($noten->studiensemester_kurzbz).';';
|
||||
$log->sqlundo = $noten->getUndo('update');
|
||||
$log->save(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2789,11 +2809,14 @@ if(!$error)
|
||||
//Loescht einen Noteneintrag
|
||||
|
||||
$noten = new zeugnisnote();
|
||||
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
|
||||
$student_uid = filter_input(INPUT_POST, 'student_uid');
|
||||
$studiensemester_kurzbz = filter_input(INPUT_POST, 'studiensemester_kurzbz');
|
||||
|
||||
if(isset($_POST['lehrveranstaltung_id']) && isset($_POST['student_uid']) && isset($_POST['studiensemester_kurzbz']))
|
||||
if(!is_null($lehrveranstaltung_id) && !is_null($student_uid) && !is_null($studiensemester_kurzbz))
|
||||
{
|
||||
//Berechtigung pruefen
|
||||
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($_POST['lehrveranstaltung_id'], FHC_INTEGER);
|
||||
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -2814,7 +2837,7 @@ if(!$error)
|
||||
$errormsg = 'Fehler beim Ermitteln der LVA';
|
||||
}
|
||||
|
||||
$qry = "SELECT studiengang_kz FROM public.tbl_student WHERE student_uid=".$db->db_add_param($_POST['student_uid']);
|
||||
$qry = "SELECT studiengang_kz FROM public.tbl_student WHERE student_uid=".$db->db_add_param($student_uid);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -2846,9 +2869,19 @@ if(!$error)
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
if($noten->delete($_POST['lehrveranstaltung_id'], $_POST['student_uid'], $_POST['studiensemester_kurzbz']))
|
||||
$noten->load($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz);
|
||||
if($noten->delete($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz))
|
||||
{
|
||||
$log = new log();
|
||||
$log->executetime = date('Y-m-d H:i:s');
|
||||
$log->mitarbeiter_uid = $user;
|
||||
$log->beschreibung = "Löschen der Note ".$noten->note." bei ".$noten->student_uid;
|
||||
$log->sql = "DELETE FROM lehre.tbl_zeugnisnote WHERE
|
||||
lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER, false)." AND
|
||||
student_uid=".$db->db_add_param($student_uid)." AND
|
||||
studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";";
|
||||
$log->sqlundo = $noten->getUndo('insert');
|
||||
$log->save(true);
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -2088,8 +2088,7 @@ class lehrveranstaltung extends basis_db
|
||||
$qry.=" AND tbl_studienplan_lehrveranstaltung.semester=" . $this->db_add_param($semester, FHC_INTEGER);
|
||||
}
|
||||
$qry.=" ORDER BY bezeichnung;";
|
||||
//TODO
|
||||
$this->errormsg = $qry;
|
||||
|
||||
$this->lehrveranstaltungen = array();
|
||||
if ($result = $this->db_query($qry))
|
||||
{
|
||||
|
||||
@@ -848,5 +848,24 @@ class person extends basis_db
|
||||
|
||||
}
|
||||
|
||||
public function getFullName($allFirstnames=FALSE)
|
||||
{
|
||||
$fullname = "";
|
||||
if((!is_null($this->titelpre)) && ($this->titelpre!=""))
|
||||
$fullname .= $this->titelpre." ";
|
||||
|
||||
$fullname .= $this->vorname." ";
|
||||
|
||||
if(($allFirstnames) && ($this->vornamen != "") && (!is_null($this->vornamen)))
|
||||
$fullname .= $this->vornamen." ";
|
||||
|
||||
$fullname .= $this->nachname;
|
||||
|
||||
if((!is_null($this->titelpost)) && ($this->titelpost!=""))
|
||||
$fullname .= " ".$this->titelpost;
|
||||
|
||||
return $fullname;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
+718
-718
File diff suppressed because it is too large
Load Diff
+790
-789
File diff suppressed because it is too large
Load Diff
+511
-466
@@ -1,466 +1,511 @@
|
||||
<?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 Zeugnisnote
|
||||
* @create 2007-06-06
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class zeugnisnote extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $result=array();
|
||||
|
||||
//Tabellenspalten
|
||||
public $lehrveranstaltung_id; /// serial
|
||||
public $student_uid; // varchar(16)
|
||||
public $studiensemester_kurzbz; // varchar(16)
|
||||
public $note; // smalint
|
||||
public $uebernahmedatum; // date
|
||||
public $benotungsdatum; // date
|
||||
public $updateamum; // timestamp
|
||||
public $updatevon; // varchar(16)
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(16)
|
||||
public $ext_id; // bigint
|
||||
public $bemerkung; // text
|
||||
public $punkte; // numeric(8,4)
|
||||
|
||||
public $lehrveranstaltung_bezeichung;
|
||||
public $note_bezeichnung;
|
||||
public $zeugnis;
|
||||
public $lv_lehrform_kurzbz;
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
* Laedt optional eine Zeugnisnote
|
||||
*
|
||||
* @param $lehrveranstaltung_id
|
||||
* @param $student_uid
|
||||
* @param $studiensemester_kurzbz
|
||||
*/
|
||||
public function __construct($lehrveranstaltung_id=null, $student_uid=null, $studiensemester_kurzbz=null)
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if($lehrveranstaltung_id!=null && $student_uid!=null && $studiensemester_kurzbz!=null)
|
||||
$this->load($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz);
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt eine Zeugnisnote
|
||||
*
|
||||
* @param $lehrveranstaltung_id
|
||||
* @param $student_uid
|
||||
* @param $studiensemester_kurzbz
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function load($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
if(!is_numeric($lehrveranstaltung_id))
|
||||
{
|
||||
$this->errormsg = 'Lehrveranstaltung_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_zeugnisnote
|
||||
WHERE
|
||||
lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)."
|
||||
AND student_uid=".$this->db_add_param($student_uid)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$this->student_uid = $row->student_uid;
|
||||
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$this->note = $row->note;
|
||||
$this->uebernahmedatum = $row->uebernahmedatum;
|
||||
$this->benotungsdatum = $row->benotungsdatum;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->ext_id = $row->ext_id;
|
||||
$this->bemerkung = $row->bemerkung;
|
||||
$this->punkte = $row->punkte;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Datensatz wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft die Daten vor dem Speichern
|
||||
* auf Gueltigkeit
|
||||
*/
|
||||
protected function validate()
|
||||
{
|
||||
if(!is_numeric($this->lehrveranstaltung_id))
|
||||
{
|
||||
$this->errormsg = 'Lehrveranstaltung_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->student_uid=='')
|
||||
{
|
||||
$this->errormsg = 'UID muss angegeben werden';
|
||||
return false;
|
||||
}
|
||||
if($this->studiensemester_kurzbz=='')
|
||||
{
|
||||
$this->errormsg = 'Studiensemester muss angegeben werden';
|
||||
return false;
|
||||
}
|
||||
if($this->note!='' && !is_numeric($this->note))
|
||||
{
|
||||
$this->errormsg = 'Note ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->uebernahmedatum!='' && !mb_ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$this->uebernahmedatum))
|
||||
{
|
||||
$this->errormsg = 'Uebernahmedatum ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->benotungsdatum!='' && !mb_ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$this->benotungsdatum))
|
||||
{
|
||||
$this->errormsg = 'Benotungsdatum ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
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 $betriebsmittel_id aktualisiert
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function save($new=null)
|
||||
{
|
||||
if($new==null)
|
||||
$new=$this->new;
|
||||
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($new)
|
||||
{
|
||||
//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, 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).', '.
|
||||
$this->db_add_param($this->note).', '.
|
||||
$this->db_add_param($this->uebernahmedatum).', '.
|
||||
$this->db_add_param($this->benotungsdatum).', '.
|
||||
$this->db_add_param($this->bemerkung).', '.
|
||||
$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->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).', '.
|
||||
'updateamum= '.$this->db_add_param($this->updateamum).', '.
|
||||
'updatevon='.$this->db_add_param($this->updatevon).' '.
|
||||
'WHERE lehrveranstaltung_id='.$this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER).' '.
|
||||
'AND student_uid='.$this->db_add_param($this->student_uid).' '.
|
||||
'AND studiensemester_kurzbz='.$this->db_add_param($this->studiensemester_kurzbz).';';
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler beim Speichern der Zeugnisnote';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loescht den Datenensatz mit der ID die uebergeben wird
|
||||
* @param $lehrveranstaltung_id
|
||||
* $student_uid
|
||||
* $studiensemester_kurzbz
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function delete($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
$qry = "DELETE FROM lehre.tbl_zeugnisnote WHERE
|
||||
lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER, false)." AND
|
||||
student_uid=".$this->db_add_param($student_uid)." AND
|
||||
studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if($this->db_query($qry))
|
||||
return true;
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Loeschen der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Noten
|
||||
* @param $lehrveranstaltung_id
|
||||
* $student_uid
|
||||
* $studiensemester_kurzbz
|
||||
* @return true wenn ok, false wenn Fehler
|
||||
*/
|
||||
public function getZeugnisnoten($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
$where='';
|
||||
if($lehrveranstaltung_id!=null)
|
||||
$where.=" AND vw_student_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id);
|
||||
if($student_uid!=null)
|
||||
$where.=" AND uid=".$this->db_add_param($student_uid);
|
||||
if($studiensemester_kurzbz!=null)
|
||||
$where.=" AND vw_student_lehrveranstaltung.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
$where2='';
|
||||
if($lehrveranstaltung_id!=null)
|
||||
$where2.=" AND lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
|
||||
if($student_uid!=null)
|
||||
$where2.=" AND student_uid=".$this->db_add_param($student_uid);
|
||||
if($studiensemester_kurzbz!=null)
|
||||
$where2.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
$qry = "SELECT vw_student_lehrveranstaltung.lehrveranstaltung_id, uid,
|
||||
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,
|
||||
vw_student_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung,
|
||||
vw_student_lehrveranstaltung.bezeichnung_english as lehrveranstaltung_bezeichnung_english,
|
||||
tbl_note.bezeichnung as note_bezeichnung,
|
||||
tbl_zeugnisnote.bemerkung as bemerkung,
|
||||
vw_student_lehrveranstaltung.sort,
|
||||
vw_student_lehrveranstaltung.zeugnis,
|
||||
vw_student_lehrveranstaltung.studiengang_kz,
|
||||
vw_student_lehrveranstaltung.lv_lehrform_kurzbz
|
||||
FROM
|
||||
(
|
||||
campus.vw_student_lehrveranstaltung LEFT JOIN lehre.tbl_zeugnisnote
|
||||
ON(uid=student_uid
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_zeugnisnote.studiensemester_kurzbz
|
||||
AND vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
)
|
||||
) LEFT JOIN lehre.tbl_note USING(note)
|
||||
WHERE true $where
|
||||
UNION
|
||||
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,
|
||||
tbl_lehrveranstaltung.lehrform_kurzbz as lv_lehrform_kurzbz
|
||||
FROM
|
||||
lehre.tbl_zeugnisnote
|
||||
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_note USING(note)
|
||||
WHERE true $where2
|
||||
ORDER BY sort";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new zeugnisnote();
|
||||
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$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;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->ext_id = $row->ext_id;
|
||||
$obj->note_bezeichnung = $row->note_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung_english = $row->lehrveranstaltung_bezeichnung_english;
|
||||
$obj->bemerkung = $row->bemerkung;
|
||||
$obj->semesterstunden = $row->semesterstunden;
|
||||
$obj->ects = $row->ects;
|
||||
$obj->sort = $row->sort;
|
||||
$obj->studiengang_kz = $row->studiengang_kz;
|
||||
$obj->zeugnis = $this->db_parse_bool($row->zeugnis);
|
||||
$obj->lv_lehrform_kurzbz = $row->lv_lehrform_kurzbz;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Noten Studienjahr
|
||||
* @param $lehrveranstaltung_id
|
||||
* $student_uid
|
||||
* $studiensemester_kurzbz
|
||||
* @return true wenn ok, false wenn Fehler
|
||||
*/
|
||||
public function getZeugnisnotenStudienplan($student_uid, $studiensemester_arr, $studienplan_id)
|
||||
{
|
||||
|
||||
$stsem = $this->db_implode4SQL($studiensemester_arr);
|
||||
|
||||
/*
|
||||
* Alle Lehrveranstaltungen holen zu denen eine Note eingetragen ist und alle zu denen der Studierende zugeteilt ist.
|
||||
* Danach wird im Studienplan gesucht und eventuell darbueberliegenden Module zusaetzlich geladen
|
||||
*/
|
||||
$qry = "
|
||||
WITH RECURSIVE data(lvid, studienplan_lehrveranstaltung_id, studienplan_lehrveranstaltung_id_parent) as
|
||||
(
|
||||
SELECT
|
||||
vw_student_lehrveranstaltung.lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent
|
||||
FROM
|
||||
(
|
||||
campus.vw_student_lehrveranstaltung LEFT JOIN lehre.tbl_zeugnisnote
|
||||
ON(uid=student_uid
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_zeugnisnote.studiensemester_kurzbz
|
||||
AND vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
)
|
||||
)
|
||||
LEFT JOIN lehre.tbl_note USING(note)
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id)
|
||||
WHERE
|
||||
uid=".$this->db_add_param($student_uid)."
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz IN(".$stsem.")
|
||||
AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id, FHC_INTEGER)."
|
||||
UNION
|
||||
SELECT lehre.tbl_lehrveranstaltung.lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent
|
||||
FROM
|
||||
lehre.tbl_zeugnisnote
|
||||
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_note USING(note)
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung USING(lehrveranstaltung_id)
|
||||
WHERE
|
||||
student_uid=".$this->db_add_param($student_uid)."
|
||||
AND studiensemester_kurzbz IN(".$stsem.")
|
||||
AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id, FHC_INTEGER)."
|
||||
|
||||
UNION ALL
|
||||
SELECT stpllv.lehrveranstaltung_id, stpllv.studienplan_lehrveranstaltung_id, stpllv.studienplan_lehrveranstaltung_id_parent
|
||||
FROM lehre.tbl_studienplan_lehrveranstaltung stpllv, data
|
||||
WHERE stpllv.studienplan_lehrveranstaltung_id=data.studienplan_lehrveranstaltung_id_parent
|
||||
)
|
||||
SELECT
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent, tbl_studienplan_lehrveranstaltung.semester,
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id,tbl_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung, tbl_lehrveranstaltung.bezeichnung_english as lehrveranstaltung_bezeichnung_english,
|
||||
tbl_lehrveranstaltung.semesterstunden, tbl_lehrveranstaltung.ects, tbl_lehrveranstaltung.sort, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.zeugnis,
|
||||
tbl_lehrveranstaltung.lehrform_kurzbz as lv_lehrform_kurzbz,
|
||||
tbl_zeugnisnote.studiensemester_kurzbz, tbl_zeugnisnote.uebernahmedatum, tbl_zeugnisnote.benotungsdatum,
|
||||
tbl_zeugnisnote.note, tbl_zeugnisnote.updateamum, tbl_zeugnisnote.updatevon, tbl_zeugnisnote.insertamum, tbl_zeugnisnote.insertvon,
|
||||
tbl_note.bezeichnung as note_bezeichnung, tbl_zeugnisnote.bemerkung, tbl_lehrveranstaltung.lvnr, tbl_studienplan_lehrveranstaltung.sort as studienplan_lehrveranstaltung_sort
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=".$this->db_add_param($student_uid)." AND tbl_zeugnisnote.studiensemester_kurzbz IN(".$stsem."))
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id).")
|
||||
LEFT JOIN lehre.tbl_note USING(note)
|
||||
WHERE
|
||||
(tbl_zeugnisnote.studiensemester_kurzbz IN(".$stsem.") OR tbl_zeugnisnote.studiensemester_kurzbz is null)
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id in(SELECT lvid FROM data)
|
||||
ORDER BY studienplan_lehrveranstaltung_id_parent desc, studienplan_lehrveranstaltung_id
|
||||
";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new zeugnisnote();
|
||||
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$obj->student_uid = $student_uid;
|
||||
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$obj->note = $row->note;
|
||||
$obj->uebernahmedatum = $row->uebernahmedatum;
|
||||
$obj->benotungsdatum = $row->benotungsdatum;
|
||||
$obj->updateamum = $row->updateamum;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->note_bezeichnung = $row->note_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung_english = $row->lehrveranstaltung_bezeichnung_english;
|
||||
$obj->bemerkung = $row->bemerkung;
|
||||
$obj->semesterstunden = $row->semesterstunden;
|
||||
$obj->ects = $row->ects;
|
||||
$obj->sort = $row->sort;
|
||||
$obj->studiengang_kz = $row->studiengang_kz;
|
||||
$obj->zeugnis = $this->db_parse_bool($row->zeugnis);
|
||||
$obj->lv_lehrform_kurzbz = $row->lv_lehrform_kurzbz;
|
||||
$obj->lehrveranstaltung_lvnr = $row->lvnr;
|
||||
$obj->studienplan_lehrveranstaltung_id = $row->studienplan_lehrveranstaltung_id;
|
||||
$obj->studienplan_lehrveranstaltung_id_parent = $row->studienplan_lehrveranstaltung_id_parent;
|
||||
$obj->studienplan_lehrveranstaltung_semester = $row->semester;
|
||||
$obj->studienplan_lehrveranstaltung_sort = $row->studienplan_lehrveranstaltung_sort;
|
||||
|
||||
$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 Zeugnisnote
|
||||
* @create 2007-06-06
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class zeugnisnote extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $result=array();
|
||||
|
||||
//Tabellenspalten
|
||||
public $lehrveranstaltung_id; /// serial
|
||||
public $student_uid; // varchar(16)
|
||||
public $studiensemester_kurzbz; // varchar(16)
|
||||
public $note; // smalint
|
||||
public $uebernahmedatum; // date
|
||||
public $benotungsdatum; // date
|
||||
public $updateamum; // timestamp
|
||||
public $updatevon; // varchar(16)
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(16)
|
||||
public $ext_id; // bigint
|
||||
public $bemerkung; // text
|
||||
public $punkte; // numeric(8,4)
|
||||
|
||||
public $lehrveranstaltung_bezeichung;
|
||||
public $note_bezeichnung;
|
||||
public $zeugnis;
|
||||
public $lv_lehrform_kurzbz;
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
* Laedt optional eine Zeugnisnote
|
||||
*
|
||||
* @param $lehrveranstaltung_id
|
||||
* @param $student_uid
|
||||
* @param $studiensemester_kurzbz
|
||||
*/
|
||||
public function __construct($lehrveranstaltung_id=null, $student_uid=null, $studiensemester_kurzbz=null)
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if($lehrveranstaltung_id!=null && $student_uid!=null && $studiensemester_kurzbz!=null)
|
||||
$this->load($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz);
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt eine Zeugnisnote
|
||||
*
|
||||
* @param $lehrveranstaltung_id
|
||||
* @param $student_uid
|
||||
* @param $studiensemester_kurzbz
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function load($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
if(!is_numeric($lehrveranstaltung_id))
|
||||
{
|
||||
$this->errormsg = 'Lehrveranstaltung_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_zeugnisnote
|
||||
WHERE
|
||||
lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)."
|
||||
AND student_uid=".$this->db_add_param($student_uid)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$this->student_uid = $row->student_uid;
|
||||
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$this->note = $row->note;
|
||||
$this->uebernahmedatum = $row->uebernahmedatum;
|
||||
$this->benotungsdatum = $row->benotungsdatum;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->ext_id = $row->ext_id;
|
||||
$this->bemerkung = $row->bemerkung;
|
||||
$this->punkte = $row->punkte;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Datensatz wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft die Daten vor dem Speichern
|
||||
* auf Gueltigkeit
|
||||
*/
|
||||
protected function validate()
|
||||
{
|
||||
if(!is_numeric($this->lehrveranstaltung_id))
|
||||
{
|
||||
$this->errormsg = 'Lehrveranstaltung_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->student_uid=='')
|
||||
{
|
||||
$this->errormsg = 'UID muss angegeben werden';
|
||||
return false;
|
||||
}
|
||||
if($this->studiensemester_kurzbz=='')
|
||||
{
|
||||
$this->errormsg = 'Studiensemester muss angegeben werden';
|
||||
return false;
|
||||
}
|
||||
if($this->note!='' && !is_numeric($this->note))
|
||||
{
|
||||
$this->errormsg = 'Note ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->uebernahmedatum!='' && !mb_ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$this->uebernahmedatum))
|
||||
{
|
||||
$this->errormsg = 'Uebernahmedatum ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->benotungsdatum!='' && !mb_ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$this->benotungsdatum))
|
||||
{
|
||||
$this->errormsg = 'Benotungsdatum ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
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 $betriebsmittel_id aktualisiert
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function save($new=null)
|
||||
{
|
||||
if($new==null)
|
||||
$new=$this->new;
|
||||
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($new)
|
||||
{
|
||||
//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, 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).', '.
|
||||
$this->db_add_param($this->note).', '.
|
||||
$this->db_add_param($this->uebernahmedatum).', '.
|
||||
$this->db_add_param($this->benotungsdatum).', '.
|
||||
$this->db_add_param($this->bemerkung).', '.
|
||||
$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->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).', '.
|
||||
'updateamum= '.$this->db_add_param($this->updateamum).', '.
|
||||
'updatevon='.$this->db_add_param($this->updatevon).' '.
|
||||
'WHERE lehrveranstaltung_id='.$this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER).' '.
|
||||
'AND student_uid='.$this->db_add_param($this->student_uid).' '.
|
||||
'AND studiensemester_kurzbz='.$this->db_add_param($this->studiensemester_kurzbz).';';
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler beim Speichern der Zeugnisnote';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loescht den Datenensatz mit der ID die uebergeben wird
|
||||
* @param $lehrveranstaltung_id
|
||||
* $student_uid
|
||||
* $studiensemester_kurzbz
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function delete($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
$qry = "DELETE FROM lehre.tbl_zeugnisnote WHERE
|
||||
lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER, false)." AND
|
||||
student_uid=".$this->db_add_param($student_uid)." AND
|
||||
studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if($this->db_query($qry))
|
||||
return true;
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Loeschen der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Noten
|
||||
* @param $lehrveranstaltung_id
|
||||
* $student_uid
|
||||
* $studiensemester_kurzbz
|
||||
* @return true wenn ok, false wenn Fehler
|
||||
*/
|
||||
public function getZeugnisnoten($lehrveranstaltung_id, $student_uid, $studiensemester_kurzbz)
|
||||
{
|
||||
$where='';
|
||||
if($lehrveranstaltung_id!=null)
|
||||
$where.=" AND vw_student_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id);
|
||||
if($student_uid!=null)
|
||||
$where.=" AND uid=".$this->db_add_param($student_uid);
|
||||
if($studiensemester_kurzbz!=null)
|
||||
$where.=" AND vw_student_lehrveranstaltung.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
$where2='';
|
||||
if($lehrveranstaltung_id!=null)
|
||||
$where2.=" AND lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
|
||||
if($student_uid!=null)
|
||||
$where2.=" AND student_uid=".$this->db_add_param($student_uid);
|
||||
if($studiensemester_kurzbz!=null)
|
||||
$where2.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
$qry = "SELECT vw_student_lehrveranstaltung.lehrveranstaltung_id, uid,
|
||||
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,
|
||||
vw_student_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung,
|
||||
vw_student_lehrveranstaltung.bezeichnung_english as lehrveranstaltung_bezeichnung_english,
|
||||
tbl_note.bezeichnung as note_bezeichnung,
|
||||
tbl_zeugnisnote.bemerkung as bemerkung,
|
||||
vw_student_lehrveranstaltung.sort,
|
||||
vw_student_lehrveranstaltung.zeugnis,
|
||||
vw_student_lehrveranstaltung.studiengang_kz,
|
||||
vw_student_lehrveranstaltung.lv_lehrform_kurzbz
|
||||
FROM
|
||||
(
|
||||
campus.vw_student_lehrveranstaltung LEFT JOIN lehre.tbl_zeugnisnote
|
||||
ON(uid=student_uid
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_zeugnisnote.studiensemester_kurzbz
|
||||
AND vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
)
|
||||
) LEFT JOIN lehre.tbl_note USING(note)
|
||||
WHERE true $where
|
||||
UNION
|
||||
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,
|
||||
tbl_lehrveranstaltung.lehrform_kurzbz as lv_lehrform_kurzbz
|
||||
FROM
|
||||
lehre.tbl_zeugnisnote
|
||||
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_note USING(note)
|
||||
WHERE true $where2
|
||||
ORDER BY sort";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new zeugnisnote();
|
||||
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$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;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->ext_id = $row->ext_id;
|
||||
$obj->note_bezeichnung = $row->note_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung_english = $row->lehrveranstaltung_bezeichnung_english;
|
||||
$obj->bemerkung = $row->bemerkung;
|
||||
$obj->semesterstunden = $row->semesterstunden;
|
||||
$obj->ects = $row->ects;
|
||||
$obj->sort = $row->sort;
|
||||
$obj->studiengang_kz = $row->studiengang_kz;
|
||||
$obj->zeugnis = $this->db_parse_bool($row->zeugnis);
|
||||
$obj->lv_lehrform_kurzbz = $row->lv_lehrform_kurzbz;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Noten Studienjahr
|
||||
* @param $lehrveranstaltung_id
|
||||
* $student_uid
|
||||
* $studiensemester_kurzbz
|
||||
* @return true wenn ok, false wenn Fehler
|
||||
*/
|
||||
public function getZeugnisnotenStudienplan($student_uid, $studiensemester_arr, $studienplan_id)
|
||||
{
|
||||
|
||||
$stsem = $this->db_implode4SQL($studiensemester_arr);
|
||||
|
||||
/*
|
||||
* Alle Lehrveranstaltungen holen zu denen eine Note eingetragen ist und alle zu denen der Studierende zugeteilt ist.
|
||||
* Danach wird im Studienplan gesucht und eventuell darbueberliegenden Module zusaetzlich geladen
|
||||
*/
|
||||
$qry = "
|
||||
WITH RECURSIVE data(lvid, studienplan_lehrveranstaltung_id, studienplan_lehrveranstaltung_id_parent) as
|
||||
(
|
||||
SELECT
|
||||
vw_student_lehrveranstaltung.lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent
|
||||
FROM
|
||||
(
|
||||
campus.vw_student_lehrveranstaltung LEFT JOIN lehre.tbl_zeugnisnote
|
||||
ON(uid=student_uid
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz=tbl_zeugnisnote.studiensemester_kurzbz
|
||||
AND vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
)
|
||||
)
|
||||
LEFT JOIN lehre.tbl_note USING(note)
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id)
|
||||
WHERE
|
||||
uid=".$this->db_add_param($student_uid)."
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz IN(".$stsem.")
|
||||
AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id, FHC_INTEGER)."
|
||||
UNION
|
||||
SELECT lehre.tbl_lehrveranstaltung.lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent
|
||||
FROM
|
||||
lehre.tbl_zeugnisnote
|
||||
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_note USING(note)
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung USING(lehrveranstaltung_id)
|
||||
WHERE
|
||||
student_uid=".$this->db_add_param($student_uid)."
|
||||
AND studiensemester_kurzbz IN(".$stsem.")
|
||||
AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id, FHC_INTEGER)."
|
||||
|
||||
UNION ALL
|
||||
SELECT stpllv.lehrveranstaltung_id, stpllv.studienplan_lehrveranstaltung_id, stpllv.studienplan_lehrveranstaltung_id_parent
|
||||
FROM lehre.tbl_studienplan_lehrveranstaltung stpllv, data
|
||||
WHERE stpllv.studienplan_lehrveranstaltung_id=data.studienplan_lehrveranstaltung_id_parent
|
||||
)
|
||||
SELECT
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id,
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_lehrveranstaltung_id_parent, tbl_studienplan_lehrveranstaltung.semester,
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id,tbl_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung, tbl_lehrveranstaltung.bezeichnung_english as lehrveranstaltung_bezeichnung_english,
|
||||
tbl_lehrveranstaltung.semesterstunden, tbl_lehrveranstaltung.ects, tbl_lehrveranstaltung.sort, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.zeugnis,
|
||||
tbl_lehrveranstaltung.lehrform_kurzbz as lv_lehrform_kurzbz,
|
||||
tbl_zeugnisnote.studiensemester_kurzbz, tbl_zeugnisnote.uebernahmedatum, tbl_zeugnisnote.benotungsdatum,
|
||||
tbl_zeugnisnote.note, tbl_zeugnisnote.updateamum, tbl_zeugnisnote.updatevon, tbl_zeugnisnote.insertamum, tbl_zeugnisnote.insertvon,
|
||||
tbl_note.bezeichnung as note_bezeichnung, tbl_zeugnisnote.bemerkung, tbl_lehrveranstaltung.lvnr, tbl_studienplan_lehrveranstaltung.sort as studienplan_lehrveranstaltung_sort
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=".$this->db_add_param($student_uid)." AND tbl_zeugnisnote.studiensemester_kurzbz IN(".$stsem."))
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id).")
|
||||
LEFT JOIN lehre.tbl_note USING(note)
|
||||
WHERE
|
||||
(tbl_zeugnisnote.studiensemester_kurzbz IN(".$stsem.") OR tbl_zeugnisnote.studiensemester_kurzbz is null)
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id in(SELECT lvid FROM data)
|
||||
ORDER BY studienplan_lehrveranstaltung_id_parent desc, studienplan_lehrveranstaltung_id
|
||||
";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new zeugnisnote();
|
||||
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$obj->student_uid = $student_uid;
|
||||
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$obj->note = $row->note;
|
||||
$obj->uebernahmedatum = $row->uebernahmedatum;
|
||||
$obj->benotungsdatum = $row->benotungsdatum;
|
||||
$obj->updateamum = $row->updateamum;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->note_bezeichnung = $row->note_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
|
||||
$obj->lehrveranstaltung_bezeichnung_english = $row->lehrveranstaltung_bezeichnung_english;
|
||||
$obj->bemerkung = $row->bemerkung;
|
||||
$obj->semesterstunden = $row->semesterstunden;
|
||||
$obj->ects = $row->ects;
|
||||
$obj->sort = $row->sort;
|
||||
$obj->studiengang_kz = $row->studiengang_kz;
|
||||
$obj->zeugnis = $this->db_parse_bool($row->zeugnis);
|
||||
$obj->lv_lehrform_kurzbz = $row->lv_lehrform_kurzbz;
|
||||
$obj->lehrveranstaltung_lvnr = $row->lvnr;
|
||||
$obj->studienplan_lehrveranstaltung_id = $row->studienplan_lehrveranstaltung_id;
|
||||
$obj->studienplan_lehrveranstaltung_id_parent = $row->studienplan_lehrveranstaltung_id_parent;
|
||||
$obj->studienplan_lehrveranstaltung_semester = $row->semester;
|
||||
$obj->studienplan_lehrveranstaltung_sort = $row->studienplan_lehrveranstaltung_sort;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Generiert den SQL-Befehl für eine UNDO-Aktion
|
||||
* @param type $crud gewünschter Typ der UNDO-Aktion
|
||||
*/
|
||||
public function getUndo($crud)
|
||||
{
|
||||
if(strtoupper($crud) === 'INSERT')
|
||||
{
|
||||
return 'INSERT INTO lehre.tbl_zeugnisnote (lehrveranstaltung_id, student_uid,
|
||||
studiensemester_kurzbz, note, uebernahmedatum, benotungsdatum, bemerkung,
|
||||
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).', '.
|
||||
$this->db_add_param($this->note).', '.
|
||||
$this->db_add_param($this->uebernahmedatum).', '.
|
||||
$this->db_add_param($this->benotungsdatum).', '.
|
||||
$this->db_add_param($this->bemerkung).', '.
|
||||
$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->ext_id).','.
|
||||
$this->db_add_param($this->punkte).');';
|
||||
}
|
||||
else if(strtoupper($crud) === 'UPDATE')
|
||||
{
|
||||
return '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).', '.
|
||||
'updateamum= '.$this->db_add_param($this->updateamum).', '.
|
||||
'updatevon='.$this->db_add_param($this->updatevon).' '.
|
||||
'WHERE lehrveranstaltung_id='.$this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER).' '.
|
||||
'AND student_uid='.$this->db_add_param($this->student_uid).' '.
|
||||
'AND studiensemester_kurzbz='.$this->db_add_param($this->studiensemester_kurzbz).';';
|
||||
}
|
||||
else
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
+74
-73
@@ -1,73 +1,74 @@
|
||||
<?php
|
||||
|
||||
//Dokumente
|
||||
$this->phrasen['tools/dokumente']='Dokumente';
|
||||
$this->phrasen['tools/inskriptionsbestaetigung']='Inskriptionsbestätigung';
|
||||
$this->phrasen['tools/studienbeitragFuerSSBezahltAmDatum']='Studienbeitrag für das %1$s bezahlt am %2$s';
|
||||
$this->phrasen['tools/studienbeitragFuerSSNochNichtBezahlt']='Studienbeitrag für das %1$s noch nicht bezahlt';
|
||||
$this->phrasen['tools/studienerfolgsbestaetigung']='Studienerfolgsbestätigung';
|
||||
$this->phrasen['tools/studiensemesterAuswaehlen']='Bitte wählen Sie das entsprechende Studiensemester aus';
|
||||
$this->phrasen['tools/vorlageWohnsitzfinanzamt']='zur Vorlage beim Wohnsitzfinanzamt';
|
||||
|
||||
//Leistungsbeurteilung
|
||||
$this->phrasen['tools/leistungsbeurteilung']='Leistungsbeurteilung';
|
||||
$this->phrasen['tools/studentWurdeNichtGefunden']='Student wurde nicht gefunden';
|
||||
$this->phrasen['tools/mussAlsStudentEingeloggtSein']='Sie müssen als Student eingeloggt sein um ihre Noten abzufragen!';
|
||||
$this->phrasen['tools/nochKeineBeurteilungEingetragen']='Es wurden noch keine Beurteilungen eingetragen';
|
||||
$this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Fehler beim Auslesen der Noten';
|
||||
$this->phrasen['tools/benotungsdatumDerZeugnisnote']='Benotungsdatum der Zeugnisnote';
|
||||
|
||||
//Zahlungen
|
||||
$this->phrasen['tools/zahlungen']='Zahlungen';
|
||||
$this->phrasen['tools/zahlungstyp']='Typ';
|
||||
$this->phrasen['tools/buchungstext']='Buchungstext';
|
||||
$this->phrasen['tools/betrag']='Betrag';
|
||||
$this->phrasen['tools/zahlungsbestaetigung']='Zahlungsbestätigung';
|
||||
$this->phrasen['tools/bestaetigungDrucken']='Bestaetigung drucken';
|
||||
$this->phrasen['tools/offen']='offen';
|
||||
$this->phrasen['tools/keineZahlungenVorhanden']='Derzeit sind keine Zahlungen vorhanden';
|
||||
|
||||
//Ampeln
|
||||
$this->phrasen['tools/ampelsystem']='Ampelsystem';
|
||||
$this->phrasen['tools/ampel']='Ampel';
|
||||
$this->phrasen['tools/nichtZugeteilt']='Sie sind nicht zu dieser Ampel zugeteilt';
|
||||
$this->phrasen['tools/ampelNichtGefunden']='Die angegeben Ampel wurde nicht gefunden';
|
||||
$this->phrasen['tools/ampelStatus']='Status';
|
||||
$this->phrasen['tools/ampelBeschreibung']='Beschreibung';
|
||||
$this->phrasen['tools/ampelKurzbz']='Kurzbezeichnung';
|
||||
$this->phrasen['tools/ampelDeadline']='Deadline';
|
||||
$this->phrasen['tools/ampelAktion']='Aktion';
|
||||
$this->phrasen['tools/ampelErledigt']='Erledigt';
|
||||
$this->phrasen['tools/ampelBestaetigen']='bestätigen';
|
||||
$this->phrasen['tools/ampelBestaetigt']='bestätigt';
|
||||
$this->phrasen['tools/ampelMitarbeiter']='Mitarbeiter';
|
||||
$this->phrasen['tools/ampelRestdauer']='Restdauer in Tagen';
|
||||
$this->phrasen['tools/ampelBestaetigtAm']='Bestätigt am';
|
||||
$this->phrasen['tools/ampelBereitsBestaetigt']='Diese Ampel wurde bereits bestätigt';
|
||||
$this->phrasen['tools/dasAmpelsystemIstEinErinnerungsystem']='Das Ampelsystem ist ein ERINNERUNGS- und BESTÄTIGUNGSSYSTEM, welches Sie auf ausstehende Aufgaben aufmerksam machen soll.<br/>Die Ampel überprüft NICHT, ob die Aufgabe tatsächlich erledigt wurde. Weitere Details entnehmen Sie bitte dem CIS-Handbuch';
|
||||
$this->phrasen['tools/waehlenSieEineOEoderAmpel']='Bitte wählen Sie ein Organisationseinheit und/oder eine Ampel aus dem Dropdown';
|
||||
$this->phrasen['tools/uebersichtLeitung']='Ampel-Übersicht für LeiterInnen';
|
||||
|
||||
//Software fuer Lehre -> Softgrid
|
||||
$this->phrasen['tools/applikationsliste']='Applikationsliste';
|
||||
$this->phrasen['tools/naehereInformationenfindenSieUnter']='Nähere Informationen zu Softgrid sowie eine Installationsanleitung finden Sie unter "Infrastruktur - SoftGrid"';
|
||||
$this->phrasen['tools/einzelanwendung']='Einzelanwendung';
|
||||
$this->phrasen['tools/softwarepaket']='Softwarepaket';
|
||||
$this->phrasen['tools/datei']='Datei ';
|
||||
$this->phrasen['tools/wurdeNichtGefunden']=' wurde nicht gefunden!';
|
||||
$this->phrasen['tools/fehlerBeimLesenDerDatei']='Fehler beim Lesen der Datei ';
|
||||
$this->phrasen['tools/keineDatenGefunden']='Keine Daten gefunden';
|
||||
|
||||
//Suche
|
||||
$this->phrasen['tools/suche']='Globale Suche';
|
||||
$this->phrasen['tools/content']='Content';
|
||||
$this->phrasen['tools/suchbegriff']='Suchbegriff';
|
||||
$this->phrasen['tools/esWurdenMehrAlsXDokumenteGefunden']='Es wurden mehr als 40 Dokumente zu Ihrem Suchbegriff gefunden. Bitte spezifizieren Sie Ihre Suche.';
|
||||
$this->phrasen['tools/esWurdenMehrAlsXPersonenGefunden']='Es wurden mehr als 20 Personen zu Ihrem Suchbegriff gefunden. Bitte spezifizieren Sie Ihre Suche.';
|
||||
$this->phrasen['tools/esWurdenMehrAlsXInhalteGefunden']='Es wurden mehr als 20 Seiten zu Ihrem Suchbegriff gefunden. Bitte spezifizieren Sie Ihre Suche.';
|
||||
$this->phrasen['tools/aktuelleVersion']='Aktuelle Version';
|
||||
$this->phrasen['tools/telefonklappe']='Telefonklappe';
|
||||
$this->phrasen['tools/reservieren']='Reservieren';
|
||||
$this->phrasen['tools/maxPersonen']='Max. Personen';
|
||||
$this->phrasen['tools/esWurdenKeineErgebnisseGefunden']='Es wurden keine Ergebnisse gefunden.';
|
||||
?>
|
||||
<?php
|
||||
|
||||
//Dokumente
|
||||
$this->phrasen['tools/dokumente']='Dokumente';
|
||||
$this->phrasen['tools/inskriptionsbestaetigung']='Inskriptionsbestätigung';
|
||||
$this->phrasen['tools/studienbeitragFuerSSBezahltAmDatum']='Studienbeitrag für das %1$s bezahlt am %2$s';
|
||||
$this->phrasen['tools/studienbeitragFuerSSNochNichtBezahlt']='Studienbeitrag für das %1$s noch nicht bezahlt';
|
||||
$this->phrasen['tools/studienerfolgsbestaetigung']='Studienerfolgsbestätigung';
|
||||
$this->phrasen['tools/studiensemesterAuswaehlen']='Bitte wählen Sie das entsprechende Studiensemester aus';
|
||||
$this->phrasen['tools/vorlageWohnsitzfinanzamt']='zur Vorlage beim Wohnsitzfinanzamt';
|
||||
$this->phrasen['tools/studienbuchblatt']='Studienbuchblatt';
|
||||
|
||||
//Leistungsbeurteilung
|
||||
$this->phrasen['tools/leistungsbeurteilung']='Leistungsbeurteilung';
|
||||
$this->phrasen['tools/studentWurdeNichtGefunden']='Student wurde nicht gefunden';
|
||||
$this->phrasen['tools/mussAlsStudentEingeloggtSein']='Sie müssen als Student eingeloggt sein um ihre Noten abzufragen!';
|
||||
$this->phrasen['tools/nochKeineBeurteilungEingetragen']='Es wurden noch keine Beurteilungen eingetragen';
|
||||
$this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Fehler beim Auslesen der Noten';
|
||||
$this->phrasen['tools/benotungsdatumDerZeugnisnote']='Benotungsdatum der Zeugnisnote';
|
||||
|
||||
//Zahlungen
|
||||
$this->phrasen['tools/zahlungen']='Zahlungen';
|
||||
$this->phrasen['tools/zahlungstyp']='Typ';
|
||||
$this->phrasen['tools/buchungstext']='Buchungstext';
|
||||
$this->phrasen['tools/betrag']='Betrag';
|
||||
$this->phrasen['tools/zahlungsbestaetigung']='Zahlungsbestätigung';
|
||||
$this->phrasen['tools/bestaetigungDrucken']='Bestaetigung drucken';
|
||||
$this->phrasen['tools/offen']='offen';
|
||||
$this->phrasen['tools/keineZahlungenVorhanden']='Derzeit sind keine Zahlungen vorhanden';
|
||||
|
||||
//Ampeln
|
||||
$this->phrasen['tools/ampelsystem']='Ampelsystem';
|
||||
$this->phrasen['tools/ampel']='Ampel';
|
||||
$this->phrasen['tools/nichtZugeteilt']='Sie sind nicht zu dieser Ampel zugeteilt';
|
||||
$this->phrasen['tools/ampelNichtGefunden']='Die angegeben Ampel wurde nicht gefunden';
|
||||
$this->phrasen['tools/ampelStatus']='Status';
|
||||
$this->phrasen['tools/ampelBeschreibung']='Beschreibung';
|
||||
$this->phrasen['tools/ampelKurzbz']='Kurzbezeichnung';
|
||||
$this->phrasen['tools/ampelDeadline']='Deadline';
|
||||
$this->phrasen['tools/ampelAktion']='Aktion';
|
||||
$this->phrasen['tools/ampelErledigt']='Erledigt';
|
||||
$this->phrasen['tools/ampelBestaetigen']='bestätigen';
|
||||
$this->phrasen['tools/ampelBestaetigt']='bestätigt';
|
||||
$this->phrasen['tools/ampelMitarbeiter']='Mitarbeiter';
|
||||
$this->phrasen['tools/ampelRestdauer']='Restdauer in Tagen';
|
||||
$this->phrasen['tools/ampelBestaetigtAm']='Bestätigt am';
|
||||
$this->phrasen['tools/ampelBereitsBestaetigt']='Diese Ampel wurde bereits bestätigt';
|
||||
$this->phrasen['tools/dasAmpelsystemIstEinErinnerungsystem']='Das Ampelsystem ist ein ERINNERUNGS- und BESTÄTIGUNGSSYSTEM, welches Sie auf ausstehende Aufgaben aufmerksam machen soll.<br/>Die Ampel überprüft NICHT, ob die Aufgabe tatsächlich erledigt wurde. Weitere Details entnehmen Sie bitte dem CIS-Handbuch';
|
||||
$this->phrasen['tools/waehlenSieEineOEoderAmpel']='Bitte wählen Sie ein Organisationseinheit und/oder eine Ampel aus dem Dropdown';
|
||||
$this->phrasen['tools/uebersichtLeitung']='Ampel-Übersicht für LeiterInnen';
|
||||
|
||||
//Software fuer Lehre -> Softgrid
|
||||
$this->phrasen['tools/applikationsliste']='Applikationsliste';
|
||||
$this->phrasen['tools/naehereInformationenfindenSieUnter']='Nähere Informationen zu Softgrid sowie eine Installationsanleitung finden Sie unter "Infrastruktur - SoftGrid"';
|
||||
$this->phrasen['tools/einzelanwendung']='Einzelanwendung';
|
||||
$this->phrasen['tools/softwarepaket']='Softwarepaket';
|
||||
$this->phrasen['tools/datei']='Datei ';
|
||||
$this->phrasen['tools/wurdeNichtGefunden']=' wurde nicht gefunden!';
|
||||
$this->phrasen['tools/fehlerBeimLesenDerDatei']='Fehler beim Lesen der Datei ';
|
||||
$this->phrasen['tools/keineDatenGefunden']='Keine Daten gefunden';
|
||||
|
||||
//Suche
|
||||
$this->phrasen['tools/suche']='Globale Suche';
|
||||
$this->phrasen['tools/content']='Content';
|
||||
$this->phrasen['tools/suchbegriff']='Suchbegriff';
|
||||
$this->phrasen['tools/esWurdenMehrAlsXDokumenteGefunden']='Es wurden mehr als 40 Dokumente zu Ihrem Suchbegriff gefunden. Bitte spezifizieren Sie Ihre Suche.';
|
||||
$this->phrasen['tools/esWurdenMehrAlsXPersonenGefunden']='Es wurden mehr als 20 Personen zu Ihrem Suchbegriff gefunden. Bitte spezifizieren Sie Ihre Suche.';
|
||||
$this->phrasen['tools/esWurdenMehrAlsXInhalteGefunden']='Es wurden mehr als 20 Seiten zu Ihrem Suchbegriff gefunden. Bitte spezifizieren Sie Ihre Suche.';
|
||||
$this->phrasen['tools/aktuelleVersion']='Aktuelle Version';
|
||||
$this->phrasen['tools/telefonklappe']='Telefonklappe';
|
||||
$this->phrasen['tools/reservieren']='Reservieren';
|
||||
$this->phrasen['tools/maxPersonen']='Max. Personen';
|
||||
$this->phrasen['tools/esWurdenKeineErgebnisseGefunden']='Es wurden keine Ergebnisse gefunden.';
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user