mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-22 09:22:22 +00:00
Merge branch 'master' into FASgendern
This commit is contained in:
+1
-1
@@ -119,7 +119,7 @@
|
||||
- **[DEPRECATED]** Spalte ort_kurzbz in tbl_reihungstest wird nicht mehr verwendet und in zukünftigen Versionen entfernt
|
||||
|
||||
Zum Update auf diese Version folgen Sie den Anweisungen auf folgender Seite:
|
||||
http://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=fh-complete:codeigniter
|
||||
https://wiki.fhcomplete.org/doku.php?id=fh-complete:codeigniter
|
||||
|
||||
## [3.1.0] - 2015-11-12
|
||||
### Added
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# FH-Complete
|
||||
|
||||
* [FH-Complete Homepage](http://www.fhcomplete.org)
|
||||
* [Wiki](http://fhcomplete.technikum-wien.at/dokuwiki/)
|
||||
* [FH-Complete Homepage](https://www.fhcomplete.org)
|
||||
* [Wiki](https://wiki.fhcomplete.org/)
|
||||
* [Changelog](CHANGELOG.md)
|
||||
|
||||
@@ -98,8 +98,8 @@ class Lehreinheitgruppe_model extends DB_Model
|
||||
'semester' => $lvadata->semester,
|
||||
'bezeichnung' => $bezeichnung,
|
||||
'aktiv' => true,
|
||||
'mailgrp' => false,
|
||||
'sichtbar' => true,
|
||||
'mailgrp' => true,
|
||||
'sichtbar' => false,
|
||||
'generiert' => false,
|
||||
'insertamum' => date('Y-m-d H:i:s'),
|
||||
'insertvon' => $loggedInUser,
|
||||
|
||||
@@ -61,7 +61,7 @@ class Studiensemester_model extends DB_Model
|
||||
start,
|
||||
ende
|
||||
FROM public.tbl_studiensemester
|
||||
WHERE start > (
|
||||
WHERE start >= (
|
||||
SELECT ende
|
||||
FROM public.tbl_studiensemester
|
||||
WHERE studiensemester_kurzbz = ?
|
||||
@@ -72,6 +72,26 @@ class Studiensemester_model extends DB_Model
|
||||
return $this->execQuery($query, array($studiensemester_kurzbz));
|
||||
}
|
||||
|
||||
/**
|
||||
* getPreviousFrom
|
||||
*/
|
||||
public function getPreviousFrom($studiensemester_kurzbz)
|
||||
{
|
||||
$query = 'SELECT studiensemester_kurzbz,
|
||||
start,
|
||||
ende
|
||||
FROM public.tbl_studiensemester
|
||||
WHERE ende <= (
|
||||
SELECT start
|
||||
FROM public.tbl_studiensemester
|
||||
WHERE studiensemester_kurzbz = ?
|
||||
)
|
||||
ORDER BY start DESC
|
||||
LIMIT 1';
|
||||
|
||||
return $this->execQuery($query, array($studiensemester_kurzbz));
|
||||
}
|
||||
|
||||
/**
|
||||
* getNearest
|
||||
*/
|
||||
|
||||
@@ -3,6 +3,7 @@ $this->load->view('templates/FHC-Header',
|
||||
array(
|
||||
'title' => 'FH-Complete',
|
||||
'jquery' => true,
|
||||
'jqueryui' => true,
|
||||
'bootstrap' => true,
|
||||
'fontawesome' => true,
|
||||
'sbadmintemplate' => true,
|
||||
|
||||
@@ -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');
|
||||
|
||||
+148
-302
@@ -23,8 +23,6 @@
|
||||
*/
|
||||
|
||||
// Oberflaeche zum Upload von Bildern
|
||||
|
||||
//session_cache_limiter('none'); //muss gesetzt werden damit der upload in chrome und das automatische updaten des profilbildes funktioniert
|
||||
require_once('../../config/cis.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/person.class.php');
|
||||
@@ -32,67 +30,52 @@ require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/akte.class.php');
|
||||
require_once('../../include/phrasen.class.php');
|
||||
require_once('../../include/fotostatus.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
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 rel="stylesheet" type="text/css" href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css">
|
||||
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" type="text/css" href="../../vendor/components/jqueryui/themes/base/jquery-ui.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../skin/simplecropper.css">'.
|
||||
cropCss().'
|
||||
<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>
|
||||
<script type="text/javascript" src="../../vendor/tapmodo/Jcrop/js/Jcrop.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/tomazdragar/SimpleCropper/scripts/jquery.SimpleCropper.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/cropper.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/twbs/bootstrap/dist/js/bootstrap.min.js"></script>
|
||||
<title>'.$p->t('profil/Bildupload').'</title>
|
||||
</head>
|
||||
<body>
|
||||
<div style="padding: 10px">
|
||||
<h1>'.$p->t('profil/Bildupload').'</h1>';
|
||||
|
||||
function resize($filename, $width, $height)
|
||||
{
|
||||
$ext = explode('.',$_FILES['bild']['name']);
|
||||
$ext = strtolower($ext[count($ext)-1]);
|
||||
$ext = explode('.',$_FILES['bild']['name']);
|
||||
$ext = strtolower($ext[count($ext)-1]);
|
||||
// Hoehe und Breite neu berechnen
|
||||
list($width_orig, $height_orig) = getimagesize($filename);
|
||||
if ($width && ($width_orig < $height_orig))
|
||||
{
|
||||
$width = ($height / $height_orig) * $width_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
$height = ($width / $width_orig) * $height_orig;
|
||||
}
|
||||
|
||||
// Hoehe und Breite neu berechnen
|
||||
list($width_orig, $height_orig) = getimagesize($filename);
|
||||
$image_p = imagecreatetruecolor($width, $height);
|
||||
|
||||
if ($width && ($width_orig < $height_orig))
|
||||
{
|
||||
$width = ($height / $height_orig) * $width_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
$height = ($width / $width_orig) * $height_orig;
|
||||
}
|
||||
$image = imagecreatefromjpeg($filename);
|
||||
|
||||
$image_p = imagecreatetruecolor($width, $height);
|
||||
//Bild nur verkleinern aber nicht vergroessern
|
||||
if($width_orig>$width || $height_orig>$height)
|
||||
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
|
||||
else
|
||||
$image_p = $image;
|
||||
|
||||
$image = imagecreatefromjpeg($filename);
|
||||
imagejpeg($image_p, $filename, 80);
|
||||
|
||||
//Bild nur verkleinern aber nicht vergroessern
|
||||
if($width_orig>$width || $height_orig>$height)
|
||||
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
|
||||
else
|
||||
$image_p = $image;
|
||||
|
||||
imagejpeg($image_p, $filename, 80);
|
||||
|
||||
@imagedestroy($image_p);
|
||||
@imagedestroy($image);
|
||||
@imagedestroy($image_p);
|
||||
@imagedestroy($image);
|
||||
}
|
||||
|
||||
|
||||
if(isset($_GET['person_id']))
|
||||
{
|
||||
$benutzer = new benutzer();
|
||||
@@ -107,269 +90,132 @@ if(isset($_GET['person_id']))
|
||||
}
|
||||
else
|
||||
die($p->t('global/fehlerBeiDerParameteruebergabe'));
|
||||
//Bei Upload des Bildes
|
||||
if(isset($_POST['submitbild']))
|
||||
{
|
||||
if(isset($_FILES['bild']['tmp_name']))
|
||||
{
|
||||
//Extension herausfiltern
|
||||
$ext = explode('.',$_FILES['bild']['name']);
|
||||
$ext = mb_strtolower($ext[count($ext)-1]);
|
||||
$width=101;
|
||||
$height=130;
|
||||
|
||||
echo '<br>';
|
||||
echo $p->t('profil/BilduploadInfotext',array($p->t('dms_link/bildRichtlinien'))).'<br><br>';
|
||||
echo '<div class="simple-cropper-images">
|
||||
'.$p->t('profil/fotoAuswählen').'
|
||||
<div class="cropme" id="croppingdiv" style="width: 300px; height: 400px; background-image:url(../../skin/images/photoupload.png); margin:10px; cursor:pointer;"></div>
|
||||
<script>
|
||||
// Init Simple Cropper
|
||||
$(".cropme").simpleCropper();
|
||||
</script>
|
||||
</div>
|
||||
<input type="button" name="submitbild" id="saveimgbutton" value="'.$p->t('profil/bildSpeichern').'" style="margin-left:90px;"/>
|
||||
<input type="hidden" id="person_id" value="'.$_GET['person_id'].'" />';
|
||||
//--check that it's a jpeg
|
||||
if ($ext=='jpg' || $ext=='jpeg')
|
||||
{
|
||||
$filename = $_FILES['bild']['tmp_name'];
|
||||
|
||||
if (isset($_POST['src'])) {
|
||||
$src = $_POST['src'];
|
||||
echo $src;
|
||||
//groesse auf maximal 827x1063 begrenzen
|
||||
resize($filename, 827, 1063);
|
||||
|
||||
$fp = fopen($filename,'r');
|
||||
//auslesen
|
||||
$content = fread($fp, filesize($filename));
|
||||
fclose($fp);
|
||||
|
||||
$akte = new akte();
|
||||
|
||||
if($akte->getAkten($_GET['person_id'], 'Lichtbil'))
|
||||
{
|
||||
if(count($akte->result)>0)
|
||||
{
|
||||
$akte = $akte->result[0];
|
||||
$akte->new = false;
|
||||
}
|
||||
else
|
||||
$akte->new = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$akte->new = true;
|
||||
}
|
||||
|
||||
$akte->dokument_kurzbz = 'Lichtbil';
|
||||
$akte->person_id = $_GET['person_id'];
|
||||
$akte->inhalt = base64_encode($content);
|
||||
$akte->mimetype = "image/jpg";
|
||||
$akte->erstelltam = date('Y-m-d H:i:s');
|
||||
$akte->gedruckt = false;
|
||||
$akte->titel = "Lichtbild_".$_GET['person_id'].".jpg";
|
||||
$akte->bezeichnung = "Lichtbild gross";
|
||||
$akte->updateamum = date('Y-m-d H:i:s');
|
||||
$akte->updatevon = $user;
|
||||
$akte->insertamum = date('Y-m-d H:i:s');
|
||||
$akte->insertvon = $user;
|
||||
$akte->uid = '';
|
||||
|
||||
if(!$akte->save())
|
||||
{
|
||||
echo '<div class="alert alert-danger">Fehler: '.$akte->errormsg.'</div>';
|
||||
}
|
||||
|
||||
//groesse auf maximal 101x130 begrenzen
|
||||
resize($filename, 101, 130);
|
||||
|
||||
//in DB speichern
|
||||
//File oeffnen
|
||||
$fp = fopen($filename,'r');
|
||||
//auslesen
|
||||
$content = fread($fp, filesize($filename));
|
||||
fclose($fp);
|
||||
//in base64-Werte umrechnen
|
||||
$content = base64_encode($content);
|
||||
$person = new person();
|
||||
if($person->load($_GET['person_id']))
|
||||
{
|
||||
//base64 Wert in die Datenbank speichern
|
||||
$person->foto = $content;
|
||||
$person->new = false;
|
||||
if($person->save())
|
||||
{
|
||||
$fs = new fotostatus();
|
||||
$fs->person_id=$person->person_id;
|
||||
$fs->fotostatus_kurzbz='hochgeladen';
|
||||
$fs->datum = date('Y-m-d');
|
||||
$fs->insertamum = date('Y-m-d H:i:s');
|
||||
$fs->insertvon = $user;
|
||||
$fs->updateamum = date('Y-m-d H:i:s');
|
||||
$fs->updatevon = $user;
|
||||
if(!$fs->save(true))
|
||||
echo '<div class="alert alert-danger">Fehler beim Setzen des Bildstatus</div>';
|
||||
else
|
||||
{
|
||||
|
||||
echo "<div class='alert alert-success'>Bild wurde erfolgreich gespeichert</div>
|
||||
<script language='Javascript'>
|
||||
if(typeof(opener.StudentAuswahl) == 'function')
|
||||
opener.StudentAuswahl();
|
||||
if(typeof(opener.MitarbeiterAuswahl) == 'function')
|
||||
opener.MitarbeiterAuswahl();
|
||||
if(typeof(opener.RefreshImage) == 'function' ||
|
||||
typeof(opener.RefreshImage) == 'object')
|
||||
{
|
||||
opener.RefreshImage();
|
||||
}
|
||||
window.close();
|
||||
</script>";
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<div class="alert alert-danger">'.$person->errormsg.'</div>';
|
||||
}
|
||||
else
|
||||
echo '<div class="alert alert-danger">'.$person->errormsg.'</div>';
|
||||
}
|
||||
else
|
||||
echo '<div class="alert alert-danger">'.$p->t('profil/nurJPGBilder').'</div>';
|
||||
}
|
||||
}
|
||||
|
||||
function cropCss() {
|
||||
return '
|
||||
<style type="text/css">
|
||||
/* jquery.Jcrop.css v0.9.12 - MIT License */
|
||||
/*
|
||||
The outer-most container in a typical Jcrop instance
|
||||
If you are having difficulty with formatting related to styles
|
||||
on a parent element, place any fixes here or in a like selector
|
||||
|
||||
You can also style this element if you want to add a border, etc
|
||||
A better method for styling can be seen below with .jcrop-light
|
||||
(Add a class to the holder and style elements for that extended class)
|
||||
*/
|
||||
.jcrop-holder {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
/* Selection Border */
|
||||
.jcrop-vline,
|
||||
.jcrop-hline {
|
||||
background: #ffffff url("../images/Jcrop.gif");
|
||||
font-size: 0;
|
||||
position: absolute;
|
||||
}
|
||||
.jcrop-vline {
|
||||
height: 100%;
|
||||
width: 1px !important;
|
||||
}
|
||||
.jcrop-vline.right {
|
||||
right: 0;
|
||||
}
|
||||
.jcrop-hline {
|
||||
height: 1px !important;
|
||||
width: 100%;
|
||||
}
|
||||
.jcrop-hline.bottom {
|
||||
bottom: 0;
|
||||
}
|
||||
/* Invisible click targets */
|
||||
.jcrop-tracker {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
/* "turn off" link highlight */
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
/* disable callout, image save panel */
|
||||
-webkit-touch-callout: none;
|
||||
/* disable cut copy paste */
|
||||
-webkit-user-select: none;
|
||||
}
|
||||
/* Selection Handles */
|
||||
.jcrop-handle {
|
||||
background-color: #333333;
|
||||
border: 1px #eeeeee solid;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
font-size: 1px;
|
||||
}
|
||||
.jcrop-handle.ord-n {
|
||||
left: 50%;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
top: 0;
|
||||
}
|
||||
.jcrop-handle.ord-s {
|
||||
bottom: 0;
|
||||
left: 50%;
|
||||
margin-bottom: -4px;
|
||||
margin-left: -4px;
|
||||
}
|
||||
.jcrop-handle.ord-e {
|
||||
margin-right: -4px;
|
||||
margin-top: -4px;
|
||||
right: 0;
|
||||
top: 50%;
|
||||
}
|
||||
.jcrop-handle.ord-w {
|
||||
left: 0;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
top: 50%;
|
||||
}
|
||||
.jcrop-handle.ord-nw {
|
||||
left: 0;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
top: 0;
|
||||
}
|
||||
.jcrop-handle.ord-ne {
|
||||
margin-right: -4px;
|
||||
margin-top: -4px;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
.jcrop-handle.ord-se {
|
||||
bottom: 0;
|
||||
margin-bottom: -4px;
|
||||
margin-right: -4px;
|
||||
right: 0;
|
||||
}
|
||||
.jcrop-handle.ord-sw {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
margin-bottom: -4px;
|
||||
margin-left: -4px;
|
||||
}
|
||||
/* Dragbars */
|
||||
.jcrop-dragbar.ord-n,
|
||||
.jcrop-dragbar.ord-s {
|
||||
height: 7px;
|
||||
width: 100%;
|
||||
}
|
||||
.jcrop-dragbar.ord-e,
|
||||
.jcrop-dragbar.ord-w {
|
||||
height: 100%;
|
||||
width: 7px;
|
||||
}
|
||||
.jcrop-dragbar.ord-n {
|
||||
margin-top: -4px;
|
||||
}
|
||||
.jcrop-dragbar.ord-s {
|
||||
bottom: 0;
|
||||
margin-bottom: -4px;
|
||||
}
|
||||
.jcrop-dragbar.ord-e {
|
||||
margin-right: -4px;
|
||||
right: 0;
|
||||
}
|
||||
.jcrop-dragbar.ord-w {
|
||||
margin-left: -4px;
|
||||
}
|
||||
/* The "jcrop-light" class/extension */
|
||||
.jcrop-light .jcrop-vline,
|
||||
.jcrop-light .jcrop-hline {
|
||||
background: #ffffff;
|
||||
filter: alpha(opacity=70) !important;
|
||||
opacity: .70!important;
|
||||
}
|
||||
.jcrop-light .jcrop-handle {
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
background-color: #000000;
|
||||
border-color: #ffffff;
|
||||
border-radius: 3px;
|
||||
}
|
||||
/* The "jcrop-dark" class/extension */
|
||||
.jcrop-dark .jcrop-vline,
|
||||
.jcrop-dark .jcrop-hline {
|
||||
background: #000000;
|
||||
filter: alpha(opacity=70) !important;
|
||||
opacity: 0.7 !important;
|
||||
}
|
||||
.jcrop-dark .jcrop-handle {
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
background-color: #ffffff;
|
||||
border-color: #000000;
|
||||
border-radius: 3px;
|
||||
}
|
||||
/* Simple macro to turn off the antlines */
|
||||
.solid-line .jcrop-vline,
|
||||
.solid-line .jcrop-hline {
|
||||
background: #ffffff;
|
||||
}
|
||||
/* Fix for twitter bootstrap et al. */
|
||||
.jcrop-holder img,
|
||||
img.jcrop-preview {
|
||||
max-width: none;
|
||||
}
|
||||
.clear{
|
||||
font-size: 0px;
|
||||
line-height: 0px;
|
||||
overflow: hidden;
|
||||
width: 0px;
|
||||
height: 0px;
|
||||
clear: both;
|
||||
}
|
||||
.simple-cropper-images{
|
||||
width: 820px;
|
||||
margin: 0 auto 20px;
|
||||
|
||||
}
|
||||
|
||||
.cropme{
|
||||
background-image: url(../../skin/images/photoupload.png);
|
||||
}
|
||||
|
||||
.cropme:hover{
|
||||
|
||||
}
|
||||
|
||||
.text{
|
||||
font-family: arial;
|
||||
font-size: 14px;
|
||||
color: #4e4e4e;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.code{
|
||||
font-family: arial;
|
||||
font-size: 14px;
|
||||
color: #4e4e4e;
|
||||
margin-bottom: 20px;
|
||||
background-color: #f1f1f1;
|
||||
padding: 10px;
|
||||
}
|
||||
#fileInput{
|
||||
width:0;
|
||||
height:0;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
||||
#modal{
|
||||
z-index: 10;
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #5F5F5F;
|
||||
opacity: 0.95;
|
||||
display: none;
|
||||
}
|
||||
|
||||
#preview{
|
||||
z-index: 11;
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
display: none;
|
||||
border: 4px solid #A5A2A2;
|
||||
border-radius: 4px;
|
||||
float: left;
|
||||
font-size: 0px;
|
||||
line-height: 0px;
|
||||
}
|
||||
|
||||
#preview .buttons{
|
||||
width: 36px;
|
||||
position: absolute;
|
||||
bottom:0px;
|
||||
right: -44px;
|
||||
}
|
||||
</style>';
|
||||
}
|
||||
//echo '<br>';
|
||||
echo $p->t('profil/BilduploadInfotext',array($p->t('dms_link/bildRichtlinien'))).'<br><br>
|
||||
<form accept-charset="UTF-8" method="POST" enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'?person_id='.$_GET['person_id'].'">
|
||||
'.$p->t('profil/Bild').': <input type="file" accept="image/jpeg" name="bild" /><br>
|
||||
<button type="submit" class="btn btn-primary" name="submitbild">Upload</button>
|
||||
</form>
|
||||
</td></tr>';
|
||||
?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -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>
|
||||
@@ -247,7 +247,14 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<td>'.$row->raumtypalternativ.'</td>';
|
||||
echo '<td>'.$row->stundenblockung.'</td>';
|
||||
echo '<td>'.$row->wochenrythmus.'</td>';
|
||||
echo '<td>'.$row->semesterstunden.'</td>';
|
||||
if(getSprache()=='German')
|
||||
{
|
||||
echo '<td>'.number_format($row->semesterstunden,2,$dec_point=",",$thousands_sep=".").'</td>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<td>'.number_format($row->semesterstunden,2,$dec_point=".",$thousands_sep=",").'</td>';
|
||||
}
|
||||
echo '<td>'.$row->start_kw.'</td>';
|
||||
|
||||
$lvangebot->getAllFromLvId($row->lehrveranstaltung_id, $row->studiensemester_kurzbz);
|
||||
@@ -276,7 +283,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
echo '<td> </td>';
|
||||
echo '<td> </td>';
|
||||
|
||||
echo '<td> </td>';
|
||||
echo '<td> </td>';
|
||||
echo '<td> </td>';
|
||||
echo '<td> </td>';
|
||||
@@ -286,7 +293,14 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<td> </td>';
|
||||
echo '<td> </td>';
|
||||
echo '<td align="right"><b>'.$p->t('lvaliste/summe').'</b></td>';
|
||||
echo '<th class="header">'.number_format($summe_std,2).'</th>';
|
||||
if(getSprache()=='German')
|
||||
{
|
||||
echo '<th>'.number_format($summe_std,2,$dec_point=",",$thousands_sep=".").'</th>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<th>'.number_format($summe_std,2,$dec_point=".",$thousands_sep=",").'</th>';
|
||||
}
|
||||
echo '<td> </td>';
|
||||
echo '</tr>';
|
||||
echo '</tfoot>';
|
||||
@@ -304,7 +318,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
tbl_lehrveranstaltung.bezeichnung, tbl_projektarbeit.titel,
|
||||
(SELECT nachname || ' ' || vorname FROM public.tbl_benutzer JOIN public.tbl_person USING(person_id)
|
||||
WHERE uid=student_uid) as student, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester,
|
||||
tbl_studiengang.email, tbl_betreuerart.beschreibung AS beutreuerart_beschreibung
|
||||
tbl_studiengang.email, tbl_betreuerart.beschreibung AS beutreuerart_beschreibung, tbl_projektbetreuer.stunden
|
||||
FROM
|
||||
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektarbeit, lehre.tbl_projektbetreuer, public.tbl_studiengang, lehre.tbl_betreuerart
|
||||
WHERE
|
||||
@@ -318,6 +332,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->getAll(null,null);
|
||||
$summe_std = 0;
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
@@ -329,6 +344,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<thead><tr>';
|
||||
echo '<th>'.$p->t('lvaliste/studiengang').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/semester').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/stunden').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/lvBezeichnung').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/student').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/betreuungsart').'</th>';
|
||||
@@ -339,13 +355,46 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<tr>';
|
||||
echo '<td><a href="mailto:'.$row->email.'">'.$stg_obj->kuerzel_arr[$row->studiengang_kz].'</a></td>';
|
||||
echo '<td>'.$row->semester.'</td>';
|
||||
if(getSprache()=='German')
|
||||
{
|
||||
echo '<td>'.number_format($row->stunden,2,$dec_point =",", $thousands_sep ="."). '</td>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<td>'.number_format($row->stunden,2,$dec_point =".", $thousands_sep =","). '</td>';
|
||||
}
|
||||
echo '<td>'.$row->bezeichnung.'</td>';
|
||||
echo '<td>'.$row->student.'</td>';
|
||||
echo '<td>'.$row->beutreuerart_beschreibung.'</td>';
|
||||
echo '<td>'.$row->titel.'</td>';
|
||||
|
||||
echo '</tr>';
|
||||
$summe_std+=$row->stunden;
|
||||
}
|
||||
echo '</tbody>';
|
||||
echo '<tfoot>';
|
||||
echo '<tr>';
|
||||
if(!defined('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN') || CIS_LVALISTE_NOTENEINGABE_ANZEIGEN)
|
||||
{
|
||||
echo '<td> </td>';
|
||||
}
|
||||
if($lvinfo)
|
||||
|
||||
echo '<td align="right"><b>'.$p->t('lvaliste/summe').'</b></td>';
|
||||
|
||||
if(getSprache()=='German')
|
||||
{
|
||||
echo '<th>'.number_format($summe_std,2,$dec_point=",",$thousands_sep=".").'</th>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<th>'.number_format($summe_std,2,$dec_point=".",$thousands_sep=",").'</th>';
|
||||
}
|
||||
|
||||
|
||||
echo '<td> </td>';
|
||||
|
||||
echo '</tr>';
|
||||
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
}
|
||||
@@ -426,6 +475,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<tr>';
|
||||
echo '<td><a href="mailto:'.$row->email.'">'.$stg_obj->kuerzel_arr[$row->studiengang_kz].'</a></td>';
|
||||
echo '<td>'.$row->semester.'</td>';
|
||||
echo '<td>'.$row->stunden.'</td>';
|
||||
echo '<td>'.$row->fachbereich_kurzbz.'</td>';
|
||||
echo '<td>'.$row->bezeichnung.'</td>';
|
||||
echo '<td>'.$lektoren.'</td>';
|
||||
|
||||
+277
-190
@@ -1,190 +1,277 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/konto.class.php');
|
||||
require_once('../../../include/person.class.php');
|
||||
require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
$uid=get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Zahlungen
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$uid = $_GET['uid'];
|
||||
$getParam = "&uid=" . $uid;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
else
|
||||
$getParam='';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
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">
|
||||
<title>'.$p->t('tools/zahlungen').'</title>
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" 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>
|
||||
</head>
|
||||
<style>
|
||||
table.tablesorter
|
||||
{
|
||||
width: auto;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[0,0],[1,0]],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<body>';
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll(null,null);
|
||||
|
||||
$stg_arr = array();
|
||||
foreach ($studiengang->result as $row)
|
||||
$stg_arr[$row->studiengang_kz]=$row->kuerzel;
|
||||
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid))
|
||||
die('Benutzer wurde nicht gefunden');
|
||||
|
||||
echo '<h1>'.$p->t('tools/zahlungen').' - '.$benutzer->vorname.' '.$benutzer->nachname.'</h1>';
|
||||
|
||||
$konto = new konto();
|
||||
$konto->getBuchungstyp();
|
||||
$buchungstyp = array();
|
||||
|
||||
foreach ($konto->result as $row)
|
||||
$buchungstyp[$row->buchungstyp_kurzbz]=$row->beschreibung;
|
||||
|
||||
$konto = new konto();
|
||||
$konto->getBuchungen($benutzer->person_id);
|
||||
if(count($konto->result)>0)
|
||||
{
|
||||
echo '<br><br><table class="tablesorter" id="t1"><thead>';
|
||||
echo '<tr>';
|
||||
echo '
|
||||
<th>'.$p->t('global/datum').'</th>
|
||||
<th>'.$p->t('tools/zahlungstyp').'</th>
|
||||
<th>'.$p->t('lvplan/stg').'</th>
|
||||
<th>'.$p->t('global/studiensemester').'</th>
|
||||
<th>'.$p->t('tools/buchungstext').'</th>
|
||||
<th>'.$p->t('tools/betrag').'</th>
|
||||
<th>'.$p->t('tools/zahlungsbestaetigung').'</th>';
|
||||
echo '</tr></thead><tbody>';
|
||||
|
||||
foreach ($konto->result as $row)
|
||||
{
|
||||
$i=0; //Zaehler fuer Anzahl Gegenbuchungen
|
||||
$buchungsnummern='';
|
||||
|
||||
if(!isset($row['parent']))
|
||||
continue;
|
||||
$betrag = $row['parent']->betrag;
|
||||
|
||||
|
||||
if(isset($row['childs']))
|
||||
{
|
||||
foreach ($row['childs'] as $key => $row_child)
|
||||
{
|
||||
$betrag += $row_child->betrag;
|
||||
$betrag = round($betrag, 2);
|
||||
$buchungsnummern .= ';'.$row['childs'][$key]->buchungsnr;
|
||||
$i = $key; //Zaehler auf letzten Gegenbuchungseintrag setzen
|
||||
}
|
||||
}
|
||||
else
|
||||
$buchungsnummern = $row['parent']->buchungsnr;
|
||||
|
||||
if($betrag<0)
|
||||
$style='style="background-color: #FF8888;"';
|
||||
elseif($betrag>0)
|
||||
$style='style="background-color: #88DD88;"';
|
||||
else
|
||||
$style='';
|
||||
|
||||
echo "<tr>";
|
||||
echo '<td '.$style.'>'.date('d.m.Y',$datum_obj->mktime_fromdate(isset($row['childs'][$i])?$row['childs'][$i]->buchungsdatum:$row['parent']->buchungsdatum)).'</td>';
|
||||
echo '<td '.$style.'>'.$buchungstyp[$row['parent']->buchungstyp_kurzbz].'</td>';
|
||||
echo '<td '.$style.'>'.$stg_arr[$row['parent']->studiengang_kz].'</td>';
|
||||
echo '<td '.$style.'>'.$row['parent']->studiensemester_kurzbz.'</td>';
|
||||
|
||||
echo '<td '.$style.'>'.$row['parent']->buchungstext.'</td>';
|
||||
echo '<td align="right" '.$style.'>'.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).' €</td>';
|
||||
echo '<td align="center" '.$style.'>';
|
||||
if($betrag>=0 && $row['parent']->betrag<=0)
|
||||
echo '<a href="../pdfExport.php?xml=konto.rdf.php&xsl=Zahlung&uid='.$uid.'&buchungsnummern='.$buchungsnummern.'" title="'.$p->t('tools/bestaetigungDrucken').'"><img src="../../../skin/images/pdfpic.gif" alt="'.$p->t('tools/bestaetigungDrucken').'"></a>';
|
||||
elseif($row['parent']->betrag>0)
|
||||
{
|
||||
//Auszahlung
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<a onclick="window.open(';
|
||||
echo "'zahlungen_details.php?buchungsnr=".$row['parent']->buchungsnr.$getParam."','Zahlungsdetails','height=500,width=550,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=no,toolbar=no,location=no,menubar=no,dependent=yes');return false;";
|
||||
echo '" href="#">'.$p->t('tools/offen').'</a> ('.sprintf('%.2f',$betrag*-1).' €)';
|
||||
|
||||
echo '</td>';
|
||||
}
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $p->t('tools/keineZahlungenVorhanden');
|
||||
}
|
||||
echo '</td></tr></table';
|
||||
|
||||
echo '</body></html>';
|
||||
?>
|
||||
<?php
|
||||
/* Copyright (C) 2006 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/konto.class.php');
|
||||
require_once('../../../include/person.class.php');
|
||||
require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
$uid=get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Zahlungen
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$uid = $_GET['uid'];
|
||||
$getParam = "&uid=" . $uid;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
else
|
||||
$getParam='';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
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">
|
||||
<title>'.$p->t('tools/zahlungen').'</title>
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>';
|
||||
|
||||
include('../../../include/meta/jquery.php');
|
||||
include('../../../include/meta/jquery-tablesorter.php');
|
||||
|
||||
echo ' <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>
|
||||
</head>
|
||||
<style>
|
||||
table.tablesorter
|
||||
{
|
||||
width: auto;
|
||||
}
|
||||
table.tablesorter tbody td
|
||||
{
|
||||
padding: 1px 3px;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
// Parser für Datum DD.MM.YYYY
|
||||
$.tablesorter.addParser({
|
||||
id: "customDate",
|
||||
is: function(s) {
|
||||
//return false;
|
||||
//use the above line if you don\'t want table sorter to auto detected this parser
|
||||
// match dd.mm.yyyy e.g. 01.01.2001 as regex
|
||||
return /\d{1,2}.\d{1,2}.\d{1,4}/.test(s);
|
||||
},
|
||||
// replace regex-wildcards and return new date
|
||||
format: function(s) {
|
||||
s = s.replace(/\-/g," ");
|
||||
s = s.replace(/:/g," ");
|
||||
s = s.replace(/\./g," ");
|
||||
s = s.split(" ");
|
||||
return $.tablesorter.formatFloat(new Date(s[2], s[1]-1, s[0]).getTime());
|
||||
},
|
||||
type: "numeric"
|
||||
});
|
||||
// Parser für Betrag
|
||||
$.tablesorter.addParser({
|
||||
id: "customCurrancy",
|
||||
is: function(s) {
|
||||
//return false;
|
||||
//use the above line if you don\'t want table sorter to auto detected this parser
|
||||
// match dd.mm.yyyy e.g. 01.01.2001 as regex
|
||||
//alert(/€\s\d*.*/.test(s))
|
||||
return /€\s\d*.*/.test(s);
|
||||
},
|
||||
// replace regex-wildcards and return new date
|
||||
format: function(s) {
|
||||
s = s.replace(/\-/g," ");
|
||||
s = s.replace(/:/g," ");
|
||||
s = s.replace(/\./g," ");
|
||||
s = s.split(" ");
|
||||
return $.tablesorter.formatFloat(s[1]);
|
||||
},
|
||||
type: "numeric"
|
||||
});
|
||||
// Parser für 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"
|
||||
});
|
||||
// For correct sorting of Umlauts
|
||||
$.tablesorter.characterEquivalents = {
|
||||
"a" : "\u00e1\u00e0\u00e2\u00e3\u00e4\u0105\u00e5", // áàâãäąå
|
||||
"A" : "\u00c1\u00c0\u00c2\u00c3\u00c4\u0104\u00c5", // ÁÀÂÃÄĄÅ
|
||||
"c" : "\u00e7\u0107\u010d", // çćč
|
||||
"C" : "\u00c7\u0106\u010c", // ÇĆČ
|
||||
"e" : "\u00e9\u00e8\u00ea\u00eb\u011b\u0119", // éèêëěę
|
||||
"E" : "\u00c9\u00c8\u00ca\u00cb\u011a\u0118", // ÉÈÊËĚĘ
|
||||
"i" : "\u00ed\u00ec\u0130\u00ee\u00ef\u0131", // íìİîïı
|
||||
"I" : "\u00cd\u00cc\u0130\u00ce\u00cf", // ÍÌİÎÏ
|
||||
"o" : "\u00f3\u00f2\u00f4\u00f5\u00f6\u014d", // óòôõöō
|
||||
"O" : "\u00d3\u00d2\u00d4\u00d5\u00d6\u014c", // ÓÒÔÕÖŌ
|
||||
"ss": "\u00df", // ß (s sharp)
|
||||
"SS": "\u1e9e", // ẞ (Capital sharp s)
|
||||
"u" : "\u00fa\u00f9\u00fb\u00fc\u016f", // úùûüů
|
||||
"U" : "\u00da\u00d9\u00db\u00dc\u016e" // ÚÙÛÜŮ
|
||||
};
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
// Adding Function for sorting images by title
|
||||
textExtraction:function(s)
|
||||
{
|
||||
if($(s).find(\'img\').length == 0) return $(s).text();
|
||||
return $(s).find(\'img\').attr(\'title\');
|
||||
},
|
||||
sortList: [[0,1],[1,1]],
|
||||
widgets: ["zebra"],
|
||||
sortLocaleCompare : true,
|
||||
headers: { 0: { sorter: "customDate"}, 3: { sorter: "studiensemester"}, 5: { sorter: "customCurrancy"}, 6: { sorter: false}}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<body>';
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll(null,null);
|
||||
|
||||
$stg_arr = array();
|
||||
foreach ($studiengang->result as $row)
|
||||
$stg_arr[$row->studiengang_kz]=$row->kuerzel;
|
||||
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid))
|
||||
die('Benutzer wurde nicht gefunden');
|
||||
|
||||
echo '<h1>'.$p->t('tools/zahlungen').' - '.$benutzer->vorname.' '.$benutzer->nachname.'</h1>';
|
||||
|
||||
$konto = new konto();
|
||||
$konto->getBuchungstyp();
|
||||
$buchungstyp = array();
|
||||
|
||||
foreach ($konto->result as $row)
|
||||
$buchungstyp[$row->buchungstyp_kurzbz]=$row->beschreibung;
|
||||
|
||||
$konto = new konto();
|
||||
$konto->getBuchungen($benutzer->person_id);
|
||||
if(count($konto->result)>0)
|
||||
{
|
||||
echo '<br><br><table class="tablesorter" id="t1"><thead>';
|
||||
echo '<tr>';
|
||||
echo '
|
||||
<th>'.$p->t('global/datum').'</th>
|
||||
<th>'.$p->t('tools/zahlungstyp').'</th>
|
||||
<th>'.$p->t('lvplan/stg').'</th>
|
||||
<th>'.$p->t('global/studiensemester').'</th>
|
||||
<th>'.$p->t('tools/buchungstext').'</th>
|
||||
<th>'.$p->t('tools/betrag').'</th>
|
||||
<th>'.$p->t('tools/zahlungsbestaetigung').'</th>';
|
||||
echo '</tr></thead><tbody>';
|
||||
|
||||
foreach ($konto->result as $row)
|
||||
{
|
||||
$i=0; //Zaehler fuer Anzahl Gegenbuchungen
|
||||
$buchungsnummern='';
|
||||
|
||||
if(!isset($row['parent']))
|
||||
continue;
|
||||
$betrag = $row['parent']->betrag;
|
||||
|
||||
|
||||
if(isset($row['childs']))
|
||||
{
|
||||
foreach ($row['childs'] as $key => $row_child)
|
||||
{
|
||||
$betrag += $row_child->betrag;
|
||||
$betrag = round($betrag, 2);
|
||||
$buchungsnummern .= ';'.$row['childs'][$key]->buchungsnr;
|
||||
$i = $key; //Zaehler auf letzten Gegenbuchungseintrag setzen
|
||||
}
|
||||
}
|
||||
else
|
||||
$buchungsnummern = $row['parent']->buchungsnr;
|
||||
|
||||
if($betrag<0)
|
||||
$style='style="background-color: #FF8888;"';
|
||||
elseif($betrag>0)
|
||||
$style='style="background-color: #88DD88;"';
|
||||
else
|
||||
$style='';
|
||||
|
||||
echo "<tr>";
|
||||
echo '<td '.$style.'>'.date('d.m.Y',$datum_obj->mktime_fromdate(isset($row['childs'][$i])?$row['childs'][$i]->buchungsdatum:$row['parent']->buchungsdatum)).'</td>';
|
||||
echo '<td '.$style.'>'.$buchungstyp[$row['parent']->buchungstyp_kurzbz].'</td>';
|
||||
echo '<td '.$style.'>'.$stg_arr[$row['parent']->studiengang_kz].'</td>';
|
||||
echo '<td '.$style.'>'.$row['parent']->studiensemester_kurzbz.'</td>';
|
||||
|
||||
echo '<td '.$style.'>'.$row['parent']->buchungstext.'</td>';
|
||||
echo '<td align="right" '.$style.'>€ '.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).'</td>';
|
||||
echo '<td align="center" '.$style.'>';
|
||||
if($betrag>=0 && $row['parent']->betrag<=0)
|
||||
{
|
||||
echo '<a href="../pdfExport.php?xml=konto.rdf.php&xsl=Zahlung&uid='.$uid.'&buchungsnummern='.$buchungsnummern.'" title="'.$p->t('tools/bestaetigungDrucken').'"><img src="../../../skin/images/pdfpic.gif" alt="'.$p->t('tools/bestaetigungDrucken').'"></a>';
|
||||
}
|
||||
elseif($row['parent']->betrag>0)
|
||||
{
|
||||
//Auszahlung
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<a onclick="window.open(';
|
||||
echo "'zahlungen_details.php?buchungsnr=".$row['parent']->buchungsnr.$getParam."','Zahlungsdetails','height=500,width=550,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=no,toolbar=no,location=no,menubar=no,dependent=yes');return false;";
|
||||
echo '" href="#">'.$p->t('tools/offen').'</a>(€ '.sprintf('%.2f',$betrag*-1).')';
|
||||
|
||||
echo '</td>';
|
||||
}
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $p->t('tools/keineZahlungenVorhanden');
|
||||
}
|
||||
echo '</td></tr></table';
|
||||
|
||||
echo '</body></html>';
|
||||
?>
|
||||
|
||||
@@ -82,7 +82,7 @@ $datum = new datum();
|
||||
|
||||
$fieldheadings = array(
|
||||
'id' => $p->t("zeitaufzeichnung/id"), 'user' => $p->t("zeitaufzeichnung/user"), 'projekt' => $p->t("zeitaufzeichnung/projekt"),
|
||||
'oe1' => $p->t("zeitaufzeichnung/oe").'1', 'oe2' => $p->t("zeitaufzeichnung/oe").'2', 'aktivitaet' => $p->t("zeitaufzeichnung/aktivitaet"),
|
||||
'oe1' => $p->t("zeitaufzeichnung/oe"), 'oe2' => $p->t("zeitaufzeichnung/oe").'2', 'aktivitaet' => $p->t("zeitaufzeichnung/aktivitaet"),
|
||||
'service' => $p->t("zeitaufzeichnung/service"), 'start' => $p->t("zeitaufzeichnung/start"), 'ende' => $p->t("zeitaufzeichnung/ende"),
|
||||
'dauer' => $p->t("zeitaufzeichnung/dauer"), 'kunde' => $p->t("zeitaufzeichnung/kunde"), 'beschreibung' => $p->t("global/beschreibung"), 'aktion' => $p->t("global/aktion"),
|
||||
'datum' => $p->t("global/datum")
|
||||
@@ -91,12 +91,12 @@ $fieldheadings = array(
|
||||
if ($rechte->isBerechtigt('basis/servicezeitaufzeichnung'))
|
||||
{
|
||||
$za_simple = 0;
|
||||
$activities = array('Design', 'Operativ', 'Betrieb', 'Pause', 'Lehre', 'Arztbesuch', 'DienstreiseMT', 'Behoerde', 'Ersatzruhe');
|
||||
$activities = array('Design', 'Operativ', 'Betrieb', 'Pause', 'FuE', 'Lehre', 'Arztbesuch', 'DienstreiseMT', 'Behoerde', 'Ersatzruhe');
|
||||
}
|
||||
else
|
||||
{
|
||||
$za_simple = 1;
|
||||
$activities = array('Arbeit', 'Pause', 'Lehre', 'Arztbesuch', 'DienstreiseMT', 'Behoerde', 'Ersatzruhe');
|
||||
$activities = array('Admin', 'FuE','Lehre', 'Pause', 'Arztbesuch', 'DienstreiseMT', 'Behoerde', 'Ersatzruhe');
|
||||
}
|
||||
|
||||
$activities_str = "'".implode("','", $activities)."'";
|
||||
@@ -828,87 +828,6 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
echo '</form>';
|
||||
}
|
||||
|
||||
//Projekte werden nicht angezeigt wenn es keine gibt
|
||||
if($anzprojekte > 0)
|
||||
{
|
||||
//Projekt
|
||||
echo '<tr>
|
||||
<td>'.$p->t("zeitaufzeichnung/projekt").'</td>
|
||||
<td colspan="4"><SELECT name="projekt" id="projekt">
|
||||
<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
|
||||
sort($projekt->result);
|
||||
foreach ($projekt->result as $row_projekt)
|
||||
{
|
||||
if ($projekt_kurzbz == $row_projekt->projekt_kurzbz || $filter == $row_projekt->projekt_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo '<option value="'.$db->convert_html_chars($row_projekt->projekt_kurzbz).'" '.$selected.'>'.$db->convert_html_chars($row_projekt->titel).'</option>';
|
||||
}
|
||||
echo '</SELECT><!--<input type="button" value="'.$p->t("zeitaufzeichnung/uebersicht").'" onclick="loaduebersicht();">--></td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
if($za_simple == 0)
|
||||
{
|
||||
//OE_KURZBZ_1
|
||||
echo '<tr><td nowrap>'.$p->t("zeitaufzeichnung/organisationseinheiten").'</td>
|
||||
<td colspan="3"><SELECT style="width:200px;" name="oe_kurzbz_1">';
|
||||
$oe = new organisationseinheit();
|
||||
$oe->getFrequent($user,'180','3',true);
|
||||
$trennlinie = true;
|
||||
|
||||
echo '<option value="">-- '.$p->t("zeitaufzeichnung/keineAuswahl").' --</option>';
|
||||
|
||||
foreach ($oe->result as $row)
|
||||
{
|
||||
if($row->oe_kurzbz == $oe_kurzbz_1)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
if($row->aktiv)
|
||||
$class='';
|
||||
else
|
||||
$class='class="inaktiv"';
|
||||
|
||||
if ($row->anzahl =='0' && $trennlinie==true)
|
||||
{
|
||||
echo '<OPTION value="" disabled="disabled">------------------------</OPTION>';
|
||||
$trennlinie = false;
|
||||
}
|
||||
echo '<option value="'.$db->convert_html_chars($row->oe_kurzbz).'" '.$selected.' '.$class.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->organisationseinheittyp_kurzbz).')</option>';
|
||||
}
|
||||
echo '</SELECT> ';
|
||||
|
||||
//OE_KURZBZ_2
|
||||
echo '<SELECT style="width:200px;" name="oe_kurzbz_2">';
|
||||
echo '<option value="">-- '.$p->t("zeitaufzeichnung/keineAuswahl").' --</option>';
|
||||
|
||||
$trennlinie = true;
|
||||
|
||||
foreach ($oe->result as $row)
|
||||
{
|
||||
if($oe_kurzbz_2 == $row->oe_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
if($row->aktiv)
|
||||
$class='';
|
||||
else
|
||||
$class='class="inaktiv"';
|
||||
|
||||
if ($row->anzahl =='0' && $trennlinie==true)
|
||||
{
|
||||
echo '<OPTION value="" disabled="disabled">------------------------</OPTION>';
|
||||
$trennlinie = false;
|
||||
}
|
||||
echo '<option value="'.$db->convert_html_chars($row->oe_kurzbz).'" '.$selected.' '.$class.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->organisationseinheittyp_kurzbz).')</option>';
|
||||
}
|
||||
echo '</SELECT></td></tr>';
|
||||
}
|
||||
|
||||
//Aktivitaet
|
||||
echo '<tr>';
|
||||
echo '<td>'.$p->t("zeitaufzeichnung/aktivitaet").'</td><td colspan="4">';
|
||||
@@ -936,49 +855,139 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
}
|
||||
echo '</td></tr>';
|
||||
|
||||
|
||||
if($za_simple >= 0)
|
||||
{
|
||||
$oestyle = '';
|
||||
if($za_simple == 0)
|
||||
$oestyle = 'style="width:200px;"';
|
||||
|
||||
//OE_KURZBZ_1
|
||||
echo '<tr><td nowrap>'.$p->t("zeitaufzeichnung/organisationseinheiten").'</td>
|
||||
<td colspan="3"><SELECT '.$oestyle.' name="oe_kurzbz_1">';
|
||||
$oe = new organisationseinheit();
|
||||
$oe->getFrequent($user,'180','3',true);
|
||||
$trennlinie = true;
|
||||
|
||||
echo '<option value="">-- '.$p->t("zeitaufzeichnung/keineAuswahl").' --</option>';
|
||||
|
||||
foreach ($oe->result as $row)
|
||||
{
|
||||
if($row->oe_kurzbz == $oe_kurzbz_1)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
if($row->aktiv)
|
||||
$class='';
|
||||
else
|
||||
$class='class="inaktiv"';
|
||||
|
||||
if ($row->anzahl =='0' && $trennlinie==true)
|
||||
{
|
||||
echo '<OPTION value="" disabled="disabled">------------------------</OPTION>';
|
||||
$trennlinie = false;
|
||||
}
|
||||
echo '<option value="'.$db->convert_html_chars($row->oe_kurzbz).'" '.$selected.' '.$class.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->organisationseinheittyp_kurzbz).')</option>';
|
||||
}
|
||||
echo '</SELECT> ';
|
||||
if($za_simple == 0)
|
||||
{
|
||||
//OE_KURZBZ_2
|
||||
echo '<SELECT style="width:200px;" name="oe_kurzbz_2">';
|
||||
echo '<option value="">-- '.$p->t("zeitaufzeichnung/keineAuswahl").' --</option>';
|
||||
|
||||
$trennlinie = true;
|
||||
|
||||
foreach ($oe->result as $row)
|
||||
{
|
||||
if($oe_kurzbz_2 == $row->oe_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
if($row->aktiv)
|
||||
$class='';
|
||||
else
|
||||
$class='class="inaktiv"';
|
||||
|
||||
if ($row->anzahl =='0' && $trennlinie==true)
|
||||
{
|
||||
echo '<OPTION value="" disabled="disabled">------------------------</OPTION>';
|
||||
$trennlinie = false;
|
||||
}
|
||||
echo '<option value="'.$db->convert_html_chars($row->oe_kurzbz).'" '.$selected.' '.$class.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->organisationseinheittyp_kurzbz).')</option>';
|
||||
}
|
||||
echo '</SELECT>';
|
||||
}
|
||||
echo '</td></tr>';
|
||||
}
|
||||
|
||||
//Projekte werden nicht angezeigt wenn es keine gibt
|
||||
if($anzprojekte > 0)
|
||||
{
|
||||
//Projekt
|
||||
echo '<tr>
|
||||
<td>'.$p->t("zeitaufzeichnung/projekt").'</td>
|
||||
<td colspan="4"><SELECT name="projekt" id="projekt">
|
||||
<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
|
||||
sort($projekt->result);
|
||||
foreach ($projekt->result as $row_projekt)
|
||||
{
|
||||
if ($projekt_kurzbz == $row_projekt->projekt_kurzbz || $filter == $row_projekt->projekt_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo '<option value="'.$db->convert_html_chars($row_projekt->projekt_kurzbz).'" '.$selected.'>'.$db->convert_html_chars($row_projekt->titel).'</option>';
|
||||
}
|
||||
echo '</SELECT><!--<input type="button" value="'.$p->t("zeitaufzeichnung/uebersicht").'" onclick="loaduebersicht();">--></td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
|
||||
if ($za_simple == 0)
|
||||
{
|
||||
// Service
|
||||
echo '<tr>
|
||||
<td>'.$p->t('zeitaufzeichnung/service').'</td>
|
||||
<td colspan="4"><SELECT name="service_id">
|
||||
<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
$trennlinie = true;
|
||||
$service = new service();
|
||||
$service->getFrequentServices($user, '180','3');
|
||||
foreach($service->result as $row)
|
||||
{
|
||||
if($row->service_id==$service_id)
|
||||
$selected='selected';
|
||||
else
|
||||
$selected='';
|
||||
|
||||
if ($row->anzahl =='0' && $trennlinie==true)
|
||||
// Service
|
||||
echo '<tr>
|
||||
<td>'.$p->t('zeitaufzeichnung/service').'</td>
|
||||
<td colspan="4"><SELECT name="service_id">
|
||||
<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
$trennlinie = true;
|
||||
$service = new service();
|
||||
$service->getFrequentServices($user, '180','3');
|
||||
foreach($service->result as $row)
|
||||
{
|
||||
echo '<OPTION value="" disabled="disabled">------------------------</OPTION>';
|
||||
$trennlinie = false;
|
||||
if($row->service_id==$service_id)
|
||||
$selected='selected';
|
||||
else
|
||||
$selected='';
|
||||
|
||||
if ($row->anzahl =='0' && $trennlinie==true)
|
||||
{
|
||||
echo '<OPTION value="" disabled="disabled">------------------------</OPTION>';
|
||||
$trennlinie = false;
|
||||
}
|
||||
echo '<OPTION title="'.$db->convert_html_chars($row->beschreibung).'" value="'.$db->convert_html_chars($row->service_id).'" '.$selected.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->oe_kurzbz.')').'</OPTION>';
|
||||
}
|
||||
echo '<OPTION title="'.$db->convert_html_chars($row->beschreibung).'" value="'.$db->convert_html_chars($row->service_id).'" '.$selected.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->oe_kurzbz.')').'</OPTION>';
|
||||
}
|
||||
echo '</SELECT></td>
|
||||
echo '</SELECT></td>
|
||||
</tr>';
|
||||
|
||||
// person für Kundenvoransicht laden
|
||||
$kunde_name = '';
|
||||
if($kunde_uid != '')
|
||||
{
|
||||
$user_kunde = new benutzer();
|
||||
|
||||
if($user_kunde->load($kunde_uid))
|
||||
$kunde_name=$user_kunde->vorname.' '.$user_kunde->nachname;
|
||||
}
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.$p->t("zeitaufzeichnung/kunde").'</td>
|
||||
<td colspan="3"><input type="text" id="kunde_name" value="'.$kunde_name.'" placeholder="'.$p->t("zeitaufzeichnung/nameEingeben").'"><input type ="hidden" id="kunde_uid" name="kunde_uid" value="'.$kunde_uid.'"> '.$p->t("zeitaufzeichnung/oderKartennummerOptional").'
|
||||
<input type="text" id="kartennummer" name="kartennummer" placeholder="'.$p->t("zeitaufzeichnung/kartennummer").'"></td>
|
||||
</tr>';
|
||||
|
||||
// person für Kundenvoransicht laden
|
||||
$kunde_name = '';
|
||||
if($kunde_uid != '')
|
||||
{
|
||||
$user_kunde = new benutzer();
|
||||
|
||||
if($user_kunde->load($kunde_uid))
|
||||
$kunde_name=$user_kunde->vorname.' '.$user_kunde->nachname;
|
||||
}
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.$p->t("zeitaufzeichnung/kunde").'</td>
|
||||
<td colspan="3"><input type="text" id="kunde_name" value="'.$kunde_name.'" placeholder="'.$p->t("zeitaufzeichnung/nameEingeben").'"><input type ="hidden" id="kunde_uid" name="kunde_uid" value="'.$kunde_uid.'"> '.$p->t("zeitaufzeichnung/oderKartennummerOptional").'
|
||||
<input type="text" id="kartennummer" name="kartennummer" placeholder="'.$p->t("zeitaufzeichnung/kartennummer").'"></td>
|
||||
</tr>';
|
||||
echo '<tr><td colspan="4"> </td></tr>';
|
||||
echo '<tr><td colspan="4"> </td></tr>';
|
||||
}
|
||||
|
||||
//Start/Ende
|
||||
@@ -1101,7 +1110,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
{
|
||||
//Uebersichtstabelle
|
||||
$woche=date('W');
|
||||
$colspan=($za_simple)?10:13;
|
||||
$colspan=($za_simple)?11:13;
|
||||
echo '
|
||||
<table id="t1" class="" style="width:100%">
|
||||
|
||||
@@ -1184,7 +1193,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
|
||||
$tagessaldo = $tagessaldo-$pausesumme;
|
||||
$tagessaldo = date('H:i', ($tagessaldo));
|
||||
$colspan = ($za_simple)?4:7;
|
||||
$colspan = ($za_simple)?5:7;
|
||||
echo '<tr id="tag_row_'.$datum->formatDatum($tag,'d_m_Y').'"><td '.$style.' colspan="'.$colspan.'")>';
|
||||
|
||||
// Zusaetzlicher span fuer Addon Informationen
|
||||
@@ -1259,7 +1268,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
|
||||
<!--</table>-->';
|
||||
|
||||
$colspan=($za_simple)?10:13;
|
||||
$colspan=($za_simple)?11:13;
|
||||
echo '
|
||||
<!--<table id="t'.$datumwoche.'" class="tablesorter">-->
|
||||
<tr><th colspan="'.$colspan.'"> </th></tr>
|
||||
@@ -1281,7 +1290,7 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
// Diestreisen NEU
|
||||
if (array_key_exists($datumtag, $dr_arr))
|
||||
{
|
||||
$colspan=($za_simple)?4:7;
|
||||
$colspan=($za_simple)?5: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');
|
||||
@@ -1339,10 +1348,10 @@ if($projekt->getProjekteMitarbeiter($user, true))
|
||||
<td '.$style.'>'.$db->convert_html_chars($row->zeitaufzeichnung_id).'</td>
|
||||
<td '.$style.'>'.$db->convert_html_chars($row->uid).'</td>
|
||||
<td '.$style.'>'.$db->convert_html_chars($row->projekt_kurzbz).'</td>';
|
||||
echo '<td '.$style.' > '.$db->convert_html_chars($row->oe_kurzbz_1).'</td>';
|
||||
if(!$za_simple)
|
||||
{
|
||||
echo '<td '.$style.' > '.$db->convert_html_chars($row->oe_kurzbz_1).'</td>
|
||||
<td '.$style.' > '.$db->convert_html_chars($row->oe_kurzbz_2).'</td>';
|
||||
echo '<td '.$style.' > '.$db->convert_html_chars($row->oe_kurzbz_2).'</td>';
|
||||
}
|
||||
echo '<td '.$style.'>'.$db->convert_html_chars($row->aktivitaet_kurzbz).'</td>';
|
||||
if(!$za_simple)
|
||||
@@ -1417,11 +1426,11 @@ function printTableHeadings($fieldheadings, $za_simple = false){
|
||||
echo '<tr>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['id'].'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['user'].'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['projekt'].'</th>';
|
||||
<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['projekt'].'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['oe1'].'</th>';
|
||||
if (!$za_simple)
|
||||
{
|
||||
echo '<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['oe1'].'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['oe2'].'</th>';
|
||||
echo '<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['oe2'].'</th>';
|
||||
}
|
||||
echo '<th style="background-color:#DCE4EF" align="center">'.$fieldheadings['aktivitaet'].'</th>';
|
||||
if (!$za_simple)
|
||||
@@ -1477,7 +1486,7 @@ function getDataForCSV($rawdata, $fieldheadings, $za_simple = false)
|
||||
$datum = new datum();
|
||||
$csvData = array();
|
||||
//headers schreiben
|
||||
$csvData[] = ($za_simple) ? array($fieldheadings['user'], $fieldheadings['datum'], $fieldheadings['start'], $fieldheadings['ende'], $fieldheadings['projekt'], $fieldheadings['aktivitaet'], $fieldheadings['beschreibung'])
|
||||
$csvData[] = ($za_simple) ? array($fieldheadings['user'], $fieldheadings['datum'], $fieldheadings['start'], $fieldheadings['ende'], $fieldheadings['projekt'], $fieldheadings['oe1'], $fieldheadings['aktivitaet'], $fieldheadings['beschreibung'])
|
||||
: array($fieldheadings['user'], $fieldheadings['datum'], $fieldheadings['start'], $fieldheadings['ende'], $fieldheadings['projekt'], $fieldheadings['oe1'], $fieldheadings['oe2'], $fieldheadings['aktivitaet'], $fieldheadings['service'], $fieldheadings['kunde'], $fieldheadings['beschreibung']);
|
||||
foreach ($rawdata as $zeitauf)
|
||||
{
|
||||
@@ -1491,7 +1500,7 @@ function getDataForCSV($rawdata, $fieldheadings, $za_simple = false)
|
||||
if($za_simple)
|
||||
{
|
||||
$csvData[] = array($zeitauf->uid, $hauptdatum, $datum->formatDatum($zeitauf->start, 'H:i'),
|
||||
$bisdatum, $zeitauf->projekt_kurzbz, $zeitauf->aktivitaet_kurzbz, $beschreibung);
|
||||
$bisdatum, $zeitauf->projekt_kurzbz, $zeitauf->oe_kurzbz_1, $zeitauf->aktivitaet_kurzbz, $beschreibung);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
+12
-12
@@ -183,13 +183,13 @@ if (isset($_SESSION['pruefling_id']))
|
||||
|
||||
/* Filter out all Abgewiesene */
|
||||
AND NOT EXISTS (
|
||||
SELECT
|
||||
1
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
tbl_prestudentstatus
|
||||
WHERE
|
||||
status_kurzbz = 'Abgewiesener'
|
||||
AND
|
||||
WHERE
|
||||
status_kurzbz = 'Abgewiesener'
|
||||
AND
|
||||
prestudent_id = ps_status.prestudent_id
|
||||
)
|
||||
|
||||
@@ -220,7 +220,7 @@ if (isset($_SESSION['pruefling_id']))
|
||||
)
|
||||
|
||||
|
||||
SELECT DISTINCT ON
|
||||
SELECT DISTINCT ON
|
||||
(gebiet_id, semester)
|
||||
semester,
|
||||
gebiet_id,
|
||||
@@ -231,7 +231,7 @@ if (isset($_SESSION['pruefling_id']))
|
||||
FROM (
|
||||
SELECT
|
||||
*
|
||||
FROM (
|
||||
FROM (
|
||||
(SELECT
|
||||
prestudent_data.semester AS ps_sem,
|
||||
gebiet_id,
|
||||
@@ -252,9 +252,9 @@ if (isset($_SESSION['pruefling_id']))
|
||||
OR
|
||||
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
|
||||
)
|
||||
|
||||
|
||||
UNION
|
||||
|
||||
|
||||
(
|
||||
SELECT
|
||||
prestudent_data.semester AS ps_sem,
|
||||
@@ -278,7 +278,7 @@ if (isset($_SESSION['pruefling_id']))
|
||||
)
|
||||
) temp
|
||||
) temp2
|
||||
|
||||
|
||||
GROUP BY
|
||||
semester,
|
||||
gebiet_id,
|
||||
@@ -425,7 +425,7 @@ else
|
||||
// show message to use Mozilla Firefox
|
||||
if ((ua.indexOf("Firefox") > -1) == false)
|
||||
{
|
||||
let hasMathML = "<?php echo $gebiet_hasMathML; ?>";
|
||||
let hasMathML = "<?php echo (isset($gebiet_hasMathML)?$gebiet_hasMathML:''); ?>";
|
||||
let userLang = "<?php echo $sprache_user; ?>";
|
||||
if (hasMathML == true)
|
||||
{
|
||||
@@ -442,7 +442,7 @@ else
|
||||
|
||||
// Error massage if check_gebiet function returns false
|
||||
$(function() {
|
||||
var invalid_gebiete = "<?php echo $invalid_gebiete; ?>";
|
||||
var invalid_gebiete = "<?php echo (isset($invalid_gebiete)?$invalid_gebiete:''); ?>";
|
||||
if(invalid_gebiete == true)
|
||||
{
|
||||
$('#tr-einleitung').append('' +
|
||||
|
||||
@@ -0,0 +1,221 @@
|
||||
<?php
|
||||
/* Copyright (C) 2011 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Karl Burkhart <karl.burkhart@technikum-wien.at>.
|
||||
*/
|
||||
/**
|
||||
* Zeigt eine Übersichtsliste für alle Content-Einträge an
|
||||
*/
|
||||
require_once('../config/cis.config.inc.php');
|
||||
require_once('../config/global.config.inc.php');
|
||||
require_once('../include/content.class.php');
|
||||
require_once('../include/template.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/phrasen.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
echo '<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../skin/style.css.php" rel="stylesheet" type="text/css">';
|
||||
|
||||
include('../include/meta/jquery.php');
|
||||
include('../include/meta/jquery-tablesorter.php');
|
||||
|
||||
echo ' </head>
|
||||
<script type="text/javascript">
|
||||
// For correct sorting of Umlauts
|
||||
$.tablesorter.characterEquivalents = {
|
||||
"a" : "\u00e1\u00e0\u00e2\u00e3\u00e4\u0105\u00e5", // áàâãäąå
|
||||
"A" : "\u00c1\u00c0\u00c2\u00c3\u00c4\u0104\u00c5", // ÁÀÂÃÄĄÅ
|
||||
"c" : "\u00e7\u0107\u010d", // çćč
|
||||
"C" : "\u00c7\u0106\u010c", // ÇĆČ
|
||||
"e" : "\u00e9\u00e8\u00ea\u00eb\u011b\u0119", // éèêëěę
|
||||
"E" : "\u00c9\u00c8\u00ca\u00cb\u011a\u0118", // ÉÈÊËĚĘ
|
||||
"i" : "\u00ed\u00ec\u0130\u00ee\u00ef\u0131", // íìİîïı
|
||||
"I" : "\u00cd\u00cc\u0130\u00ce\u00cf", // ÍÌİÎÏ
|
||||
"o" : "\u00f3\u00f2\u00f4\u00f5\u00f6\u014d", // óòôõöō
|
||||
"O" : "\u00d3\u00d2\u00d4\u00d5\u00d6\u014c", // ÓÒÔÕÖŌ
|
||||
"ss": "\u00df", // ß (s sharp)
|
||||
"SS": "\u1e9e", // ẞ (Capital sharp s)
|
||||
"u" : "\u00fa\u00f9\u00fb\u00fc\u016f", // úùûüů
|
||||
"U" : "\u00da\u00d9\u00db\u00dc\u016e" // ÚÙÛÜŮ
|
||||
};
|
||||
$.tablesorter.addParser({
|
||||
id: "customDate",
|
||||
is: function(s) {
|
||||
//return false;
|
||||
//use the above line if you don\'t want table sorter to auto detected this parser
|
||||
//else use the below line.
|
||||
//attention: doesn\'t check for invalid stuff
|
||||
//2009-77-77 77:77:77.0 would also be matched
|
||||
//if that doesn\'t suit you alter the regex to be more restrictive
|
||||
//return /\d{1,4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}\.\d+/.test(s);
|
||||
return /\d{1,4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2} .*/.test(s);
|
||||
},
|
||||
format: function(s) {
|
||||
s = s.replace(/\-/g," ");
|
||||
s = s.replace(/:/g," ");
|
||||
s = s.replace(/\./g," ");
|
||||
s = s.split(" ");
|
||||
return $.tablesorter.formatFloat(new Date(s[0], s[1]-1, s[2], s[3], s[4], s[5]).getTime());
|
||||
},
|
||||
type: "numeric"
|
||||
});
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[1,0],[0,1]],
|
||||
widgets: ["zebra", "filter", "stickyHeaders"],
|
||||
headers: { 5: { sorter: "customDate"}, 10: { sorter: "customDate"}},
|
||||
sortLocaleCompare : true
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
table.tablesorter tbody td
|
||||
{
|
||||
padding: 5px;
|
||||
}
|
||||
</style>
|
||||
<body>
|
||||
<div style="padding: 10px">
|
||||
<h1>Content-Übersicht</h1>';
|
||||
echo '<br><br><table class="tablesorter" id="t1"><thead>';
|
||||
echo '<tr>';
|
||||
echo ' <th>Content ID</th>
|
||||
<th>Titel</th>
|
||||
<th>Art</th>
|
||||
<th>OE</th>
|
||||
<th>Content-Aktiv</th>
|
||||
<th>Eingefügt</th>
|
||||
<th>Aktualisiert</th>
|
||||
<th>Verwendet in</th>
|
||||
<th>Sprache</th>
|
||||
<th>Version</th>
|
||||
<th>Eingefügt</th>
|
||||
<th>Aktualisiert</th>
|
||||
<th>Version sichtbar</th>';
|
||||
echo '</tr></thead><tbody>';
|
||||
|
||||
$qry = "
|
||||
SELECT
|
||||
content.content_id,
|
||||
tbl_contentsprache.titel,
|
||||
content.template_kurzbz,
|
||||
content.oe_kurzbz,
|
||||
content.aktiv,
|
||||
content.insertamum||' von '||content.insertvon AS content_eingefuegt,
|
||||
content.updateamum||' von '||content.updatevon AS content_aktualisiert,
|
||||
(
|
||||
SELECT ARRAY_TO_STRING(array_agg(verwendung), '<br>') AS verwendung_in
|
||||
FROM (
|
||||
SELECT
|
||||
'Infoscreen ID'||infoscreen_id AS art
|
||||
FROM campus.tbl_infoscreen_content
|
||||
WHERE content_id=content.content_id
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
'Software ID'||software_id AS art
|
||||
FROM addon.tbl_software
|
||||
WHERE content_id=content.content_id
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
'Ort '||ort_kurzbz AS art
|
||||
FROM public.tbl_ort
|
||||
WHERE content_id=content.content_id
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
'Service ID'||service_id AS art
|
||||
FROM public.tbl_service
|
||||
WHERE content_id=content.content_id
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
'Statistik '||statistik_kurzbz AS art
|
||||
FROM public.tbl_statistik
|
||||
WHERE content_id=content.content_id
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
'Gebiet '||tbl_gebiet.bezeichnung||' in Studiengang '||tbl_ablauf.studiengang_kz AS art
|
||||
FROM testtool.tbl_ablauf_vorgaben
|
||||
JOIN testtool.tbl_ablauf USING (ablauf_vorgaben_id)
|
||||
JOIN testtool.tbl_gebiet USING (gebiet_id)
|
||||
WHERE content_id=content.content_id
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
'Verlinkung von '||content_id AS art
|
||||
FROM campus.tbl_contentsprache
|
||||
WHERE content::text LIKE '%content.php?content_id='||content.content_id||'%'
|
||||
/*WHERE content::text ~* '[\w\d\s]*content\.php\?content_id=1245[\w\d\s]*'*/
|
||||
) verwendung
|
||||
) AS verwendung_in,
|
||||
tbl_contentsprache.sprache,
|
||||
tbl_contentsprache.version,
|
||||
tbl_contentsprache.insertamum||' von '||tbl_contentsprache.insertvon AS contentsprache_eingefuegt,
|
||||
tbl_contentsprache.updateamum||' von '||tbl_contentsprache.updatevon AS contentsprache_aktualisiert,
|
||||
tbl_contentsprache.sichtbar
|
||||
FROM campus.tbl_content content
|
||||
JOIN campus.tbl_contentsprache USING (content_id)
|
||||
WHERE version=campus.get_highest_content_version (content.content_id)
|
||||
AND template_kurzbz NOT IN ('news')
|
||||
/*ORDER BY content_id ASC, sprache DESC, version DESC
|
||||
LIMIT 200*/";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
while ($row = $db->db_fetch_object())
|
||||
{
|
||||
echo ' <tr>
|
||||
<td>'.$row->content_id.'</td>
|
||||
<td>'.$row->titel.'</td>
|
||||
<td>'.$row->template_kurzbz.'</td>
|
||||
<td>'.$row->oe_kurzbz.'</td>
|
||||
<td>'.($row->aktiv == 't' ? 'Ja':'Nein').'</td>
|
||||
<td>'.$row->content_eingefuegt.'</td>
|
||||
<td>'.$row->content_aktualisiert.'</td>
|
||||
<td>'.$row->verwendung_in.'</td>
|
||||
<td>'.$row->sprache.'</td>
|
||||
<td>'.$row->version.'</td>
|
||||
<td>'.$row->contentsprache_eingefuegt.'</td>
|
||||
<td>'.$row->contentsprache_aktualisiert.'</td>
|
||||
<td>'.($row->sichtbar == 't' ? 'Ja':'Nein').'</td>
|
||||
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
echo ' </div></body>
|
||||
</html>';
|
||||
|
||||
|
||||
?>
|
||||
+1
-2
@@ -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>';
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -168,7 +168,7 @@
|
||||
"name": "nicolaskruchten/pivottable",
|
||||
"version": "2.15.0",
|
||||
"dist": {
|
||||
"url": "https://github.com/nicolaskruchten/pivottable/archive/v2.15.0.zip",
|
||||
"url": "https://github.com/nicolaskruchten/pivottable/archive/v2.21.0.zip",
|
||||
"type": "zip"
|
||||
}
|
||||
}
|
||||
@@ -258,7 +258,7 @@
|
||||
|
||||
"nategood/httpful": "^0.2.20",
|
||||
"netcarver/textile": "^3.5",
|
||||
"nicolaskruchten/pivottable": "^2.15.0",
|
||||
"nicolaskruchten/pivottable": "^2.21.0",
|
||||
|
||||
"phpseclib/phpseclib": "^2.0",
|
||||
|
||||
|
||||
Generated
+100
-75
@@ -4,8 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"hash": "ddbbad487c655512e6983408339cb85f",
|
||||
"content-hash": "b5902c71fe21cd14397101dba5a3080c",
|
||||
"content-hash": "ad1bf16a24075268ce1cf2a033f9e7fb",
|
||||
"packages": [
|
||||
{
|
||||
"name": "BlackrockDigital/startbootstrap-sb-admin-2",
|
||||
@@ -47,7 +46,7 @@
|
||||
],
|
||||
"description": "Defacto way to enable use of HTML5 sectioning elements in legacy Internet Explorer.",
|
||||
"homepage": "http://paulirish.com/2011/the-history-of-the-html5-shiv/",
|
||||
"time": "2015-07-20 20:04:00"
|
||||
"time": "2015-07-20T20:04:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "alvaro-prieto/colResizable",
|
||||
@@ -87,7 +86,7 @@
|
||||
},
|
||||
"type": "library",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"time": "2016-09-02 11:31:54"
|
||||
"time": "2016-09-02T11:31:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "codeigniter/framework",
|
||||
@@ -120,7 +119,7 @@
|
||||
],
|
||||
"description": "The CodeIgniter framework",
|
||||
"homepage": "https://codeigniter.com",
|
||||
"time": "2019-01-16 15:49:35"
|
||||
"time": "2019-01-16T15:49:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "components/angular.js",
|
||||
@@ -424,7 +423,7 @@
|
||||
],
|
||||
"description": "Shim repository for Angular.js",
|
||||
"homepage": "http://angularjs.org",
|
||||
"time": "2015-06-07 20:10:38"
|
||||
"time": "2015-06-07T20:10:38+00:00"
|
||||
},
|
||||
{
|
||||
"name": "components/font-awesome",
|
||||
@@ -459,7 +458,7 @@
|
||||
"OFL-1.1"
|
||||
],
|
||||
"description": "The iconic font designed for use with Twitter Bootstrap.",
|
||||
"time": "2016-10-25 10:56:23"
|
||||
"time": "2016-10-25T10:56:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "components/jquery",
|
||||
@@ -501,7 +500,7 @@
|
||||
],
|
||||
"description": "jQuery JavaScript Library",
|
||||
"homepage": "http://jquery.com",
|
||||
"time": "2018-03-04 13:23:48"
|
||||
"time": "2018-03-04T13:23:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "components/jqueryui",
|
||||
@@ -586,7 +585,7 @@
|
||||
}
|
||||
],
|
||||
"description": "jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library. Whether you're building highly interactive web applications or you just need to add a date picker to a form control, jQuery UI is the perfect choice.",
|
||||
"time": "2016-09-16 05:47:55"
|
||||
"time": "2016-09-16T05:47:55+00:00"
|
||||
},
|
||||
{
|
||||
"name": "easyrdf/easyrdf",
|
||||
@@ -648,7 +647,7 @@
|
||||
"rdfa",
|
||||
"sparql"
|
||||
],
|
||||
"time": "2015-02-27 09:45:49"
|
||||
"time": "2015-02-27T09:45:49+00:00"
|
||||
},
|
||||
{
|
||||
"name": "fgelinas/timepicker",
|
||||
@@ -658,6 +657,12 @@
|
||||
"url": "https://github.com/fgelinas/timepicker",
|
||||
"reference": "9aebe413b784696639220bc36b7c1e8a30fda129"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://fgelinas.com/code/timepicker/releases/jquery-ui-timepicker-0.3.3.zip",
|
||||
"reference": null,
|
||||
"shasum": null
|
||||
},
|
||||
"type": "library"
|
||||
},
|
||||
{
|
||||
@@ -708,7 +713,7 @@
|
||||
"faker",
|
||||
"fixtures"
|
||||
],
|
||||
"time": "2018-07-12 10:23:15"
|
||||
"time": "2018-07-12T10:23:15+00:00"
|
||||
},
|
||||
{
|
||||
"name": "joeldbirch/superfish",
|
||||
@@ -850,7 +855,7 @@
|
||||
"json",
|
||||
"schema"
|
||||
],
|
||||
"time": "2014-08-25 02:48:14"
|
||||
"time": "2014-08-25T02:48:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "kevinlebrun/colors.php",
|
||||
@@ -901,7 +906,7 @@
|
||||
"console",
|
||||
"shell"
|
||||
],
|
||||
"time": "2018-05-30 08:34:23"
|
||||
"time": "2018-05-30T08:34:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "kingsquare/json-schema-form",
|
||||
@@ -935,17 +940,11 @@
|
||||
}
|
||||
],
|
||||
"description": "A framework-agnostic PHP Implementation for generating simple forms based on json-schema",
|
||||
"time": "2014-07-10 12:27:19"
|
||||
"time": "2014-07-10T12:27:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ludo/jquery-treetable",
|
||||
"version": "3.2.0",
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/ludo/jquery-treetable/archive/3.2.0.zip",
|
||||
"reference": null,
|
||||
"shasum": null
|
||||
},
|
||||
"type": "library"
|
||||
},
|
||||
{
|
||||
@@ -997,7 +996,7 @@
|
||||
"keywords": [
|
||||
"markdown"
|
||||
],
|
||||
"time": "2015-03-01 12:03:08"
|
||||
"time": "2015-03-01T12:03:08+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ml/iri",
|
||||
@@ -1044,7 +1043,7 @@
|
||||
"uri",
|
||||
"url"
|
||||
],
|
||||
"time": "2014-01-21 13:43:39"
|
||||
"time": "2014-01-21T13:43:39+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ml/json-ld",
|
||||
@@ -1093,7 +1092,7 @@
|
||||
"JSON-LD",
|
||||
"jsonld"
|
||||
],
|
||||
"time": "2018-11-18 20:26:18"
|
||||
"time": "2018-11-18T20:26:18+00:00"
|
||||
},
|
||||
{
|
||||
"name": "mottie/tablesorter",
|
||||
@@ -1144,7 +1143,7 @@
|
||||
"sorting",
|
||||
"table"
|
||||
],
|
||||
"time": "2018-11-20 21:54:28"
|
||||
"time": "2018-11-20T21:54:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nategood/httpful",
|
||||
@@ -1194,7 +1193,7 @@
|
||||
"rest",
|
||||
"restful"
|
||||
],
|
||||
"time": "2015-10-26 16:11:30"
|
||||
"time": "2015-10-26T16:11:30+00:00"
|
||||
},
|
||||
{
|
||||
"name": "netcarver/textile",
|
||||
@@ -1247,18 +1246,50 @@
|
||||
"plaintext",
|
||||
"textile"
|
||||
],
|
||||
"time": "2019-01-26 17:03:58"
|
||||
"time": "2019-01-26T17:03:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nicolaskruchten/pivottable",
|
||||
"version": "2.15.0",
|
||||
"version": "v2.23.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nicolaskruchten/pivottable.git",
|
||||
"reference": "a9cabee5382be0aaf0984ac906d9fa2e0376d2c1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/nicolaskruchten/pivottable/archive/v2.15.0.zip",
|
||||
"reference": null,
|
||||
"shasum": null
|
||||
"url": "https://api.github.com/repos/nicolaskruchten/pivottable/zipball/a9cabee5382be0aaf0984ac906d9fa2e0376d2c1",
|
||||
"reference": "a9cabee5382be0aaf0984ac906d9fa2e0376d2c1",
|
||||
"shasum": ""
|
||||
},
|
||||
"type": "library"
|
||||
"require": {
|
||||
"components/jquery": ">=1.9"
|
||||
},
|
||||
"type": "library",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nicolas Kruchten",
|
||||
"email": "nicolas@kruchten.com"
|
||||
}
|
||||
],
|
||||
"description": "Javascript Pivot Table (aka Pivot Grid, Pivot Chart, Cross-Tab) implementation with drag'n'drop.",
|
||||
"homepage": "https://pivottable.js.org/",
|
||||
"keywords": [
|
||||
"crosstab",
|
||||
"grid",
|
||||
"jquery",
|
||||
"jquery-plugin",
|
||||
"pivot",
|
||||
"pivotchart",
|
||||
"pivotgrid",
|
||||
"pivottable",
|
||||
"table"
|
||||
],
|
||||
"time": "2018-11-04T18:21:09+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpseclib/phpseclib",
|
||||
@@ -1305,28 +1336,28 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "Jim Wigginton",
|
||||
"email": "terrafrost@php.net",
|
||||
"role": "Lead Developer"
|
||||
"role": "Lead Developer",
|
||||
"email": "terrafrost@php.net"
|
||||
},
|
||||
{
|
||||
"name": "Patrick Monnerat",
|
||||
"email": "pm@datasphere.ch",
|
||||
"role": "Developer"
|
||||
"role": "Developer",
|
||||
"email": "pm@datasphere.ch"
|
||||
},
|
||||
{
|
||||
"name": "Andreas Fischer",
|
||||
"email": "bantu@phpbb.com",
|
||||
"role": "Developer"
|
||||
"role": "Developer",
|
||||
"email": "bantu@phpbb.com"
|
||||
},
|
||||
{
|
||||
"name": "Hans-Jürgen Petrich",
|
||||
"email": "petrich@tronic-media.com",
|
||||
"role": "Developer"
|
||||
"role": "Developer",
|
||||
"email": "petrich@tronic-media.com"
|
||||
},
|
||||
{
|
||||
"name": "Graham Campbell",
|
||||
"email": "graham@alt-three.com",
|
||||
"role": "Developer"
|
||||
"role": "Developer",
|
||||
"email": "graham@alt-three.com"
|
||||
}
|
||||
],
|
||||
"description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.",
|
||||
@@ -1350,7 +1381,7 @@
|
||||
"x.509",
|
||||
"x509"
|
||||
],
|
||||
"time": "2019-03-10 16:53:45"
|
||||
"time": "2019-03-10T16:53:45+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/log",
|
||||
@@ -1397,7 +1428,7 @@
|
||||
"psr",
|
||||
"psr-3"
|
||||
],
|
||||
"time": "2018-11-20 15:27:04"
|
||||
"time": "2018-11-20T15:27:04+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rdlowrey/auryn",
|
||||
@@ -1458,17 +1489,11 @@
|
||||
"dic",
|
||||
"ioc"
|
||||
],
|
||||
"time": "2017-05-15 06:26:46"
|
||||
"time": "2017-05-15T06:26:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rmariuzzo/jquery-checkboxes",
|
||||
"version": "1.0.7",
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/rmariuzzo/checkboxes.js/archive/v1.0.7.zip",
|
||||
"reference": null,
|
||||
"shasum": null
|
||||
},
|
||||
"type": "library"
|
||||
},
|
||||
{
|
||||
@@ -1520,7 +1545,7 @@
|
||||
"php",
|
||||
"template"
|
||||
],
|
||||
"time": "2016-02-01 16:31:13"
|
||||
"time": "2016-02-01T16:31:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rougin/combustor",
|
||||
@@ -1585,7 +1610,7 @@
|
||||
"generator",
|
||||
"php"
|
||||
],
|
||||
"time": "2016-02-14 10:36:58"
|
||||
"time": "2016-02-14T10:36:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rougin/describe",
|
||||
@@ -1638,7 +1663,7 @@
|
||||
"describe",
|
||||
"php"
|
||||
],
|
||||
"time": "2016-03-24 18:17:47"
|
||||
"time": "2016-03-24T18:17:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rougin/refinery",
|
||||
@@ -1703,7 +1728,7 @@
|
||||
"php",
|
||||
"refinery"
|
||||
],
|
||||
"time": "2016-03-04 16:55:32"
|
||||
"time": "2016-03-04T16:55:32+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rougin/spark-plug",
|
||||
@@ -1762,7 +1787,7 @@
|
||||
"php",
|
||||
"spark-plug"
|
||||
],
|
||||
"time": "2015-10-23 08:27:10"
|
||||
"time": "2015-10-23T08:27:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "scottjehl/Respond",
|
||||
@@ -1834,7 +1859,7 @@
|
||||
],
|
||||
"description": "Symfony Console Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2018-11-20 15:55:20"
|
||||
"time": "2018-11-20T15:55:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/debug",
|
||||
@@ -1891,7 +1916,7 @@
|
||||
],
|
||||
"description": "Symfony Debug Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2016-07-30 07:22:48"
|
||||
"time": "2016-07-30T07:22:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-ctype",
|
||||
@@ -1949,7 +1974,7 @@
|
||||
"polyfill",
|
||||
"portable"
|
||||
],
|
||||
"time": "2019-02-06 07:57:58"
|
||||
"time": "2019-02-06T07:57:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-mbstring",
|
||||
@@ -2008,7 +2033,7 @@
|
||||
"portable",
|
||||
"shim"
|
||||
],
|
||||
"time": "2019-02-06 07:57:58"
|
||||
"time": "2019-02-06T07:57:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
@@ -2058,7 +2083,7 @@
|
||||
],
|
||||
"description": "Symfony Yaml Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2018-11-11 11:18:13"
|
||||
"time": "2018-11-11T11:18:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "tapmodo/Jcrop",
|
||||
@@ -2115,7 +2140,7 @@
|
||||
"tinymce",
|
||||
"wysiwyg"
|
||||
],
|
||||
"time": "2019-03-20 13:56:58"
|
||||
"time": "2019-03-20T13:56:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "tomazdragar/SimpleCropper",
|
||||
@@ -2176,7 +2201,7 @@
|
||||
"responsive",
|
||||
"web"
|
||||
],
|
||||
"time": "2019-02-13 15:55:38"
|
||||
"time": "2019-02-13T15:55:38+00:00"
|
||||
},
|
||||
{
|
||||
"name": "twig/twig",
|
||||
@@ -2222,19 +2247,19 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"role": "Lead Developer",
|
||||
"email": "fabien@symfony.com",
|
||||
"homepage": "http://fabien.potencier.org",
|
||||
"role": "Lead Developer"
|
||||
"homepage": "http://fabien.potencier.org"
|
||||
},
|
||||
{
|
||||
"name": "Armin Ronacher",
|
||||
"email": "armin.ronacher@active-4.com",
|
||||
"role": "Project Founder"
|
||||
"role": "Project Founder",
|
||||
"email": "armin.ronacher@active-4.com"
|
||||
},
|
||||
{
|
||||
"name": "Twig Team",
|
||||
"homepage": "https://twig.symfony.com/contributors",
|
||||
"role": "Contributors"
|
||||
"role": "Contributors",
|
||||
"homepage": "https://twig.symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Twig, the flexible, fast, and secure template language for PHP",
|
||||
@@ -2242,7 +2267,7 @@
|
||||
"keywords": [
|
||||
"templating"
|
||||
],
|
||||
"time": "2019-05-14 11:59:08"
|
||||
"time": "2019-05-14T11:59:08+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zetacomponents/base",
|
||||
@@ -2306,7 +2331,7 @@
|
||||
],
|
||||
"description": "The Base package provides the basic infrastructure that all packages rely on. Therefore every component relies on this package.",
|
||||
"homepage": "https://github.com/zetacomponents",
|
||||
"time": "2017-11-28 11:30:00"
|
||||
"time": "2017-11-28T11:30:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zetacomponents/database",
|
||||
@@ -2383,7 +2408,7 @@
|
||||
],
|
||||
"description": "A lightweight database layer on top of PHP's PDO that allows you to utilize a database without having to take care of differences in SQL dialects.",
|
||||
"homepage": "https://github.com/zetacomponents",
|
||||
"time": "2017-11-28 10:55:26"
|
||||
"time": "2017-11-28T10:55:26+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zetacomponents/document",
|
||||
@@ -2434,7 +2459,7 @@
|
||||
],
|
||||
"description": "The Document components provides a general conversion framework for different semantic document markup languages like XHTML, Docbook, RST and similar.",
|
||||
"homepage": "https://github.com/zetacomponents",
|
||||
"time": "2013-12-19 11:40:00"
|
||||
"time": "2013-12-19T11:40:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zetacomponents/workflow",
|
||||
@@ -2500,7 +2525,7 @@
|
||||
],
|
||||
"description": "The purpose of the Workflow component is to provide the core functionality of an activity-based workflow system including the definition and execution of workflow specifications.",
|
||||
"homepage": "https://github.com/zetacomponents",
|
||||
"time": "2014-09-27 19:26:10"
|
||||
"time": "2014-09-27T19:26:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zetacomponents/workflow-database-tiein",
|
||||
@@ -2567,7 +2592,7 @@
|
||||
],
|
||||
"description": "Contains the database backend for the Workflow component.",
|
||||
"homepage": "https://github.com/zetacomponents",
|
||||
"time": "2014-09-27 19:26:10"
|
||||
"time": "2014-09-27T19:26:10+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zetacomponents/workflow-event-log-tiein",
|
||||
@@ -2627,7 +2652,7 @@
|
||||
],
|
||||
"description": "Contains the EventLog listener for the Workflow component.",
|
||||
"homepage": "https://github.com/zetacomponents",
|
||||
"time": "2007-12-17 09:04:44"
|
||||
"time": "2007-12-17T09:04:44+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [],
|
||||
|
||||
@@ -259,8 +259,4 @@ define('STATUSGRUND_ID_EINSTIEG_SOMMERSEMESTER', null);
|
||||
|
||||
// Studiengangs_kz des Studiengangs "Qualifikationskurse". Der Studiengang hat eine Sonderstellung zB für das Bewerbungstool.
|
||||
define('STUDIENGANG_KZ_QUALIFIKATIONKURSE', null);
|
||||
|
||||
// EinsteigerInnen ins Sommersemester werden mit einem Statusgrund versehen.
|
||||
// Die ID dieses Statusgrundes kann hier eingegeben werden. Es wird zB vom Infocenter-Tool gesetzt und im Bewerbungstool abgefragt
|
||||
define('STATUSGRUND_ID_EINSTIEG_SOMMERSEMESTER', null);
|
||||
?>
|
||||
|
||||
@@ -168,7 +168,7 @@ if(isset($_POST['submitbild']))
|
||||
if(isset($_GET['person_id']))
|
||||
{
|
||||
$dokument = new dokument();
|
||||
$dokument->getAllDokumente('Zeugnis');
|
||||
$dokument->getAllDokumente('Zeugnis,DiplSupp,Bescheid');
|
||||
|
||||
echo " <!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>
|
||||
<html>
|
||||
|
||||
@@ -1573,7 +1573,7 @@ function OpenAboutDialog()
|
||||
// ****
|
||||
function OpenManual()
|
||||
{
|
||||
window.open('http://fhcomplete.technikum-wien.at/dokuwiki/doku.php?','_blank');
|
||||
window.open('https://wiki.fhcomplete.org/doku.php?','_blank');
|
||||
}
|
||||
|
||||
// ****
|
||||
|
||||
@@ -1550,8 +1550,8 @@ if(!$error)
|
||||
$gruppe->semester = $lva->semester;
|
||||
$gruppe->bezeichnung = $bezeichnung;
|
||||
$gruppe->aktiv = true;
|
||||
$gruppe->mailgrp = false;
|
||||
$gruppe->sichtbar = true;
|
||||
$gruppe->mailgrp = true;
|
||||
$gruppe->sichtbar = false;
|
||||
$gruppe->generiert = false;
|
||||
$gruppe->insertamum = date('Y-m-d H:i:s');
|
||||
$gruppe->insertvon = $user;
|
||||
@@ -1678,7 +1678,7 @@ if(!$error)
|
||||
$qry = "
|
||||
DELETE FROM lehre.tbl_stundenplandev
|
||||
WHERE gruppe_kurzbz=".$db->db_add_param($gruppe_kurzbz);
|
||||
|
||||
|
||||
$db->db_query($qry);
|
||||
}
|
||||
else
|
||||
|
||||
+22
-22
@@ -36,7 +36,7 @@ function Progressmeter(progress_id)
|
||||
var runningprogress=0;
|
||||
this.StopPM=StopPM;
|
||||
this.StartPM=StartPM;
|
||||
|
||||
|
||||
function StartPM()
|
||||
{
|
||||
// Progressmeter starten.
|
||||
@@ -49,7 +49,7 @@ function Progressmeter(progress_id)
|
||||
runningprogress--;
|
||||
if(runningprogress<0)
|
||||
runningprogress=0;
|
||||
|
||||
|
||||
// Progressmeter stoppen wenn alle fertig sind
|
||||
if(runningprogress==0)
|
||||
document.getElementById(id).setAttribute('mode','determined');
|
||||
@@ -70,7 +70,7 @@ function closeWindow()
|
||||
}
|
||||
|
||||
MitarbeiterDetailValueChanged=false;
|
||||
|
||||
|
||||
window.close();
|
||||
}
|
||||
|
||||
@@ -128,7 +128,7 @@ function loadURL(event)
|
||||
// ****
|
||||
function stpltableChange(db_stpl_table)
|
||||
{
|
||||
variableChange('db_stpl_table', null, db_stpl_table);
|
||||
variableChange('db_stpl_table', null, db_stpl_table);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ function studiensemesterChange(stsem, wert)
|
||||
if(typeof(stsem)=='undefined')
|
||||
{
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].id=='menu-properies-studiensemester-name' && items[i].getAttribute("checked")=='true')
|
||||
@@ -157,7 +157,7 @@ function studiensemesterChange(stsem, wert)
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
@@ -165,7 +165,7 @@ function studiensemesterChange(stsem, wert)
|
||||
req.add('type', 'variablechange');
|
||||
req.add('stsem', stsem);
|
||||
req.add('wert', wert);
|
||||
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
@@ -184,7 +184,7 @@ function studiensemesterChange(stsem, wert)
|
||||
document.getElementById("statusbarpanel-semester").label = val.dbdml_data;
|
||||
//Menue setzen
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].label==val.dbdml_data && items[i].id=='menu-properies-studiensemester-name')
|
||||
@@ -201,7 +201,7 @@ function studiensemesterChange(stsem, wert)
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
LvTreeRefresh();
|
||||
@@ -209,7 +209,7 @@ function studiensemesterChange(stsem, wert)
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -219,9 +219,9 @@ function studiensemesterChange(stsem, wert)
|
||||
function variableChangeValue(variable)
|
||||
{
|
||||
var variablevalue = getvariable(variable);
|
||||
|
||||
|
||||
if(variablevalue = prompt('Bitte geben Sie den neuen Wert fuer '+variable+' ein', variablevalue))
|
||||
{
|
||||
{
|
||||
variableChange(variable, '', variablevalue);
|
||||
}
|
||||
}
|
||||
@@ -244,7 +244,7 @@ function variableChange(variable, id, wert)
|
||||
{
|
||||
if(id!=null)
|
||||
item = document.getElementById(id);
|
||||
|
||||
|
||||
if(typeof(wert)==='undefined')
|
||||
{
|
||||
if(item.getAttribute('checked')=='true')
|
||||
@@ -254,11 +254,11 @@ function variableChange(variable, id, wert)
|
||||
}
|
||||
else
|
||||
checked=wert;
|
||||
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
@@ -266,7 +266,7 @@ function variableChange(variable, id, wert)
|
||||
req.add('type', 'variablechange');
|
||||
req.add('name', variable);
|
||||
req.add('wert', checked);
|
||||
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
@@ -312,7 +312,7 @@ function updateignorekollision()
|
||||
panel.style.backgroundColor='';
|
||||
panel.style.MozAppearance = "none"
|
||||
document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','false');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -332,7 +332,7 @@ function updatedbstpltable()
|
||||
{
|
||||
panel.style.backgroundColor='';
|
||||
panel.style.MozAppearance = "none"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -348,7 +348,7 @@ function getStudiensemesterVariable()
|
||||
document.getElementById("statusbarpanel-semester").label = stsem;
|
||||
//Menue setzen
|
||||
var items = document.getElementsByTagName('menuitem');
|
||||
|
||||
|
||||
for(i in items)
|
||||
{
|
||||
if(items[i].label==stsem && items[i].id=='menu-properies-studiensemester-name')
|
||||
@@ -357,7 +357,7 @@ function getStudiensemesterVariable()
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Ansichten Refreshen
|
||||
try
|
||||
{
|
||||
@@ -365,7 +365,7 @@ function getStudiensemesterVariable()
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
LvTreeRefresh();
|
||||
@@ -473,7 +473,7 @@ function SyncLVPlan()
|
||||
// ****
|
||||
function OpenManualTempus()
|
||||
{
|
||||
window.open('https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=tempus:allgemeines','Manual');
|
||||
window.open('https://wiki.fhcomplete.org/doku.php?id=tempus:allgemeines','Manual');
|
||||
}
|
||||
|
||||
// ****
|
||||
|
||||
@@ -746,13 +746,13 @@ class dms extends basis_db
|
||||
JOIN campus.tbl_dms_version USING(dms_id)
|
||||
JOIN campus.tbl_dms_kategorie USING (kategorie_kurzbz)";
|
||||
// Wenn erstes Zeichen # ist, dieses wegkürzen und checken ob der Rest numerisch ist. Dann nach eindeutiger ID suchen
|
||||
if (substr($suchstring, 0, 1) == '#')
|
||||
/*if (substr($suchstring, 0, 1) == '#')
|
||||
{
|
||||
$suchstring = substr($suchstring, 1);
|
||||
if (is_numeric($suchstring))
|
||||
$qry .= " WHERE tbl_dms.dms_id = ".$this->db_add_param($suchstring, FHC_INTEGER);
|
||||
}
|
||||
else
|
||||
else*/
|
||||
{
|
||||
$qry .= " WHERE lower(name) like lower('%".$this->db_escape($suchstring)."%')
|
||||
OR lower(tbl_dms_version.beschreibung) like lower('%".$this->db_escape($suchstring)."%')
|
||||
|
||||
@@ -36,6 +36,7 @@ class dokument extends basis_db
|
||||
public $bezeichnung_mehrsprachig;
|
||||
public $dokumentbeschreibung_mehrsprachig;
|
||||
public $ausstellungsdetails = false;
|
||||
public $stufe;
|
||||
|
||||
public $prestudent_id;
|
||||
public $mitarbeiter_uid;
|
||||
@@ -428,6 +429,7 @@ class dokument extends basis_db
|
||||
$dok->nachreichbar = $this->db_parse_bool($row->nachreichbar);
|
||||
$dok->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
||||
$dok->ausstellungsdetails = $this->db_parse_bool($row->ausstellungsdetails);
|
||||
$dok->stufe = $row->stufe;
|
||||
$this->result[] = $dok;
|
||||
}
|
||||
return true;
|
||||
@@ -467,6 +469,7 @@ class dokument extends basis_db
|
||||
$dok->nachreichbar = $this->db_parse_bool($row->nachreichbar);
|
||||
$dok->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
||||
$dok->ausstellungsdetails = $this->db_parse_bool($row->ausstellungsdetails);
|
||||
$dok->stufe = $row->stufe;
|
||||
|
||||
$this->result[] = $dok;
|
||||
}
|
||||
@@ -545,6 +548,7 @@ class dokument extends basis_db
|
||||
$this->pflicht = $this->db_parse_bool($row->pflicht);
|
||||
$this->nachreichbar = $this->db_parse_bool($row->nachreichbar);
|
||||
$this->beschreibung_mehrsprachig = $sprache->parseSprachResult('beschreibung_mehrsprachig',$row);
|
||||
$this->stufe = $row->stufe;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
@@ -605,7 +609,7 @@ class dokument extends basis_db
|
||||
$qry.=" beschreibung_mehrsprachig[$idx],";
|
||||
}
|
||||
|
||||
$qry.=' pflicht, nachreichbar, onlinebewerbung)
|
||||
$qry.=' pflicht, nachreichbar, onlinebewerbung, stufe)
|
||||
VALUES ('.
|
||||
$this->db_add_param($this->dokument_kurzbz).','.
|
||||
$this->db_add_param($this->studiengang_kz,FHC_INTEGER).',';
|
||||
@@ -615,7 +619,8 @@ class dokument extends basis_db
|
||||
|
||||
$qry.= $this->db_add_param($this->pflicht,FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->nachreichbar,FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->onlinebewerbung,FHC_BOOLEAN).')';
|
||||
$this->db_add_param($this->onlinebewerbung,FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->stufe,FHC_INTEGER).')';
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -628,7 +633,8 @@ class dokument extends basis_db
|
||||
$qry.=" beschreibung_mehrsprachig[$idx]=".$this->db_add_param($value).",";
|
||||
}
|
||||
$qry.=' pflicht='.$this->db_add_param($this->pflicht, FHC_BOOLEAN).',
|
||||
nachreichbar='.$this->db_add_param($this->nachreichbar, FHC_BOOLEAN).'
|
||||
nachreichbar='.$this->db_add_param($this->nachreichbar, FHC_BOOLEAN).',
|
||||
stufe='.$this->db_add_param($this->stufe, FHC_INTEGER).'
|
||||
WHERE
|
||||
dokument_kurzbz='.$this->db_add_param($this->dokument_kurzbz).'
|
||||
AND studiengang_kz='.$this->db_add_param($this->studiengang_kz);
|
||||
@@ -714,6 +720,7 @@ class dokument extends basis_db
|
||||
$dok->dokumentbeschreibung_mehrsprachig = $sprache->parseSprachResult('dokumentbeschreibung_mehrsprachig', $row);
|
||||
$dok->beschreibung_mehrsprachig = $sprache->parseSprachResult('beschreibung_mehrsprachig', $row);
|
||||
$dok->ausstellungsdetails = $this->db_parse_bool($row->ausstellungsdetails);
|
||||
$dok->stufe = $row->stufe;
|
||||
|
||||
$this->result[] = $dok;
|
||||
}
|
||||
@@ -838,7 +845,8 @@ class dokument extends basis_db
|
||||
*/
|
||||
public function getStudiengaengeDokument($dokument_kurzbz, $person_id = null)
|
||||
{
|
||||
$qry = " SELECT DISTINCT studiengang_kz,typ||kurzbz AS kuerzel, bezeichnung, english FROM public.tbl_dokumentstudiengang
|
||||
$qry = " SELECT DISTINCT studiengang_kz,typ||kurzbz AS kuerzel, bezeichnung, english, stufe
|
||||
FROM public.tbl_dokumentstudiengang
|
||||
JOIN public.tbl_prestudent USING (studiengang_kz)
|
||||
JOIN public.tbl_prestudentstatus USING (prestudent_id)
|
||||
JOIN public.tbl_studiengang USING (studiengang_kz)
|
||||
@@ -859,6 +867,8 @@ class dokument extends basis_db
|
||||
$stg_obj->kuerzel = $row->kuerzel;
|
||||
$stg_obj->bezeichnung = $row->bezeichnung;
|
||||
$stg_obj->studiengang_kz = $row->studiengang_kz;
|
||||
$stg_obj->english = $row->english;
|
||||
$stg_obj->stufe = $row->stufe;
|
||||
|
||||
$this->result[] = $stg_obj;
|
||||
}
|
||||
|
||||
@@ -509,6 +509,11 @@ class frage extends basis_db
|
||||
$level[$row->level]=round(($row->anzahl/$fragengesamt)*$maxfragen);
|
||||
}
|
||||
}
|
||||
// Wenn ein Level besonders viele Fragen und eines nur eine Frage (nach dem Runden) hat,
|
||||
// kann es durch Rundungsfehler vorkommen, dass bei der Ausgabe ein Level ausgelassen wird.
|
||||
// Deshalb wird das array hier aufsteigend sortiert. So wird ggf. vom Level mit den meisten Fragen
|
||||
// die letzte ausgelassen. Hier wäre eine sauberere Lösung besser.
|
||||
asort($level);
|
||||
|
||||
// Von jedem Gebiet muss mindestens eine Frage kommen
|
||||
foreach ($level as $key=>$row)
|
||||
|
||||
@@ -368,12 +368,9 @@ class gebiet extends basis_db
|
||||
$qry = "SELECT count(*) as anzahl FROM testtool.tbl_frage WHERE gebiet_id=".$this->db_add_param($gebiet_id, FHC_INTEGER)." AND not demo AND level is not null GROUP BY level";
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
if($this->db_num_rows() > $this->maxfragen)
|
||||
{
|
||||
if($row->anzahl>$this->maxfragen)
|
||||
{
|
||||
//$this->errormsg .= "Wenn Levelgleichverteilung gesetzt ist, muss maxfragen groesser als die Anzahl der verwendeten Levels sein\n";
|
||||
}
|
||||
$this->errormsg .= "Wenn Levelgleichverteilung gesetzt ist, muss maxfragen groesser als die Anzahl der verwendeten Levels sein\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -649,6 +649,11 @@ class gruppe extends basis_db
|
||||
*/
|
||||
public function searchGruppen($searchItems, $aktiv = true, $limit = null)
|
||||
{
|
||||
if (!is_array($searchItems))
|
||||
{
|
||||
$this->errormsg = '$searchItems muss ein Array sein';
|
||||
return false;
|
||||
}
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
|
||||
@@ -131,11 +131,21 @@ class reservierung extends basis_db
|
||||
$this->errormsg = 'Stunde ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
if($this->titel=='')
|
||||
{
|
||||
$this->errormsg = 'Es muss ein Titel angegeben werden';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->titel)>10)
|
||||
{
|
||||
$this->errormsg = 'Titel darf nicht laenger als 10 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
if($this->beschreibung=='')
|
||||
{
|
||||
$this->errormsg = 'Es muss eine Beschreibung angegeben werden';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->beschreibung)>32)
|
||||
{
|
||||
$this->beschreibung = 'Beschreibung darf nicht laenger als 32 Zeichen sein';
|
||||
|
||||
@@ -164,9 +164,9 @@ class statistik extends basis_db
|
||||
public function getGruppe($gruppe,$publish=null)
|
||||
{
|
||||
$qry = "SELECT * FROM public.tbl_statistik WHERE gruppe=".$this->db_add_param($gruppe);
|
||||
if ($publish==true)
|
||||
if ($publish===true)
|
||||
$qry.=' AND publish ';
|
||||
elseif ($publish==false)
|
||||
elseif ($publish===false)
|
||||
$qry.=' AND NOT publish ';
|
||||
$qry.=' ORDER BY bezeichnung;';
|
||||
|
||||
|
||||
@@ -902,7 +902,7 @@ class studienplan extends basis_db
|
||||
* @param type $tudienplan_lehrveranstaltung_id
|
||||
* @param type $sort
|
||||
*/
|
||||
function saveSortierung($studienplan_lehrveranstaltung_id, $sort)
|
||||
function saveSortierung($studienplan_lehrveranstaltung_id = null, $sort = null)
|
||||
{
|
||||
if($studienplan_lehrveranstaltung_id==NULL)
|
||||
$studienplan_lehrveranstaltung_id = $this->studienplan_lehrveranstaltung_id;
|
||||
@@ -1182,10 +1182,10 @@ class studienplan extends basis_db
|
||||
public.tbl_studiensemester ON (tbl_studienordnung.gueltigvon = tbl_studiensemester.studiensemester_kurzbz)
|
||||
WHERE
|
||||
1=1";
|
||||
|
||||
|
||||
if ($aktiv != '' && ($aktiv == true || $aktiv == false))
|
||||
$qry.=" AND tbl_studienplan.aktiv=".$this->db_add_param($aktiv, FHC_BOOLEAN);
|
||||
|
||||
|
||||
if ($gueltigInStudiensemester != '')
|
||||
$qry.=" AND tbl_studienplan_semester.studiensemester_kurzbz=".$this->db_add_param($gueltigInStudiensemester);
|
||||
|
||||
|
||||
@@ -1,43 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
/**
|
||||
* Menue Oben Rechts fuer CIS Seite
|
||||
*/
|
||||
|
||||
require_once ('../include/phrasen.class.php');
|
||||
require_once ('../include/functions.inc.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
?>
|
||||
|
||||
<td style="border-right-width:1px; border-right-style:solid; border-color:#626B71;padding-right:3px;padding-left:3px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class='Item' href="index.html" target="_top"><?php echo $p->t('profil/home');?></a></div></td>
|
||||
<!--<td style="border-right-width:1px; border-right-style:solid; border-color:#626B71;padding-right:3px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class='Item' href="menu.php?content_id=173" target="menu"><?php echo $p->t('profil/meinCis');?></a></div></td>-->
|
||||
<!--<td style="border-right-width:1px; border-right-style:solid; border-color:#626B71;padding-right:3px;padding-left:3px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class='Item' href="menu.php?content_id=166" target="menu"><?php echo $p->t('lvaliste/lehrveranstaltungen');?></a></div></td>-->
|
||||
<!--<td style="border-right-width:1px; border-right-style:solid; border-color:#626B71;padding-right:3px;padding-left:3px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class='Item' href="../cis/private/lvplan/stpl_week.php" target="blank">Mein LV-Plan</a></div></td>-->
|
||||
<td style="border-right-width:1px; border-right-style:solid; border-color:#626B71;padding-right:3px;padding-left:3px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class='Item' href="http://fhcomplete.technikum-wien.at/dokuwiki/doku.php" target="blank">WIKI</a></div></td>
|
||||
<?php
|
||||
if(CHOOSE_LAYOUT)
|
||||
echo '<td style="border-right-width:1px; border-right-style:solid; border-color:#626B71;padding-right:5px;padding-left:5px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class="Item" href="../layouts.php" target="content">Layouts</a></div></td>';
|
||||
?>
|
||||
<td style="padding-left:3px;"><div id="GlobalMenu" style="display: inline; text-transform:uppercase; font-weight: bold"><a class='Item' href="../cms/dms.php?id=<?php echo $p->t('dms_link/cisHandbuch');?>" target="_blank"><?php echo $p->t('global/handbuch');?></a></div></td>
|
||||
|
||||
@@ -29,7 +29,7 @@ $menu=array
|
||||
(
|
||||
'name'=>'LV-Plan', 'opener'=>'true', 'hide'=>'false', 'permissions'=>array('admin','lv-plan'), 'image'=>'vilesci_lvplan.png',
|
||||
'link'=>'left.php?categorie=LVPlan', 'target'=>'nav',
|
||||
'Gruppenverwaltung'=>array('name'=>'Gruppenverwaltung', 'permissions'=>array('admin','lv-plan','support'), 'link'=>'stammdaten/lvbgruppenverwaltung.php', 'target'=>'main'),
|
||||
'Gruppenverwaltung'=>array('name'=>'Gruppenverwaltung', 'permissions'=>array('admin','lv-plan','support', 'lehre/gruppe'), 'link'=>'stammdaten/lvbgruppenverwaltung.php', 'target'=>'main'),
|
||||
'Lehrveranstaltung'=>array('name'=>'Lehrveranstaltung', 'link'=>'lehre/lehrveranstaltung_frameset.html', 'target'=>'main'),
|
||||
/* Leerzeile */'emptyrow1'=>array('name'=>'', 'link'=>'#empty', 'target'=>'main'),
|
||||
'Verplanungsuebersicht'=>array('name'=>'Verplanungsübersicht', 'link'=>'lehre/check/verplanungsuebersicht.php', 'target'=>'main'),
|
||||
@@ -68,7 +68,7 @@ $menu=array
|
||||
(
|
||||
'name'=>'Lehre', 'opener'=>'true', 'hide'=>'false', 'permissions'=>array('admin','lv-plan','support', 'lehre'), 'image'=>'vilesci_lehre.png',
|
||||
'link'=>'left.php?categorie=Lehre', 'target'=>'nav',
|
||||
'Gruppenverwaltung'=>array('name'=>'Gruppen', 'permissions'=>array('admin','lv-plan','support'), 'link'=>'stammdaten/lvbgruppenverwaltung.php', 'target'=>'main'),
|
||||
'Gruppenverwaltung'=>array('name'=>'Gruppen', 'permissions'=>array('admin','lv-plan','support','lehre/gruppe'), 'link'=>'stammdaten/lvbgruppenverwaltung.php', 'target'=>'main'),
|
||||
'Lehrveranstaltung'=>array('name'=>'Lehrveranstaltung', 'link'=>'lehre/lehrveranstaltung_frameset.html', 'target'=>'main'),
|
||||
'Studienordnung'=>array('name'=>'Studienordnung', 'link'=>'lehre/studienordnung.php', 'target'=>'_blank','permissions'=>array('lehre/studienordnung')),
|
||||
'StudienplanGueltigkeit'=>array('name'=>'Studienplan Gültigkeit', 'link'=>'lehre/studienplan_gueltigkeit.php', 'target'=>'main','permissions'=>array('lehre/studienordnung')),
|
||||
|
||||
@@ -32,8 +32,8 @@ $this->phrasen['dms_link/lvevaluierungStudierendeCMS']=''; //Beschreibung des Ab
|
||||
$this->phrasen['dms_link/lvevaluierungMitarbeiterCMS']=''; //Beschreibung des Ablaufs der LVEvaluierung für Mitarbeiter
|
||||
|
||||
//Links auf externe Seiten
|
||||
$this->phrasen['dms_link/dokuwikiGesamtnote']='http://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:gesamtnote'; //Link ins Dokuwiki zur Anleitung Gesamtnote
|
||||
$this->phrasen['dms_link/abgabetoolLektorHandbuch']='https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer LektorInnen
|
||||
$this->phrasen['dms_link/abgabetoolStudentHandbuch']='https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:abgabetool_fuer_studierende'; //Abgabetool Handbuch fuer Studierende
|
||||
$this->phrasen['dms_link/abgabetoolAssistenzHandbuch']='https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer Assistenz
|
||||
$this->phrasen['dms_link/dokuwikiGesamtnote']='https://wiki.fhcomplete.org/doku.php?id=cis:gesamtnote'; //Link ins Dokuwiki zur Anleitung Gesamtnote
|
||||
$this->phrasen['dms_link/abgabetoolLektorHandbuch']='https://wiki.fhcomplete.org/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer LektorInnen
|
||||
$this->phrasen['dms_link/abgabetoolStudentHandbuch']='https://wiki.fhcompleteorg/doku.php?id=cis:abgabetool_fuer_studierende'; //Abgabetool Handbuch fuer Studierende
|
||||
$this->phrasen['dms_link/abgabetoolAssistenzHandbuch']='https://wiki.fhcomplete.org/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer Assistenz
|
||||
?>
|
||||
|
||||
@@ -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';
|
||||
|
||||
@@ -16,7 +16,7 @@ $this->phrasen['zeitaufzeichnung/sieSindDerzeitKeinenProjektenZugeordnet']='Sie
|
||||
$this->phrasen['zeitaufzeichnung/fehlerBeimErmittelnDerProjekte']='Fehler beim Ermitteln der Projekte';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheit1']='Organisationseinheit 1';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheit2']='Organisationseinheit 2';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheiten']='Organisationseinheit(en)';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheiten']='Organisationseinheit';
|
||||
$this->phrasen['zeitaufzeichnung/oe']='OE';
|
||||
$this->phrasen['zeitaufzeichnung/service']='Service';
|
||||
$this->phrasen['zeitaufzeichnung/kunde']='Kunde';
|
||||
|
||||
@@ -27,8 +27,8 @@ $this->phrasen['dms_link/profilhilfe']=''; //Hilfe-Link aus dem Profil
|
||||
$this->phrasen['dms_link/anleitungMailverteiler']='7578'; //Anleitung für die Benutzung der Mailverteiler und der Berechtigungsschlüssel
|
||||
|
||||
//Links auf externe Seiten
|
||||
$this->phrasen['dms_link/dokuwikiGesamtnote']='http://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:gesamtnote'; //Link ins Dokuwiki zur Anleitung Gesamtnote
|
||||
$this->phrasen['dms_link/abgabetoolLektorHandbuch']='https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer LektorInnen
|
||||
$this->phrasen['dms_link/abgabetoolStudentHandbuch']='https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:abgabetool_fuer_studierende'; //Abgabetool Handbuch fuer Studierende
|
||||
$this->phrasen['dms_link/abgabetoolAssistenzHandbuch']='https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer Assistenz
|
||||
$this->phrasen['dms_link/dokuwikiGesamtnote']='https://wiki.fhcomplete.org/doku.php?id=cis:gesamtnote'; //Link ins Dokuwiki zur Anleitung Gesamtnote
|
||||
$this->phrasen['dms_link/abgabetoolLektorHandbuch']='https://wiki.fhcomplete.org/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer LektorInnen
|
||||
$this->phrasen['dms_link/abgabetoolStudentHandbuch']='https://wiki.fhcomplete.org/doku.php?id=cis:abgabetool_fuer_studierende'; //Abgabetool Handbuch fuer Studierende
|
||||
$this->phrasen['dms_link/abgabetoolAssistenzHandbuch']='https://wiki.fhcomplete.org/doku.php?id=cis:abgabetool_fuer_lektoren'; //Abgabetool Handbuch fuer Assistenz
|
||||
?>
|
||||
|
||||
@@ -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';
|
||||
|
||||
@@ -16,7 +16,7 @@ $this->phrasen['zeitaufzeichnung/sieSindDerzeitKeinenProjektenZugeordnet']='You
|
||||
$this->phrasen['zeitaufzeichnung/fehlerBeimErmittelnDerProjekte']='Error retrieving project data';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheit1']='Organisation Unit 1';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheit2']='Organisation Unit 2';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheiten']='Organisation Unit(s)';
|
||||
$this->phrasen['zeitaufzeichnung/organisationseinheiten']='Organisation Unit';
|
||||
$this->phrasen['zeitaufzeichnung/oe']='OU';
|
||||
$this->phrasen['zeitaufzeichnung/service']='Service';
|
||||
$this->phrasen['zeitaufzeichnung/kunde']='Client';
|
||||
|
||||
@@ -42,7 +42,7 @@ table.tablesort-hover tr:hover, .tablesort-active {
|
||||
}
|
||||
|
||||
/* Remove background color from filter row */
|
||||
.tablesorter-default .tablesorter-filter-row td {
|
||||
.tablesorter-default .tablesorter-filter-row td, .tablesorter-default .tablesorter-filter-row:hover td {
|
||||
background-color: white !important;
|
||||
}
|
||||
|
||||
|
||||
+11
-9
@@ -1,22 +1,22 @@
|
||||
<?php
|
||||
/*
|
||||
/*
|
||||
* Copyright 2013 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: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
*/
|
||||
@@ -48,7 +48,7 @@ for($i=0;$i<100;$i++)
|
||||
$parameter[]=null;
|
||||
else
|
||||
$parameter[]=$_REQUEST['parameter_'.$i];
|
||||
}
|
||||
}
|
||||
else
|
||||
break;
|
||||
}
|
||||
@@ -69,12 +69,13 @@ if(!$wsrecht->isUserAuthorized($uid, $method, $class))
|
||||
$obj = new $class();
|
||||
$error=false;
|
||||
|
||||
|
||||
// Bei Save Funktionen werden alle Parameter zugewiesen
|
||||
if(mb_stristr($method,'save'))
|
||||
{
|
||||
|
||||
$loaddata=json_decode($_REQUEST['loaddata'], true);
|
||||
if(isset($_REQUEST['loaddata']))
|
||||
$loaddata=json_decode($_REQUEST['loaddata'], true);
|
||||
else
|
||||
$loaddata=null;
|
||||
$savedata=json_decode($_REQUEST['savedata'], true);
|
||||
|
||||
if(isset($loaddata['method']))
|
||||
@@ -114,6 +115,7 @@ if(mb_stristr($method,'save'))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$return = '';
|
||||
if(!$error && ($return = call_user_func_array(array($obj, $method), $parameter)))
|
||||
{
|
||||
|
||||
@@ -52,7 +52,7 @@ function verifyData($parameters)
|
||||
$log = new webservicelog();
|
||||
$log->request_data = file_get_contents('php://input');
|
||||
$log->webservicetyp_kurzbz = 'wienerlinien';
|
||||
$log->request_id = $parameters->Token;
|
||||
$log->request_id = $parameters->token;
|
||||
$log->beschreibung = "Semesterticketanfrage";
|
||||
$log->save(true);
|
||||
|
||||
|
||||
@@ -70,13 +70,13 @@ $db = new basis_db();
|
||||
|
||||
if(isset($_REQUEST['submit']))
|
||||
{
|
||||
$client = new SoapClient(APP_ROOT."/soap/semesterticket.wsdl.php?".microtime(true));
|
||||
$client = new SoapClient(APP_ROOT."/soap/semesterticket.wsdl.php?".microtime(true));
|
||||
|
||||
try
|
||||
{
|
||||
class foo {};
|
||||
$obj = new foo();
|
||||
$obj->Token = $_REQUEST['token'];
|
||||
$obj->token = $_REQUEST['token'];
|
||||
$obj->Matrikelnummer = $_REQUEST['matrikelnummer'];
|
||||
$obj->Name = $_REQUEST['name'];
|
||||
$obj->Vorname = $_REQUEST['vorname'];
|
||||
|
||||
+3
-1
@@ -399,7 +399,7 @@ class stip extends basis_db
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($psem)."'";
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($psem);
|
||||
if(!is_null($bisdatum))
|
||||
$qrystatus.=" AND (tbl_prestudentstatus.datum<".$this->db_add_param($bisdatum).") ";
|
||||
$qrystatus.=" ORDER BY datum desc, insertamum desc, ext_id desc;";
|
||||
@@ -445,6 +445,8 @@ class stip extends basis_db
|
||||
*/
|
||||
public function getSemester($prestudent_id, $studiensemester_kurzbz, $bisdatum=null)
|
||||
{
|
||||
$sem = '';
|
||||
|
||||
$qrystatus="
|
||||
SELECT
|
||||
*
|
||||
|
||||
+12
-1
@@ -3019,6 +3019,17 @@ if(!@$db->db_query("SELECT 0 FROM campus.tbl_zeitaufzeichnung_gd WHERE 0 = 1"))
|
||||
|
||||
}
|
||||
|
||||
// Add column Stufe to tbl_dokumentstudiengang
|
||||
if(!$result = @$db->db_query("SELECT stufe FROM public.tbl_dokumentstudiengang LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_dokumentstudiengang ADD COLUMN stufe smallint;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_dokumentstudiengang: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_dokumentstudiengang: Spalte stufe hinzugefuegt';
|
||||
}
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
@@ -3181,7 +3192,7 @@ $tabellen=array(
|
||||
"public.tbl_buchungstyp" => array("buchungstyp_kurzbz","beschreibung","standardbetrag","standardtext","aktiv","credit_points"),
|
||||
"public.tbl_dokument" => array("dokument_kurzbz","bezeichnung","ext_id","bezeichnung_mehrsprachig","dokumentbeschreibung_mehrsprachig","ausstellungsdetails"),
|
||||
"public.tbl_dokumentprestudent" => array("dokument_kurzbz","prestudent_id","mitarbeiter_uid","datum","updateamum","updatevon","insertamum","insertvon","ext_id"),
|
||||
"public.tbl_dokumentstudiengang" => array("dokument_kurzbz","studiengang_kz","ext_id", "onlinebewerbung", "pflicht","beschreibung_mehrsprachig","nachreichbar"),
|
||||
"public.tbl_dokumentstudiengang" => array("dokument_kurzbz","studiengang_kz","ext_id", "onlinebewerbung", "pflicht","beschreibung_mehrsprachig","nachreichbar","stufe"),
|
||||
"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", "bezeichnung"),
|
||||
|
||||
@@ -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.
Binary file not shown.
@@ -455,7 +455,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
|
||||
</xsl:choose>-->
|
||||
Lehrgangs zur Weiterbildung.
|
||||
</text:p>
|
||||
<text:p text:style-name="P4">Dieser Lehrgang wird in Kooperation mit der Technikum Wien GmbH organisiert und durchgeführt. Es gelten die AGB der Technikum Wien GmbH, diese sind unter https://academy.technikum-wien.at/agb jederzeit abrufbar.
|
||||
<text:p text:style-name="P4">Dieser Lehrgang wird von der Technikum Wien GmbH in Kooperation mit der FH Technikum Wien organisiert und durchgeführt. Es gelten die AGB der Technikum Wien GmbH, diese sind unter https://academy.technikum-wien.at/agb jederzeit abrufbar.
|
||||
</text:p>
|
||||
<text:p text:style-name="P13"/>
|
||||
<text:list xml:id="list305698312" text:continue-numbering="false" text:style-name="WW8Num7">
|
||||
@@ -478,7 +478,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
|
||||
</text:list>
|
||||
</text:list-item>
|
||||
</text:list>
|
||||
<text:p text:style-name="P5">Die Ausbildung erfolgt auf Grundlage des Fachhochschul-Studiengesetzes, BGBI. Nr. 340/1993 idgF und des Hochschul-Qualitätssicherungsgesetzes, BGBI. Nr. 74/2011 idgF, des genehmigten Lehrgangantrags durch das Fachhoschul-Kollegium und der Satzung der Fachhoschule Technikum Wien idgF.</text:p>
|
||||
<text:p text:style-name="P5">Die Ausbildung erfolgt auf Grundlage des Fachhochschul-Studiengesetzes, BGBI. Nr. 340/1993 idgF. und des Hochschul-Qualitätssicherungsgesetzes, BGBI. Nr. 74/2011 idgF., des genehmigten Lehrgangantrags durch das Fachhoschul-Kollegium und der Satzung der Fachhoschule Technikum Wien idgF.</text:p>
|
||||
<text:p text:style-name="P14"/>
|
||||
<text:list xml:id="list636990326" text:continue-numbering="true" text:style-name="WW8Num7">
|
||||
<text:list-item>
|
||||
@@ -598,8 +598,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
|
||||
</text:note-body>
|
||||
</text:note>
|
||||
</text:span>
|
||||
</text:span>
|
||||
.
|
||||
</text:span>.
|
||||
</text:span>
|
||||
</text:p>
|
||||
<text:p text:style-name="P29">
|
||||
@@ -705,7 +704,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
|
||||
</text:list-item>
|
||||
</text:list>
|
||||
<text:p text:style-name="P5">
|
||||
Ao. Studierende des Lehrgangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehreelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und E-Mail) trägt der ao. Student bzw. die ao. Studentin.
|
||||
Ao. Studierende des Lehrgangs sind verpflichtet, eine EDV-Ausstattung zu beschaffen und zu unterhalten, die es ermöglicht, an den Fernlehrelementen teilzunehmen. Die gesamten Kosten der Anschaffung und des Betriebs (inkl. Kosten für Internet und E-Mail) trägt der ao. Student bzw. die ao. Studentin.
|
||||
</text:p>
|
||||
<text:p text:style-name="P5"/>
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ if(!$rechte->isBerechtigt('lehre/gruppe:begrenzt',null,'s'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$kurzbz=(isset($_GET['kurzbz'])?$_GET['kurzbz']:(isset($_POST['kurzbz'])?$_POST['kurzbz']:''));
|
||||
$searchItems=(isset($_GET['searchItems'])?$_GET['searchItems']:(isset($_POST['searchItems'])?$_POST['searchItems']:''));
|
||||
if(empty($kurzbz))
|
||||
die('Gruppe wurde nicht übergeben <a href="javascript:history.back()">Zurück</a>');
|
||||
|
||||
@@ -108,7 +109,7 @@ if(!$gruppe->load($kurzbz))
|
||||
<H2>Gruppe <?php echo $kurzbz ?></H2>
|
||||
|
||||
<?php
|
||||
echo "<a href='einheit_menu.php?studiengang_kz=$gruppe->studiengang_kz'>Zurück zur Übersicht</a><br><br>";
|
||||
echo "<a href='einheit_menu.php?studiengang_kz=$gruppe->studiengang_kz&searchItems=$searchItems'>Zurück zur Übersicht</a><br><br>";
|
||||
echo $errormsg;
|
||||
$generiertegruppe = $gruppe->generiert;
|
||||
if(!$gruppe->generiert)
|
||||
@@ -141,6 +142,7 @@ if(!$gruppe->generiert)
|
||||
$("#uid").focus();
|
||||
</script>
|
||||
<INPUT type="hidden" name="kurzbz" value="'.$kurzbz.'">
|
||||
<INPUT type="hidden" name="searchItems" value="'.$searchItems.'">
|
||||
<INPUT type="submit" name="new" value="Hinzufügen">
|
||||
</FORM>
|
||||
<HR>
|
||||
|
||||
@@ -48,6 +48,15 @@ if ($studiengang_kz != '')
|
||||
$oe_studiengang = '';
|
||||
}
|
||||
|
||||
if (isset($_GET['searchItems']) && trim($_GET['searchItems']) != '')
|
||||
{
|
||||
$searchItems = explode(' ', trim($_GET['searchItems']));
|
||||
}
|
||||
else
|
||||
{
|
||||
$searchItems = array();
|
||||
}
|
||||
|
||||
if (isset($_GET['sem']))
|
||||
|
||||
$sem=$_GET['sem'];
|
||||
@@ -73,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()
|
||||
{
|
||||
@@ -105,7 +114,7 @@ if(!$rechte->isBerechtigt('lehre/gruppe', null, 's'))
|
||||
$( "#domain_text" ).toggle();
|
||||
$('#gesperrt').prop('disabled', function(i, v) { return !v; });
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
@@ -146,28 +155,28 @@ 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();
|
||||
}
|
||||
|
||||
function printDropDown()
|
||||
{
|
||||
global $rechte, $studiengang_kz;
|
||||
global $rechte, $studiengang_kz, $searchItems;
|
||||
//Studiengang Drop Down anzeigen
|
||||
$types = new studiengang();
|
||||
$types->getAllTypes();
|
||||
@@ -199,23 +208,26 @@ function printDropDown()
|
||||
}
|
||||
}
|
||||
|
||||
echo '</SELECT><input type="submit" value="Anzeigen" />';
|
||||
echo '</SELECT>';
|
||||
echo '<br>oder</br>';
|
||||
echo 'Suche: <input name="searchItems" type="text" size="50" value="'.implode(' ',$searchItems).'"/>';
|
||||
echo '<input type="submit" value="Anzeigen" />';
|
||||
echo '</form>';
|
||||
}
|
||||
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;
|
||||
@@ -228,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'];
|
||||
@@ -245,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;
|
||||
}
|
||||
@@ -255,11 +267,11 @@ function doSave()
|
||||
|
||||
function doEdit($kurzbz,$new=false)
|
||||
{
|
||||
global $db, $rechte, $studiengang;
|
||||
global $db, $rechte, $studiengang, $searchItems;
|
||||
if (!$new)
|
||||
{
|
||||
$e = new gruppe($kurzbz);
|
||||
echo '<a href="einheit_menu.php?studiengang_kz='.$e->studiengang_kz.'">Zurück zur Übersicht</a><br>';
|
||||
echo '<a href="einheit_menu.php?studiengang_kz='.$e->studiengang_kz.'&searchItems='.implode(' ',$searchItems).'">Zurück zur Übersicht</a><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -319,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;
|
||||
}
|
||||
@@ -408,13 +420,20 @@ function doEdit($kurzbz,$new=false)
|
||||
|
||||
function getUebersicht()
|
||||
{
|
||||
global $studiengang_kz, $semester, $rechte;
|
||||
global $studiengang_kz, $semester, $rechte, $searchItems;
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
|
||||
$gruppe=new gruppe();
|
||||
// Array mit allen Einheiten holen
|
||||
$gruppe->getgruppe($studiengang_kz,$semester);
|
||||
// Wenn $searchstring gesetz ist, nach gruppe suchen, sonst gruppe mit $studiengang_kz un $semester laden
|
||||
if (count($searchItems) > 0)
|
||||
{
|
||||
$gruppe->searchGruppen($searchItems, null, null);
|
||||
}
|
||||
else
|
||||
{
|
||||
$gruppe->getgruppe($studiengang_kz,$semester);
|
||||
}
|
||||
|
||||
echo '<h3>Übersicht</h3>';
|
||||
echo '<button type="button" class="resetsaved" title="Reset Filter">Reset Filter</button>';
|
||||
@@ -467,14 +486,14 @@ function getUebersicht()
|
||||
echo "<td><img title='Aufnahmegruppe' height='16px' src='../../skin/images/".($e->aufnahmegruppe?"true.png":"false.png")."' alt='".($e->aufnahmegruppe?"true.png":"false.png")."'></td>";
|
||||
// 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>";
|
||||
|
||||
echo "<td style='padding-right: 5px'><a href='einheit_det.php?kurzbz=$e->gruppe_kurzbz&searchItems=".implode(' ',$searchItems)."'>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>";
|
||||
|
||||
echo "<td style='padding-right: 5px'><a href=\"einheit_menu.php?edit=1&kurzbz=$e->gruppe_kurzbz&searchItems=".implode(' ',$searchItems)."\">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";
|
||||
}
|
||||
|
||||
@@ -483,4 +502,4 @@ function getUebersicht()
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@@ -484,6 +484,13 @@ if ($testende)
|
||||
foreach ($_POST['prestudent_ids'] AS $prest)
|
||||
{
|
||||
$prestudentrolle = new prestudent($prest);
|
||||
// Wenn der letzte Status Abgewiesener ist, wird der Bewerber ignoriert
|
||||
$prestudentrolle->getLastStatus($prest, $reihungstest->studiensemester_kurzbz);
|
||||
if ($prestudentrolle->status_kurzbz == 'Abgewiesener')
|
||||
{
|
||||
continue;
|
||||
}
|
||||
// Letzten Interessentenstatus laden
|
||||
$prestudentrolle->getLastStatus($prest, $reihungstest->studiensemester_kurzbz, 'Interessent');
|
||||
$stg = new studiengang($prestudentrolle->studiengang_kz);
|
||||
|
||||
@@ -764,6 +771,13 @@ if ($punkteUebertragen)
|
||||
else
|
||||
{
|
||||
$setRTPunkte = new reihungstest();
|
||||
$ort_kurzbz = '';
|
||||
// Checken, ob schon irgendeine Raumzuteilung existiert (Check ohne Studienplan) und diese ggf. übernehmen
|
||||
$setRTPunkte->getPersonReihungstest($prestudentrolle->person_id, $_POST['reihungstest_id']);
|
||||
if ($setRTPunkte->ort_kurzbz != '')
|
||||
{
|
||||
$ort_kurzbz = $setRTPunkte->ort_kurzbz;
|
||||
}
|
||||
$setRTPunkte->getPersonReihungstest($prestudentrolle->person_id, $_POST['reihungstest_id'], $prestudentrolle->studienplan_id);
|
||||
|
||||
// Check, ob Punkte schon befüllt sind
|
||||
@@ -773,7 +787,7 @@ if ($punkteUebertragen)
|
||||
$setRTPunkte->person_id = $prestudentrolle->person_id;
|
||||
$setRTPunkte->reihungstest_id = $_POST['reihungstest_id'];
|
||||
$setRTPunkte->anmeldedatum = '';
|
||||
$setRTPunkte->ort_kurzbz = '';
|
||||
$setRTPunkte->ort_kurzbz = $ort_kurzbz;
|
||||
$setRTPunkte->studienplan_id = $prestudentrolle->studienplan_id;
|
||||
$setRTPunkte->punkte = number_format(floatval($array['ergebnis']), 4);
|
||||
$setRTPunkte->insertamum = date('Y-m-d H:i:s');
|
||||
@@ -1373,10 +1387,6 @@ if (isset($_REQUEST['reihungstest']))
|
||||
{
|
||||
$query .= " AND rt.datum <= " . $db->db_add_param($datum_bis);
|
||||
}
|
||||
if ($studiengang != '')
|
||||
{
|
||||
$query .= " AND ps.studiengang_kz = " . $db->db_add_param($studiengang, FHC_INTEGER);
|
||||
}
|
||||
if ($semester != '')
|
||||
{
|
||||
$query .= " AND tbl_ablauf.semester=" . $db->db_add_param($semester, FHC_INTEGER);
|
||||
|
||||
@@ -140,7 +140,7 @@ if(isset($_POST['kopieren']))
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($_POST['schick']))
|
||||
if(isset($_POST['schick']) || isset($_POST['copy']))
|
||||
{
|
||||
if($rechte->isBerechtigt('basis/berechtigung', null, 'suid'))
|
||||
{
|
||||
@@ -158,7 +158,7 @@ if(isset($_POST['schick']))
|
||||
$anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:'');
|
||||
|
||||
$ber = new benutzerberechtigung();
|
||||
if (isset($_POST['neu']))
|
||||
if (isset($_POST['neu']) || isset($_POST['copy']))
|
||||
{
|
||||
$ber->insertamum=date('Y-m-d H:i:s');
|
||||
$ber->insertvon = $user;
|
||||
@@ -337,6 +337,84 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz']))
|
||||
<th></th>
|
||||
<!--<th></th>-->
|
||||
</tr></thead><tbody>\n";
|
||||
|
||||
$htmlstr .= "<tr id='neu'>\n";
|
||||
$htmlstr .= "<form action='benutzerberechtigung_details.php' method='POST' name='berechtigung_neu'>\n";
|
||||
$htmlstr .= "<input type='hidden' name='neu' value='1'>\n";
|
||||
$htmlstr .= "<input type='hidden' name='benutzerberechtigung_id' value=''>\n";
|
||||
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
|
||||
$htmlstr .= "<input type='hidden' name='funktion_kurzbz' value='".$funktion_kurzbz."'>\n";
|
||||
|
||||
//Status
|
||||
$htmlstr .= " <td> </td>\n";
|
||||
//Rolle
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><select name='rolle_kurzbz' id='rolle_kurzbz_neu' onchange='markier(\"neu\"); setnull(\"berechtigung_kurzbz_neu\"); setnull(\"art_neu\");'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"berechtigung_kurzbz_neu\");'> </option>\n";
|
||||
for ($i = 0; $i < sizeof($rolle_arr); $i++)
|
||||
{
|
||||
$sel = "";
|
||||
$htmlstr .= " <option value='".$rolle_arr[$i]."' ".$sel." onclick='disable(\"berechtigung_kurzbz_neu\");'>".$rolle_arr[$i]."</option>";
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
|
||||
//Berechtigung_kurzbz
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><select name='berechtigung_kurzbz' id='berechtigung_kurzbz_neu' onchange='markier(\"neu\"); setnull(\"rolle_kurzbz_neu\");'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"rolle_kurzbz_neu\");'> </option>\n";
|
||||
for ($i = 0; $i < sizeof($berechtigung_arr); $i++)
|
||||
{
|
||||
$sel = "";
|
||||
$htmlstr .= " <option title='".$berechtigung_beschreibung_arr[$i]."' ".(array_search($berechtigung_arr[$i],$berechtigung_user_arr)!==false?"style='color: #666'":"")." value='".$berechtigung_arr[$i]."' ".$sel." onclick='disable(\"rolle_kurzbz_neu\");'>".$berechtigung_arr[$i]."</option>";
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
|
||||
//Art
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><input id='art_neu' type='text' name='art' value='' size='5' maxlength='5' onBlur='checkrequired(\"art_neu\")' onChange='validateArt(\"art_neu\")' placeholder='suid'></td>\n";
|
||||
|
||||
//Organisationseinheit
|
||||
if($funktion_kurzbz!='')
|
||||
$htmlstr .= " <td class='oe_column' style='padding-top: 15px;'>OE aus MA-Funktion</td>\n";
|
||||
else
|
||||
{
|
||||
$htmlstr .= " <td class='oe_column' style='padding-top: 15px;'><select id='oe_kurzbz_neu' name='oe_kurzbz' onchange='markier(\"neu\")' style='width: 200px;'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"kostenstelle_neu\");'>-- Alle --</option>\n";
|
||||
|
||||
foreach ($oe->result as $oekey)
|
||||
{
|
||||
if(!$oekey->aktiv)
|
||||
$class='class="inactive"';
|
||||
else
|
||||
$class='';
|
||||
$htmlstr .= " <option value='".$oekey->oe_kurzbz."' ".$class." onclick='disable(\"kostenstelle_neu\");'>".$oekey->organisationseinheittyp_kurzbz.' '.$oekey->bezeichnung.'</option>';
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
}
|
||||
|
||||
//Kostenstelle
|
||||
$htmlstr .= " <td class='ks_column' style='padding-top: 15px;'><select id='kostenstelle_neu' name='kostenstelle_id' onchange='markier(\"".(isset($b->benutzerberechtigung_id)?$b->benutzerberechtigung_id:'')."\")' style='width: 200px;'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"oe_kurzbz_neu\");'> </option>\n";
|
||||
|
||||
foreach ($kostenstelle->result as $kst)
|
||||
{
|
||||
if(!$kst->aktiv)
|
||||
$class='class="inactive"';
|
||||
else
|
||||
$class='';
|
||||
|
||||
$htmlstr .= " <option value='".$kst->kostenstelle_id."' ".$class." onclick='disable(\"oe_kurzbz_neu\");'>".$kst->bezeichnung.'</option>';
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
|
||||
$htmlstr .= " <td align='center' style='padding-top: 15px;'><input type='checkbox' name='negativ' onchange='markier(\"neu\")'></td>\n";
|
||||
$htmlstr .= " <td nowrap style='padding-top: 15px;'><input class='datepicker_datum' type='text' name='start' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
|
||||
$htmlstr .= " <td nowrap style='padding-top: 15px;'><input class='datepicker_datum' type='text' name='ende' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
|
||||
|
||||
//Anmerkung
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><input id='anmerkung_neu' type='text' name='anmerkung' value='' size='30' maxlength='256' onchange='markier(\"neu\")'></td>\n";
|
||||
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><input type='submit' name='schick' value='neu'></td>";
|
||||
$htmlstr .= "</form>\n";
|
||||
$htmlstr .= " </tr>\n";
|
||||
|
||||
foreach($rights->berechtigungen as $b)
|
||||
{
|
||||
switch($filter)
|
||||
@@ -399,9 +477,9 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz']))
|
||||
<script language='javascript'>
|
||||
$(document).ready(function()
|
||||
{
|
||||
var url = location.href;
|
||||
location.href = '#editrow'
|
||||
history.replaceState(null,null,url);
|
||||
//var url = location.href;
|
||||
//location.href = '#editrow'
|
||||
//history.replaceState(null,null,url);
|
||||
});
|
||||
</script>";
|
||||
$htmlstr.="</td>\n";
|
||||
@@ -470,7 +548,7 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz']))
|
||||
$htmlstr .= " <td name='td_$b->benutzerberechtigung_id'><input id='anmerkung_$b->benutzerberechtigung_id' type='text' name='anmerkung' value='".$b->anmerkung."' title='".$db->convert_html_chars(mb_eregi_replace('\r\n'," ",$b->anmerkung))."' size='30' maxlength='256' markier(\"td_".$b->benutzerberechtigung_id."\")'></td>\n";
|
||||
$htmlstr .= " <td align='center' name='td_$b->benutzerberechtigung_id'><img src='../../skin/images/information.png' alt='information' title='Angelegt von ".$b->insertvon." am ".$b->insertamum." \nZuletzt geaendert von ".$b->updatevon." am ".$b->updateamum."'></td>\n";
|
||||
|
||||
$htmlstr .= " <td name='td_$b->benutzerberechtigung_id'><input type='submit' name='schick' value='speichern'></td>";
|
||||
$htmlstr .= " <td name='td_$b->benutzerberechtigung_id' style='white-space: nowrap'><input type='submit' name='schick' value='speichern'> <input type='submit' name='copy' value='kopieren'></td>";
|
||||
$htmlstr .= " <td name='td_$b->benutzerberechtigung_id'><input type='submit' name='del' value='löschen'></td>";
|
||||
$htmlstr .= "</form>\n";
|
||||
$htmlstr .= " </tr>\n";
|
||||
@@ -541,85 +619,7 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz']))
|
||||
|
||||
}
|
||||
|
||||
$htmlstr .= " </tbody><tfoot><tr id='neu'>\n";
|
||||
$htmlstr .= "<form action='benutzerberechtigung_details.php' method='POST' name='berechtigung_neu'>\n";
|
||||
$htmlstr .= "<input type='hidden' name='neu' value='1'>\n";
|
||||
$htmlstr .= "<input type='hidden' name='benutzerberechtigung_id' value=''>\n";
|
||||
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
|
||||
$htmlstr .= "<input type='hidden' name='funktion_kurzbz' value='".$funktion_kurzbz."'>\n";
|
||||
|
||||
//Status
|
||||
$htmlstr .= " <td> </td>\n";
|
||||
//Rolle
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><select name='rolle_kurzbz' id='rolle_kurzbz_neu' onchange='markier(\"neu\"); setnull(\"berechtigung_kurzbz_neu\"); setnull(\"art_neu\");'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"berechtigung_kurzbz_neu\");'> </option>\n";
|
||||
for ($i = 0; $i < sizeof($rolle_arr); $i++)
|
||||
{
|
||||
$sel = "";
|
||||
$htmlstr .= " <option value='".$rolle_arr[$i]."' ".$sel." onclick='disable(\"berechtigung_kurzbz_neu\");'>".$rolle_arr[$i]."</option>";
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
|
||||
//Berechtigung_kurzbz
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><select name='berechtigung_kurzbz' id='berechtigung_kurzbz_neu' onchange='markier(\"neu\"); setnull(\"rolle_kurzbz_neu\");'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"rolle_kurzbz_neu\");'> </option>\n";
|
||||
for ($i = 0; $i < sizeof($berechtigung_arr); $i++)
|
||||
{
|
||||
$sel = "";
|
||||
$htmlstr .= " <option title='".$berechtigung_beschreibung_arr[$i]."' ".(array_search($berechtigung_arr[$i],$berechtigung_user_arr)!==false?"style='color: #666'":"")." value='".$berechtigung_arr[$i]."' ".$sel." onclick='disable(\"rolle_kurzbz_neu\");'>".$berechtigung_arr[$i]."</option>";
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
|
||||
//Art
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><input id='art_neu' type='text' name='art' value='' size='5' maxlength='5' onBlur='checkrequired(\"art_neu\")' onChange='validateArt(\"art_neu\")' placeholder='suid'></td>\n";
|
||||
|
||||
//Organisationseinheit
|
||||
if($funktion_kurzbz!='')
|
||||
$htmlstr .= " <td class='oe_column' style='padding-top: 15px;'>OE aus MA-Funktion</td>\n";
|
||||
else
|
||||
{
|
||||
$htmlstr .= " <td class='oe_column' style='padding-top: 15px;'><select id='oe_kurzbz_neu' name='oe_kurzbz' onchange='markier(\"neu\")' style='width: 200px;'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"kostenstelle_neu\");'>-- Alle --</option>\n";
|
||||
|
||||
foreach ($oe->result as $oekey)
|
||||
{
|
||||
if(!$oekey->aktiv)
|
||||
$class='class="inactive"';
|
||||
else
|
||||
$class='';
|
||||
$htmlstr .= " <option value='".$oekey->oe_kurzbz."' ".$class." onclick='disable(\"kostenstelle_neu\");'>".$oekey->organisationseinheittyp_kurzbz.' '.$oekey->bezeichnung.'</option>';
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
}
|
||||
|
||||
//Kostenstelle
|
||||
$htmlstr .= " <td class='ks_column' style='padding-top: 15px;'><select id='kostenstelle_neu' name='kostenstelle_id' onchange='markier(\"".(isset($b->benutzerberechtigung_id)?$b->benutzerberechtigung_id:'')."\")' style='width: 200px;'>\n";
|
||||
$htmlstr .= " <option value='' onclick='enable(\"oe_kurzbz_neu\");'> </option>\n";
|
||||
|
||||
foreach ($kostenstelle->result as $kst)
|
||||
{
|
||||
if(!$kst->aktiv)
|
||||
$class='class="inactive"';
|
||||
else
|
||||
$class='';
|
||||
|
||||
$htmlstr .= " <option value='".$kst->kostenstelle_id."' ".$class." onclick='disable(\"oe_kurzbz_neu\");'>".$kst->bezeichnung.'</option>';
|
||||
}
|
||||
$htmlstr .= " </select></td>\n";
|
||||
|
||||
$htmlstr .= " <td align='center' style='padding-top: 15px;'><input type='checkbox' name='negativ' onchange='markier(\"neu\")'></td>\n";
|
||||
$htmlstr .= " <td nowrap style='padding-top: 15px;'><input class='datepicker_datum' type='text' name='start' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
|
||||
$htmlstr .= " <td nowrap style='padding-top: 15px;'><input class='datepicker_datum' type='text' name='ende' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
|
||||
|
||||
//Anmerkung
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><input id='anmerkung_neu' type='text' name='anmerkung' value='' size='30' maxlength='256' onchange='markier(\"neu\")'></td>\n";
|
||||
|
||||
$htmlstr .= " <td style='padding-top: 15px;'><input type='submit' name='schick' value='neu'></td>";
|
||||
$htmlstr .= "</form>\n";
|
||||
$htmlstr .= " </tr>\n";
|
||||
|
||||
|
||||
$htmlstr .= "</tfoot></table>\n";
|
||||
$htmlstr .= "</tbody></table>\n";
|
||||
|
||||
}
|
||||
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>\n";
|
||||
|
||||
@@ -202,7 +202,7 @@ if(!$cj->getAll(null, 'titel'))
|
||||
echo '<br><a href="'.$_SERVER['PHP_SELF'].'?type=new">Neuen Cronjob anlegen</a>';
|
||||
|
||||
echo '<br><br>
|
||||
<table id="table1" style="table-layout: fixed; white-space: nowrap">
|
||||
<table id="table1" style="table-layout: fixed">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30px">ID</th>
|
||||
|
||||
@@ -1,379 +1,409 @@
|
||||
<?php
|
||||
/* Copyright (C) 2011 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
|
||||
*/
|
||||
/**
|
||||
* Seite zur Wartung der Infoscreens
|
||||
*/
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/infoscreen.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/datum.class.php');
|
||||
require_once('../../include/content.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/infoscreen'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$datum_obj = new datum();
|
||||
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Infoscreen - Details</title>
|
||||
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
|
||||
<link rel="stylesheet" href="../../skin/fhcomplete.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/jquery-ui-1.9.2.custom.min.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../vendor/fgelinas/timepicker/jquery.ui.timepicker.css" 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>
|
||||
<?php
|
||||
/* Copyright (C) 2011 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
|
||||
*/
|
||||
/**
|
||||
* Seite zur Wartung der Infoscreens
|
||||
*/
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/infoscreen.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/datum.class.php');
|
||||
require_once('../../include/content.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/infoscreen'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$datum_obj = new datum();
|
||||
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Infoscreen - Details</title>
|
||||
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
|
||||
<link rel="stylesheet" href="../../skin/fhcomplete.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
|
||||
<?php
|
||||
include('../../include/meta/jquery.php');
|
||||
include('../../include/meta/jquery-tablesorter.php');
|
||||
?>
|
||||
|
||||
<link rel="stylesheet" href="../../skin/jquery-ui-1.9.2.custom.min.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../vendor/fgelinas/timepicker/jquery.ui.timepicker.css" 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="../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/tablesort/table.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="../../vendor/fgelinas/timepicker/jquery.ui.timepicker.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#myTable").tablesorter(
|
||||
{
|
||||
// Adding Function for sorting images by title
|
||||
textExtraction:function(s)
|
||||
{
|
||||
if($(s).find('img').length == 0) return $(s).text();
|
||||
return $(s).find('img').attr('title');
|
||||
},
|
||||
sortList: [[0,0],[5,0]],
|
||||
widgets: ['zebra']
|
||||
});
|
||||
|
||||
$( ".datepicker_datum" ).datepicker({
|
||||
changeMonth: true,
|
||||
changeYear: true,
|
||||
dateFormat: "dd.mm.yy",
|
||||
showButtonPanel: true,
|
||||
currentText: "Today",
|
||||
closeText: "Close",
|
||||
});
|
||||
|
||||
$( ".timepicker" ).timepicker({
|
||||
showPeriodLabels: false,
|
||||
hourText: "Hour",
|
||||
minuteText: "Minute",
|
||||
rows: 4,
|
||||
});
|
||||
|
||||
/*
|
||||
$("#refreshzeit").timepicker(
|
||||
{
|
||||
showPeriodLabels: false,
|
||||
showHours: false,
|
||||
minuteText: "",
|
||||
minutes: {starts: 20, ends: 300, interval: 20},
|
||||
rows: 5,
|
||||
});*/
|
||||
}
|
||||
);
|
||||
function checkValue()
|
||||
{
|
||||
var zeit = document.getElementById("refreshzeit").value;
|
||||
if (!isNaN(zeit))
|
||||
{
|
||||
if(zeit > 32767)
|
||||
{
|
||||
alert("Maximalwert für Refreshzeit ist 32767");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
alert("Wert für Refreshzeit ist ungültig");
|
||||
return false;
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style>
|
||||
.ui-timepicker-table table td a
|
||||
{
|
||||
padding:0.2em 0.3em 0.2em 0.3em;
|
||||
width: 2em;
|
||||
}
|
||||
.ui-widget
|
||||
{
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.ui-widget button
|
||||
{
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.ui-timepicker-table table
|
||||
{
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.ui-widget-content .ui-priority-secondary
|
||||
{
|
||||
opacity: 1;
|
||||
}
|
||||
.ui-widget-content .ui-priority-primary
|
||||
{
|
||||
font-weight: normal;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
$action = (isset($_GET['action'])?$_GET['action']:'show');
|
||||
$infoscreen_id = (isset($_GET['infoscreen_id'])?$_GET['infoscreen_id']:'');
|
||||
$infoscreen = new infoscreen();
|
||||
|
||||
if($infoscreen_id=='')
|
||||
exit;
|
||||
|
||||
if(!$infoscreen->load($infoscreen_id))
|
||||
die($infoscreen->errormsg);
|
||||
|
||||
echo '<h2>Details von Infoscreen ',$infoscreen_id,' - ',$infoscreen->bezeichnung.' - ',$infoscreen->beschreibung.'</h2>';
|
||||
|
||||
echo '
|
||||
<div style="text-align:right">
|
||||
<a href="infoscreen_details.php?action=new&infoscreen_id=',$infoscreen_id,'" target="detail_infoscreen">Neuen Eintrag hinzufügen</a>
|
||||
</div>';
|
||||
|
||||
if($action=='save')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('basis/infoscreen', null, 'sui'))
|
||||
die($rechte->errormsg);
|
||||
$my_infoscreen_id = $_POST['infoscreen_id'];
|
||||
$infoscreen_content_id = $_POST['infoscreen_content_id'];
|
||||
$content_id = $_POST['content_id'];
|
||||
$gueltigvon = $_POST['gueltigvondatum'].' '.$_POST['gueltigvonzeit'];
|
||||
$gueltigbis = $_POST['gueltigbisdatum'].' '.$_POST['gueltigbiszeit'];
|
||||
$refreshzeit = $_POST['refreshzeit'];
|
||||
$exklusiv = (isset ($_POST['exklusiv'])?true:false);
|
||||
|
||||
$infoscreen = new infoscreen();
|
||||
if($infoscreen_content_id!='')
|
||||
{
|
||||
$infoscreen->loadContent($infoscreen_content_id);
|
||||
$infoscreen->new = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$infoscreen->new = true;
|
||||
$infoscreen->insertamum = date('Y-m-d H:i:s');
|
||||
$infoscreen->insertvon = $user;
|
||||
}
|
||||
|
||||
$infoscreen->content_id = $content_id;
|
||||
$infoscreen->gueltigvon = $datum_obj->formatDatum($gueltigvon,'Y-m-d H:i:s');
|
||||
$infoscreen->gueltigbis = $datum_obj->formatDatum($gueltigbis,'Y-m-d H:i:s');
|
||||
$infoscreen->refreshzeit = $refreshzeit;
|
||||
$infoscreen->updateamum = date('Y-m-d H:i:s');
|
||||
$infoscreen->updatevon = $user;
|
||||
$infoscreen->exklusiv = $exklusiv;
|
||||
|
||||
$infoscreen_ids=explode(',',$my_infoscreen_id);
|
||||
if (count($infoscreen_ids)>1)
|
||||
{
|
||||
$infoscreen->new = true;
|
||||
$infoscreen->insertamum = date('Y-m-d H:i:s');
|
||||
$infoscreen->insertvon = $user;
|
||||
}
|
||||
|
||||
$doppelt = false;
|
||||
foreach($infoscreen_ids as $is_id)
|
||||
{
|
||||
$infoscreen->infoscreen_id = $is_id;
|
||||
|
||||
if ($doppelt==false)
|
||||
{
|
||||
if ($is_id==$infoscreen_id && $infoscreen_content_id!='')
|
||||
{
|
||||
$doppelt=true;
|
||||
$infoscreen->new = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
$doppelt=false;
|
||||
|
||||
if(!$infoscreen->saveContent())
|
||||
echo '<span class="error">Fehler bei Infoscreen '.$is_id.': '.$db->convert_html_chars($infoscreen->errormsg).'</span><br>';
|
||||
else
|
||||
echo '<span class="ok">Daten erfolgreich gespeichert für Infoscreen '.$is_id.'</span><br>';
|
||||
|
||||
$infoscreen->new = true;
|
||||
}
|
||||
}
|
||||
if($action=='delete')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('basis/infoscreen', null, 'suid'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
$infoscreen = new infoscreen();
|
||||
$infoscreen_content_id = (isset($_REQUEST['infoscreen_content_id'])?$_REQUEST['infoscreen_content_id']:'');
|
||||
if(!$infoscreen->deleteContent($infoscreen_content_id))
|
||||
echo '<span class="error">',$db->convert_html_chars($infoscreen->errormsg),'</span>';
|
||||
}
|
||||
//Formular fuer neu/update
|
||||
if($action=='new' || $action=='update')
|
||||
{
|
||||
$infoscreen_content_id = (isset($_REQUEST['infoscreen_content_id'])?$_REQUEST['infoscreen_content_id']:'');
|
||||
$infoscreen = new infoscreen();
|
||||
if($action=='new')
|
||||
{
|
||||
echo '<h3>Neu</h3>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<h3>Bearbeiten von ID ',$infoscreen_content_id,'</h3>';
|
||||
if(!$infoscreen->loadContent($infoscreen_content_id))
|
||||
die('Fehler: '.$infoscreen->errormsg);
|
||||
}
|
||||
echo '
|
||||
<form action="',$_SERVER['PHP_SELF'],'?action=save&infoscreen_id=',$infoscreen_id,'" method="POST">
|
||||
<input type="hidden" name="infoscreen_content_id" value="',$db->convert_html_chars($infoscreen->infoscreen_content_id),'">
|
||||
<table>
|
||||
<tr>
|
||||
<td>InfoscreenID(s)</td>
|
||||
<td><input type="text" size="15" name="infoscreen_id" value="',($action=='new'?$infoscreen_id:$db->convert_html_chars($infoscreen->infoscreen_id)),'" /> (Kommagetrennt für mehrere, keine ID für alle Infoscreens)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Content ID</td>
|
||||
<td><input type="text" size="5" name="content_id" value="',$db->convert_html_chars($infoscreen->content_id),'" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gültig von</td>
|
||||
<td>
|
||||
<input class="datepicker_datum" type="text" id="gueltigvondatum" size="10" name="gueltigvondatum" placeholder= "dd.mm.yyyy"value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigvon,'d.m.Y')),'" />
|
||||
<input class="timepicker" type="text" id="gueltigvonzeit" size="6" name="gueltigvonzeit" placeholder= "hh:mm" value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigvon,'H:i')),'" />
|
||||
<input type="button" value="Jetzt" onclick="document.getElementById(\'gueltigvondatum\').value=\''.date('d.m.Y').'\';document.getElementById(\'gueltigvonzeit\').value=\''.date('H:i').'\';" />
|
||||
<input type="button" value="Leeren" onclick="document.getElementById(\'gueltigvondatum\').value=\'\';document.getElementById(\'gueltigvonzeit\').value=\'\';" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gültig bis</td>
|
||||
<td>
|
||||
<input class="datepicker_datum" type="text" id="gueltigbisdatum" size="10" name="gueltigbisdatum" placeholder= "dd.mm.yyyy"value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigbis,'d.m.Y')),'" />
|
||||
<input class="timepicker" type="text" id="gueltigbiszeit" size="6" name="gueltigbiszeit" placeholder= "hh:mm" value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigbis,'H:i')),'" />
|
||||
<input type="button" value="Jetzt" onclick="document.getElementById(\'gueltigbisdatum\').value=\''.date('d.m.Y').'\';document.getElementById(\'gueltigbiszeit\').value=\''.date('H:i').'\'" />
|
||||
<input type="button" value="Leeren" onclick="document.getElementById(\'gueltigbisdatum\').value=\'\';document.getElementById(\'gueltigbiszeit\').value=\'\';" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Refreshzeit</td>
|
||||
<td><input id="refreshzeit" type="text" size="18" name="refreshzeit" value="',$db->convert_html_chars($infoscreen->refreshzeit),'"/> Zeit, wie lange die Seite angezeigt wird (in Sekunden)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Exklusiv</td>
|
||||
<td><input id="exklusiv" type="checkbox" name="exklusiv" '.($infoscreen->exklusiv===true?'checked':'').'/> Exklusiveinträge haben Vorrang vor normalen Einträgen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><input type="submit" value="Speichern" onclick="return checkValue();"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>';
|
||||
}
|
||||
|
||||
if(!$infoscreen->getScreenContent($infoscreen_id, false, false))
|
||||
die('Fehler:'.$infoscreen->errormsg);
|
||||
echo '<table class="tablesorter" id="myTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Status</th>
|
||||
<th>ID</th>
|
||||
<th>InfoscreenID</th>
|
||||
<th>ContentID</th>
|
||||
<th>Titel</th>
|
||||
<th>Gültig von</th>
|
||||
<th>Gültig bis</th>
|
||||
<th>Refreshzeit</th>
|
||||
<th>Exklusiv</th>
|
||||
<th colspan="2">Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
$jetzt = time();
|
||||
$aktiv=false;
|
||||
$zukunft=false;
|
||||
$exklusiv = false;
|
||||
|
||||
//Wenn mindestens ein Content als Exklusiv markiert ist, wird dieser vorrangig behandelt
|
||||
foreach($infoscreen->result as $row)
|
||||
{
|
||||
$gueltigvon=$datum_obj->mktime_fromtimestamp($row->gueltigvon);
|
||||
$gueltigbis=$datum_obj->mktime_fromtimestamp($row->gueltigbis);
|
||||
|
||||
if($row->exklusiv==true && (($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')))
|
||||
$exklusiv = true;
|
||||
}
|
||||
foreach($infoscreen->result as $row)
|
||||
{
|
||||
$passiv=false;
|
||||
$content = new content();
|
||||
$content->getContent($row->content_id, 'German');
|
||||
$gueltigvon=$datum_obj->mktime_fromtimestamp($row->gueltigvon);
|
||||
$gueltigbis=$datum_obj->mktime_fromtimestamp($row->gueltigbis);
|
||||
|
||||
if ((($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')) && ($exklusiv==false && $row->exklusiv==false))
|
||||
$aktiv=true;
|
||||
elseif (($exklusiv==true && $row->exklusiv==true) && (($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')))
|
||||
$aktiv=true;
|
||||
else
|
||||
{
|
||||
$aktiv=false;
|
||||
}
|
||||
|
||||
if ($aktiv==false && ($gueltigvon>=$jetzt))
|
||||
$zukunft=true;
|
||||
elseif ((($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')) && ($exklusiv==true && $row->exklusiv==false))
|
||||
$passiv=true;
|
||||
else
|
||||
$zukunft=false;
|
||||
|
||||
echo '<tr '.($aktiv==true || $passiv==true?'':'style="color:grey"').'>';
|
||||
echo '<td width="10px" align="center">'.($aktiv==false?($zukunft==true || $passiv==true?'<img title="2" src="../../skin/images/ampel_gelb.png" alt="ampel_gelb">':'<img title="3" src="../../skin/images/ampel_rot.png" alt="ampel_rot">'):'<img title="1" src="../../skin/images/ampel_gruen.png" alt="ampel_gruen">').'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->infoscreen_content_id),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->infoscreen_id),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->content_id),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($content->titel),'</td>';
|
||||
echo '<td name="'.$datum_obj->formatDatum($row->gueltigvon,'Y-m-d H:i').'" '.($zukunft==true?'style="color:black"':''). '>',$db->convert_html_chars($datum_obj->formatDatum($row->gueltigvon,'d.m.Y H:i')),'</td>';
|
||||
echo '<td name="'.$datum_obj->formatDatum($row->gueltigbis,'Y-m-d H:i').'">',$db->convert_html_chars($datum_obj->formatDatum($row->gueltigbis,'d.m.Y H:i')),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->refreshzeit),'</td>';
|
||||
echo '<td>'.($row->exklusiv===true?'<b>Exklusiv</b>':'').'</td>';
|
||||
echo '<td><a href="infoscreen_details.php?action=update&infoscreen_id=',$db->convert_html_chars($infoscreen_id),'&infoscreen_content_id=',$db->convert_html_chars($row->infoscreen_content_id),'">bearbeiten</a>';
|
||||
echo '<td><a href="infoscreen_details.php?action=delete&infoscreen_id=',$db->convert_html_chars($infoscreen_id),'&infoscreen_content_id=',$db->convert_html_chars($row->infoscreen_content_id),'">entfernen</a>';
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody>
|
||||
</table>';
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
<!-- <script type="text/javascript" src="../../vendor/jquery/sizzle/sizzle.js"></script>-->
|
||||
<!-- <script type="text/javascript" src="../../include/js/tablesort/table.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="../../vendor/fgelinas/timepicker/jquery.ui.timepicker.js"></script>
|
||||
<script type="text/javascript">
|
||||
$.tablesorter.addParser({
|
||||
id: "customDate",
|
||||
is: function(s) {
|
||||
//return false;
|
||||
//use the above line if you don't want table sorter to auto detected this parser
|
||||
//else use the below line.
|
||||
//attention: doesn't check for invalid stuff
|
||||
//2009-77-77 77:77:77.0 would also be matched
|
||||
//if that doesn't suit you alter the regex to be more restrictive
|
||||
//return /\d{1,4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}\.\d+/.test(s);
|
||||
return /\d{1,2}.\d{1,2}.\d{1,4} \d{1,2}:\d{1,2}/.test(s);
|
||||
},
|
||||
format: function(s) {
|
||||
s = s.replace(/\-/g," ");
|
||||
s = s.replace(/:/g," ");
|
||||
s = s.replace(/\./g," ");
|
||||
s = s.split(" ");
|
||||
return $.tablesorter.formatFloat(new Date(s[2], s[1]-1, s[0], s[3], s[4]).getTime());
|
||||
},
|
||||
type: "numeric"
|
||||
});
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#myTable").tablesorter(
|
||||
{
|
||||
// Adding Function for sorting images by title
|
||||
textExtraction:function(s)
|
||||
{
|
||||
if($(s).find('img').length == 0) return $(s).text();
|
||||
return $(s).find('img').attr('title');
|
||||
},
|
||||
sortList: [[0,0],[5,0]],
|
||||
widgets: ['zebra', 'filter', 'stickyHeaders'],
|
||||
headers: { 9: { filter: false, sorter: false }, 5: { sorter: "customDate"}, 6: { sorter: "customDate"}}
|
||||
|
||||
|
||||
});
|
||||
|
||||
$( ".datepicker_datum" ).datepicker({
|
||||
changeMonth: true,
|
||||
changeYear: true,
|
||||
dateFormat: "dd.mm.yy",
|
||||
showButtonPanel: true,
|
||||
currentText: "Today",
|
||||
closeText: "Close",
|
||||
});
|
||||
|
||||
$( ".timepicker" ).timepicker({
|
||||
showPeriodLabels: false,
|
||||
hourText: "Hour",
|
||||
minuteText: "Minute",
|
||||
rows: 4,
|
||||
});
|
||||
|
||||
/*
|
||||
$("#refreshzeit").timepicker(
|
||||
{
|
||||
showPeriodLabels: false,
|
||||
showHours: false,
|
||||
minuteText: "",
|
||||
minutes: {starts: 20, ends: 300, interval: 20},
|
||||
rows: 5,
|
||||
});*/
|
||||
}
|
||||
);
|
||||
function checkValue()
|
||||
{
|
||||
var zeit = document.getElementById("refreshzeit").value;
|
||||
if (!isNaN(zeit))
|
||||
{
|
||||
if(zeit > 32767)
|
||||
{
|
||||
alert("Maximalwert für Refreshzeit ist 32767");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
alert("Wert für Refreshzeit ist ungültig");
|
||||
return false;
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style>
|
||||
.ui-timepicker-table table td a
|
||||
{
|
||||
padding:0.2em 0.3em 0.2em 0.3em;
|
||||
width: 2em;
|
||||
}
|
||||
.ui-widget
|
||||
{
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.ui-widget button
|
||||
{
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.ui-timepicker-table table
|
||||
{
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.ui-widget-content .ui-priority-secondary
|
||||
{
|
||||
opacity: 1;
|
||||
}
|
||||
.ui-widget-content .ui-priority-primary
|
||||
{
|
||||
font-weight: normal;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
$action = (isset($_GET['action'])?$_GET['action']:'show');
|
||||
$infoscreen_id = (isset($_GET['infoscreen_id'])?$_GET['infoscreen_id']:'');
|
||||
$infoscreen = new infoscreen();
|
||||
|
||||
if($infoscreen_id=='')
|
||||
exit;
|
||||
|
||||
if(!$infoscreen->load($infoscreen_id))
|
||||
die($infoscreen->errormsg);
|
||||
|
||||
echo '<h2>Details von Infoscreen ',$infoscreen_id,' - ',$infoscreen->bezeichnung.' - ',$infoscreen->beschreibung.'</h2>';
|
||||
|
||||
echo '
|
||||
<div style="text-align:right">
|
||||
<a href="infoscreen_details.php?action=new&infoscreen_id=',$infoscreen_id,'" target="detail_infoscreen">Neuen Eintrag hinzufügen</a>
|
||||
</div>';
|
||||
|
||||
if($action=='save')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('basis/infoscreen', null, 'sui'))
|
||||
die($rechte->errormsg);
|
||||
$my_infoscreen_id = $_POST['infoscreen_id'];
|
||||
$infoscreen_content_id = $_POST['infoscreen_content_id'];
|
||||
$content_id = $_POST['content_id'];
|
||||
$gueltigvon = $_POST['gueltigvondatum'].' '.$_POST['gueltigvonzeit'];
|
||||
$gueltigbis = $_POST['gueltigbisdatum'].' '.$_POST['gueltigbiszeit'];
|
||||
$refreshzeit = $_POST['refreshzeit'];
|
||||
$exklusiv = (isset ($_POST['exklusiv'])?true:false);
|
||||
|
||||
$infoscreen = new infoscreen();
|
||||
if($infoscreen_content_id!='')
|
||||
{
|
||||
$infoscreen->loadContent($infoscreen_content_id);
|
||||
$infoscreen->new = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$infoscreen->new = true;
|
||||
$infoscreen->insertamum = date('Y-m-d H:i:s');
|
||||
$infoscreen->insertvon = $user;
|
||||
}
|
||||
|
||||
$infoscreen->content_id = $content_id;
|
||||
$infoscreen->gueltigvon = $datum_obj->formatDatum($gueltigvon,'Y-m-d H:i:s');
|
||||
$infoscreen->gueltigbis = $datum_obj->formatDatum($gueltigbis,'Y-m-d H:i:s');
|
||||
$infoscreen->refreshzeit = $refreshzeit;
|
||||
$infoscreen->updateamum = date('Y-m-d H:i:s');
|
||||
$infoscreen->updatevon = $user;
|
||||
$infoscreen->exklusiv = $exklusiv;
|
||||
|
||||
$infoscreen_ids=explode(',',$my_infoscreen_id);
|
||||
if (count($infoscreen_ids)>1)
|
||||
{
|
||||
$infoscreen->new = true;
|
||||
$infoscreen->insertamum = date('Y-m-d H:i:s');
|
||||
$infoscreen->insertvon = $user;
|
||||
}
|
||||
|
||||
$doppelt = false;
|
||||
foreach($infoscreen_ids as $is_id)
|
||||
{
|
||||
$infoscreen->infoscreen_id = $is_id;
|
||||
|
||||
if ($doppelt==false)
|
||||
{
|
||||
if ($is_id==$infoscreen_id && $infoscreen_content_id!='')
|
||||
{
|
||||
$doppelt=true;
|
||||
$infoscreen->new = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
$doppelt=false;
|
||||
|
||||
if(!$infoscreen->saveContent())
|
||||
echo '<span class="error">Fehler bei Infoscreen '.$is_id.': '.$db->convert_html_chars($infoscreen->errormsg).'</span><br>';
|
||||
else
|
||||
echo '<span class="ok">Daten erfolgreich gespeichert für Infoscreen '.$is_id.'</span><br>';
|
||||
|
||||
$infoscreen->new = true;
|
||||
}
|
||||
}
|
||||
if($action=='delete')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('basis/infoscreen', null, 'suid'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
$infoscreen = new infoscreen();
|
||||
$infoscreen_content_id = (isset($_REQUEST['infoscreen_content_id'])?$_REQUEST['infoscreen_content_id']:'');
|
||||
if(!$infoscreen->deleteContent($infoscreen_content_id))
|
||||
echo '<span class="error">',$db->convert_html_chars($infoscreen->errormsg),'</span>';
|
||||
}
|
||||
//Formular fuer neu/update
|
||||
if($action=='new' || $action=='update')
|
||||
{
|
||||
$infoscreen_content_id = (isset($_REQUEST['infoscreen_content_id'])?$_REQUEST['infoscreen_content_id']:'');
|
||||
$infoscreen = new infoscreen();
|
||||
if($action=='new')
|
||||
{
|
||||
echo '<h3>Neu</h3>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<h3>Bearbeiten von ID ',$infoscreen_content_id,'</h3>';
|
||||
if(!$infoscreen->loadContent($infoscreen_content_id))
|
||||
die('Fehler: '.$infoscreen->errormsg);
|
||||
}
|
||||
echo '
|
||||
<form action="',$_SERVER['PHP_SELF'],'?action=save&infoscreen_id=',$infoscreen_id,'" method="POST">
|
||||
<input type="hidden" name="infoscreen_content_id" value="',$db->convert_html_chars($infoscreen->infoscreen_content_id),'">
|
||||
<table>
|
||||
<tr>
|
||||
<td>InfoscreenID(s)</td>
|
||||
<td><input type="text" size="15" name="infoscreen_id" value="',($action=='new'?$infoscreen_id:$db->convert_html_chars($infoscreen->infoscreen_id)),'" /> (Kommagetrennt für mehrere, keine ID für alle Infoscreens)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Content ID</td>
|
||||
<td><input type="text" size="5" name="content_id" value="',$db->convert_html_chars($infoscreen->content_id),'" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gültig von</td>
|
||||
<td>
|
||||
<input class="datepicker_datum" type="text" id="gueltigvondatum" size="10" name="gueltigvondatum" placeholder= "dd.mm.yyyy"value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigvon,'d.m.Y')),'" />
|
||||
<input class="timepicker" type="text" id="gueltigvonzeit" size="6" name="gueltigvonzeit" placeholder= "hh:mm" value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigvon,'H:i')),'" />
|
||||
<input type="button" value="Jetzt" onclick="document.getElementById(\'gueltigvondatum\').value=\''.date('d.m.Y').'\';document.getElementById(\'gueltigvonzeit\').value=\''.date('H:i').'\';" />
|
||||
<input type="button" value="Leeren" onclick="document.getElementById(\'gueltigvondatum\').value=\'\';document.getElementById(\'gueltigvonzeit\').value=\'\';" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gültig bis</td>
|
||||
<td>
|
||||
<input class="datepicker_datum" type="text" id="gueltigbisdatum" size="10" name="gueltigbisdatum" placeholder= "dd.mm.yyyy"value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigbis,'d.m.Y')),'" />
|
||||
<input class="timepicker" type="text" id="gueltigbiszeit" size="6" name="gueltigbiszeit" placeholder= "hh:mm" value="',$db->convert_html_chars($datum_obj->formatDatum($infoscreen->gueltigbis,'H:i')),'" />
|
||||
<input type="button" value="Jetzt" onclick="document.getElementById(\'gueltigbisdatum\').value=\''.date('d.m.Y').'\';document.getElementById(\'gueltigbiszeit\').value=\''.date('H:i').'\'" />
|
||||
<input type="button" value="Leeren" onclick="document.getElementById(\'gueltigbisdatum\').value=\'\';document.getElementById(\'gueltigbiszeit\').value=\'\';" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Refreshzeit</td>
|
||||
<td><input id="refreshzeit" type="text" size="18" name="refreshzeit" value="',$db->convert_html_chars($infoscreen->refreshzeit),'"/> Zeit, wie lange die Seite angezeigt wird (in Sekunden)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Exklusiv</td>
|
||||
<td><input id="exklusiv" type="checkbox" name="exklusiv" '.($infoscreen->exklusiv===true?'checked':'').'/> Exklusiveinträge haben Vorrang vor normalen Einträgen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><input type="submit" value="Speichern" onclick="return checkValue();"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>';
|
||||
}
|
||||
|
||||
if(!$infoscreen->getScreenContent($infoscreen_id, false, false))
|
||||
die('Fehler:'.$infoscreen->errormsg);
|
||||
echo '<table class="tablesorter" id="myTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Status</th>
|
||||
<th>ID</th>
|
||||
<th>InfoscreenID</th>
|
||||
<th>ContentID</th>
|
||||
<th>Titel</th>
|
||||
<th>Gültig von</th>
|
||||
<th>Gültig bis</th>
|
||||
<th>Refreshzeit</th>
|
||||
<th>Exklusiv</th>
|
||||
<th colspan="2">Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
$jetzt = time();
|
||||
$aktiv=false;
|
||||
$zukunft=false;
|
||||
$exklusiv = false;
|
||||
|
||||
//Wenn mindestens ein Content als Exklusiv markiert ist, wird dieser vorrangig behandelt
|
||||
foreach($infoscreen->result as $row)
|
||||
{
|
||||
$gueltigvon=$datum_obj->mktime_fromtimestamp($row->gueltigvon);
|
||||
$gueltigbis=$datum_obj->mktime_fromtimestamp($row->gueltigbis);
|
||||
|
||||
if($row->exklusiv==true && (($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')))
|
||||
$exklusiv = true;
|
||||
}
|
||||
foreach($infoscreen->result as $row)
|
||||
{
|
||||
$passiv=false;
|
||||
$content = new content();
|
||||
$content->getContent($row->content_id, 'German');
|
||||
$gueltigvon=$datum_obj->mktime_fromtimestamp($row->gueltigvon);
|
||||
$gueltigbis=$datum_obj->mktime_fromtimestamp($row->gueltigbis);
|
||||
|
||||
if ((($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')) && ($exklusiv==false && $row->exklusiv==false))
|
||||
$aktiv=true;
|
||||
elseif (($exklusiv==true && $row->exklusiv==true) && (($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')))
|
||||
$aktiv=true;
|
||||
else
|
||||
{
|
||||
$aktiv=false;
|
||||
}
|
||||
|
||||
if ($aktiv==false && ($gueltigvon>=$jetzt))
|
||||
$zukunft=true;
|
||||
elseif ((($gueltigvon<=$jetzt) || ($gueltigvon=='')) && (($gueltigbis>=$jetzt) || ($gueltigbis=='')) && ($exklusiv==true && $row->exklusiv==false))
|
||||
$passiv=true;
|
||||
else
|
||||
$zukunft=false;
|
||||
|
||||
echo '<tr '.($aktiv==true || $passiv==true?'':'style="color:grey"').'>';
|
||||
echo '<td width="10px" align="center">'.($aktiv==false?($zukunft==true || $passiv==true?'<img title="2" src="../../skin/images/ampel_gelb.png" alt="ampel_gelb">':'<img title="3" src="../../skin/images/ampel_rot.png" alt="ampel_rot">'):'<img title="1" src="../../skin/images/ampel_gruen.png" alt="ampel_gruen">').'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->infoscreen_content_id),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->infoscreen_id),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->content_id),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($content->titel),'</td>';
|
||||
echo '<td name="'.$datum_obj->formatDatum($row->gueltigvon,'Y-m-d H:i').'" '.($zukunft==true?'style="color:black"':''). '>',$db->convert_html_chars($datum_obj->formatDatum($row->gueltigvon,'d.m.Y H:i')),'</td>';
|
||||
echo '<td name="'.$datum_obj->formatDatum($row->gueltigbis,'Y-m-d H:i').'">',$db->convert_html_chars($datum_obj->formatDatum($row->gueltigbis,'d.m.Y H:i')),'</td>';
|
||||
echo '<td>',$db->convert_html_chars($row->refreshzeit),'</td>';
|
||||
echo '<td>'.($row->exklusiv===true?'<b>Exklusiv</b>':'').'</td>';
|
||||
echo '<td><a href="infoscreen_details.php?action=update&infoscreen_id=',$db->convert_html_chars($infoscreen_id),'&infoscreen_content_id=',$db->convert_html_chars($row->infoscreen_content_id),'">bearbeiten</a>';
|
||||
echo '<td><a href="infoscreen_details.php?action=delete&infoscreen_id=',$db->convert_html_chars($infoscreen_id),'&infoscreen_content_id=',$db->convert_html_chars($row->infoscreen_content_id),'">entfernen</a>';
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody>
|
||||
</table>';
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1000,7 +1000,7 @@ if(isset($_GET['excel']))
|
||||
$("#"+v.id).tablesorter(
|
||||
{
|
||||
widgets: ["zebra", "filter", "stickyHeaders"],
|
||||
sortList: [[3,0],[4,0]],
|
||||
sortList: [[2,0],[3,0]],
|
||||
headers: {0: { sorter: false}},
|
||||
widgetOptions: {filter_cssFilter: [
|
||||
"filter_clm_null",
|
||||
|
||||
@@ -34,6 +34,7 @@ $dokument_kurzbz = isset($_REQUEST['dokument_kurzbz']) ? $_REQUEST['dokument_kur
|
||||
$onlinebewerbung = isset($_REQUEST['onlinebewerbung']);
|
||||
$pflicht = isset($_POST['pflicht']);
|
||||
$nachreichbar = isset($_POST['nachreichbar']);
|
||||
$stufe = isset($_REQUEST['stufe']) ? $_REQUEST['stufe'] : '';
|
||||
|
||||
$sprache = new sprache();
|
||||
$sprache->getAll(true, 'index');
|
||||
@@ -64,6 +65,7 @@ if($action == 'add')
|
||||
$dokument->onlinebewerbung = $onlinebewerbung;
|
||||
$dokument->pflicht = $pflicht;
|
||||
$dokument->nachreichbar = $nachreichbar;
|
||||
$dokument->stufe = $stufe;
|
||||
|
||||
$beschreibung_mehrsprachig = array();
|
||||
foreach($sprache->result as $row_sprache)
|
||||
@@ -128,6 +130,44 @@ if($action === 'togglepflicht')
|
||||
}
|
||||
}
|
||||
|
||||
// Ändern der Stufe per Ajax
|
||||
$changeStufe = filter_input(INPUT_POST, 'changeStufe', FILTER_VALIDATE_BOOLEAN);
|
||||
if ($changeStufe && isset($_POST['stufe']) && isset($_POST['studiengang_kz']))
|
||||
{
|
||||
if (!$stufe = filter_input(INPUT_POST, 'stufe', FILTER_VALIDATE_INT))
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'fehler',
|
||||
'msg' => '"'.$_POST['stufe'].'" ist kein gültiger Wert für die Stufe'
|
||||
));
|
||||
exit();
|
||||
}
|
||||
|
||||
$studiengang_kz = filter_input(INPUT_POST, 'studiengang_kz', FILTER_VALIDATE_INT);
|
||||
$dokument_kurzbz = filter_input(INPUT_POST, 'dokument_kurzbz');
|
||||
|
||||
$dokument = new dokument();
|
||||
$dokument->loadDokumentStudiengang($dokument_kurzbz, $studiengang_kz);
|
||||
$dokument->stufe = $stufe;
|
||||
|
||||
if (!$dokument->saveDokumentStudiengang())
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'fehler',
|
||||
'msg' => $p->t('global/fehlerBeiDerParameteruebergabe')
|
||||
));
|
||||
exit();
|
||||
}
|
||||
else
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'ok',
|
||||
'msg' => 'Status erfolgreich aktualisiert'
|
||||
));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
if($action === 'togglenachreichbar')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('assistenz', $stg_kz, 'su'))
|
||||
@@ -188,10 +228,25 @@ echo '<!DOCTYPE HTML>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$.tablesorter.addParser({
|
||||
// set a unique id
|
||||
id: "stufe",
|
||||
is: function(s) {
|
||||
// return false so this parser is not auto detected
|
||||
return false;
|
||||
},
|
||||
format: function(s, table, cell)
|
||||
{
|
||||
return $("input", cell).val();
|
||||
},
|
||||
// set type, either numeric or text
|
||||
type: "numeric"
|
||||
});
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[0,0]],
|
||||
widgets: ["zebra"]
|
||||
widgets: ["zebra"],
|
||||
headers: {7:{sorter: "stufe"}}
|
||||
});
|
||||
$("#t2").tablesorter(
|
||||
{
|
||||
@@ -237,6 +292,45 @@ echo '<!DOCTYPE HTML>
|
||||
forced_root_block: "",
|
||||
editor_deselector: "mceNoEditor"
|
||||
});
|
||||
|
||||
function changeStufe(dokument_kurzbz)
|
||||
{
|
||||
var stufe = $("#stufe_"+dokument_kurzbz).val();
|
||||
var studiengang_kz = $("#studiengangSelect").val();
|
||||
|
||||
data = {
|
||||
stufe: stufe,
|
||||
studiengang_kz: studiengang_kz,
|
||||
dokument_kurzbz: dokument_kurzbz,
|
||||
changeStufe: true
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: "studiengang_dokumente.php",
|
||||
data: data,
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
if(data.status!="ok")
|
||||
{
|
||||
$("#feedbackSpanFalse_"+dokument_kurzbz).toggle();
|
||||
$("#feedbackSpanFalse_"+dokument_kurzbz).attr("title", data["msg"]);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#feedbackSpanFalse_"+dokument_kurzbz).hide();
|
||||
$("#feedbackSpanTrue_"+dokument_kurzbz).toggle();
|
||||
$("#feedbackSpanTrue_"+dokument_kurzbz).delay(1000).fadeOut();
|
||||
}
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert(data["msg"]);
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<title>Zuordnung Studiengang - Dokumente</title>
|
||||
</head>
|
||||
@@ -399,7 +493,7 @@ else
|
||||
<tr>
|
||||
<td>
|
||||
<form action='.$_SERVER['PHP_SELF'].' method="post" name="dokumente_zuteilung">
|
||||
<select name="stg_kz" onchange="document.dokumente_zuteilung.submit()">';
|
||||
<select id="studiengangSelect" name="stg_kz" onchange="document.dokumente_zuteilung.submit()">';
|
||||
echo '<option value="">-- Studiengang auswählen --</option>';
|
||||
foreach ($studiengang->result as $stg)
|
||||
{
|
||||
@@ -450,9 +544,10 @@ else
|
||||
}
|
||||
if($rechte->isBerechtigt('assistenz', $stg_kz, 'su'))
|
||||
{
|
||||
echo' <th class="sorter-false" style="text-align: center">Online-Bewerbung</th>
|
||||
<th class="sorter-false" style="text-align: center">Pflicht</th>
|
||||
<th class="sorter-false" style="text-align: center">Nachreichbar</th>
|
||||
echo' <th style="text-align: center">Online-Bewerbung</th>
|
||||
<th style="text-align: center">Pflicht</th>
|
||||
<th style="text-align: center">Nachreichbar</th>
|
||||
<th style="text-align: center">Stufe</th>
|
||||
<th class="sorter-false"></th>';
|
||||
}
|
||||
echo'</tr>
|
||||
@@ -488,9 +583,29 @@ else
|
||||
}
|
||||
if($rechte->isBerechtigt('assistenz', $stg_kz, 'su'))
|
||||
{
|
||||
echo' <td style="text-align: center"><a href="'.$_SERVER['PHP_SELF'].'?action=toggleonline&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'"><img src="../../skin/images/'.$checked_onlinebewerbung.'.png" /></a></td>
|
||||
<td style="text-align: center"><a href="'.$_SERVER['PHP_SELF'].'?action=togglepflicht&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'"><img src="../../skin/images/'.$checked_pflicht.'.png" /></a></td>
|
||||
<td style="text-align: center"><a href="'.$_SERVER['PHP_SELF'].'?action=togglenachreichbar&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'"><img src="../../skin/images/'.$checked_nachreichbar.'.png" /></a></td>
|
||||
echo' <td style="text-align: center">
|
||||
<div style="display: none">'.$checked_onlinebewerbung.'</div>
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?action=toggleonline&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'">
|
||||
<img src="../../skin/images/'.$checked_onlinebewerbung.'.png" />
|
||||
</a>
|
||||
</td>
|
||||
<td style="text-align: center">
|
||||
<div style="display: none">'.$checked_pflicht.'</div>
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?action=togglepflicht&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'">
|
||||
<img src="../../skin/images/'.$checked_pflicht.'.png" />
|
||||
</a>
|
||||
</td>
|
||||
<td style="text-align: center">
|
||||
<div style="display: none">'.$checked_nachreichbar.'</div>
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?action=togglenachreichbar&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'">
|
||||
<img src="../../skin/images/'.$checked_nachreichbar.'.png" />
|
||||
</a>
|
||||
</td>
|
||||
<td style="text-align: left; width: 60px">
|
||||
<input style="width: 30px" type="text" id="stufe_'.$dok->dokument_kurzbz.'" value="'.$dok->stufe.'" tabindex="1" onchange="changeStufe(\''.$dok->dokument_kurzbz.'\')">
|
||||
<span id="feedbackSpanTrue_'.$dok->dokument_kurzbz.'" style="display: none"><img style="width: 16px" src="../../skin/images/true.png" /></span>
|
||||
<span id="feedbackSpanFalse_'.$dok->dokument_kurzbz.'" style="display: none" title=""><img style="width: 16px" src="../../skin/images/false.png" /></span>
|
||||
</td>
|
||||
<td style="text-align: center">';
|
||||
if($rechte->isBerechtigt('assistenz', $stg_kz, 'su'))
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?action=edit&dokument_kurzbz='.$dok->dokument_kurzbz.'&stg_kz='.$stg_kz.'"><img src="../../skin/images/edit.png" title="Zuordnung bearbeiten" size="17px" /></a>';
|
||||
@@ -546,6 +661,9 @@ else
|
||||
<td class="normal" style="text-align: center" valign="top">
|
||||
<input type="checkbox" name="nachreichbar" '.($dok_stg->nachreichbar?'checked="checked"':'').'>
|
||||
</td>
|
||||
<td class="normal" style="text-align: center" valign="top">
|
||||
<input type="text" style="width: 30px" name="stufe" value="'.$dok_stg->stufe.'">
|
||||
</td>
|
||||
<td class="normal" valign="top"><input type="submit" name="add" value="Speichern"></td>
|
||||
</tr>
|
||||
</tfoot>';
|
||||
|
||||
Reference in New Issue
Block a user