mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -67,7 +67,7 @@
|
||||
echo $lockedby;
|
||||
if ($origin_page == 'index'): ?>
|
||||
|
||||
<a href="unlockPerson/<?php echo $stammdaten->person_id; ?>?fhc_controller_id=<?php echo $fhc_controller_id; ?>">
|
||||
<a href="unlockPerson/<?php echo $stammdaten->person_id; ?>">
|
||||
<i class="fa fa-sign-out"></i> <?php echo ucfirst($this->p->t('ui', 'freigeben')) ?>
|
||||
</a>
|
||||
<?php endif; ?>
|
||||
|
||||
+415
-401
@@ -1,406 +1,420 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (C) 2008 Technikum-Wien
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
/*
|
||||
* Erstellt eine Liste mit den Noten des eingeloggten Studenten
|
||||
* das betreffende Studiensemester kann ausgewaehlt werden
|
||||
*/
|
||||
require_once ('../../../config/cis.config.inc.php');
|
||||
require_once ('../../../config/global.config.inc.php');
|
||||
require_once ('../../../include/functions.inc.php');
|
||||
require_once ('../../../include/studiensemester.class.php');
|
||||
require_once ('../../../include/datum.class.php');
|
||||
require_once ('../../../include/note.class.php');
|
||||
require_once ('../../../include/phrasen.class.php');
|
||||
require_once ('../../../include/studiengang.class.php');
|
||||
require_once ('../../../include/lehrveranstaltung.class.php');
|
||||
require_once ('../../../include/pruefung.class.php');
|
||||
require_once ('../../../include/benutzerberechtigung.class.php');
|
||||
require_once ('../../../include/prestudent.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if (! $db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
|
||||
if (isset($_GET['stsem']))
|
||||
$stsem = $_GET['stsem'];
|
||||
else
|
||||
$stsem = '';
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<?php
|
||||
/*
|
||||
* Copyright (C) 2008 Technikum-Wien
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
/*
|
||||
* Erstellt eine Liste mit den Noten des eingeloggten Studenten
|
||||
* das betreffende Studiensemester kann ausgewaehlt werden
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/note.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/studienordnung.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/pruefung.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if (! $db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
|
||||
if (isset($_GET['stsem']))
|
||||
$stsem = $_GET['stsem'];
|
||||
else
|
||||
$stsem = '';
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<script type="text/javascript" src="../../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
|
||||
<title>' . $p->t('tools/leistungsbeurteilung') . '</title>
|
||||
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
function MM_jumpMenu(targ, selObj, restore)
|
||||
{
|
||||
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
|
||||
|
||||
if(restore)
|
||||
{
|
||||
selObj.selectedIndex = 0;
|
||||
}
|
||||
};
|
||||
|
||||
// Add parser through the tablesorter addParser method for sorting Studiensemester
|
||||
$.tablesorter.addParser({
|
||||
// set a unique id
|
||||
id: "studiensemester",
|
||||
is: function(s) {
|
||||
// return false so this parser is not auto detected
|
||||
return false;
|
||||
},
|
||||
format: function(s) {
|
||||
// format data for normalization
|
||||
var result = s.substr(2) + s.substr(0, 2);
|
||||
return result;
|
||||
},
|
||||
// set type, either numeric or text
|
||||
type: "text"
|
||||
});
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#notenliste").tablesorter(
|
||||
{
|
||||
headers: {
|
||||
1: {
|
||||
sorter:"studiensemester"
|
||||
}},
|
||||
' . ($stsem == 'alle' ? 'sortList: [[1,0],[4,0]],' : 'sortList: [[3,0]],') . '
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>' . $p->t('tools/leistungsbeurteilung') . '</h1>';
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
if (isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if ($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$user = $_GET['uid'];
|
||||
$getParam = "&uid=" . $user;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
else
|
||||
$getParam = '';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$error = '';
|
||||
|
||||
if (! check_student($user))
|
||||
{
|
||||
$error .= $p->t('tools/mussAlsStudentEingeloggtSein');
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT vw_student.vorname, vw_student.nachname, vw_student.prestudent_id, tbl_studiengang.studiengang_kz
|
||||
FROM public.tbl_studiengang JOIN campus.vw_student USING (studiengang_kz)
|
||||
WHERE campus.vw_student.uid = " . $db->db_add_param($user) . ";";
|
||||
|
||||
if (! $result = $db->db_query($qry))
|
||||
die($p->t('tools/studentWurdeNichtGefunden'));
|
||||
else
|
||||
{
|
||||
$row = $db->db_fetch_object($result);
|
||||
|
||||
$vorname = $row->vorname;
|
||||
$nachname = $row->nachname;
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->load($row->studiengang_kz);
|
||||
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
|
||||
}
|
||||
|
||||
$notenarr = array();
|
||||
$note = new note();
|
||||
$note->getAll();
|
||||
foreach ($note->result as $row)
|
||||
{
|
||||
$notenarr[$row->note]['bezeichnung'] = $row->bezeichnung;
|
||||
$notenarr[$row->note]['notenwert'] = $row->notenwert;
|
||||
}
|
||||
|
||||
// Aktuelles Studiensemester ermitteln
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
if ($stsem == '')
|
||||
$stsem = $stsem_obj->getaktorNext();
|
||||
|
||||
// Erstes und letztes Studiensemester mit Studenten-Status ermitteln
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Student');
|
||||
$firstStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
$prestudent->getLastStatus($prestudent_id, null, 'Student');
|
||||
$lastStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
|
||||
$stsem_obj->getStudiensemesterBetween($firstStudiensemester, $lastStudiensemester);
|
||||
|
||||
echo "<br />";
|
||||
echo "<b>" . $p->t('global/name') . ":</b> $vorname $nachname<br />";
|
||||
echo "<b>" . $p->t('global/studiengang') . ":</b> $stg_name<br />";
|
||||
echo "<b>" . $p->t('global/studiensemester') . "</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
|
||||
echo "<OPTION value='notenliste.php?stsem=alle" . $getParam . "'>alle Semester</OPTION>";
|
||||
foreach ($stsem_obj->studiensemester as $semrow)
|
||||
{
|
||||
if ($stsem == $semrow->studiensemester_kurzbz)
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "' selected>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
else
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "'>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
}
|
||||
echo "</SELECT><br />";
|
||||
|
||||
// echo "Datum: ".date('d.m.Y')."<br />";
|
||||
echo "<br />";
|
||||
|
||||
// Lehrveranstaltungen und Noten holen
|
||||
if ($stsem != "alle")
|
||||
{
|
||||
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . "
|
||||
AND (tbl_lvgesamtnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . " OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
|
||||
}
|
||||
else
|
||||
$sqlFilter = "";
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
|
||||
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
|
||||
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
|
||||
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum,
|
||||
tbl_zeugnisnote.studiensemester_kurzbz AS studiensemester_zeugnis, tbl_lvgesamtnote.studiensemester_kurzbz AS studiensemester_lvnote,
|
||||
tbl_lehrveranstaltung.zeugnis, tbl_lehrveranstaltung.ects
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
|
||||
LEFT OUTER JOIN
|
||||
campus.tbl_lvgesamtnote
|
||||
USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz)
|
||||
WHERE
|
||||
tbl_zeugnisnote.student_uid = " . $db->db_add_param($user) . $sqlFilter . "
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id
|
||||
ORDER BY bezeichnung";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
// Tabelle anzeigen
|
||||
$tbl = "<table class='tablesorter' id='notenliste' style='width: auto;'>";
|
||||
$tblHead = "<thead>
|
||||
<tr class='liste'>
|
||||
<th>" . $p->t('global/lehrveranstaltung') . "</th>";
|
||||
if ($stsem == "alle")
|
||||
$tblHead .= "<th>" . $p->t('global/studiensemester') . "</th>";
|
||||
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/lvNote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= " <th>" . $p->t('benotungstool/zeugnisnote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= "
|
||||
<th>" . $p->t('tools/benotungsdatumDerZeugnisnote') . "</th>
|
||||
<th>" . $p->t('benotungstool/pruefung') . "</th>
|
||||
</tr>
|
||||
</thead>";
|
||||
$tblBody = "<tbody>";
|
||||
$i = 0;
|
||||
$legende = false;
|
||||
$notenSummenArray = array();
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($row->lehrveranstaltung_id);
|
||||
|
||||
$i ++;
|
||||
$tblBody .= "<tr><td>" . $lv_obj->bezeichnung_arr[$sprache] . ($lv_obj->lehrform_kurzbz != "" && $lv_obj->lehrform_kurzbz != " - " ? " (" . $lv_obj->lehrform_kurzbz . ")" : "") . "</td>";
|
||||
if ($stsem == "alle")
|
||||
$tblBody .= "<td>" . ($row->studiensemester_zeugnis != '' ? $row->studiensemester_zeugnis : $row->studiensemester_lvnote) . "</th>";
|
||||
|
||||
$tblBody .= "<td>";
|
||||
|
||||
// Nur freigegebene Noten anzeigen
|
||||
if ($row->freigabedatum >= $row->lvbenotungsdatum)
|
||||
{
|
||||
if (isset($notenarr[$row->lvnote]))
|
||||
$tblBody .= $notenarr[$row->lvnote]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->lvnote;
|
||||
|
||||
// Nur Noten, die aufs Zeugnis gedruckt werden für Durchschnittsberechnung addieren
|
||||
if ($row->zeugnis == true)
|
||||
{
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['notenwert'] = (isset($notenarr[$row->note]['notenwert']) ? $notenarr[$row->note]['notenwert'] : '');
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['ects'] = $row->ects;
|
||||
}
|
||||
}
|
||||
$tblBody .= "</td>";
|
||||
|
||||
// LV Gesamtnote Punkte
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$lvpunkte = ($row->lvpunkte != '' ? (float) $row->lvpunkte : '');
|
||||
$tblBody .= "<td>" . $lvpunkte . "</td>";
|
||||
}
|
||||
|
||||
if ($row->note != $row->lvnote && $row->lvnote != NULL)
|
||||
{
|
||||
$markier = " style='background-color: #FFD999;'";
|
||||
$legende = true;
|
||||
}
|
||||
else
|
||||
$markier = "";
|
||||
$tblBody .= "<td " . $markier . ">";
|
||||
|
||||
if (isset($notenarr[$row->note]))
|
||||
$tblBody .= $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->note;
|
||||
|
||||
$tblBody .= "</td>";
|
||||
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$punkte = ($row->punkte != '' ? ((float) $row->punkte) : '');
|
||||
$tblBody .= "<td>" . $punkte . "</td>";
|
||||
}
|
||||
|
||||
$tblBody .= '<td>' . $datum_obj->formatDatum($row->benotungsdatum, 'Y-m-d') . '</td>';
|
||||
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungen($user, null, $row->lehrveranstaltung_id, $stsem);
|
||||
|
||||
if (count($pruefung->result) > 0)
|
||||
{
|
||||
$tblBody .= '<td>';
|
||||
foreach ($pruefung->result as $row)
|
||||
{
|
||||
if (isset($notenarr[$row->note]))
|
||||
$note = $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$note = $row->note;
|
||||
|
||||
if ($row->punkte != '')
|
||||
$punkte = ' (' . (float) $row->punkte . ')';
|
||||
else
|
||||
$punkte = '';
|
||||
|
||||
$tblBody .= $row->pruefungstyp_beschreibung . ' ' . $datum_obj->formatDatum($row->datum, 'd.m.Y') . ' ' . $note . $punkte . '<br>';
|
||||
}
|
||||
$tblBody .= '</td>';
|
||||
}
|
||||
else
|
||||
$tblBody .= '<td></td>';
|
||||
|
||||
$tblBody .= "</tr>";
|
||||
}
|
||||
// Durchschnitt und gewichteten Durchschnitt berechnen
|
||||
$notenSumme = 0;
|
||||
$notenSummeGewichtet = 0;
|
||||
$ectsSumme = 0;
|
||||
$anzahlLv = 0;
|
||||
foreach ($notenSummenArray AS $key => $value)
|
||||
{
|
||||
if ($value['notenwert'] != '')
|
||||
{
|
||||
$anzahlLv++;
|
||||
$notenSumme += $value['notenwert'];
|
||||
$ectsSumme += $value['ects'];
|
||||
$notenSummeGewichtet += $value['notenwert'] * $value['ects'];
|
||||
}
|
||||
}
|
||||
|
||||
$tblBody .= "</tbody>";
|
||||
$tblFoot = "<tfoot>";
|
||||
|
||||
if ($anzahlLv != 0)
|
||||
$notenDurchschnitt = round($notenSumme / $anzahlLv, 2);
|
||||
else
|
||||
$notenDurchschnitt = 0;
|
||||
|
||||
if ($ectsSumme != 0)
|
||||
$notenDurchschnittGewichtet = round($notenSummeGewichtet / $ectsSumme, 2);
|
||||
else
|
||||
$notenDurchschnittGewichtet = 0;
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/notendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnitt.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/gewichteterNotendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnittGewichtet.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= "</tfoot>";
|
||||
|
||||
$tbl .= $tblHead.$tblFoot.$tblBody;
|
||||
|
||||
$tbl .= "<table><tbody><tr><td width='20' style='text-align: right;'>*</td><td>" . $p->t('tools/legendeNotendurchschnitt') . "</td></tr>";
|
||||
$tbl .= "<tr><td width='20' style='text-align: right;'>**</td><td>" . $p->t('tools/legendeGewichteterNotendurchschnitt') . "</td></tr>";
|
||||
if ($legende)
|
||||
{
|
||||
$tbl .= "<tr><td width='20' style='background-color: #FFD999;'></td><td>" . $p->t('tools/hinweistextMarkierung') . "</td></tr>";
|
||||
}
|
||||
$tbl .= "</tbody></table></table>";
|
||||
if ($i == 0)
|
||||
echo $p->t('tools/nochKeineBeurteilungEingetragen');
|
||||
else
|
||||
{
|
||||
$tbl .= "</table><br><br><br>";
|
||||
echo $tbl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error .= $p->t('tools/fehlerBeimAuslesenDerNoten');
|
||||
}
|
||||
}
|
||||
echo $error;
|
||||
echo '</body>
|
||||
</html>';
|
||||
?>
|
||||
<script type="text/javascript" src="../../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
|
||||
<title>' . $p->t('tools/leistungsbeurteilung') . '</title>
|
||||
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
function MM_jumpMenu(targ, selObj, restore)
|
||||
{
|
||||
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
|
||||
|
||||
if(restore)
|
||||
{
|
||||
selObj.selectedIndex = 0;
|
||||
}
|
||||
};
|
||||
|
||||
// Add parser through the tablesorter addParser method for sorting Studiensemester
|
||||
$.tablesorter.addParser({
|
||||
// set a unique id
|
||||
id: "studiensemester",
|
||||
is: function(s) {
|
||||
// return false so this parser is not auto detected
|
||||
return false;
|
||||
},
|
||||
format: function(s) {
|
||||
// format data for normalization
|
||||
var result = s.substr(2) + s.substr(0, 2);
|
||||
return result;
|
||||
},
|
||||
// set type, either numeric or text
|
||||
type: "text"
|
||||
});
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#notenliste").tablesorter(
|
||||
{
|
||||
headers: {
|
||||
1: {
|
||||
sorter:"studiensemester"
|
||||
}},
|
||||
' . ($stsem == 'alle' ? 'sortList: [[1,0],[4,0]],' : 'sortList: [[3,0]],') . '
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>' . $p->t('tools/leistungsbeurteilung') . '</h1>';
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
if (isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if ($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$user = $_GET['uid'];
|
||||
$getParam = "&uid=" . $user;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
else
|
||||
$getParam = '';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$error = '';
|
||||
|
||||
if (! check_student($user))
|
||||
{
|
||||
$error .= $p->t('tools/mussAlsStudentEingeloggtSein');
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT vw_student.vorname, vw_student.nachname, vw_student.prestudent_id, tbl_studiengang.studiengang_kz
|
||||
FROM public.tbl_studiengang JOIN campus.vw_student USING (studiengang_kz)
|
||||
WHERE campus.vw_student.uid = " . $db->db_add_param($user) . ";";
|
||||
|
||||
if (! $result = $db->db_query($qry))
|
||||
die($p->t('tools/studentWurdeNichtGefunden'));
|
||||
else
|
||||
{
|
||||
$row = $db->db_fetch_object($result);
|
||||
|
||||
$vorname = $row->vorname;
|
||||
$nachname = $row->nachname;
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->load($row->studiengang_kz);
|
||||
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
if ($prestudent->getLastStatus($prestudent_id))
|
||||
{
|
||||
$studienplan_id = $prestudent->studienplan_id;
|
||||
$studienordnung = new studienordnung();
|
||||
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
|
||||
{
|
||||
$studiengangbezeichnung_sto = $sprache === 'English' ? $studienordnung->__get('studiengangbezeichnung_englisch') : $studienordnung->__get('studiengangbezeichnung');
|
||||
}
|
||||
}
|
||||
|
||||
$studiengang_bezeichnung = empty($studiengangbezeichnung_sto) ? $stg_name : $studiengangbezeichnung_sto;
|
||||
}
|
||||
|
||||
$notenarr = array();
|
||||
$note = new note();
|
||||
$note->getAll();
|
||||
foreach ($note->result as $row)
|
||||
{
|
||||
$notenarr[$row->note]['bezeichnung'] = $row->bezeichnung;
|
||||
$notenarr[$row->note]['notenwert'] = $row->notenwert;
|
||||
}
|
||||
|
||||
// Aktuelles Studiensemester ermitteln
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
if ($stsem == '')
|
||||
$stsem = $stsem_obj->getaktorNext();
|
||||
|
||||
// Erstes und letztes Studiensemester mit Studenten-Status ermitteln
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Student');
|
||||
$firstStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
$prestudent->getLastStatus($prestudent_id, null, 'Student');
|
||||
$lastStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
|
||||
$stsem_obj->getStudiensemesterBetween($firstStudiensemester, $lastStudiensemester);
|
||||
|
||||
echo "<br />";
|
||||
echo "<b>".$p->t('global/name').":</b> $vorname $nachname<br />";
|
||||
echo "<b>".$p->t('global/studiengang').":</b> $studiengang_bezeichnung<br />";
|
||||
echo "<b>".$p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
|
||||
echo "<OPTION value='notenliste.php?stsem=alle".$getParam."'>alle Semester</OPTION>";
|
||||
foreach ($stsem_obj->studiensemester as $semrow)
|
||||
{
|
||||
if ($stsem == $semrow->studiensemester_kurzbz)
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "' selected>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
else
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "'>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
}
|
||||
echo "</SELECT><br />";
|
||||
|
||||
// echo "Datum: ".date('d.m.Y')."<br />";
|
||||
echo "<br />";
|
||||
|
||||
// Lehrveranstaltungen und Noten holen
|
||||
if ($stsem != "alle")
|
||||
{
|
||||
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . "
|
||||
AND (tbl_lvgesamtnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . " OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
|
||||
}
|
||||
else
|
||||
$sqlFilter = "";
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
|
||||
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
|
||||
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
|
||||
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum,
|
||||
tbl_zeugnisnote.studiensemester_kurzbz AS studiensemester_zeugnis, tbl_lvgesamtnote.studiensemester_kurzbz AS studiensemester_lvnote,
|
||||
tbl_lehrveranstaltung.zeugnis, tbl_lehrveranstaltung.ects
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
|
||||
LEFT OUTER JOIN
|
||||
campus.tbl_lvgesamtnote
|
||||
USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz)
|
||||
WHERE
|
||||
tbl_zeugnisnote.student_uid = " . $db->db_add_param($user) . $sqlFilter . "
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id
|
||||
ORDER BY bezeichnung";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
// Tabelle anzeigen
|
||||
$tbl = "<table class='tablesorter' id='notenliste' style='width: auto;'>";
|
||||
$tblHead = "<thead>
|
||||
<tr class='liste'>
|
||||
<th>" . $p->t('global/lehrveranstaltung') . "</th>";
|
||||
if ($stsem == "alle")
|
||||
$tblHead .= "<th>" . $p->t('global/studiensemester') . "</th>";
|
||||
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/lvNote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= " <th>" . $p->t('benotungstool/zeugnisnote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= "
|
||||
<th>" . $p->t('tools/benotungsdatumDerZeugnisnote') . "</th>
|
||||
<th>" . $p->t('benotungstool/pruefung') . "</th>
|
||||
</tr>
|
||||
</thead>";
|
||||
$tblBody = "<tbody>";
|
||||
$i = 0;
|
||||
$legende = false;
|
||||
$notenSummenArray = array();
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($row->lehrveranstaltung_id);
|
||||
|
||||
$i ++;
|
||||
$tblBody .= "<tr><td>" . $lv_obj->bezeichnung_arr[$sprache] . ($lv_obj->lehrform_kurzbz != "" && $lv_obj->lehrform_kurzbz != " - " ? " (" . $lv_obj->lehrform_kurzbz . ")" : "") . "</td>";
|
||||
if ($stsem == "alle")
|
||||
$tblBody .= "<td>" . ($row->studiensemester_zeugnis != '' ? $row->studiensemester_zeugnis : $row->studiensemester_lvnote) . "</th>";
|
||||
|
||||
$tblBody .= "<td>";
|
||||
|
||||
// Nur freigegebene Noten anzeigen
|
||||
if ($row->freigabedatum >= $row->lvbenotungsdatum)
|
||||
{
|
||||
if (isset($notenarr[$row->lvnote]))
|
||||
$tblBody .= $notenarr[$row->lvnote]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->lvnote;
|
||||
|
||||
// Nur Noten, die aufs Zeugnis gedruckt werden für Durchschnittsberechnung addieren
|
||||
if ($row->zeugnis == true)
|
||||
{
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['notenwert'] = (isset($notenarr[$row->note]['notenwert']) ? $notenarr[$row->note]['notenwert'] : '');
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['ects'] = $row->ects;
|
||||
}
|
||||
}
|
||||
$tblBody .= "</td>";
|
||||
|
||||
// LV Gesamtnote Punkte
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$lvpunkte = ($row->lvpunkte != '' ? (float) $row->lvpunkte : '');
|
||||
$tblBody .= "<td>" . $lvpunkte . "</td>";
|
||||
}
|
||||
|
||||
if ($row->note != $row->lvnote && $row->lvnote != NULL)
|
||||
{
|
||||
$markier = " style='background-color: #FFD999;'";
|
||||
$legende = true;
|
||||
}
|
||||
else
|
||||
$markier = "";
|
||||
$tblBody .= "<td " . $markier . ">";
|
||||
|
||||
if (isset($notenarr[$row->note]))
|
||||
$tblBody .= $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->note;
|
||||
|
||||
$tblBody .= "</td>";
|
||||
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$punkte = ($row->punkte != '' ? ((float) $row->punkte) : '');
|
||||
$tblBody .= "<td>" . $punkte . "</td>";
|
||||
}
|
||||
|
||||
$tblBody .= '<td>' . $datum_obj->formatDatum($row->benotungsdatum, 'Y-m-d') . '</td>';
|
||||
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungen($user, null, $row->lehrveranstaltung_id, $stsem);
|
||||
|
||||
if (count($pruefung->result) > 0)
|
||||
{
|
||||
$tblBody .= '<td>';
|
||||
foreach ($pruefung->result as $row)
|
||||
{
|
||||
if (isset($notenarr[$row->note]))
|
||||
$note = $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$note = $row->note;
|
||||
|
||||
if ($row->punkte != '')
|
||||
$punkte = ' (' . (float) $row->punkte . ')';
|
||||
else
|
||||
$punkte = '';
|
||||
|
||||
$tblBody .= $row->pruefungstyp_beschreibung . ' ' . $datum_obj->formatDatum($row->datum, 'd.m.Y') . ' ' . $note . $punkte . '<br>';
|
||||
}
|
||||
$tblBody .= '</td>';
|
||||
}
|
||||
else
|
||||
$tblBody .= '<td></td>';
|
||||
|
||||
$tblBody .= "</tr>";
|
||||
}
|
||||
// Durchschnitt und gewichteten Durchschnitt berechnen
|
||||
$notenSumme = 0;
|
||||
$notenSummeGewichtet = 0;
|
||||
$ectsSumme = 0;
|
||||
$anzahlLv = 0;
|
||||
foreach ($notenSummenArray AS $key => $value)
|
||||
{
|
||||
if ($value['notenwert'] != '')
|
||||
{
|
||||
$anzahlLv++;
|
||||
$notenSumme += $value['notenwert'];
|
||||
$ectsSumme += $value['ects'];
|
||||
$notenSummeGewichtet += $value['notenwert'] * $value['ects'];
|
||||
}
|
||||
}
|
||||
|
||||
$tblBody .= "</tbody>";
|
||||
$tblFoot = "<tfoot>";
|
||||
|
||||
if ($anzahlLv != 0)
|
||||
$notenDurchschnitt = round($notenSumme / $anzahlLv, 2);
|
||||
else
|
||||
$notenDurchschnitt = 0;
|
||||
|
||||
if ($ectsSumme != 0)
|
||||
$notenDurchschnittGewichtet = round($notenSummeGewichtet / $ectsSumme, 2);
|
||||
else
|
||||
$notenDurchschnittGewichtet = 0;
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/notendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnitt.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/gewichteterNotendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnittGewichtet.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= "</tfoot>";
|
||||
|
||||
$tbl .= $tblHead.$tblFoot.$tblBody;
|
||||
|
||||
$tbl .= "<table><tbody><tr><td width='20' style='text-align: right;'>*</td><td>" . $p->t('tools/legendeNotendurchschnitt') . "</td></tr>";
|
||||
$tbl .= "<tr><td width='20' style='text-align: right;'>**</td><td>" . $p->t('tools/legendeGewichteterNotendurchschnitt') . "</td></tr>";
|
||||
if ($legende)
|
||||
{
|
||||
$tbl .= "<tr><td width='20' style='background-color: #FFD999;'></td><td>" . $p->t('tools/hinweistextMarkierung') . "</td></tr>";
|
||||
}
|
||||
$tbl .= "</tbody></table></table>";
|
||||
if ($i == 0)
|
||||
echo $p->t('tools/nochKeineBeurteilungEingetragen');
|
||||
else
|
||||
{
|
||||
$tbl .= "</table><br><br><br>";
|
||||
echo $tbl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error .= $p->t('tools/fehlerBeimAuslesenDerNoten');
|
||||
}
|
||||
}
|
||||
echo $error;
|
||||
echo '</body>
|
||||
</html>';
|
||||
?>
|
||||
|
||||
@@ -25,6 +25,7 @@ require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/globals.inc.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/studienordnung.class.php');
|
||||
require_once('../../../include/person.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/betriebsmittel.class.php');
|
||||
@@ -34,6 +35,7 @@ require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/betriebsmittel_betriebsmittelstatus.class.php');
|
||||
require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/mitarbeiter.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
require_once('../../../include/student.class.php');
|
||||
require_once('../../../include/kontakt.class.php');
|
||||
require_once('../../../include/fotostatus.class.php');
|
||||
@@ -291,8 +293,21 @@ if ($type == 'student' && (!defined('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN') ||
|
||||
{
|
||||
$studiengang->load($user->studiengang_kz);
|
||||
|
||||
$prestudent = new prestudent($user->prestudent_id);
|
||||
if ($prestudent->getLastStatus($user->prestudent_id))
|
||||
{
|
||||
$studienplan_id = $prestudent->studienplan_id;
|
||||
$studienordnung = new studienordnung();
|
||||
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
|
||||
{
|
||||
$studiengangbezeichnung_sto = $studienordnung->__get('studiengangbezeichnung');
|
||||
}
|
||||
}
|
||||
|
||||
$studiengang_bezeichnung = empty($studiengangbezeichnung_sto) ? $studiengang->bezeichnung : $studiengangbezeichnung_sto;
|
||||
|
||||
echo "
|
||||
".$p->t('global/studiengang').": $studiengang->bezeichnung<br>
|
||||
".$p->t('global/studiengang').": $studiengang_bezeichnung<br>
|
||||
".$p->t('global/semester').": $user->semester <a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a><br>
|
||||
".$p->t('global/verband').": $user->verband ".($user->verband!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester&verband=$user->verband\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a>":"")."<br>
|
||||
".$p->t('global/gruppe').": $user->gruppe ".($user->gruppe!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester&verband=$user->verband&grp=$user->gruppe\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a>":"")."<br>";
|
||||
|
||||
@@ -91,22 +91,27 @@ $fieldheadings = array(
|
||||
if ($rechte->isBerechtigt('basis/servicezeitaufzeichnung'))
|
||||
{
|
||||
$za_simple = 0;
|
||||
$activities = array('Design', 'Operativ', 'Betrieb', 'Pause', 'LehreIntern', 'LehreExtern', 'Arztbesuch', 'Dienstreise', 'Behoerde', 'Ersatzruhe');
|
||||
$activities = array('Design', 'Operativ', 'Betrieb', 'Pause', 'LehreIntern', 'LehreExtern', 'Arztbesuch', 'DienstreiseMT', 'Behoerde', 'Ersatzruhe');
|
||||
}
|
||||
else
|
||||
{
|
||||
$za_simple = 1;
|
||||
$activities = array('Arbeit', 'Pause', 'LehreIntern', 'LehreExtern', 'Arztbesuch', 'Dienstreise', 'Behoerde', 'Ersatzruhe');
|
||||
$activities = array('Arbeit', 'Pause', 'LehreIntern', 'LehreExtern', 'Arztbesuch', 'DienstreiseMT', 'Behoerde', 'Ersatzruhe');
|
||||
}
|
||||
|
||||
$activities_str = "'".implode("','", $activities)."'";
|
||||
|
||||
// definiert bis zu welchem Datum die Eintragung nicht mehr möglich ist
|
||||
if (defined('CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS') && CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS != '')
|
||||
$zasperre = new zeitaufzeichnung();
|
||||
if ($sperrdat = $zasperre->getEintragungGesperrtBisForUser($user))
|
||||
$gesperrt_bis = $sperrdat;
|
||||
else if (defined('CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS') && CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS != '')
|
||||
$gesperrt_bis = CIS_ZEITAUFZEICHNUNG_GESPERRT_BIS;
|
||||
else
|
||||
$gesperrt_bis = '2015-08-31';
|
||||
|
||||
//var_dump($gesperrt_bis);
|
||||
|
||||
$sperrdatum = date('c', strtotime($gesperrt_bis));
|
||||
|
||||
// Uses urlencode to avoid XSS issues
|
||||
@@ -415,9 +420,13 @@ echo '
|
||||
bisDatum=Jahr+\'\'+Monat+\'\'+Tag+\'\'+Stunde+\'\'+Minute;
|
||||
diff=bisDatum-vonDatum;
|
||||
|
||||
a = document.getElementById("aktivitaet");
|
||||
akt = a.options[a.selectedIndex].value;
|
||||
//alert(akt);
|
||||
|
||||
if (bisDatum>vonDatum)
|
||||
{
|
||||
if (diff>9999)
|
||||
if (diff>9999 && akt != "DienstreiseMT")
|
||||
{
|
||||
Check = confirm("'.$p->t("zeitaufzeichnung/zeitraumAuffallendHoch").'");
|
||||
document.getElementById("bis_datum").focus();
|
||||
@@ -741,7 +750,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
// An der FHTW wird ins Moodle verlinkt
|
||||
if (CAMPUS_NAME == 'FH Technikum Wien')
|
||||
echo '<p><a href="https://moodle.technikum-wien.at/course/view.php?id=6251" target="_blank">'.$p->t("zeitaufzeichnung/handbuchZeitaufzeichnung").'</a></p>';
|
||||
else
|
||||
else
|
||||
echo '<p><a href="../../../cms/dms.php?id='.$p->t("dms_link/handbuchZeitaufzeichnung").'" target="_blank">'.$p->t("zeitaufzeichnung/handbuchZeitaufzeichnung").'</a></p>';
|
||||
}
|
||||
if ($p->t("dms_link/fiktiveNormalarbeitszeit")!='')
|
||||
@@ -904,7 +913,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
// $qry = "SELECT * FROM fue.tbl_aktivitaet where sort != 5 or sort is null ORDER by sort,beschreibung";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
echo '<SELECT name="aktivitaet">';
|
||||
echo '<SELECT name="aktivitaet" id="aktivitaet">';
|
||||
if ($za_simple == 0)
|
||||
echo '<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
//else
|
||||
@@ -1077,6 +1086,11 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
}
|
||||
|
||||
$summe=0;
|
||||
$dr = new zeitaufzeichnung();
|
||||
$dr->getDienstreisenUser($user);
|
||||
$dr_arr = $dr->result;
|
||||
|
||||
//var_dump($dr->result);
|
||||
|
||||
if(count($za->result)>0)
|
||||
{
|
||||
@@ -1108,6 +1122,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
$wochensaldo = '00:00';
|
||||
$pflichtpause = false;
|
||||
|
||||
|
||||
foreach($za->result as $row)
|
||||
{
|
||||
$datumtag = $datum_obj->formatDatum($row->datum, 'Y-m-d');
|
||||
@@ -1119,6 +1134,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
$tag = $datumtag;
|
||||
if($tag!=$datumtag)
|
||||
{
|
||||
|
||||
//if ($row->uid)
|
||||
//{
|
||||
if ($datum->formatDatum($tag,'N') == '6' || $datum->formatDatum($tag,'N') == '7')
|
||||
@@ -1188,9 +1204,11 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
<td '.$style.' align="right"><b>'.$tagessaldo.$erstr.'</b><br>'.date('H:i', ($pausesumme-3600)).'</td>
|
||||
<td '.$style.' colspan="3" align="right">';
|
||||
if ($tag > $sperrdatum)
|
||||
echo '<a href="?von_datum='.$datum->formatDatum($tag,'d.m.Y').'&bis_datum='.$datum->formatDatum($tag,'d.m.Y').'" class="item"><-</a>';
|
||||
echo '<a href="?von_datum='.$datum->formatDatum($tag,'d.m.Y').'&bis_datum='.$datum->formatDatum($tag,'d.m.Y').'" class="item"><-</a>';
|
||||
|
||||
echo '</td></tr>';
|
||||
|
||||
|
||||
echo '</td>';
|
||||
|
||||
$tag=$datumtag;
|
||||
$tagessumme='00:00';
|
||||
@@ -1207,6 +1225,9 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
//{
|
||||
// echo '<tr><td style="background-color:#DCE4EF; font-size: 8pt;" colspan="13"><b>'.$datum->formatDatum($row->datum,'D d.m.Y').'</b></b> <span id="tag_'.$datum->formatDatum($row->datum,'d_m_Y').'"></span></td></tr>';
|
||||
//}
|
||||
|
||||
|
||||
|
||||
}
|
||||
// Nach jeder Woche eine Summenzeile einfuegen und eine neue Tabelle beginnen
|
||||
$datumwoche = $datum_obj->formatDatum($row->datum, 'W');
|
||||
@@ -1251,6 +1272,37 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
$ersumme = '00:00';
|
||||
$ersumme_woche = '00:00';
|
||||
}
|
||||
|
||||
// Diestreisen NEU
|
||||
if (array_key_exists($datumtag, $dr_arr))
|
||||
{
|
||||
$colspan=($za_simple)?4:7;
|
||||
echo '<tr style="background-color: #aabb99"><td colspan="'.$colspan.'">'.$p->t('zeitaufzeichnung/dienstreise');
|
||||
if (array_key_exists('start', $dr_arr[$datumtag]) && !array_key_exists('ende', $dr_arr[$datumtag]))
|
||||
echo ' '.$p->t('global/beginn');
|
||||
if (array_key_exists('ende', $dr_arr[$datumtag]) && !array_key_exists('start', $dr_arr[$datumtag]))
|
||||
echo ' '.$p->t('global/ende');
|
||||
echo '</td>';
|
||||
echo '<td>';
|
||||
if (array_key_exists('start', $dr_arr[$datumtag]))
|
||||
echo $dr_arr[$datumtag]['start'];
|
||||
echo '</td><td>';
|
||||
if (array_key_exists('ende', $dr_arr[$datumtag]))
|
||||
echo $dr_arr[$datumtag]['ende'];
|
||||
echo '</td>';
|
||||
echo '<td colspan="2"></td>';
|
||||
echo '<td>';
|
||||
// if(!isset($_GET['filter']) && ($datumtag > $sperrdatum))
|
||||
// echo '<a href="'.$_SERVER['PHP_SELF'].'?type=edit&zeitaufzeichnung_id='.$dr_arr[$datumtag]['id'].'" class="Item">'.$p->t("global/bearbeiten").'</a>';
|
||||
echo "</td>\n";
|
||||
echo "<td>";
|
||||
if(!isset($_GET['filter']) && ($datumtag > $sperrdatum))
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?type=delete&zeitaufzeichnung_id='.$dr_arr[$datumtag]['id'].'" class="Item" onclick="return confdel()">'.$p->t("global/loeschen").'</a>';
|
||||
echo "</td>\n";
|
||||
echo '</tr>';
|
||||
unset($dr_arr[$datumtag]);
|
||||
}
|
||||
|
||||
if ($row->uid)
|
||||
{
|
||||
$wochensumme = $datum_obj->sumZeit($wochensumme, $row->diff);
|
||||
@@ -1314,8 +1366,11 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
if ($row->aktivitaet_kurzbz == 'LehreExtern')
|
||||
$extlehrearr[] = array("start"=>$row->start, "ende"=>$row->ende, "diff"=>$row->diff);
|
||||
}
|
||||
|
||||
}
|
||||
echo '';
|
||||
|
||||
|
||||
if ($alle===false)
|
||||
{
|
||||
echo '
|
||||
@@ -1456,4 +1511,5 @@ function getZeitaufzeichnung($user, $von, $bis)
|
||||
$za->getListeUserFromTo($user, $von, $bis);
|
||||
return $za;
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
@@ -33,6 +33,7 @@ class filter extends basis_db
|
||||
//Tabellenspalten
|
||||
protected $filter_id; // integer (PK)
|
||||
protected $kurzbz; // varchar(32) unique
|
||||
protected $bezeichnung; // varchar(64) (label shown before filter dropdown)
|
||||
protected $sql; // text
|
||||
protected $valuename; // varchar(32)
|
||||
protected $showvalue; // boolean (should the value be showed in the input widget
|
||||
@@ -85,6 +86,7 @@ class filter extends basis_db
|
||||
{
|
||||
$this->filter_id=$row->filter_id;
|
||||
$this->kurzbz=$row->kurzbz;
|
||||
$this->bezeichnung=$row->bezeichnung;
|
||||
$this->sql=$row->sql;
|
||||
$this->valuename=$row->valuename;
|
||||
$this->showvalue=$this->db_parse_bool($row->showvalue);
|
||||
@@ -125,6 +127,7 @@ class filter extends basis_db
|
||||
|
||||
$obj->filter_id=$row->filter_id;
|
||||
$obj->kurzbz=$row->kurzbz;
|
||||
$obj->bezeichnung=$row->bezeichnung;
|
||||
$obj->sql=$row->sql;
|
||||
$obj->valuename=$row->valuename;
|
||||
$obj->showvalue = $this->db_parse_bool($row->showvalue);
|
||||
@@ -164,6 +167,22 @@ class filter extends basis_db
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Filter Bezeichnung des Filters mit einer gegebenen kurzbz holen
|
||||
* @param $kurzbz kurzbz des Datensatzes, der gefunden werden soll
|
||||
* @return string|boolean Bezeichnung wenn kurzbz gefunden, false andernfalls
|
||||
*/
|
||||
public function getBezeichnungFromKurzbz($kurzbz)
|
||||
{
|
||||
foreach ($this->result as $filter)
|
||||
{
|
||||
if ($filter->kurzbz==$kurzbz)
|
||||
return $filter->__get('bezeichnung');
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ausgabe des HTML Widgets
|
||||
* @param kurzbz des Datensatzes, der gefunden werden soll
|
||||
@@ -304,9 +323,10 @@ class filter extends basis_db
|
||||
if($this->new)
|
||||
{
|
||||
//Neuen Datensatz einfuegen
|
||||
$qry='INSERT INTO public.tbl_filter (kurzbz, sql, valuename,
|
||||
$qry='INSERT INTO public.tbl_filter (kurzbz, bezeichnung, sql, valuename,
|
||||
showvalue, type, htmlattr, insertamum, insertvon) VALUES ('.
|
||||
$this->db_add_param($this->kurzbz).', '.
|
||||
$this->db_add_param($this->bezeichnung).', '.
|
||||
$this->db_add_param($this->sql).', '.
|
||||
$this->db_add_param($this->valuename).', '.
|
||||
$this->db_add_param($this->showvalue, FHC_BOOLEAN).', '.
|
||||
@@ -326,6 +346,7 @@ class filter extends basis_db
|
||||
|
||||
$qry='UPDATE public.tbl_filter SET'.
|
||||
' kurzbz='.$this->db_add_param($this->kurzbz).', '.
|
||||
' bezeichnung='.$this->db_add_param($this->bezeichnung).', '.
|
||||
' sql='.$this->db_add_param($this->sql).', '.
|
||||
' valuename='.$this->db_add_param($this->valuename).', '.
|
||||
' showvalue='.$this->db_add_param($this->showvalue, FHC_BOOLEAN).', '.
|
||||
|
||||
@@ -1097,4 +1097,42 @@ function PersonLog($person_id, $logtype_kurzbz, $logdata, $taetigkeit_kurzbz, $a
|
||||
$personlog = new personlog();
|
||||
$personlog->log($person_id, $logtype_kurzbz, $logdata, $taetigkeit_kurzbz, $app, $oe_kurzbz, $user);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sendet einen Request an den CaseTime Server um die Daten dort zu speichern
|
||||
*/
|
||||
function getCaseTimeErrors($uid)
|
||||
{
|
||||
$ch = curl_init();
|
||||
|
||||
$url = CASETIME_SERVER.'/sync/get_zeitfehler';
|
||||
|
||||
$params = 'sachb='.$uid;
|
||||
|
||||
curl_setopt($ch, CURLOPT_URL, $url.'?'.$params ); //Url together with parameters
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Return data instead printing directly in Browser
|
||||
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT , 7); //Timeout after 7 seconds
|
||||
curl_setopt($ch, CURLOPT_USERAGENT , "FH-Complete CaseTime Addon");
|
||||
curl_setopt($ch, CURLOPT_HEADER, 0);
|
||||
|
||||
$result = curl_exec($ch);
|
||||
|
||||
if(curl_errno($ch))
|
||||
{
|
||||
return 'Curl error: ' . curl_error($ch);
|
||||
curl_close($ch);
|
||||
}
|
||||
else
|
||||
{
|
||||
curl_close($ch);
|
||||
$data = json_decode($result);
|
||||
|
||||
if(isset($data->STATUS) && $data->STATUS=='OK')
|
||||
{
|
||||
return $data->RESULT;
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -487,7 +487,7 @@ class zeitaufzeichnung extends basis_db
|
||||
$where = "uid=".$this->db_add_param($user);
|
||||
if ($days!='')
|
||||
$where.= " AND ende>(now() - INTERVAL '".$days." days')";
|
||||
$where_join = "and z.uid=".$this->db_add_param($user);
|
||||
$where_join = "and (z.aktivitaet_kurzbz != 'DienstreiseMT' or z.aktivitaet_kurzbz is null) and z.uid=".$this->db_add_param($user);
|
||||
if ($days!='')
|
||||
$where_join.= " AND z.ende>(now() - INTERVAL '".$days." days')";
|
||||
if ($days=='')
|
||||
@@ -540,6 +540,64 @@ class zeitaufzeichnung extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Zeitaufzeichnungen eines Users aufgefüllt mit lehren Tagen.
|
||||
* Default: Die letzten 40 Tage
|
||||
* @param string $user
|
||||
* @param integer $days deafult: 40 Tage
|
||||
*/
|
||||
public function getDienstreisenUser($user, $days='40')
|
||||
{
|
||||
$where = "uid=".$this->db_add_param($user);
|
||||
if ($days!='')
|
||||
$where.= " AND ende>(now() - INTERVAL '".$days." days')";
|
||||
$where .= " AND aktivitaet_kurzbz = 'DienstreiseMT'";
|
||||
$qry = "SELECT
|
||||
zeitaufzeichnung_id, start::date as starttag, TO_CHAR(start, 'HH24:MI') as startzeit, ende::date as endtag, TO_CHAR(ende, 'HH24:MI') as endzeit
|
||||
FROM campus.tbl_zeitaufzeichnung
|
||||
where $where
|
||||
ORDER BY ende DESC
|
||||
";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
$dr_arr = array();
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
if (array_key_exists($row->starttag, $dr_arr))
|
||||
{
|
||||
$dr_arr[$row->starttag]['start'] = $row->startzeit;
|
||||
$dr_arr[$row->starttag]['id'] = $row->zeitaufzeichnung_id;
|
||||
}
|
||||
else
|
||||
{
|
||||
$dr_arr[$row->starttag] = array();
|
||||
$dr_arr[$row->starttag]['start'] = $row->startzeit;
|
||||
$dr_arr[$row->starttag]['id'] = $row->zeitaufzeichnung_id;
|
||||
}
|
||||
if (array_key_exists($row->endtag, $dr_arr))
|
||||
{
|
||||
$dr_arr[$row->endtag]['ende'] = $row->endzeit;
|
||||
$dr_arr[$row->endtag]['id'] = $row->zeitaufzeichnung_id;
|
||||
}
|
||||
else
|
||||
{
|
||||
$dr_arr[$row->endtag] = array();
|
||||
$dr_arr[$row->endtag]['ende'] = $row->endzeit;
|
||||
$dr_arr[$row->endtag]['id'] = $row->zeitaufzeichnung_id;
|
||||
}
|
||||
|
||||
$this->result = $dr_arr;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Löscht sämtliche Einträge eines Users für einen Tag
|
||||
* @param string $user
|
||||
@@ -684,5 +742,48 @@ or not exists
|
||||
|
||||
return $lehre_arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Holt das Datum bis zu dem die Eintragung für einen bestimmten User gesperrt ist
|
||||
* @param string $user
|
||||
* @return string $tag Y-m-d or false
|
||||
*/
|
||||
|
||||
public function getEintragungGesperrtBisForUser($user)
|
||||
{
|
||||
//check if addon casetime is installed
|
||||
$qrytable = "
|
||||
SELECT EXISTS(
|
||||
SELECT *
|
||||
FROM information_schema.tables
|
||||
WHERE
|
||||
table_schema = 'addon' AND
|
||||
table_name = 'tbl_casetime_timesheet'
|
||||
);
|
||||
";
|
||||
|
||||
$res = $this->db_query($qrytable);
|
||||
if ($this->db_fetch_row($res)[0]===true)
|
||||
{
|
||||
//check if sent timesheets for the UID exist
|
||||
$where = "uid=".$this->db_add_param($user);
|
||||
|
||||
$qry = "select max(datum) from addon.tbl_casetime_timesheet where ".$where." and abgeschicktamum is not null";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
$datum = $this->db_fetch_object($result);
|
||||
return $datum->max;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
Regular → Executable
+1
-1
@@ -57,4 +57,4 @@ $this->phrasen['zeitaufzeichnung/stunden']='Stunden';
|
||||
$this->phrasen['zeitaufzeichnung/taetigkeit']='Tätigkeit';
|
||||
$this->phrasen['zeitaufzeichnung/keineprojekte']='keine Projekte vorhanden';
|
||||
$this->phrasen['zeitaufzeichnung/summe']='Summe:';
|
||||
?>
|
||||
$this->phrasen['zeitaufzeichnung/dienstreise']='Dienstreise';
|
||||
|
||||
Regular → Executable
+1
-1
@@ -57,4 +57,4 @@ $this->phrasen['zeitaufzeichnung/stunden']='Hours';
|
||||
$this->phrasen['zeitaufzeichnung/taetigkeit']='Activity';
|
||||
$this->phrasen['zeitaufzeichnung/keineprojekte']='no projects exist';
|
||||
$this->phrasen['zeitaufzeichnung/summe']='Sum:';
|
||||
?>
|
||||
$this->phrasen['zeitaufzeichnung/dienstreise']='Business Trip';
|
||||
|
||||
+26
-1
@@ -2297,6 +2297,31 @@ if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants
|
||||
}
|
||||
}
|
||||
|
||||
// Add UNIQUE constraint on kurzbz from public.tbl_filter
|
||||
if($result = @$db->db_query("SELECT conname FROM pg_constraint WHERE conname = 'uk_filter_kurzbz'"))
|
||||
{
|
||||
if($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_filter ADD CONSTRAINT uk_filter_kurzbz UNIQUE(kurzbz);";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_filter '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Added UNIQUE constraint on "kurzbz" from public.tbl_filter<br>';
|
||||
}
|
||||
}
|
||||
|
||||
// Reporting filter: bezeichnung
|
||||
if(!$result = @$db->db_query("SELECT bezeichnung FROM public.tbl_filter LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_filter ADD COLUMN bezeichnung varchar(65);";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_filter: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_filter: Spalte bezeichnung hinzugefuegt';
|
||||
}
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
@@ -2462,7 +2487,7 @@ $tabellen=array(
|
||||
"public.tbl_dokumentstudiengang" => array("dokument_kurzbz","studiengang_kz","ext_id", "onlinebewerbung", "pflicht","beschreibung_mehrsprachig","nachreichbar"),
|
||||
"public.tbl_erhalter" => array("erhalter_kz","kurzbz","bezeichnung","dvr","logo","zvr"),
|
||||
"public.tbl_fachbereich" => array("fachbereich_kurzbz","bezeichnung","farbe","studiengang_kz","aktiv","ext_id","oe_kurzbz"),
|
||||
"public.tbl_filter" => array("filter_id","kurzbz","sql","valuename","showvalue","insertamum","insertvon","updateamum","updatevon","type","htmlattr"),
|
||||
"public.tbl_filter" => array("filter_id","kurzbz","sql","valuename","showvalue","insertamum","insertvon","updateamum","updatevon","type","htmlattr", "bezeichnung"),
|
||||
"public.tbl_firma" => array("firma_id","name","anmerkung","firmentyp_kurzbz","updateamum","updatevon","insertamum","insertvon","ext_id","schule","finanzamt","steuernummer","gesperrt","aktiv","lieferbedingungen","partner_code"),
|
||||
"public.tbl_firma_mobilitaetsprogramm" => array("firma_id","mobilitaetsprogramm_code","ext_id"),
|
||||
"public.tbl_firma_organisationseinheit" => array("firma_organisationseinheit_id","firma_id","oe_kurzbz","bezeichnung","kundennummer","updateamum","updatevon","insertamum","insertvon","ext_id"),
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
$filter = new filter();
|
||||
$filter->filter_id = '';
|
||||
$filter->kurzbz = 'NewFilter';
|
||||
$filter->bezeichnung = 'New Filter';
|
||||
$filter->sql = 'SELECT foo AS value, bar AS name FROM foobar WHERE ... ORDER BY name';
|
||||
$filter->valuename = '';
|
||||
$filter->showvalue = true;
|
||||
@@ -68,6 +69,7 @@
|
||||
}
|
||||
|
||||
$filter->kurzbz = $_POST["kurzbz"];
|
||||
$filter->bezeichnung = $_POST["bezeichnung"];
|
||||
$filter->valuename = $_POST["valuename"];
|
||||
$filter->sql = $_POST["sql"];
|
||||
$filter->showvalue = isset($_POST["showvalue"]);
|
||||
@@ -104,19 +106,21 @@
|
||||
$htmlstr .= " <table class='detail'>\n";
|
||||
$htmlstr .= " <tr>\n";
|
||||
$htmlstr .= " <td>KurzBz</td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='kurzbz' size='16' maxlength='32' value='".$filter->kurzbz."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='kurzbz' size='12' maxlength='24' value='".$filter->kurzbz."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td>Bezeichnung</td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='bezeichnung' size='12' maxlength='24' value='".$filter->bezeichnung."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td>ValueName</td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='valuename' size='16' maxlength='32' value='".$filter->valuename."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='valuename' size='12' maxlength='24' value='".$filter->valuename."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td>Type</td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='type' size='16' maxlength='32' value='".$filter->type."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='text' name='type' size='12' maxlength='24' value='".$filter->type."' onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " <td>ShowValue</td>\n";
|
||||
$htmlstr .= " <td><input class='detail' type='checkbox' name='showvalue' $chk onchange='submitable()'></td>\n";
|
||||
$htmlstr .= " </tr>\n";
|
||||
$htmlstr .= " <tr>\n";
|
||||
$htmlstr .= " <td valign='top'>SQL</td>\n";
|
||||
$htmlstr .= " <td colspan='5'><textarea name='sql' cols='70' rows='6' onchange='submitable()'>".$filter->sql."</textarea></td>\n";
|
||||
$htmlstr .= " <td colspan='7'><textarea name='sql' cols='95' rows='6' onchange='submitable()'>".$filter->sql."</textarea></td>\n";
|
||||
$htmlstr .= " <td valign='top'>HTML-Attributes</td>\n";
|
||||
$htmlstr .= " <td colspan='2'><textarea name='htmlattr' cols='70' rows='6' onchange='submitable()'>".$filter->htmlattr."</textarea></td>\n";
|
||||
$htmlstr .= " <td colspan='3'><textarea name='htmlattr' cols='70' rows='6' onchange='submitable()'>".$filter->htmlattr."</textarea></td>\n";
|
||||
$htmlstr .= " </tr>\n";
|
||||
$htmlstr .= " </table>\n";
|
||||
$htmlstr .= "<br>\n";
|
||||
|
||||
Reference in New Issue
Block a user