Merge branch 'master' into StatusabhaengigerDokumentenupload

This commit is contained in:
Manfred Kindl
2019-08-06 18:59:31 +02:00
10 changed files with 341 additions and 32 deletions
+2
View File
@@ -20,6 +20,8 @@
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
session_start();
require_once('../../config/cis.config.inc.php');
require_once('../../include/wochenplan.class.php');
require_once('../../include/benutzerberechtigung.class.php');
+3 -1
View File
@@ -791,6 +791,8 @@ function writeAnmeldungen(data)
var liste = "<ul id='sortable'>";
var count = 0;
var studiensemester = $("#filter_studiensemester option:selected").val();
var listenLinks = "<a href='./pruefungsanmeldungen_liste.pdf.php?termin_id="+terminId+"&lehrveranstaltung_id="+lehrveranstaltung_id+"&studiensemester="+studiensemester+"' target='_blank'><?php echo $p->t('pruefung/listeDrucken'); ?></a><br>"
+ "<a href='./pruefungsanmeldungen_liste_ohne_namen.php?termin_id="+terminId+"&lehrveranstaltung_id="+lehrveranstaltung_id+"&studiensemester="+studiensemester+"' target='_blank'><?php echo $p->t('pruefung/listeOhneNamenDrucken'); ?></a>";
data.result.anmeldungen.forEach(function(d){
count++;
var vorname = d.student.vorname !== "null" ? d.student.vorname : "";
@@ -825,7 +827,7 @@ function writeAnmeldungen(data)
$("#reihungSpeichernButton").html("<input type='button' value='<?php echo $p->t('pruefung/reihungSpeichern'); ?>' onclick='saveReihung(\""+terminId+"\", \""+lehrveranstaltung_id+"\");'><input type='button' value='<?php echo $p->t('pruefung/alleBestaetigen'); ?>' onclick='alleBestaetigen(\""+terminId+"\", \""+lehrveranstaltung_id+"\");'>");
$("#lvdaten").html(lv_bezeichnung+" ("+prf_termin+")");
$("#anmeldeDaten").html(liste);
$("#listeDrucken").html("<a href='./pruefungsanmeldungen_liste.pdf.php?termin_id="+terminId+"&lehrveranstaltung_id="+lehrveranstaltung_id+"&studiensemester="+studiensemester+"' target='_blank'><?php echo $p->t('pruefung/listeDrucken'); ?></a>");
$("#listeDrucken").html(listenLinks);
if(ort_kurzbz !== null)
{
$("#raumLink").html("<span><?php echo $p->t('pruefung/pruefungsraum'); ?></span>"+ort_kurzbz);
@@ -35,6 +35,7 @@ require_once('../../../../include/datum.class.php');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
require_once('../../../../include/studiengang.class.php');
$sprache = getSprache();
$lang = new sprache();
@@ -230,6 +231,7 @@ $rechte->getBerechtigungen($uid);
<th><?php echo $p->t('global/vorname'); ?></th>
<th><?php echo $p->t('global/nachname'); ?></th>
<th><?php echo $p->t('pruefung/matrikelnummer'); ?></th>
<th><?php echo $p->t('pruefung/studiengangAbkuerzung'); ?></th>
<th><?php echo $p->t('global/datum'); ?></th>
<th><?php echo $p->t('benotungstool/note'); ?></th>
<th><?php echo $p->t('global/anmerkung'); ?></th>
@@ -242,6 +244,7 @@ $rechte->getBerechtigungen($uid);
foreach($anmeldungen as $anmeldung)
{
$student = new student($anmeldung->uid);
$studiengang = new studiengang($student->studiengang_kz);
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
if($einzeln)
@@ -262,6 +265,7 @@ $rechte->getBerechtigungen($uid);
echo '<td>'.$student->vorname.'</td>';
echo '<td>'.$student->nachname.'</td>';
echo '<td>'.$student->matr_nr.'</td>';
echo '<td>'.$studiengang->kurzbzlang.'</td>';
echo '<td>'.$date.'</td>';
echo '<td></td>';
echo '<td></td>';
@@ -0,0 +1,302 @@
<?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');
require_once('../../../../include/phrasen.class.php');
require_once('../../../../include/globals.inc.php');
require_once('../../../../include/sprache.class.php');
require_once('../../../../include/studiengang.class.php');
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
?><!DOCTYPE html>
<html moznomarginboxes="">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="../../../../vendor/components/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../../../vendor/components/jqueryui/jquery-ui.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 #ffffff 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 white 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><?php echo $p->t('pruefung/anmeldungsliste'); ?></h1>
<?php
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
die('Sie haben keine Berechtigung für diese Seite');
$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($p->t('pruefung/fehlenderParam_lvid'));
}
else if(is_null($termin_id))
{
die($p->t('pruefung/fehlenderParam_terminid'));
}
else if(is_null($studiensemester))
{
die($p->t('pruefung/fehlenderParam_studiensemester'));
}
else
{
$datum = new datum();
$stdsem = new studiensemester($studiensemester);
$pruefungsanmeldung = new pruefungsanmeldung();
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($termin_id, $lehrveranstaltung_id, $studiensemester, "bestaetigt");
$lehrveranstaltung = new lehrveranstaltung($lehrveranstaltung_id);
$einzeln = FALSE;
if(!empty($anmeldungen))
{
$pruefung = new pruefungCis($anmeldungen[0]->pruefung_id);
$pruefungstermin = new pruefungstermin($anmeldungen[0]->pruefungstermin_id);
$mitarbeiter = new mitarbeiter($pruefung->mitarbeiter_uid);
if($pruefung->einzeln)
{
$einzeln = TRUE;
$pruefungsintervall = $pruefung->pruefungsintervall;
}
?>
<span class="bold"><?php echo $p->t('global/lehrveranstaltung'); ?>: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('global/studiensemester'); ?>: </span><span><?=$stdsem->bezeichnung?></span><br/>
<span class="bold"><?php echo $p->t('pruefung/pruefer'); ?>: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
<table id="liste">
<thead>
<tr>
<th>#</th>
<th><?php echo $p->t('pruefung/matrikelnummer'); ?></th>
<th><?php echo $p->t('pruefung/studiengangAbkuerzung'); ?></th>
<th><?php echo $p->t('global/datum'); ?></th>
<th><?php echo $p->t('benotungstool/note'); ?></th>
<th><?php echo $p->t('global/anmerkung'); ?></th>
</tr>
</thead>
<tbody>
<?php
$count = 0;
/*@var $anmeldung pruefungsanmeldung */
foreach($anmeldungen as $anmeldung)
{
$student = new student($anmeldung->uid);
$studiengang = new studiengang($student->studiengang_kz);
$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*($anmeldung->reihung-1));
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("H:i",$date);
$count++;
}
else
{
$date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i");
$count++;
}
echo '<tr>';
echo '<td>'.$count.'</td>';
echo '<td>'.$student->matr_nr.'</td>';
echo '<td>'.$studiengang->kurzbzlang.'</td>';
echo '<td>'.$date.'</td>';
echo '<td></td>';
echo '<td></td>';
echo '</tr>';
}
?>
</tbody>
<?php
}
else
{
?>
<span><?php echo $p->t('pruefung/keineBestaetigtenAnmeldungenVorhanden'); ?></span><br/>
<?php
exit;
}
}
?>
</table>
<br>
<table width="100%" id="liste">
<tr>
<td width="26%"><?php echo $p->t('pruefung/derLektor'); ?></td>
<td width="37%"><?php echo $mitarbeiter->getFullName(FALSE); ?></td>
<td width="37%"></td>
</tr>
<tr>
<td><?php echo $p->t('pruefung/dieKommission'); ?></td>
<td></td>
<td></td>
</tr
</table>
</div>
</div>
</body>
</html>
+1 -2
View File
@@ -436,11 +436,10 @@ function getStgContent($studiengang_kz, $semester, $sprache)
if(CIS_EXT_MENU)
{
$xml.='<cis_ext_menu>
<lehrziele_name><![CDATA['.$p->t('global/lehrziele').']]></lehrziele_name>
<download_name><![CDATA['.$p->t('global/allgemeinerdownload').']]></download_name>
<newsgroup_name><![CDATA['.$p->t('global/newsgroups').']]></newsgroup_name>
<kurzbz><![CDATA['.strtolower($studiengang->kuerzel).']]></kurzbz>
<kurzbzlang><![CDATA['.strtolower($studiengang->kurzbzlang).']]></kurzbzlang>
<stg_kz><![CDATA['. $studiengang_kz.']]></stg_kz>
</cis_ext_menu>';
}
+3 -1
View File
@@ -53,6 +53,7 @@ $this->phrasen['pruefung/bestaetigt'] = 'bestätigt';
$this->phrasen['pruefung/statusAenderungVon'] = 'Satusänderung von';
$this->phrasen['pruefung/reihungSpeichern'] = 'Reihung speichern';
$this->phrasen['pruefung/listeDrucken'] = 'Liste drucken';
$this->phrasen['pruefung/listeOhneNamenDrucken'] = 'Liste ohne Namen drucken';
$this->phrasen['pruefung/pruefungsraum'] = 'Prüfungsraum: ';
$this->phrasen['pruefung/pruefungsort'] = 'Prüfungsort ';
$this->phrasen['pruefung/imBuero'] = ' im Büro';
@@ -109,7 +110,8 @@ $this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Keine Lehreinheiten vo
$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Keine Anmeldungen vorhanden.';
$this->phrasen['pruefung/derLektor'] = 'Lektor';
$this->phrasen['pruefung/dieKommission'] = 'Kommission';
$this->phrasen['pruefung/matrikelnummer'] = 'Personenkennzeichen';
$this->phrasen['pruefung/matrikelnummer'] = 'Matrikelnummer';
$this->phrasen['pruefung/studiengangAbkuerzung'] = 'Stg.';
// anmeldungen Verwalten
$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung';
+3 -1
View File
@@ -53,6 +53,7 @@ $this->phrasen['pruefung/bestaetigt'] = 'bestätigt';
$this->phrasen['pruefung/statusAenderungVon'] = 'Satusänderung von';
$this->phrasen['pruefung/reihungSpeichern'] = 'Reihung speichern';
$this->phrasen['pruefung/listeDrucken'] = 'Liste drucken';
$this->phrasen['pruefung/listeOhneNamenDrucken'] = 'Liste ohne Namen drucken';
$this->phrasen['pruefung/pruefungsraum'] = 'Prüfungsraum: ';
$this->phrasen['pruefung/pruefungsort'] = 'Prüfungsort ';
$this->phrasen['pruefung/imBuero'] = ' im Büro';
@@ -109,7 +110,8 @@ $this->phrasen['pruefung/keineLehreinheitenVorhanden'] = 'Keine Lehreinheiten vo
$this->phrasen['pruefung/keineAnmeldungenVorhanden'] = 'Keine Anmeldungen vorhanden.';
$this->phrasen['pruefung/derLektor'] = 'Lektor';
$this->phrasen['pruefung/dieKommission'] = 'Kommission';
$this->phrasen['pruefung/matrikelnummer'] = 'Personenkennzeichen';
$this->phrasen['pruefung/matrikelnummer'] = 'Matrikelnummer';
$this->phrasen['pruefung/studiengangAbkuerzung'] = 'Stg.';
// anmeldungen Verwalten
$this->phrasen['pruefung/anmeldungenVerwaltenTitle'] = 'Prüfungsanmeldung Verwaltung';
+3 -5
View File
@@ -162,11 +162,9 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:template>
<xsl:template match="cis_ext_menu">
<xsl:variable name="kurzbz" select="kurzbz"></xsl:variable>
<xsl:variable name="kurzbzlang" select="kurzbzlang"></xsl:variable>
<td class="menubox">
<p><xsl:text> </xsl:text><a href="../documents/{kurzbz}/lehrziele/" class="Item" target="_blank"><xsl:value-of select="lehrziele_name" /></a></p>
<p><xsl:text> </xsl:text><a href="../documents/{kurzbz}/download/" class="Item" target="_blank"><xsl:value-of select="download_name" /></a></p>
<p><xsl:text> </xsl:text><a href="news://news.technikum-wien.at/{kurzbzlang}" class="Item" target="_blank"><xsl:value-of select="newsgroup_name" /></a></p>
<xsl:variable name="stg_kz" select="stg_kz"></xsl:variable>
<td class="menubox">
<p><xsl:text> </xsl:text><a href="https://moodle.technikum-wien.at/course/view.php?idnumber=dl{$stg_kz}" class="Item" target="_blank"><xsl:value-of select="download_name" /></a></p>
</td>
</xsl:template>
</xsl:stylesheet >
Binary file not shown.
+20 -22
View File
@@ -48,7 +48,7 @@ if ($studiengang_kz != '')
$oe_studiengang = '';
}
if (isset($_GET['searchItems']))
if (isset($_GET['searchItems']) && trim($_GET['searchItems']) != '')
{
$searchItems = explode(' ', trim($_GET['searchItems']));
}
@@ -82,12 +82,12 @@ if(!$rechte->isBerechtigt('lehre/gruppe', null, 's'))
<title>Gruppe-Verwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<?php
<?php
include('../../include/meta/jquery.php');
include('../../include/meta/jquery-tablesorter.php');
?>
<script language="JavaScript" type="text/javascript">
function conf_del()
{
@@ -114,7 +114,7 @@ if(!$rechte->isBerechtigt('lehre/gruppe', null, 's'))
$( "#domain_text" ).toggle();
$('#gesperrt').prop('disabled', function(i, v) { return !v; });
});
});
</script>
<style>
@@ -155,22 +155,22 @@ else if (isset($_POST['type']) && $_POST['type']=='save')
else if (isset($_GET['type']) && $_GET['type']=='delete')
{
printDropDown();
if($rechte->isBerechtigt('lehre/gruppe', $oe_studiengang, 'suid'))
{
$e=new gruppe();
if(!$e->delete($_GET['einheit_id']))
echo $e->errormsg;
}
else
else
echo '<span class="error">'.$rechte->errormsg.'</span>';
getUebersicht();
}
else
{
printDropDown();
if ($studiengang_kz != '')
if ($studiengang_kz != '' || count($searchItems) > 0)
getUebersicht();
}
@@ -217,17 +217,17 @@ function printDropDown()
function doSave()
{
global $rechte;
$studiengang = new studiengang($_POST['studiengang_kz']);
if ($studiengang->oe_kurzbz != '')
$oe_studiengang = $studiengang->oe_kurzbz;
else
$oe_studiengang = '';
if($rechte->isBerechtigt('lehre/gruppe', $oe_studiengang, 'sui'))
{
$e = new gruppe();
if ($_POST['new']=='true')
{
$e->new = true;
@@ -240,7 +240,7 @@ function doSave()
$e->load($_POST['kurzbz']);
$e->new = false;
}
$e->updateamum = date('Y-m-d H:i:s');
$e->updatevon = get_uid();
$e->bezeichnung = $_POST['bezeichnung'];
@@ -257,7 +257,7 @@ function doSave()
$e->aufnahmegruppe = isset($_POST['aufnahmegruppe']);
$e->sort = $_POST['sort'];
$e->content_visible = isset($_POST['content_visible']);
if(!$e->save())
echo $e->errormsg;
}
@@ -331,7 +331,7 @@ function doEdit($kurzbz,$new=false)
$selected = 'selected="selected"';
else
$selected='';
echo '<option value="'.$studiengang->studiengang_kz.'" '.$selected.'>'.$db->convert_html_chars($studiengang->kuerzel.' - '.$studiengang->bezeichnung).'</option>';
$typ = $studiengang->typ;
}
@@ -426,7 +426,7 @@ function getUebersicht()
$gruppe=new gruppe();
// Wenn $searchstring gesetz ist, nach gruppe suchen, sonst gruppe mit $studiengang_kz un $semester laden
if (!empty($searchItems))
if (count($searchItems) > 0)
{
$gruppe->searchGruppen($searchItems, null, null);
}
@@ -434,8 +434,6 @@ function getUebersicht()
{
$gruppe->getgruppe($studiengang_kz,$semester);
}
// Array mit allen Einheiten holen
echo '<h3>&Uuml;bersicht</h3>';
echo '<button type="button" class="resetsaved" title="Reset Filter">Reset Filter</button>';
@@ -489,13 +487,13 @@ function getUebersicht()
// src="../../skin/images/'.($row->projektarbeit=='t'?'true.png':'false.png').'"
//echo "<td>".$gruppe->countStudenten($e->gruppe_kurzbz)."</td>"; Auskommentiert, da sonst die Ladezeit der Seite zu lange ist
echo "<td style='padding-right: 5px'><a href='einheit_det.php?kurzbz=$e->gruppe_kurzbz'>Personen</a></td>";
if($rechte->isBerechtigt('lehre/gruppe', $oe_studiengang, 'su'))
echo "<td style='padding-right: 5px'><a href=\"einheit_menu.php?edit=1&kurzbz=$e->gruppe_kurzbz\">Edit</a></td>";
if($rechte->isBerechtigt('lehre/gruppe', $oe_studiengang, 'suid'))
echo "<td><a href=\"einheit_menu.php?einheit_id=$e->gruppe_kurzbz&studiengang_kz=$e->studiengang_kz&type=delete\" onclick='return conf_del()'>Delete</a></td>";
echo "</tr>\n";
}
@@ -504,4 +502,4 @@ function getUebersicht()
?>
</body>
</html>
</html>