Merge branch 'master' into ci

Conflicts:
	composer.json
	composer.lock
	phpci.yml
	system/checksystem.php
	system/dbupdate_3.2.php
	tests/codeception/_data/dump.sql
	tests/codeception/tests/acceptance/CISLoginPage.php
This commit is contained in:
oesi
2017-01-20 11:05:08 +01:00
83 changed files with 5390 additions and 5860 deletions
+4 -2
View File
@@ -103,12 +103,14 @@ ob_start();
if(isset($_GET['content_id']) && $_GET['content_id'] != '')
{
$content_id = $_GET['content_id'];
// Uses urlencode to avoid XSS issues
$content_id = urlencode($_GET['content_id']);
}
else
{
$content_id = CIS_MENU_ENTRY_CONTENT;
} ?>
}
?>
<ul id="menu">
<?php if($content_id != CIS_MENU_ENTRY_CONTENT): ?>
@@ -47,8 +47,7 @@ $p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$user = get_uid();
//$user = 'if06b172';
//$user = 'if06b144';
$lektorenansicht = 0;
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
@@ -62,8 +61,6 @@ else
$lehreinheit_id = '';
$uid = (isset($_GET['uid'])?$_GET['uid']:''); //Uid
if(check_lektor($user) && (isset($_GET['uid']) && $_GET["uid"] != ""))
{
$rights = new benutzerberechtigung();
@@ -94,18 +91,30 @@ $datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
//Abgabedatei ausliefern
if (isset($_GET["download_abgabe"])){
if (isset($_GET["download_abgabe"]))
{
$file=$_GET["download_abgabe"];
$file = preg_replace('/[^A-Za-z0-9\-_.]/', '',$file);
$uebung_id = $_GET["uebung_id"];
$ueb = new uebung();
$ueb->load_studentuebung($user, $uebung_id);
$ueb->load_abgabe($ueb->abgabe_id);
if($ueb->load_studentuebung($user, $uebung_id))
{
if($ueb->load_abgabe($ueb->abgabe_id))
{
$filename = BENOTUNGSTOOL_PATH."abgabe/".$ueb->abgabedatei;
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="'.$file.'"');
readfile($filename);
exit;
}
else
{
die($ueb->errormsg);
}
}
else
die($ueb->errormsg);
}
//Angabedatei ausliefern
if (isset($_GET["download"])){
@@ -167,9 +176,10 @@ if (isset($_POST["abgabe"]))
{
//echo $abgabedatei_up;
$datum = date('Y-m-d H:i:s');
$datumstr = ereg_replace(" ","_",$datum);
$datumstr = str_replace(" ","_",$datum);
$name_up = pathinfo($_FILES["abgabedatei"]["name"]);
$name_neu = makeUploadName($db, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$user, $date=$datumstr);
$name_neu = preg_replace('/[^A-Za-z0-9\-_]/', '',$name_neu);
$abgabedatei = $name_neu.".".$name_up["extension"];
$abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei;
@@ -585,6 +595,7 @@ if (!isset($_GET["notenuebersicht"]))
$uebung_obj = new uebung();
$uebung_obj->load($uebung_id);
$downloadname = mb_ereg_replace($uebung_id,mb_ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei);
$downloadname = preg_replace('/[^A-Za-z0-9\-_.]/', '',$downloadname);
echo $p->t('benotungstool/freigegebenVon')." ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))." ".$p->t('global/bis')." ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis));
echo "<br><br><h3><u>$uebung_obj->bezeichnung</u></h3>";
if ($uebung_obj->angabedatei)
@@ -112,6 +112,7 @@ if (isset($_FILES["abgabedatei"]))
$datumstr = ereg_replace(" ","_",$datum);
$name_up = pathinfo($_FILES["abgabedatei"]["name"]);
$name_neu = makeUploadName($db, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$student_uid, $date=$datumstr);
$name_neu = preg_replace('/[^A-Za-z0-9\-_]/', '',$name_neu);
$abgabedatei = $name_neu.".".$name_up["extension"];
$abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei;
@@ -883,7 +884,8 @@ else
{
$date = date('Y-m-d_H:i:s');
$downloadname = makeUploadName($db, $which="zip", $lehreinheit_id, $uebung_id, $stsem, $uid=null, $date);
$downloadname = mb_ereg_replace($uebung_id, ereg_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname);
$downloadname = str_replace($uebung_id, str_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname);
$downloadname = preg_replace('/[^A-Za-z0-9\-_]/', '',$downloadname);
echo "<a href='zipdownload_benotungstool.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&downloadname=$downloadname'> [".$p->t('benotungstool/abgabenDownloaden')."]</a>";
}
else
@@ -857,6 +857,7 @@ if(isset($_GET["uebung_id"]) && $_GET["uebung_id"]!='')
//$downloadname = mb_ereg_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei);
$downloadname = mb_str_replace(' ', '_', $uebung_obj->bezeichnung);
$downloadname = mb_str_replace($uebung_id, $downloadname, $uebung_obj->angabedatei);
$downloadname = preg_replace('/[^A-Za-z0-9\-_.]/', '',$downloadname);
echo "
<tr><td>".$p->t('benotungstool/thema')."</td><td align='right'><input type='text' name='thema' maxlength='32' value='".htmlentities($uebung_obj->bezeichnung,ENT_QUOTES,'UTF-8')."'></td><td>$error_thema</td></tr>
<tr><td>".$p->t('benotungstool/freigabe')."</td><td align='right'>von <input type='text' size='16' name='freigabevon' value='".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))."'></td></tr>
@@ -62,24 +62,30 @@ if(mb_strstr($downloadname,'..'))
//Pfade bauen
$pfad = BENOTUNGSTOOL_PATH.'abgabe/';
$filename = 'download_'.$user.'_'.$downloadname.'.zip';
$filename_tmp = 'download_'.$user.'_'.$uebung_id.'.zip';
if(!check_filename($filename))
if(!check_filename($filename) || !check_filename($filename_tmp))
die('Ungueltiger Parameter gefunden');
//Pfad wechseln
chdir($pfad);
if(chdir($pfad))
{
//File loeschen falls es existiert
//if(file_exists("download_".$user."*"))
exec('rm download_'.$user.'*');
//Zip File erstellen
exec("zip -r ".escapeshellarg($filename).' *_[WS]S[0-9][0-9][0-9][0-9]_'.$uebung_id.'_*');
exec("zip -r ".escapeshellarg($filename_tmp).' *_[WS]S[0-9][0-9][0-9][0-9]_'.$uebung_id.'_*');
//Auf Zip File Verweisen
//header("Location: $pfad$filename");
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="'.$filename.'"');
readfile($filename);
unlink($filename);
readfile($filename_tmp);
unlink($filename_tmp);
}
else
{
die('Path change failed');
}
?>
+2 -1
View File
@@ -64,7 +64,8 @@ $lv_obj->load($lvid);
$lv=$lv_obj;
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz=$_GET['studiensemester_kurzbz'];
// Uses urlencode to avoid XSS issues
$studiensemester_kurzbz = urlencode($_GET['studiensemester_kurzbz']);
else
$studiensemester_kurzbz='';
+34 -1
View File
@@ -447,6 +447,34 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
$("#studienverpflichtung").html(html);
});
$.ajax({
dataType: 'json',
url: "./pruefungsanmeldung.json.php",
type: "POST",
data: {
method: "getPrestudenten"
},
error: loadError
}).success(function(data)
{
if(data.error !== false)
{
var html = "<select id='prestudent_studiengang' name='studiengang'>";
//show if more than 1 active prestudent exists
if(data.result.length > 1)
{
data.result.forEach(function(v,i){
html += "<option value='"+v.studiengang_kz+"'>"+v.kuerzel+"</option>";
});
}
html += "</select>";
console.log(html);
$("#studiengang").html("<td style='vertical-align: top; font-weight: bold;'><?php echo $p->t('pruefung/AnrechnungInStudiengang'); ?>:</td><td>"+html+"</td>");
}
});
var start = terminVon;
var ende = terminBis;
start = start.split(' ');
@@ -488,6 +516,10 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
if($("#studienverpflichtung").length)
studienverpflichtung_id = $("#studienverpflichtung option:selected").val();
var studiengang_kz = null;
if($('#prestudent_studiengang').length)
studiengang_kz = $('#prestudent_studiengang option:selected').val();
$.ajax({
dataType: 'json',
url: "./pruefungsanmeldung.json.php",
@@ -498,7 +530,8 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
lehrveranstaltung_id: lehrveranstaltung_id,
bemerkung: bemerkungen,
uid: uid,
studienverpflichtung_id: studienverpflichtung_id
studienverpflichtung_id: studienverpflichtung_id,
studiengang_kz: studiengang_kz
},
error: loadError
}).success(function(data){
+74 -3
View File
@@ -491,6 +491,32 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
$("#studienverpflichtung").html(html);
});
$.ajax({
dataType: 'json',
url: "./pruefungsanmeldung.json.php",
type: "POST",
data: {
method: "getPrestudenten"
},
error: loadError
}).success(function(data)
{
if(data.error !== false)
{
//show if more than 1 active prestudent exists
if(data.result.length > 1)
{
var html = "<select id='prestudent_studiengang' name='studiengang'>";
data.result.forEach(function(v,i){
html += "<option value='"+v.studiengang_kz+"'>"+v.kuerzel+"</option>";
});
html += "</select>";
$("#studiengang").html("<td style='vertical-align: top; font-weight: bold;'><?php echo $p->t('pruefung/AnrechnungInStudiengang'); ?>:</td><td>"+html+"</td>");
}
}
});
var start = terminVon;
var ende = terminBis;
start = start.split(' ');
@@ -532,6 +558,10 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
if($("#studienverpflichtung").length)
studienverpflichtung_id = $("#studienverpflichtung option:selected").val();
var studiengang_kz = null;
if($('#prestudent_studiengang').length)
studiengang_kz = $('#prestudent_studiengang option:selected').val();
$.ajax({
dataType: 'json',
url: "./pruefungsanmeldung.json.php",
@@ -542,7 +572,8 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
lehrveranstaltung_id: lehrveranstaltung_id,
bemerkung: bemerkungen,
uid: uid,
studienverpflichtung_id: studienverpflichtung_id
studienverpflichtung_id: studienverpflichtung_id,
studiengang_kz: studiengang_kz
},
error: loadError
}).success(function(data){
@@ -778,10 +809,10 @@ function writeAnmeldungen(data)
});
liste += "</ul>";
$("#anmeldung_hinzufuegen").html("<input id='anmeldung_hinzufuegen_uid' type='text' placeholder='StudentIn-UID' /><input type='button' value='<?php echo $p->t('global/hinzufuegen'); ?>' onclick='saveAnmeldung(\""+lehrveranstaltung_id+"\",\""+terminId+"\");'/>");
$("#reihungSpeichernButton").html("<input type='button' value='<?php echo $p->t('pruefung/reihungSpeichern'); ?>' onclick='saveReihung(\""+terminId+"\", \""+lehrveranstaltung_id+"\");'>");
$("#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.php?termin_id="+terminId+"&lehrveranstaltung_id="+lehrveranstaltung_id+"&studiensemester="+studiensemester+"' target='_blank'><?php echo $p->t('pruefung/listeDrucken'); ?></a>");
$("#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>");
if(ort_kurzbz !== null)
{
$("#raumLink").html("<span><?php echo $p->t('pruefung/pruefungsraum'); ?></span>"+ort_kurzbz);
@@ -800,6 +831,8 @@ function writeAnmeldungen(data)
}
else
{
$("#anmeldung_hinzufuegen").empty();
$("#lvdaten").empty();
$("#anmeldeDaten").empty();
$("#reihungSpeichernButton").empty();
$("#kommentar").empty();
@@ -807,6 +840,11 @@ function writeAnmeldungen(data)
$("#raumLink").empty();
$("#listeDrucken").empty();
messageBox("message", data.errormsg, "red", "highlight", 1000);
if (data.lv_bezeichnung)
{
$("#lvdaten").html(data.lv_bezeichnung+" ("+data.termin_datum+")");
$("#anmeldung_hinzufuegen").html("<input id='anmeldung_hinzufuegen_uid' type='text' placeholder='StudentIn-UID' /><input type='button' value='<?php echo $p->t('global/hinzufuegen'); ?>' onclick='saveAnmeldung(\""+data.lv_id+"\",\""+data.termin_id+"\");'/>");
}
}
}
@@ -891,6 +929,39 @@ function anmeldungBestaetigen(pruefungsanmeldung_id, termin_id, lehrveranstaltun
});
}
/**
* Ändert den Status aller Anmeldungen eines Termins auf "bestätigt"
* @param {type} termin_id ID des Prüfungstermines
* @param {type} lehrveranstaltung_id ID der Lehrveranstaltung
* @returns {undefined}
*/
function alleBestaetigen(termin_id, lehrveranstaltung_id)
{
$.ajax({
dataType: 'json',
url: "./pruefungsanmeldung.json.php",
type: "POST",
data: {
method: "alleBestaetigen",
termin_id: termin_id,
lehrveranstaltung_id: lehrveranstaltung_id
},
error: loadError
}).success(function(data){
if(data.error === 'false' && data.result === true)
{
if(termin_id !== 'undefined' && lehrveranstaltung_id !== 'undefined')
{
showAnmeldungen(termin_id, lehrveranstaltung_id);
}
}
else
{
messageBox("message", data.errormsg, "red", "highlight", 1000);
}
});
}
/**
* Anzeige eines DIVs zur Darstellung von Fehlermeldungen, etc.
* @param {type} divId ID des DIVs in dem die Meldung dargestellt werden soll
@@ -97,6 +97,9 @@ switch($method)
case 'anmeldungBestaetigen':
$data = anmeldungBestaetigen($uid);
break;
case 'alleBestaetigen':
$data = alleBestaetigen($uid);
break;
case 'getStudiengaenge':
$data = getStudiengaenge();
break;
@@ -118,7 +121,10 @@ switch($method)
break;
case 'getLvKompatibel':
$lvid = filter_input(INPUT_POST, "lehrveranstaltung_id");
$data = getLvKompatibel($lvid);
$data = getLvKompatibel($lvid, $uid);
break;
case 'getPrestudenten':
$data = getPrestudenten($uid, $aktStudiensemester);
break;
default:
break;
@@ -376,6 +382,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$stdsem = $studiensemester->getLastOrAktSemester(0);
$lv_besucht = false;
$studienverpflichtung_id = filter_input(INPUT_POST, "studienverpflichtung_id");
$studiengang_kz = filter_input(INPUT_POST, "studiengang_kz");
//Defaulteinstellung für Anzahlprüfungsversuche (wird durch Addon "ktu" überschrieben)
$maxAnzahlVersuche = 0;
@@ -539,12 +546,21 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$konto = new konto();
$creditPoints = $konto->getCreditPointsOfStudiensemester($uid, $pruefungsfenster->studiensemester_kurzbz);
if(($creditPoints != false) && ($lehrveranstaltung->ects > ($creditPoints - $ects_verwendet)))
if(($creditPoints !== false))
{
$cpVerbleibend = $creditPoints - $ects_verwendet;
if(($lehrveranstaltung->ects > $cpVerbleibend))
{
$data['error'] = 'true';
$data['errormsg'] = $p->t('pruefung/zuWenigeCreditPoints');
return $data;
}
}
elseif($konto->errormsg !== null)
{
$data['error'] = 'true';
$data['errormsg'] = 'Fehler beim Laden der Credit Points.';
}
if(isset($data['error']) && $data['error'] = 'true')
{
@@ -574,6 +590,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
$anrechnung = new anrechnung();
$lv_komp = new lehrveranstaltung($studienverpflichtung_id);
$lehrveranstaltung = new lehrveranstaltung($_REQUEST["lehrveranstaltung_id"]);
$person = new person();
$person->getPersonFromBenutzer($uid);
$prestudent = new prestudent();
@@ -583,10 +600,27 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
if ($aktStudiensemester)
$stdsem = $aktStudiensemester;
if(count($prestudent->result) > 0)
$prestudenten = array();
foreach ($prestudent->result as $ps)
{
if ($ps->getLaststatus($ps->prestudent_id, $stdsem))
{
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher"))
{
array_push($prestudenten, $ps);
}
}
}
if (count($prestudenten) > 0)
{
$prestudent_id = "";
foreach($prestudent->result as $ps)
if (count($prestudenten) != 1)
{
foreach ($prestudenten as $ps)
{
if($ps->studiengang_kz === $studiengang_kz)
{
if ($ps->getLaststatus($ps->prestudent_id, $stdsem))
{
@@ -616,6 +650,42 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
}
}
}
}
}
else
{
foreach ($prestudenten as $ps)
{
if ($ps->getLaststatus($ps->prestudent_id, $stdsem))
{
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher"))
{
$prestudent_id = $ps->prestudent_id;
}
else
{
if ($ps->getLaststatus($ps->prestudent_id, $stdsem_lv_besuch))
{
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher"))
{
$prestudent_id = $ps->prestudent_id;
}
}
}
}
else
{
if ($ps->getLaststatus($ps->prestudent_id, $stdsem_lv_besuch))
{
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher"))
{
$prestudent_id = $ps->prestudent_id;
}
}
}
}
}
if($prestudent_id != "")
{
$anrechungSaveResult = false;
@@ -834,6 +904,10 @@ function getAnmeldungenTermin()
else
{
$data['errormsg']= $p->t('pruefung/keineAnmeldungenVorhanden');
$data['lv_id'] = $lehrveranstaltung_id;
$data['termin_id'] = $pruefungstermin_id;
$data['termin_datum'] = $pruefungstermin->datum;
$data['lv_bezeichnung'] = $pruefungstermin->lv_bezeichnung;
}
}
return $data;
@@ -861,6 +935,67 @@ function saveReihung()
return $data;
}
/**
* Ändert den Status aller Prüfungsanmeldungen eines Termins/LV auf "bestaetigt"
* @return Array
*/
function alleBestaetigen($uid)
{
global $p;
$lehrveranstaltung_id = $_REQUEST["lehrveranstaltung_id"];
$pruefungstermin_id = $_REQUEST["termin_id"];
$pruefungstermin = new pruefungstermin($pruefungstermin_id);
$pruefungsanmeldung = new pruefungsanmeldung();
$pranmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id);
foreach($pranmeldungen as $a)
{
$anmeldung = new pruefungsanmeldung($a->pruefungsanmeldung_id);
if ($anmeldung->status_kurzbz == 'angemeldet')
{
if ($anmeldung->changeState($a->pruefungsanmeldung_id, 'bestaetigt', $uid))
{
$anm = new pruefungsanmeldung($a->pruefungsanmeldung_id);
$termin = new pruefungstermin($anm->pruefungstermin_id);
$lv = new lehrveranstaltung($anm->lehrveranstaltung_id);
$ma = new mitarbeiter($uid);
$datum = new datum();
$ort = new ort($termin->ort_kurzbz);
$pruefung = new pruefungCis($termin->pruefung_id);
$to = $anm->uid."@".DOMAIN;
$from = "noreply@".DOMAIN;
$subject = $p->t('pruefung/emailSubjectAnmeldungBestaetigung');
$html = $p->t('pruefung/emailBody1')." ".$ma->vorname." ".$ma->nachname." ".$p->t('pruefung/emailBody2')."<br>";
$html .= "<br>";
$html .= $p->t('pruefung/emailBodyPruefung')." ".$lv->bezeichnung."<br>";
if($pruefung->einzeln)
{
$date = $datum->formatDatum($termin->von, "Y-m-d H:i:s");
$date = strtotime($date);
$date = $date+(60*$pruefung->pruefungsintervall*($anmeldung->reihung-1));
$von = date("H:i",$date);
$html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$von."<br>";
$html .= $p->t('pruefung/emailBodyDauer')." ".$pruefung->pruefungsintervall." ".$p->t('pruefung/emailBodyMinuten')."</br>";
}
else
$html .= $p->t('pruefung/emailBodyTermin')." ".$datum->formatDatum($termin->von, "d.m.Y")." ".$p->t('pruefung/emailBodyUm')." ".$datum->formatDatum($termin->von, "H:i")."<br>";
$html .= $p->t('pruefung/anmeldungErfolgreich')." ".$ort->bezeichnung."<br>";
$html .= "<br>";
$html .= "<a href='".APP_ROOT."cis/private/lehre/pruefung/pruefungsanmeldung.php'>".$p->t('pruefung/emailBodyLinkZurAnmeldung')."</a><br>";
$html .= "<br>";
$mail = new mail($to, $from, $subject,$p->t('pruefung/emailBodyBitteHtmlSicht'));
$mail->setHTMLContent($html);
$mail->send();
}
}
}
$data['result']=true;
$data['error']='false';
$data['errormsg']='';
return $data;
}
/**
* Ändert den Status einer Prüfungsanmeldung auf "bestaetigt"
* @return Array
@@ -1153,10 +1288,28 @@ function saveRaum($terminId, $ort_kurzbz, $uid)
return $data;
}
function getLvKompatibel($lvid)
function getLvKompatibel($lvid, $uid)
{
$person = new person();
$person->getPersonFromBenutzer($uid);
$prestudent = new prestudent();
$prestudent->getPrestudenten($person->person_id);
$stplIds = array();
foreach ($prestudent->result as $ps)
{
if ($ps->getLaststatus($ps->prestudent_id))
{
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher"))
{
array_push($stplIds, $ps->studienplan_id);
}
}
}
$lv = new lehrveranstaltung();
if($lv->getLVkompatibel($lvid))
if($lv->getLVkompatibelTo($lvid, $stplIds))
{
$data['result']=$lv->lehrveranstaltungen;
$data['error']='false';
@@ -1170,4 +1323,40 @@ function getLvKompatibel($lvid)
}
return $data;
}
function getPrestudenten($uid, $aktStudiensemester)
{
$person = new person();
$person->getPersonFromBenutzer($uid);
$prestudent = new prestudent();
$prestudent->getPrestudenten($person->person_id);
$result = array();
if (count($prestudent->result) > 0)
{
foreach ($prestudent->result as $key=>$ps)
{
if ($ps->getLaststatus($ps->prestudent_id))
{
if(($ps->status_kurzbz === 'Student') || ($ps->status_kurzbz == 'Unterbrecher'))
{
$studiengang = new studiengang($ps->studiengang_kz);
array_push($result, $studiengang);
}
}
}
$data['result']=$result;
$data['error']='false';
$data['errormsg']='';
}
else
{
$data['result']="";
$data['error']='true';
$data['errormsg']=$lv->errormsg;
}
return $data;
}
?>
@@ -40,6 +40,17 @@ $p = new phrasen($sprache);
//TODO
$uid = get_uid();
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um den Studienplan
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
$uid=$_GET['uid'];
}
$db = new basis_db();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
@@ -302,6 +313,9 @@ $studiensemester->getAll();
</td>
</tr>
<?php endif; ?>
<tr id="studiengang">
</tr>
<tr>
<td style="vertical-align: top; font-weight: bold;"><?php echo $p->t('global/anmerkung'); ?>: </td>
<td>
@@ -0,0 +1,167 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Manfred Kindl <manfred.kindl@technikum-wien.at>
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/dokument_export.class.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/vorlage.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user=get_uid();
$sprache = getSprache();
$lang = new sprache();
$lang->load($sprache);
$p = new phrasen($sprache);
$berechtigung = new benutzerberechtigung();
$berechtigung->getBerechtigungen($user);
if(isset($_GET['lehrveranstaltung_id']) && is_numeric($_GET['lehrveranstaltung_id']))
$lvid = $_GET['lehrveranstaltung_id'];
else
die('Eine gueltige LvID muss uebergeben werden');
if(isset($_GET['studiensemester']))
$studiensemester = $_GET['studiensemester'];
else
die('Eine Studiensemester muss uebergeben werden');
if(isset($_GET['termin_id']) && is_numeric($_GET['termin_id']))
$termin_id = $_GET['termin_id'];
else
die('Eine Termin-ID muss uebergeben werden');
$vorlagecheck = new vorlage();
if (!$vorlagecheck->loadVorlage('Pruefungslist'))
header('Location: pruefungsanmeldungen_liste.php?termin_id='.$termin_id.'&lehrveranstaltung_id='.$lvid.'&studiensemester='.$studiensemester);
if(!$berechtigung->isBerechtigt('admin') && !$berechtigung->isBerechtigt('assistenz') && !check_lektor_lehrveranstaltung($user,$lvid,$studiensemester))
die('Sie muessen LektorIn der LV oder Admin sein, um diese Seite aufrufen zu koennen');
$output='pdf';
if(isset($_GET['output']) && ($output='odt' || $output='doc'))
$output=$_GET['output'];
$lv = new lehrveranstaltung();
$lv->load($lvid);
$doc = new dokument_export('Pruefungslist');
$stg = new studiengang();
$stg->load($lv->studiengang_kz);
$studiengang_bezeichnung=$stg->bezeichnung;
$stg->getAllTypes();
$datum = new datum();
$stdsem = new studiensemester($studiensemester);
$pruefungsanmeldung = new pruefungsanmeldung();
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($termin_id, $lvid, $studiensemester, "bestaetigt");
$lehrveranstaltung = new lehrveranstaltung($lvid);
$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);
$dozent = $mitarbeiter->getFullName(FALSE);
$termin_datum = $datum->formatDatum($pruefungstermin->von, "d.m.Y - H:i");
$data = array(
'bezeichnung'=>$lv->bezeichnung,
'lehrveranstaltung_id'=>$lv->lehrveranstaltung_id,
'studiengang'=>$studiengang_bezeichnung,
'studiengang_kz'=>$lv->studiengang_kz,
'typ'=>$stg->studiengang_typ_arr[$stg->typ],
'studiensemester'=>$stdsem->bezeichnung,
'semester'=>$lv->semester,
'orgform'=>$lv->orgform_kurzbz,
'dozent'=>$dozent,
'termin_datum'=>$termin_datum
);
$count = 0;
foreach($anmeldungen as $anmeldung)
{
$student = new student($anmeldung->uid);
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
if($einzeln)
{
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
$date = strtotime($date);
$date = $date+(60*$pruefungsintervall*($count));
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("H:i",$date);
$count++;
}
else
{
$date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i");
$count++;
}
$date = $datum->formatDatum($prfTermin->von,"d.m.Y");
$data[] = array('student'=>array(
'count' => $count,
'vorname' => $student->vorname,
'nachname' => $student->nachname,
'matr_nr' => $student->matr_nr,
'datum' => $date,
'wuensche' => $anmeldung->wuensche,
'kommentar' => $anmeldung->kommentar
));
}
$doc->addDataArray($data,'pruefungsliste');
//header("Content-type: application/xhtml+xml");
//echo $doc->ConvertArrayToXML($data,'anwesenheitsliste');
//exit;
if(!$doc->create($output))
die($doc->errormsg);
$doc->output();
$doc->close();
}
else {
echo $p->t('pruefung/keineBestaetigtenAnmeldungenVorhanden');
}
?>
+1 -1
View File
@@ -235,7 +235,7 @@ if ($num_rows_stpl>0)
echo '
<tr class="liste'.($i%2).'">
<td>'.$db->convert_html_chars($unr).'</td>
<td><A class="Item" href="mailto:'.$pers_email.'">'.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).'</A></td>
<td><A class="Item" href="../profile/index.php?uid='.$row->uid.'" target="_self" onClick="window.resizeTo(1200,880)">'.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).'</A></td>
<td title="'.$db->convert_html_chars($ort->bezeichnung).'">'.(!empty($ortkurzbz)?($ort->content_id!=''?'<a href="../../../cms/content.php?content_id='.$ort->content_id.'" target="_self" onClick="window.resizeTo(1200,880)">'.$db->convert_html_chars($ortkurzbz).'</a>':$db->convert_html_chars($ortkurzbz)):$db->convert_html_chars($ortkurzbz)).'</td>
<td>'.$db->convert_html_chars($lehrfachkurzbz).'</td>
<td>'.$db->convert_html_chars($bezeichnung).'</td>
+3 -2
View File
@@ -55,10 +55,11 @@ if (isset($_GET['datum']))
if (isset($_POST['datum']))
$datum=$_POST['datum'];
// Uses urlencode to avoid XSS issues
if (isset($_GET['ort_kurzbz']))
$ort_kurzbz=$_GET['ort_kurzbz'];
$ort_kurzbz = urlencode($_GET['ort_kurzbz']);
else if (isset($_POST['ort_kurzbz']))
$ort_kurzbz=$_POST['ort_kurzbz'];
$ort_kurzbz = urlencode($_POST['ort_kurzbz']);
else
$ort_kurzbz=null;
+83 -61
View File
@@ -449,16 +449,24 @@ function drawTree($tree, $depth)
}
if(!$positiv)
{
//echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
if(count($kompatibleLVs) > 0)
{
checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $note_pruef_arr, $p, $uid, true);
}
else
{
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
}
elseif($positiv)
{
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
}
elseif($lvregelExists)
{
if($abgeschlossen && $positiv)
if($abgeschlossen || $positiv)
{
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
}
@@ -475,66 +483,7 @@ function drawTree($tree, $depth)
//check if compatible course has grade
elseif(count($kompatibleLVs) > 0)
{
$positiv = false;
$found = false;
$i = 0;
while(!$found && $i < count($kompatibleLVs))
{
foreach($kompatibleLVs as $komp)
{
$anrechnung = new anrechnung();
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp);
if(count($anrechnung->result) == 1)
{
$lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel;
if(isset($noten_arr[$lv]))
{
$positiv=false;
foreach($noten_arr[$lv] as $note)
{
if($note_pruef_arr[$note]->positiv)
$positiv=true;
}
$found = true;
}
else
{
/* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert
* darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde
*/
if(!$found)
$found = false;
}
}
$i++;
}
}
if($found)
{
if($positiv)
{
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
}
else
{
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
}
elseif(!$found)
{
if(!$row_tree->stpllv_pflicht)
{
echo '<span>'.$p->t('studienplan/optional').'</span>';
}
else
{
echo '<span>'.$p->t('studienplan/offen').'</span>';
}
}
checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $note_pruef_arr, $p, $uid);
}
else
{
@@ -709,6 +658,79 @@ function drawTree($tree, $depth)
drawTree($row_tree->childs, $depth+1);
}
}
function checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $note_pruef_arr, $p, $uid, $negativeNote= null)
{
$positiv = false;
$found = false;
$i = 0;
while(!$found && $i < count($kompatibleLVs))
{
foreach($kompatibleLVs as $komp)
{
$anrechnung = new anrechnung();
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp);
if(count($anrechnung->result) == 1)
{
$lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel;
if(isset($noten_arr[$lv]))
{
$positiv=false;
foreach($noten_arr[$lv] as $note)
{
if($note_pruef_arr[$note]->positiv)
$positiv=true;
}
$found = true;
}
else
{
/* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert
* darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde
*/
if(!$found)
$found = false;
}
}
$i++;
}
}
if($found)
{
if($positiv)
{
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
}
else
{
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
}
elseif(!$found)
{
if(!$row_tree->stpllv_pflicht)
{
echo '<span>'.$p->t('studienplan/optional').'</span>';
}
else
{
if(($negativeNote!= null) && ($negativeNote == true))
{
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
else
{
echo '<span>'.$p->t('studienplan/offen').'</span>';
}
}
}
}
echo '</table>';
echo '<br><br>'.$p->t('studienplan/legende').':<br>
<table>
+1 -1
View File
@@ -127,7 +127,7 @@ if(!$person->load($uid))
{
if(elem[i].name.match("^wunsch"))
{
if(!elem[i].value.match("[12]"))
if(!elem[i].value.match("^\-?[1-2]\d{0,0}$"))
error=true;
}
}
+3 -7
View File
@@ -84,8 +84,7 @@ if(isset($_GET['id']) && isset($_GET['uid']))
if($aktion!='zip')
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
echo '<!DOCTYPE HTML>
<html>
<head>
<title>'.$p->t('abgabetool/projektabgabeUebersicht').'</title>
@@ -136,7 +135,6 @@ if($aktion!='zip')
}
echo "</SELECT>";
$qry_termin=" SELECT distinct campus.tbl_paabgabe.datum as termin , to_char(campus.tbl_paabgabe.datum, 'DD-MM-YYYY') as termin_anzeige
FROM lehre.tbl_projektarbeit
JOIN campus.tbl_paabgabe USING(projektarbeit_id)
@@ -146,16 +144,14 @@ if($aktion!='zip')
LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
LEFT JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom')
";
//AND public.tbl_benutzer.aktiv
if ($stg_kz!='')
$qry_termin.=" AND public.tbl_studiengang.studiengang_kz='$stg_kz'";
$qry_termin.=" AND public.tbl_studiengang.studiengang_kz=".$db->db_add_param($stg_kz, FHC_INTEGER);
if ($abgabetyp!='')
$qry_termin.=" AND campus.tbl_paabgabe.paabgabetyp_kurzbz='$abgabetyp'";
$qry_termin.=" AND campus.tbl_paabgabe.paabgabetyp_kurzbz=".$db->db_add_param($abgabetyp);
$qry_termin.=" ORDER BY termin desc";
echo '&nbsp;'.$p->t('abgabetool/termin').'&nbsp;<select name="termin" id="termin">
<option value="" '. (!isset($_REQUEST['termin']) || empty($termin)?' selected ':'') .'>-'.$p->t('global/alle').'-</option> ';
if($result_termin=$db->db_query($qry_termin))
+4 -1
View File
@@ -61,7 +61,10 @@ echo '<h1>',$p->t('tools/suche'),'</h1>';
$search = (isset($_REQUEST['search'])?$_REQUEST['search']:'');
echo '<form action="',$_SERVER['PHP_SELF'],'" name="searchform" method="GET">
// Uses htmlspecialchars to avoid XSS issues
$self = htmlspecialchars($_SERVER["PHP_SELF"], ENT_QUOTES, "utf-8");
echo '<form action="',$self,'" name="searchform" method="GET">
<input type="search" placeholder="'.$p->t('tools/suchbegriff').' ..." size="40" name="search" value="',$db->convert_html_chars($search),'" />
<img src="../../../skin/images/search.png" onclick="document.searchform.submit()" height="15px" class="suchicon"/>
</form><br>';
+2 -1
View File
@@ -86,7 +86,8 @@ $activities_str = "'".implode("','", $activities)."'";
$gesperrt_bis = '2015-08-31';
$sperrdatum = date('c', strtotime($gesperrt_bis));
$zeitaufzeichnung_id = (isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
// Uses urlencode to avoid XSS issues
$zeitaufzeichnung_id = urlencode(isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
$projekt_kurzbz = (isset($_POST['projekt'])?$_POST['projekt']:'');
$oe_kurzbz_1 = (isset($_POST['oe_kurzbz_1'])?$_POST['oe_kurzbz_1']:'');
$oe_kurzbz_2 = (isset($_POST['oe_kurzbz_2'])?$_POST['oe_kurzbz_2']:'');
+101 -19
View File
@@ -187,6 +187,11 @@ $( document ).ready(function()
}
}
});
function setBisdatum(datum)
{
if(document.getElementById("bis_datum").value=="")
document.getElementById("bis_datum").value=datum;
}
</script>
';
?>
@@ -268,6 +273,35 @@ if($method =="austauschprogram")
{
// Speichert Austauschprogram in preincoming tabelle
if(isset($_POST['submit_program']))
{
$von_datum = $_REQUEST['von'];
$bis_datum = $_REQUEST['bis'];
//Datum auf Gueltigkeit pruefen
if (($von_datum != '' && !$date->formatDatum($von_datum,'Y-m-d')) || ($bis_datum != '' && !$date->formatDatum($bis_datum,'Y-m-d')))
{
echo '<span style="color: red"><b>'.($p->t('incoming/bitteGueltigesDatumEingeben')).'</b></span>';
}
else
{
$von_datum = $date->formatDatum($von_datum,'Y-m-d');
$bis_datum = $date->formatDatum($bis_datum,'Y-m-d');
$dtstart = new DateTime($von_datum);
$dtende = new DateTime($bis_datum);
$jetzt = new DateTime();
if ($dtstart < $jetzt)
{
echo '<span style="color: red"><b>'.$p->t('incoming/beginnNichtInVergangenheit').'</b></span>';
$_REQUEST['von'] = '';
}
elseif ($von_datum != '' && $bis_datum != '' && $dtende < $dtstart)
{
echo '<span style="color: red"><b>'.$p->t('incoming/endeGroesserStart').'</b></span>';
$_REQUEST['bis'] = '';
}
else
{
$preincoming->von = $date->formatDatum($_REQUEST['von'],'Y-m-d');
$preincoming->bis = $date->formatDatum($_REQUEST['bis'],'Y-m-d');
@@ -284,6 +318,8 @@ if($method =="austauschprogram")
else
echo $p->t('global/erfolgreichgespeichert');
}
}
}
// Ausgabe Austauschprogram Formular
echo ' <form method="POST" action="incoming.php?method=austauschprogram" name="AustauschForm">
@@ -317,11 +353,11 @@ if($method =="austauschprogram")
</tr>
<tr>
<td>'.$p->t('incoming/studiertvon').' </td>
<td><input type="text" name="von" class="datepicker_exchange" size="10" value="'.$date->formatDatum($preincoming->von,'d.m.Y').'"> (dd.mm.yyyy)</td>
<td><input type="text" id="von_datum" name="von" class="datepicker_exchange" size="10" value="'.($preincoming->von != ''?$date->formatDatum($preincoming->von,'d.m.Y'):$_REQUEST['von']).'" onchange="setBisdatum(this.value)"> (dd.mm.yyyy)</td>
</tr>
<tr>
<td>'.$p->t('incoming/studiertbis').' </td>
<td><input type="text" name="bis" class="datepicker_exchange" size="10" value="'.$date->formatDatum($preincoming->bis,'d.m.Y').'"> (dd.mm.yyyy)</td>
<td><input type="text" id="bis_datum" name="bis" class="datepicker_exchange" size="10" value="'.($preincoming->bis != ''?$date->formatDatum($preincoming->bis,'d.m.Y'):$_REQUEST['bis']).'"> (dd.mm.yyyy)</td>
</tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
@@ -345,13 +381,72 @@ else if($method=="lehrveranstaltungen")
{ // speichern der LV-ID
if($_GET['mode']=="add")
{
$id= $_GET['id'];
$id = $db->db_add_param($_GET['id'], FHC_INTEGER, false);
$freieplaetze = 0;
// Freie Plaetze ermitteln
$qry = " SELECT tbl_lehrveranstaltung.incoming, (
SELECT count(*)
FROM (
SELECT person_id
FROM campus.vw_student_lehrveranstaltung
JOIN PUBLIC.tbl_benutzer using (uid)
JOIN PUBLIC.tbl_student ON (uid = student_uid)
JOIN PUBLIC.tbl_prestudentstatus USING (prestudent_id)
WHERE lehrveranstaltung_id = ".$id."
AND lehreinheit_id IN (
SELECT lehreinheit_id
FROM lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id = ".$id."
AND tbl_lehreinheit.studiensemester_kurzbz = '$stsem->studiensemester_kurzbz'
)
AND tbl_prestudentstatus.status_kurzbz = 'Incoming'
AND tbl_prestudentstatus.studiensemester_kurzbz = '$stsem->studiensemester_kurzbz'
UNION
SELECT person_id
FROM PUBLIC.tbl_preincoming_lehrveranstaltung
JOIN PUBLIC.tbl_preincoming using (preincoming_id)
WHERE lehrveranstaltung_id = ".$id."
AND
(
(bis - '$stsem->start' > '$stsem->start' - von) OR
('$stsem->start' <= von AND bis >= '$stsem->ende' AND '$stsem->ende' - von > bis - '$stsem->ende') OR
(bis <= '$stsem->ende' AND bis >= '$stsem->start' AND von < '$stsem->start') OR
('$stsem->start' <= von AND von < '$stsem->ende' AND bis > '$stsem->ende') OR
(von >= '$stsem->start' AND bis <= '$stsem->ende') OR
(von <= '$stsem->start' AND bis >= '$stsem->ende') OR
(von IS NULL AND bis IS NULL) OR
(von IS NULL AND bis <= '$stsem->ende' AND bis > '$stsem->start') OR
(bis IS NULL AND von < '$stsem->ende' AND von >= '$stsem->start')
)
AND aktiv = true
) a
) AS anzahl
FROM lehre.tbl_lehrveranstaltung
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id = ".$id;
if($result = $db->db_query($qry))
{
if ($db->db_num_rows($result)>0)
{
if ($row = $db->db_fetch_object($result))
{
$freieplaetze = $row->incoming - $row->anzahl;
}
}
}
if(!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $_GET['id']) && $freieplaetze>0)
{
if($preincoming->addLehrveranstaltung($preincoming->preincoming_id, $_GET['id'], date('Y-m-d H:i:s')))
$message = '<span style="color: green"><b>'.($p->t('global/erfolgreichgespeichert')).'</b></span>';
else
$message = '<span style="color: red"><b>'.($p->t('global/fehleraufgetreten')).'</b></span>';
}
else
$message = '<span style="color: red"><b>'.$p->t('incoming/lvVollBelegt').'</b></span>';
}
// löschen der LV-ID
if($_GET['mode'] == "delete")
{
@@ -709,19 +804,6 @@ else if($method=="lehrveranstaltungen")
echo '</td>
</tr>
</table>
<script language="JavaScript">
function selectChange()
{
filter = document.filterSemester.filterLv.options[document.filterSemester.filterLv.selectedIndex].value;
filterSprache = document.filterSemester.filterUnterrichtssprache.options[document.filterSemester.filterUnterrichtssprache.selectedIndex].value;
filterStudiengang = document.filterSemester.filterStudiengang.options[document.filterSemester.filterStudiengang.selectedIndex].value;
url = [location.protocol, "//", location.host, location.pathname].join("");
url = url+"?method=lehrveranstaltungen&filter="+filter+"&unterrichtssprache="+filterSprache+"&studiengang="+filterStudiengang;
document.location=url;
}
</script>
</form>
<br><br>';
@@ -739,7 +821,7 @@ else if($method=="lehrveranstaltungen")
//Uebersicht LVs
/* Erklaerung der Datumszeitraeume ab Zeile 663:
/* Erklaerung der Datumszeitraeume ab Zeile 857:
* |=============== Studiensemester ===============|
* |--------------| Incoming beginnt vor SS-Beginn und endet VOR SS-Ende jedoch ueberwiegend innerhalb SS
* |--------------| Incoming beginnt VOR SS-Ende und endet NACH SS-Ende, jedoch ueberwiegend innerhalb SS
@@ -861,7 +943,7 @@ else if($method=="lehrveranstaltungen")
if ($preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id))
$style = 'style="background-color: #88DD88"';
elseif ($freieplaetze==0)
elseif ($freieplaetze<=0)
$style = 'style="background-color: #FF8888"';
//if($freieplaetze>0)
//{
@@ -879,7 +961,7 @@ else if($method=="lehrveranstaltungen")
if(!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id) && $freieplaetze>0)
echo '<td><a href="incoming.php?method=lehrveranstaltungen&mode=add&id='.$row->lehrveranstaltung_id.'&'.$filter_url.'">'.$p->t('global/anmelden').'</a></td>';
elseif (!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id) && $freieplaetze==0)
elseif (!$preincoming->checkLehrveranstaltung($preincoming->preincoming_id, $row->lehrveranstaltung_id) && $freieplaetze<=0)
echo '<td '.$style.'>'.$p->t('incoming/noVacancies').'</td>';
else
echo '<td '.$style.'>'.$p->t('global/angemeldet').'</td>';
+4 -1
View File
@@ -25,6 +25,7 @@
require_once(dirname(__FILE__).'/menu_addon.class.php');
require_once(dirname(__FILE__).'/../../include/functions.inc.php');
require_once(dirname(__FILE__).'/../../include/lehrveranstaltung.class.php');
require_once(dirname(__FILE__).'/../../include/studiensemester.class.php');
class menu_addon_freifaecher extends menu_addon
{
@@ -35,6 +36,8 @@ class menu_addon_freifaecher extends menu_addon
$this->link=false;
$sprache = getSprache();
$stsem = new studiensemester();
$stsem = $stsem->getAktOrNext();
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load_lva('0',null, null,true,false,'bezeichnung'))
@@ -44,7 +47,7 @@ class menu_addon_freifaecher extends menu_addon
{
$this->items[] = array('title'=>$row->bezeichnung_arr[$sprache],
'target'=>'content',
'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id,
'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id.'&studiensemester_kurzbz='.$stsem,
'name'=>'<span '.(!$row->aktiv?' style="" ':' style=""').'>'.(!$row->aktiv?' <img src="../skin/images/ampel_rot.png" height="8px" height="8px"> ':' <img src="../skin/images/ampel_gruen.png" height="8px"> ').' '.$this->CutString($row->bezeichnung_arr[$sprache], 21).'</span>'
);
}
@@ -30,6 +30,7 @@
* - studiengang_kurzbz_hi 3-stelliges Studiengangskuerzel grossgeschrieben
*/
require_once(dirname(__FILE__).'/menu_addon.class.php');
require_once(dirname(__FILE__).'/../../config/cis.config.inc.php');
require_once(dirname(__FILE__).'/../../include/studiengang.class.php');
require_once(dirname(__FILE__).'/../../include/lehrveranstaltung.class.php');
require_once(dirname(__FILE__).'/../../include/organisationsform.class.php');
@@ -58,6 +59,10 @@ class menu_addon_lehrveranstaltungen extends menu_addon
$p = new phrasen($sprache);
if (defined("CIS_LVMENUE_CUTLENGTH"))
$cutlength = CIS_LVMENUE_CUTLENGTH;
else
$cutlength = 21;
$this->block.='
<script language="JavaScript" type="text/javascript">
@@ -230,7 +235,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
}
$this->block.= '<tr>';
$this->block.= ' <td class="tdwrap"><ul style="margin: 0px; padding: 0px; ">';
$this->block.= "<li style='padding: 0px;'><a title=\"".$row->bezeichnung_arr[$sprache]."\" href=\"private/lehre/lesson.php?lvid=$row->lehrveranstaltung_id\" target=\"content\">".$this->CutString($row->bezeichnung_arr[$sprache], 21).' '.$row->lehrform_kurzbz."</a></li>";
$this->block.= "<li style='padding: 0px;'><a title=\"".$row->bezeichnung_arr[$sprache]."\" href=\"private/lehre/lesson.php?lvid=$row->lehrveranstaltung_id\" target=\"content\">".$this->CutString($row->bezeichnung_arr[$sprache], $cutlength).' '.$row->lehrform_kurzbz."</a></li>";
$this->block.= ' </ul></td>';
$this->block.= '</tr>';
}
+4
View File
@@ -23,6 +23,7 @@
* Zeigt eine Liste mit den LVs zu denen der Lektor oder Student zugeordnet ist.
*/
require_once(dirname(__FILE__).'/menu_addon.class.php');
require_once(dirname(__FILE__).'/../../config/cis.config.inc.php');
require_once(dirname(__FILE__).'/../../include/functions.inc.php');
require_once(dirname(__FILE__).'/../../include/phrasen.class.php');
require_once(dirname(__FILE__).'/../../include/studiensemester.class.php');
@@ -41,6 +42,9 @@ class menu_addon_meinelv extends menu_addon
$is_lector=check_lektor($user);
$p = new phrasen($sprache);
if (defined("CIS_LVMENUE_CUTLENGTH"))
$cutlength = CIS_LVMENUE_CUTLENGTH;
else
$cutlength = 21;
//Meine LVs Student
-1
View File
@@ -109,5 +109,4 @@
"merge-extra": false
}
}
}
+2
View File
@@ -224,4 +224,6 @@ define('CIS_MEINELV_ANZAHL_SEMESTER_PAST', 3);
//Gibt an, welche Buchungstypen bei der Überprüfung auf Einzahlung berücksichtigt werden
define('CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN', serialize(array("Studiengebuehr")));
//Gibt an bei welcher Länge die LV-Bezeichnungen im Menü abgeschnitten werden. Default: 21
define('CIS_LVMENUE_CUTLENGTH', 21);
?>
+5 -2
View File
@@ -1869,7 +1869,7 @@ function PrintStudienblatt(event)
{
if(error>0)
alert(error+' der ausgewaehlten Personen haben keinen Account');
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&&uid='+data+"&ss="+ss;
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&uid='+data+"&ss="+ss;
window.open(action,'Studienblatt','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
else
@@ -1884,6 +1884,7 @@ function PrintStudienblatt(event)
function PrintStudienblattEnglisch(event)
{
var tree = document.getElementById('student-prestudent-tree-rolle');
var ss = document.getElementById('statusbarpanel-semester').label;
var items = tree.view.rowCount;
try
@@ -1895,6 +1896,8 @@ function PrintStudienblattEnglisch(event)
if(stsem == ss)
{
studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', v);
if(studienplan_id!='')
break;
}
}
}
@@ -1965,7 +1968,7 @@ function PrintStudienblattEnglisch(event)
{
if(error>0)
alert(error+' der ausgewaehlten Personen haben keinen Account');
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=StudienblattEng&xml=studienblatt.xml.php&output='+output+'&&uid='+data;
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=StudienblattEng&xml=studienblatt.xml.php&output='+output+'&uid='+data+'&ss='+ss;
window.open(action,'StudienblattEng','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
else
+3 -3
View File
@@ -143,7 +143,7 @@ if($studiensemester_kurzbz!='')
$worksheet->write($zeile,++$spalte,'Status',$format_bold);
$maxlength[$spalte]=20;
// Daten holen - Alle Personen mit akt. Status Student, Diplomand oder Praktikant
// Daten holen - Alle Personen mit akt. Status Student, Diplomand oder Praktikant plus Incoming
$qry="SELECT DISTINCT ON (matrikelnr) matrikelnr AS personenkennzahl, tbl_student.studiengang_kz, geschlecht, vorname, nachname, gebdatum AS geburtsdatum,
geburtsnation AS nation, titelpre, uid || '@".DOMAIN."' AS email,
(SELECT kontakt FROM public.tbl_kontakt WHERE person_id=public.tbl_person.person_id and (kontakttyp='mobil' OR kontakttyp='telefon') LIMIT 1) AS telefon,
@@ -163,7 +163,7 @@ if($studiensemester_kurzbz!='')
JOIN public.tbl_prestudent using(prestudent_id)
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_student.prestudent_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Praktikant')
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Praktikant','Incoming')
AND tbl_student.studiengang_kz<999 AND tbl_prestudent.bismelden=true";
// AND tbl_benutzer.aktiv=true
@@ -339,7 +339,7 @@ if($studiensemester_kurzbz!='')
JOIN public.tbl_prestudent using(prestudent_id)
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_student.prestudent_id)
WHERE tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Praktikant')
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Praktikant','Incoming')
AND tbl_student.studiengang_kz<999 AND
ka.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND ka.buchungstyp_kurzbz='OEH' AND tbl_student.studiengang_kz=ka.studiengang_kz
AND kb.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND kb.buchungstyp_kurzbz='OEH' AND tbl_student.studiengang_kz=kb.studiengang_kz
+9 -2
View File
@@ -109,6 +109,8 @@ loadVariables($user);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"ORT", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"GEMEINDE", $format_bold);
$maxlength[$i]=9;
$worksheet->write($zeile,++$i,"NATION", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"GEBURTSDATUM", $format_bold);
@@ -287,16 +289,21 @@ loadVariables($user);
$worksheet->write($zeile,$i, $row_1->ort);
$i++;
if(mb_strlen($row_1->gemeinde)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->gemeinde);
$worksheet->write($zeile,$i, $row_1->gemeinde);
$i++;
if(mb_strlen($row_1->nation)>$maxlength[$i])
$maxlength[$i]=mb_strlen($row_1->nation);
$worksheet->write($zeile,$i, $row_1->nation);
$i++;
}
else
$i+=4;
$i+=5;
}
else
$i+=4;
$i+=5;
//Geburtsdatum
if(mb_strlen($row->gebdatum)>$maxlength[$i])
+9 -3
View File
@@ -131,9 +131,15 @@ class benutzerfunktion extends basis_db
*/
public function getBenutzerFunktion($uid, $funktion_kurzbz, $oe_kurzbz)
{
$qry = "SELECT * FROM public.tbl_benutzerfunktion
WHERE uid=".$this->db_add_param($uid)." AND funktion_kurzbz=".$this->db_add_param($funktion_kurzbz)."
AND oe_kurzbz=".$this->db_add_param($oe_kurzbz);
$qry = "SELECT
bfunk.*, stg.studiengang_kz
FROM
public.tbl_benutzerfunktion AS bfunk
INNER JOIN public.tbl_studiengang AS stg ON(stg.oe_kurzbz = bfunk.oe_kurzbz)
WHERE
bfunk.uid=".$this->db_add_param($uid)."
AND bfunk.funktion_kurzbz=".$this->db_add_param($funktion_kurzbz)."
AND bfunk.oe_kurzbz=".$this->db_add_param($oe_kurzbz);
if($result = $this->db_query($qry))
{
+16 -3
View File
@@ -818,7 +818,7 @@ class betriebsmittel extends basis_db
* @return Daten Objekt wenn ok, false im Fehlerfall
*/
function betriebsmittel_inventar($order=null,$inventarnummer=null,$ort_kurzbz=null,$betriebsmittelstatus_kurzbz=null,$betriebsmitteltyp=null,$bestellung_id=null,$bestelldetail_id=null,$bestellnr=null,$hersteller=null,$afa=null,$jahr_monat=null,$firma_id=null,$inventur_jahr=null,$beschreibung=null,$oe_kurzbz=null,$seriennummer=null,$person_id=null,$betriebsmittel_id=null)
function betriebsmittel_inventar($order=null,$inventarnummer=null,$ort_kurzbz=null,$betriebsmittelstatus_kurzbz=null,$betriebsmitteltyp=null,$bestellung_id=null,$bestelldetail_id=null,$bestellnr=null,$hersteller=null,$afa=null,$jahr_monat=null,$firma_id=null,$inventur_jahr=null,$beschreibung=null,$oe_kurzbz=null,$seriennummer=null,$person_id=null,$betriebsmittel_id=null,$anlage_jahr_monat=null)
{
// Init
$this->errormsg='';
@@ -853,7 +853,7 @@ class betriebsmittel extends basis_db
LEFT JOIN public.tbl_firma ON(tbl_firma.firma_id=tbl_bestellung.firma_id )';
$qry.=" WHERE not tbl_betriebsmittel.betriebsmittel_id is null ";
$where=$this->betriebsmittel_inventar_get_where($inventarnummer,$ort_kurzbz,$betriebsmittelstatus_kurzbz,$betriebsmitteltyp,$bestellung_id,$bestelldetail_id,$bestellnr,$hersteller,$afa,$jahr_monat,$firma_id,$inventur_jahr,$beschreibung,$oe_kurzbz,$seriennummer,$person_id,$betriebsmittel_id);
$where=$this->betriebsmittel_inventar_get_where($inventarnummer,$ort_kurzbz,$betriebsmittelstatus_kurzbz,$betriebsmitteltyp,$bestellung_id,$bestelldetail_id,$bestellnr,$hersteller,$afa,$jahr_monat,$firma_id,$inventur_jahr,$beschreibung,$oe_kurzbz,$seriennummer,$person_id,$betriebsmittel_id,$anlage_jahr_monat);
if ($where!='' && !$where)
return $this->result;
@@ -957,7 +957,7 @@ class betriebsmittel extends basis_db
* @param $betriebsmittel_id
* @return unknown
*/
public function betriebsmittel_inventar_get_where($inventarnummer=null,$ort_kurzbz=null,$betriebsmittelstatus_kurzbz=null,$betriebsmitteltyp=null,$bestellung_id=null,$bestelldetail_id=null,$bestellnr=null,$hersteller=null,$afa=null,$jahr_monat=null,$firma_id=null,$inventur_jahr=null,$beschreibung=null,$oe_kurzbz=null,$seriennummer=null,$person_id=null,$betriebsmittel_id=null)
public function betriebsmittel_inventar_get_where($inventarnummer=null,$ort_kurzbz=null,$betriebsmittelstatus_kurzbz=null,$betriebsmitteltyp=null,$bestellung_id=null,$bestelldetail_id=null,$bestellnr=null,$hersteller=null,$afa=null,$jahr_monat=null,$firma_id=null,$inventur_jahr=null,$beschreibung=null,$oe_kurzbz=null,$seriennummer=null,$person_id=null,$betriebsmittel_id=null,$anlage_jahr_monat=null)
{
$where='';
// Inventarnummer oder Betriebsmittelnummer
@@ -1123,6 +1123,19 @@ class betriebsmittel extends basis_db
$where.=$jm;
$where.=" and tbl_betriebsmittel_betriebsmittelstatus.betriebsmittelbetriebsmittelstatus_id in ( select max(betriebsmittelbetriebsmittelstatus_id) from wawi.tbl_betriebsmittel_betriebsmittelstatus where not betriebsmittelbetriebsmittelstatus_id is null ". $jm ." group by betriebsmittel_id) ";
}
elseif (!is_null($anlage_jahr_monat) && $anlage_jahr_monat!='')
{
$anlage_jahr_monat=mb_strtoupper(trim(str_replace(array('-','.','/','*','%',"'",'"'),'',trim($anlage_jahr_monat))));
$jm='';
if (!empty($anlage_jahr_monat) && is_numeric($anlage_jahr_monat) && strlen($anlage_jahr_monat)>6)
$jm=" and to_char(tbl_betriebsmittel.insertamum, 'YYYYMMDD') = ".$this->db_add_param($anlage_jahr_monat)." ";
elseif (!empty($anlage_jahr_monat) && is_numeric($anlage_jahr_monat) && strlen($anlage_jahr_monat)>4)
$jm=" and to_char(tbl_betriebsmittel.insertamum, 'YYYYMM') = ".$this->db_add_param($anlage_jahr_monat)." ";
elseif (!is_null($anlage_jahr_monat) && !empty($anlage_jahr_monat))
$jm=" and to_char(tbl_betriebsmittel.insertamum, 'YYYY') = ".$this->db_add_param($anlage_jahr_monat)." ";
$where.=$jm;
$where.=" and tbl_betriebsmittel_betriebsmittelstatus.betriebsmittelbetriebsmittelstatus_id in ( select max(betriebsmittelbetriebsmittelstatus_id) from wawi.tbl_betriebsmittel_betriebsmittelstatus where not betriebsmittelbetriebsmittelstatus_id is null ". $jm ." group by betriebsmittel_id) ";
}
else if (!is_null($betriebsmittelstatus_kurzbz) && $betriebsmittelstatus_kurzbz!='')
$where.=" and tbl_betriebsmittel_betriebsmittelstatus.betriebsmittelbetriebsmittelstatus_id in ( select max(betriebsmittelbetriebsmittelstatus_id) from wawi.tbl_betriebsmittel_betriebsmittelstatus where not betriebsmittelbetriebsmittelstatus_id is null group by betriebsmittel_id) ";
+1 -1
View File
@@ -374,7 +374,7 @@ class bisverwendung extends basis_db
mitarbeiter_uid=".$this->db_add_param($uid)."
AND (beginn<=".$this->db_add_param($datum)." OR beginn is null)
AND (ende>=".$this->db_add_param($datum_obj->formatDatum($datum,'Y-m-01'))." OR ende is null)
ORDER BY beginn;";
ORDER BY ende desc;";
if($this->db_query($qry))
{
+3 -2
View File
@@ -784,7 +784,8 @@ function getSprache()
{
if(isset($_COOKIE['sprache']))
{
$sprache=$_COOKIE['sprache'];
// Uses urlencode to avoid XSS issues
$sprache = urlencode($_COOKIE['sprache']);
}
else
{
@@ -948,7 +949,7 @@ function check_infrastruktur($uid)
$db = new basis_db();
// checken, ob der user eine oezuordnung der infrastruktur hat
$sql_query="SELECT 1 FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz = 'oezuordnung' and oe_kurzbz in ('Infrastruktur', 'Systementwicklung', 'ServiceDesk', 'Empfang', 'Haustechnik', 'ITService', 'LVPlanung') and (datum_bis > now() or datum_bis is NULL) and uid=".$db->db_add_param($uid);
$sql_query="SELECT 1 FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz = 'oezuordnung' and oe_kurzbz in ('Infrastruktur', 'Systementwicklung', 'ServiceDesk', 'Empfang', 'Haustechnik', 'ITService', 'LVPlanung','ITBereich') and (datum_bis > now() or datum_bis is NULL) and uid=".$db->db_add_param($uid);
//echo $sql_query;
if($db->db_query($sql_query))
{
+130
View File
@@ -1592,6 +1592,91 @@ class lehrveranstaltung extends basis_db
}
}
/**
* Lädt alle Lehrveranstaltungen zu denen die übergebene LV ID kompatibel ist
* @param $lehrveranstaltung_id ID der Lehrveranstaltung
*/
public function getLVkompatibelTo($lehrveranstaltung_id, $studienplan_ids=array())
{
if (!is_numeric($lehrveranstaltung_id))
{
$this->errormsg = 'Lehrveranstaltung_id muss eine gueltige Zahl sein';
return false;
}
if((!is_array($studienplan_ids)) && (count($studienplan_ids) < 1))
{
$this->errormsg = 'Es muss ein Array von Studienplan_IDs mit mindestens einem Element übergeben werden.';
return false;
}
$studienplaene = "";
foreach($studienplan_ids as $stplId)
{
$studienplaene .= $stplId.",";
}
$studienplaene = rtrim($studienplaene, ",");
$qry = "SELECT * FROM lehre.tbl_lehrveranstaltung
JOIN lehre.tbl_studienplan_lehrveranstaltung USING (lehrveranstaltung_id)
WHERE lehrveranstaltung_id IN (
SELECT lehrveranstaltung_id
FROM lehre.tbl_lehrveranstaltung_kompatibel
WHERE lehrveranstaltung_id_kompatibel=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER).")
AND studienplan_id IN(".$studienplaene.");";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$lv_obj = new lehrveranstaltung();
$lv_obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$lv_obj->studiengang_kz = $row->studiengang_kz;
$lv_obj->bezeichnung = $row->bezeichnung;
$lv_obj->kurzbz = $row->kurzbz;
$lv_obj->lehrform_kurzbz = $row->lehrform_kurzbz;
$lv_obj->semester = $row->semester;
$lv_obj->ects = $row->ects;
$lv_obj->semesterstunden = $row->semesterstunden;
$lv_obj->anmerkung = $row->anmerkung;
$lv_obj->lehre = $this->db_parse_bool($row->lehre);
$lv_obj->lehreverzeichnis = $row->lehreverzeichnis;
$lv_obj->aktiv = $this->db_parse_bool($row->aktiv);
$lv_obj->ext_id = $row->ext_id;
$lv_obj->insertamum = $row->insertamum;
$lv_obj->insertvon = $row->insertvon;
$lv_obj->planfaktor = $row->planfaktor;
$lv_obj->planlektoren = $row->planlektoren;
$lv_obj->planpersonalkosten = $row->planpersonalkosten;
$lv_obj->plankostenprolektor = $row->plankostenprolektor;
$lv_obj->updateamum = $row->updateamum;
$lv_obj->updatevon = $row->updatevon;
$lv_obj->sprache = $row->sprache;
$lv_obj->sort = $row->sort;
$lv_obj->incoming = $row->incoming;
$lv_obj->zeugnis = $this->db_parse_bool($row->zeugnis);
$lv_obj->projektarbeit = $this->db_parse_bool($row->projektarbeit);
$lv_obj->koordinator = $row->koordinator;
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
$lv_obj->lehrtyp_kurzbz = $row->lehrtyp_kurzbz;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
if ($lv_obj->bezeichnung_arr['English'] == '')
$lv_obj->bezeichnung_arr['English'] = $lv_obj->bezeichnung_arr['German'];
$this->lehrveranstaltungen[] = $lv_obj;
}
return true;
}
}
/**
* Speichert eine Kombination aus LV und ihrer kompatiblen Lehrveranstaltung
* @param $lehrveranstaltung_id ID der Lehrveranstaltung
@@ -2487,5 +2572,50 @@ class lehrveranstaltung extends basis_db
return false;
}
}
/**
* Prueft ob eine Lehrveranstaltung im gewaehlten Studiensemester angeboten wird.
* Dazu wird geprueft ob die LV einem aktuellen Studienplan zugeordnet ist, und ob ein Lehrauftrag vorhanden ist.
*
* @param $lehrveranstaltung_id ID der Lehrveranstaltung.
* @param $studiensemester_kurzbz Kurzbz des Studiensemesters.
* @return boolean true wenn angeboten, false wenn nicht angeboten
*/
public function isOffered($lehrveranstaltung_id, $studiensemester_kurzbz)
{
$qry = "SELECT
*
FROM
lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id = ".$this->db_add_param($lehrveranstaltung_id)."
AND studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)."
AND EXISTS (
SELECT
*
FROM
lehre.tbl_studienplan_lehrveranstaltung
JOIN lehre.tbl_studienplan_semester USING(studienplan_id)
WHERE
lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id)."
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
)";
if($result = $this->db_query($qry))
{
if($row = $this->db_num_rows($result)>0)
{
return true;
}
else
{
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+32
View File
@@ -0,0 +1,32 @@
<?php
/* Copyright (C) 2016 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 Moik <moik@technikum-wien.at>
*/
//require_once(dirname(__FILE__).'/config/vilesci.config.inc.php'); Muss vor dieser Datei eingebunden werden!
$dr = DOC_ROOT;
$dr = str_replace($_SERVER["DOCUMENT_ROOT"], "", $dr);
if($dr=='')
$dr='/';
//Originaldateien des Herstellers
echo '<script src="'.$dr.'vendor/jsoneditor/dist/jsoneditor.js"></script>';
echo '<link href="'.$dr.'vendor/jsoneditor/dist/jsoneditor.css" rel="stylesheet" type="text/css">';
?>
Regular → Executable
+3 -2
View File
@@ -447,8 +447,9 @@ class pruefungCis extends basis_db
*/
public function getTermineByPruefung()
{
$qry = 'SELECT * FROM campus.tbl_pruefungstermin WHERE pruefung_id='.$this->db_add_param($this->pruefung_id).';';
//$qry = 'SELECT * FROM campus.tbl_pruefungstermin WHERE pruefung_id='.$this->db_add_param($this->pruefung_id).';';
$fromdate = date("Y-m-d", strtotime("-2 months"));
$qry = "SELECT * FROM campus.tbl_pruefungstermin WHERE pruefung_id=".$this->db_add_param($this->pruefung_id)."and von > '".$fromdate."';";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
+10 -3
View File
@@ -174,16 +174,23 @@ class pruefungsanmeldung extends basis_db {
/**
* Lädt alle Prüfungsanmeldungen eines Studenten
* @param type $uid UID eines Studenten
* @param type $studiensemester_kurbz Filter nach Studiensemester (zB 'WS2013')
* @param type $studiensemester_kurzbz Filter nach Studiensemester (zB 'WS2013')
* @param type $status_kurzbz Filter nach Status (zB 'angemeldet')
* @return boolean|array false, bei Fehler; Array mit Anmeldungen
*/
public function getAnmeldungenByStudent($uid, $studiensemester_kurbz=null, $status_kurzbz=null)
public function getAnmeldungenByStudent($uid, $studiensemester_kurzbz=null, $status_kurzbz=null)
{
$qry = 'SELECT * FROM campus.tbl_pruefungsanmeldung pa '
. 'JOIN campus.tbl_pruefungstermin pt ON pa.pruefungstermin_id=pt.pruefungstermin_id '
. 'JOIN campus.tbl_pruefung p ON p.pruefung_id=pt.pruefung_id '
. 'WHERE uid='.$this->db_add_param($uid).';';
. 'WHERE uid='.$this->db_add_param($uid);
if($studiensemester_kurzbz != null)
{
$qry .= ' AND studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz);
}
$qry .= ';';
if(!$this->db_query($qry))
{
+1 -13
View File
@@ -32,8 +32,6 @@ class statistik extends basis_db
public $bezeichnung;
public $url;
public $sql;
public $php;
public $r;
public $gruppe;
public $publish;
public $insertamum;
@@ -92,8 +90,6 @@ class statistik extends basis_db
$this->bezeichnung = $row->bezeichnung;
$this->url = $row->url;
$this->sql = $row->sql;
$this->php = $row->php;
$this->r = $row->r;
$this->gruppe = $row->gruppe;
$this->publish = $this->db_parse_bool($row->publish);
$this->insertamum = $row->insertamum;
@@ -141,8 +137,6 @@ class statistik extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->url = $row->url;
$obj->sql = $row->sql;
$obj->php = $row->php;
$obj->r = $row->r;
$obj->gruppe = $row->gruppe;
$obj->publish = $this->db_parse_bool($row->publish);
$obj->insertamum = $row->insertamum;
@@ -187,8 +181,6 @@ class statistik extends basis_db
$obj->bezeichnung = $row->bezeichnung;
$obj->url = $row->url;
$obj->sql = $row->sql;
$obj->php = $row->php;
$obj->r = $row->r;
$obj->gruppe = $row->gruppe;
$obj->publish = $this->db_parse_bool($row->publish);
$obj->insertamum = $row->insertamum;
@@ -267,14 +259,12 @@ class statistik extends basis_db
if($new)
{
$qry = 'INSERT INTO public.tbl_statistik(statistik_kurzbz, content_id, bezeichnung, url, sql,
php, r, gruppe, publish, insertamum, insertvon, updateamum, updatevon, preferences, berechtigung_kurzbz) VALUES('.
gruppe, publish, insertamum, insertvon, updateamum, updatevon, preferences, berechtigung_kurzbz) VALUES('.
$this->db_add_param($this->statistik_kurzbz).','.
$this->db_add_param($this->content_id,FHC_INTEGER).','.
$this->db_add_param($this->bezeichnung).','.
$this->db_add_param($this->url).','.
$this->db_add_param($this->sql).','.
$this->db_add_param($this->php).','.
$this->db_add_param($this->r).','.
$this->db_add_param($this->gruppe).','.
$this->db_add_param($this->publish, FHC_BOOLEAN).','.
$this->db_add_param($this->insertamum).','.
@@ -294,8 +284,6 @@ class statistik extends basis_db
' statistik_kurzbz='.$this->db_add_param($this->statistik_kurzbz).','.
' url='.$this->db_add_param($this->url).','.
' sql='.$this->db_add_param($this->sql).','.
' php='.$this->db_add_param($this->php).','.
' r='.$this->db_add_param($this->r).','.
' gruppe='.$this->db_add_param($this->gruppe).','.
' publish='.$this->db_add_param($this->publish, FHC_BOOLEAN).','.
' insertamum='.$this->db_add_param($this->insertamum).','.
+42
View File
@@ -226,6 +226,7 @@ class studiengang extends basis_db
return true;
}
// DEPRECATED! SIEHE NAECHSTE FUNKTION
/**
* Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann
*
@@ -256,6 +257,47 @@ class studiengang extends basis_db
return true;
}
// DIESE FUNKTION WARE BESSER GEEIGNET, DA DIE ALTE NOCH AUF DIE vw_studienplan ZUGREIFT
// IN DER DIE GUELTIGEN SEMESTER NOCH VON DEN STUDIENORDNUNGEN ERMITTELT WERDEN ANSTATT VON DEN STUDIENPLAENEN
// IN DIESER WERDEN AUCH DIE STUDIENSEMESTER ABGEFRAGT
/**
* Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann
*
* @param string $order Default: typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC. Spalten, nach denen Sortiert werden soll.
* @param array $studiensemester_kurzbz Array von Studiensemestern, in deren Gueltigkeit die Studienplaene liegen
* @return boolean
*/
/*public function getAllForBewerbung($order = 'typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC', $studiensemester_kurzbz = '')
{
$qry = "SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung "
. "FROM lehre.tbl_studienplan "
. "JOIN lehre.tbl_studienordnung USING (studienordnung_id) "
. "JOIN public.tbl_studiengang USING (studiengang_kz) "
. "JOIN public.tbl_organisationseinheit USING (oe_kurzbz) "
. "JOIN public.tbl_organisationseinheittyp USING (organisationseinheittyp_kurzbz) "
. "LEFT JOIN lehre.tbl_studienplan_semester USING (studienplan_id) "
. "LEFT JOIN bis.tbl_lgartcode USING (lgartcode) "
. "WHERE onlinebewerbung IS TRUE "
. "AND tbl_studienplan.aktiv IS TRUE "
. "AND tbl_studienplan_semester.semester=1 "
. "AND tbl_studienplan_semester.studiensemester_kurzbz IN (".$this->implode4SQL($studiensemester_kurzbz).") ";
$qry .= " ORDER BY ".$order;
if(!$result = $this->db_query($qry))
{
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
while($row = $this->db_fetch_object($result))
{
$this->result[] = $row;
}
return true;
}*/
/**
* Laedt alle Studientypen in das Attribut studiengang_typ_array
*/
+9 -2
View File
@@ -55,9 +55,16 @@ class tags extends basis_db
*
* Gibt alle Tags zurück
*/
public function getAll()
public function getAll($tag_search = null)
{
$qry = "SELECT * FROM public.tbl_tag; ";
$matchcode=mb_strtoupper(str_replace(array('<','>',' ',';','*','_','-',',',"'",'"'),"%",$tag_search));
$qry = "SELECT * FROM public.tbl_tag ";
if (!empty($tag_search))
{
$qry.="WHERE UPPER(trim(public.tbl_tag.tag)) like '%".$this->db_escape($matchcode)."%' ";
}
$qry.="ORDER BY UPPER(trim(public.tbl_tag.tag)) ";
if($this->db_query($qry))
{
+30 -30
View File
@@ -366,31 +366,31 @@ else
//Feld Umrechnung Punkte=>Note
$maxY=620;
$maxX=40;
$maxX=30;
$pdf->SetFont('Arial','',10);
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'Kriterien:');
$pdf->SetFont('Arial','',7);
$maxX +=120;
$pdf->SetFont('Arial','',8);
$maxX +=55;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'0 - 50 Pkte = 5',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'Ergebnis <= 50 Pkte = 5',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'51 - 64 Pkte = 4',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'50 < Ergebnis < 65 = 4',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'65 - 77 Pkte = 3',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'65 <= Ergebnis < 78 = 3',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'78 - 90 Pkte = 2',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'78 <= Ergebnis < 91 = 2',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'91 - 100 Pkte = 1',1,'C',0);
$pdf->MultiCell(95,12,'91 Pkte <= Ergebnis = 1',1,'C',0);
$maxY=$pdf->GetY();
$maxX=160;
$maxX=85;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(240,12,'1 Gruppe < 50 Punkte => Bachelorarbeit gesamt negativ','LB','L',0);
$maxX +=240;
$pdf->MultiCell(315,12,'1 Gruppe < 50 Punkte => Masterarbeit gesamt negativ','LB','L',0);
$maxX +=315;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'','TB','C',0);
$maxX +=80;
@@ -400,10 +400,10 @@ else
//Zeile Note und Unterschrift
$pdf->SetFont('Arial','',11);
$maxY+=25;
$maxX=+40;
$maxX=+30;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'Note: '.$note,0,'L',0);
$maxX=+40;
$maxX=+50;
$maxY=$pdf->GetY();
$pdf->SetXY($maxX,$maxY);
$maxX +=300;
@@ -657,26 +657,26 @@ else
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'Kriterien:');
$pdf->SetFont('Arial','',8);
$maxX +=130;
$maxX +=55;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'0 - 50 Pkte = 5',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'Ergebnis <= 50 Pkte = 5',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'51 - 64 Pkte = 4',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'50 < Ergebnis < 65 = 4',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'65 - 77 Pkte = 3',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'65 <= Ergebnis < 78 = 3',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'78 - 90 Pkte = 2',1,'C',0);
$maxX +=80;
$pdf->MultiCell(95,12,'78 <= Ergebnis < 91 = 2',1,'C',0);
$maxX +=95;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'91 - 100 Pkte = 1',1,'C',0);
$pdf->MultiCell(95,12,'91 Pkte <= Ergebnis = 1',1,'C',0);
$maxY=$pdf->GetY();
$maxX=160;
$maxX=85;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(240,12,'1 Gruppe < 50 Punkte => Masterarbeit gesamt negativ','LB','L',0);
$maxX +=240;
$pdf->MultiCell(315,12,'1 Gruppe < 50 Punkte => Masterarbeit gesamt negativ','LB','L',0);
$maxX +=315;
$pdf->SetXY($maxX,$maxY);
$pdf->MultiCell(80,12,'','TB','C',0);
$maxX +=80;
+3
View File
@@ -81,6 +81,8 @@ if(!$generateuid_addon_found)
// Das File aliases enthaelt die Mailverteiler haendisch gewarteten Mailverteiler die nicht
// in der FHC Datenbank vorhanden sind.
// Diese duerfen nicht als UID verwendet werden, da es sonst zu Konflikten kommt
if(file_exists(DOC_ROOT.'../system/aliases'))
{
$aliases = file_get_contents(DOC_ROOT.'../system/aliases');
$aliases = explode("\n",$aliases);
foreach($aliases as $alias)
@@ -92,6 +94,7 @@ if(!$generateuid_addon_found)
$reserviert[]=$entry[0];
}
}
}
for($nn=8,$vn=0;$nn!=0;$nn--,$vn++)
{
+1 -1
View File
@@ -138,7 +138,7 @@ $menu=array
),
'Stammdaten'=> array
(
'name'=>'Stammdaten', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support','basis/berechtigung','basis/variable','basis/studiengang','basis/ort','basis/firma','basis/fhausweis'), 'image'=>'vilesci_stammdaten.png',
'name'=>'Stammdaten', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support','basis/berechtigung','basis/variable','basis/studiengang','basis/ort','basis/firma','basis/fhausweis','basis/infoscreen'), 'image'=>'vilesci_stammdaten.png',
'link'=>'left.php?categorie=Stammdaten', 'target'=>'nav',
'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.php', 'target'=>'main','permissions'=>array('basis/betriebsmittel')),
'Reihungstest'=>array('name'=>'Reihungstest', 'link'=>'stammdaten/reihungstestverwaltung.php', 'target'=>'main','permissions'=>array('admin','assistenz')),
+7 -2
View File
@@ -6,12 +6,17 @@
.panel-body-noheader {
border-top-width: 1px;
}
.panel-header,
.panel-body {
.panel {
background-color: #EEE;
color: #333;
border-color: #888;
border: 1px solid #888;
}
.panel-body {
background-color: #EEE;
color: #333;
font-size: 12px;
border: none;
}
+6 -6
View File
@@ -1,12 +1,12 @@
.icon-fhc-chart{
background:url('../../../skin/images/Graphs_clip_art.svg') no-repeat center center;
background-size: 16px 16px;
background:url('../../../skin/images/Chart.svg') no-repeat center center;
background-size: 11px 16px;
}
.icon-fhc-report{
background:url('../../../skin/images/x-office-presentation.svg') no-repeat center center;
background-size: 16px 16px;
background:url('../../../skin/images/Report.svg') no-repeat center center;
background-size: 11px 16px;
}
.icon-fhc-statistik{
background:url('../../../skin/images/x-office-spreadsheet.svg') no-repeat center center;
background-size: 16px 16px;
background:url('../../../skin/images/Statistik.svg') no-repeat center center;
background-size: 11px 16px;
}
+6 -2
View File
@@ -132,6 +132,10 @@ $this->phrasen['incoming/tabelleSortierinformation']='Sie können die Spalten du
$this->phrasen['incoming/waehlenSieAusDenOptionen']='Bitte wählen Sie die gewünschen Optionen aus dem DropDown und klicken Sie auf "Filter"';
$this->phrasen['incoming/lvInfo']='LV-Info';
$this->phrasen['incoming/erfolgreichAbgeschickt']='Ihre Bewerbung wurde erfolgreich abgeschickt. Die zuständige Assistenz wird sich in Kürze mit Ihnen in Verbindung setzen';
$this->phrasen['incoming/fehlerBeimSenden']='Fehler beim senden der Bewerbung. Bitte kontaktieren Sie <a href="mailto:'.MAIL_INTERNATIONAL.'">'.MAIL_INTERNATIONAL.'</a>';
$this->phrasen['incoming/jahreStudiertMussGanzeZahlSein']='Das Feld "Jahre studiert" muss eine ganze Zahl sein</a>';
$this->phrasen['incoming/fehlerBeimSenden']='Fehler beim Senden der Bewerbung. Bitte kontaktieren Sie <a href="mailto:'.MAIL_INTERNATIONAL.'">'.MAIL_INTERNATIONAL.'</a>';
$this->phrasen['incoming/jahreStudiertMussGanzeZahlSein']='Das Feld "Jahre studiert" muss eine ganze Zahl sein';
$this->phrasen['incoming/lvVollBelegt']='Es sind mittlerweile keine freien Plätze mehr für diese Lehrveranstaltung verfügbar. Bei Rückfragen kontaktieren Sie bitte <a href="mailto:'.MAIL_INTERNATIONAL.'">'.MAIL_INTERNATIONAL.'</a>';
$this->phrasen['incoming/beginnNichtInVergangenheit']='Das Beginndatum darf nicht in der Vergangenheit liegen';
$this->phrasen['incoming/endeGroesserStart']='Das Endedatum darf nicht vor dem Beginndatum liegen';
$this->phrasen['incoming/bitteGueltigesDatumEingeben']='Das Start- oder Endedatum muss im Format TT.MM.YYYY vorliegen';
?>
+1 -1
View File
@@ -60,7 +60,7 @@ Sollte innerhalb der nächsten Tagen keine neuerliche Aktivierung Ihres Benutzer
sich umgehend mit Ihrer Studiengangsassistenz in Verbindung zu setzen.<br>';
$this->phrasen['profil/nurJPGBilder']='Derzeit können nur Bilder im JPG Format hochgeladen werden';
$this->phrasen['profil/BilduploadInfotext']='Derzeit können nur Bilder im JPG Format mit einer Maximalgröße von 15MB hochgeladen werden!<br><br><b>Bitte beachten Sie die <a href="../../cms/content.php?content_id=%s">Richtlinien für den Bildupload</a></b>';
$this->phrasen['profil/BilduploadInfotext']='Derzeit können nur Bilder im JPG Format mit einer Maximalgröße von 15MB hochgeladen werden!<br><br><b>Bitte beachten Sie die <a href="'.APP_ROOT.'cms/content.php?content_id=%s">Richtlinien für den Bildupload</a></b>';
$this->phrasen['profil/Bild']='Profilfoto';
$this->phrasen['profil/Bildupload']='Bildupload';
$this->phrasen['profil/fotofreigeben']='Sperre des Profilfotos aufheben';
+3
View File
@@ -75,6 +75,7 @@ $this->phrasen['pruefung/terminGeloescht'] = 'Termin gelöscht';
$this->phrasen['pruefung/unbegrenzt'] = 'unbegrenzt';
$this->phrasen['pruefung/bewertungenZu'] = 'Bewertungen zu';
$this->phrasen['pruefung/keineAuswahl'] = 'Keine Auswahl';
$this->phrasen['pruefung/alleBestaetigen'] = 'Alle bestätigen';
// pruefungsbewertung
$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung';
@@ -149,5 +150,7 @@ Die Prüfung zur LV %1$s wurde verschoben.
Der neue Termin für die Prüfung ist am %2$s um %3$s Uhr.';
$this->phrasen['pruefung/emailVerschiebungSubject'] = 'Verschiebung einer Prüfung';
$this->phrasen['pruefung/AnrechnungInStudiengang'] = 'Studiengang für Anrechnung';
?>
+4
View File
@@ -135,4 +135,8 @@ $this->phrasen['incoming/lvInfo']='Course-Info';
$this->phrasen['incoming/erfolgreichAbgeschickt']='Admission sent successfully. The administrative assistant responsible will contact you soon';
$this->phrasen['incoming/fehlerBeimSenden']='An error occured while sending the application. Please contact <a href="mailto:'.MAIL_INTERNATIONAL.'">'.MAIL_INTERNATIONAL.'</a>';
$this->phrasen['incoming/jahreStudiertMussGanzeZahlSein']='"Years completed" must be a positive integer</a>';
$this->phrasen['incoming/lvVollBelegt']='By now there are no vacancies for this course. For further questions please contact <a href="mailto:'.MAIL_INTERNATIONAL.'">'.MAIL_INTERNATIONAL.'</a>';
$this->phrasen['incoming/beginnNichtInVergangenheit']='The "From"-date may not be in the past';
$this->phrasen['incoming/endeGroesserStart']='The "To"-date may not be before the start';
$this->phrasen['incoming/bitteGueltigesDatumEingeben']='The date for the begin and end must be entered in the DD.MM.YYYY format';
?>
+1 -1
View File
@@ -57,7 +57,7 @@ If your account has been deactivated by mistake, please contact the administrati
$this->phrasen['profil/nurJPGBilder']='Currently it is only possible to upload JPEG images';
$this->phrasen['profil/BilduploadInfotext']='Currently it is only possible to upload JPG images with a maximum size of 15MB!<br><br><b>Please follow the <a href="../../cms/content.php?content_id=%s">guidelines for uploading images</a></b>';
$this->phrasen['profil/BilduploadInfotext']='Currently it is only possible to upload JPG images with a maximum size of 15MB!<br><br><b>Please follow the <a href="'.APP_ROOT.'cms/content.php?content_id=%s">guidelines for uploading images</a></b>';
$this->phrasen['profil/Bild']='Picture';
$this->phrasen['profil/Bildupload']='Upload Picture';
$this->phrasen['profil/fotofreigeben']='Unlock your profile photo';
+1
View File
@@ -75,6 +75,7 @@ $this->phrasen['pruefung/terminGeloescht'] = 'Termin gelöscht';
$this->phrasen['pruefung/unbegrenzt'] = 'unlimited';
$this->phrasen['pruefung/bewertungenZu'] = 'Bewertungen zu';
$this->phrasen['pruefung/keineAuswahl'] = 'Keine Auswahl';
$this->phrasen['pruefung/alleBestaetigen'] = 'Confirm all';
// pruefungsbewertung
$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Prüfungsbewertung';
+1
View File
@@ -75,6 +75,7 @@ $this->phrasen['pruefung/terminGeloescht'] = 'Appello eliminato';
$this->phrasen['pruefung/unbegrenzt'] = '';
$this->phrasen['pruefung/bewertungenZu'] = 'Studenti iscritti allappello di';
$this->phrasen['pruefung/keineAuswahl'] = 'Nessuna selezione';
$this->phrasen['pruefung/alleBestaetigen'] = 'Confermare tutti';
// pruefungsbewertung
$this->phrasen['pruefung/pruefungsbewertungTitle'] = 'Voti desame';
+5 -5
View File
@@ -4,7 +4,7 @@ $this->phrasen['upload/auswaehlen']='';
$this->phrasen['upload/benutzerKonnteNichtZugeordnetWerden']='';
$this->phrasen['upload/dateiAufServerDateiformat']='Errore: il formato del file che si vuole caricare sul server non viene supportato';
$this->phrasen['upload/dateien']='';
$this->phrasen['upload/dateienAutomatischUeberschreiben']='';
$this->phrasen['upload/dateienAutomatischUeberschreiben']='sovrascrivere file omonimi';
$this->phrasen['upload/dateienImOrdner']='';
$this->phrasen['upload/dateienInOrdnern']='';
$this->phrasen['upload/dateiExistiertBereits']='Errore: il file è già esistente! Si prega di utilizzare l\'opzione "sovrascrivere automaticamente i file';
@@ -21,18 +21,18 @@ $this->phrasen['upload/keineOrdnerGefunden']='impossibile trovare cartelle corri
$this->phrasen['upload/keineSemesterDefiniert']='';
$this->phrasen['upload/keineStudiengaengeDefiniert']='';
$this->phrasen['upload/leeren']='';
$this->phrasen['upload/maxUploadgroesse']='';
$this->phrasen['upload/maxUploadgroesse']='Grandezza massima per file';
$this->phrasen['upload/name']='';
$this->phrasen['upload/neuesVerzeichnisErstellen']='';
$this->phrasen['upload/neuesVerzeichnisErstellen']='crea nuova cartella';
$this->phrasen['upload/studentenUploadEinsehen']='';
$this->phrasen['upload/studentenUploadVerwalten']='';
$this->phrasen['upload/studentenUploadverzeichnis']='';
$this->phrasen['upload/studentenUploadverzeichnisLeeren']='';
$this->phrasen['upload/umEinenOrdnerOderEineDatei']='';
$this->phrasen['upload/umEinenOrdnerOderEineDatei']='Per cancellare o modificare un file o una cartella barrare la corrispettiva casella.';
$this->phrasen['upload/unterordnerVon']='';
$this->phrasen['upload/upload']='';
$this->phrasen['upload/verzeichnisErstellen']='';
$this->phrasen['upload/verzeichnisname']='';
$this->phrasen['upload/verzeichnisname']='Nome cartella';
$this->phrasen['upload/verzeichnisnameDarfNurBuchstaben']='';
$this->phrasen['upload/wollenSieOrdnerWirklichLoeschen']='';
$this->phrasen['upload/wollenSieUploadWirklichLeeren']='';
+3 -3
View File
@@ -94,7 +94,7 @@ foreach($uid_arr as $uid)
$datum_aktuell = date('d.m.Y');
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
$prestudent = new prestudent($student->prestudent_id);
$prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student');
$prestudent->getLastStatus($student->prestudent_id,$studiensemester);
$studienordnung = new studienordnung();
$studienordnung->getStudienordnungFromStudienplan($prestudent->studienplan_id);
$studiengang = new studiengang();
@@ -180,7 +180,7 @@ foreach($uid_arr as $uid)
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
echo "\t\t<studiensemester_beginndatum>".date('d.m.Y',strtotime($studiensemester_beginn->start))."</studiensemester_beginndatum>";
$prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student');
$prestudent->getLastStatus($student->prestudent_id,$studiensemester);
$studiensemester_abschluss = new studiensemester();
$abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester);
$studiensemester_abschluss->load($abschluss);
@@ -306,7 +306,7 @@ foreach($uid_arr as $uid)
}
}
$prestudent = new prestudent();
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
$prestudent->getLastStatus($student->prestudent_id, null);
if($prestudent->orgform_kurzbz!='')
$orgform = $prestudent->orgform_kurzbz;
+34 -18
View File
@@ -110,19 +110,16 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
FROM tbl_person, tbl_student, tbl_studiengang, tbl_benutzer, tbl_studentlehrverband, tbl_studiensemester
WHERE tbl_student.studiengang_kz = tbl_studiengang.studiengang_kz
AND tbl_student.student_uid = tbl_benutzer.uid AND tbl_benutzer.person_id = tbl_person.person_id
AND tbl_student.student_uid = '".addslashes($uid_arr[$i])."'
AND tbl_student.student_uid = ".$db->db_add_param($uid_arr[$i])."
AND tbl_studentlehrverband.student_uid=tbl_student.student_uid
AND tbl_studiensemester.studiensemester_kurzbz = tbl_studentlehrverband.studiensemester_kurzbz
AND tbl_studentlehrverband.studiensemester_kurzbz = '".addslashes($studiensemester_kurzbz)."'";
AND tbl_studentlehrverband.studiensemester_kurzbz = ".$db->db_add_param($studiensemester_kurzbz);
if($result = $db->db_query($query))
{
if(!$row = $db->db_fetch_object($result))
die('Student not found');
}
else
die('Student not found');
$xml .= "\n <zeugnis>";
if($row = $db->db_fetch_object($result))
{
$studiengang = new studiengang();
$stgleiter = $studiengang->getLeitung($row->studiengang_kz);
$stgl='';
@@ -136,8 +133,8 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
//damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint
$qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus
WHERE
prestudent_id='".addslashes($row->prestudent_id)."' AND
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
prestudent_id=".$db->db_add_param($row->prestudent_id)." AND
studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
status_kurzbz not in('Incoming','Aufgenommener','Bewerber','Wartender', 'Interessent')
ORDER BY DATUM DESC LIMIT 1";
if($result_sem = $db->db_query($qry))
@@ -153,7 +150,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
else
$bezeichnung = '';
$xml .= "\n <zeugnis>";
$xml .= " <studiensemester>".$row->sembezeichnung."</studiensemester>";
$xml .= " <stsem>".$row->stsem."</stsem>";
$xml .= " <semester>".$row->semester."</semester>";
@@ -196,7 +193,20 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= " <ort_datum>".$datum_aktuell."</ort_datum>";
$xml .= " <projektarbeit_note_anzeige>".($row->projektarbeit_note_anzeige=='t'?'true':'false')."</projektarbeit_note_anzeige>";
$qry_proj = "SELECT lehrveranstaltung_id, titel, themenbereich, note, titel_english, tbl_projekttyp.bezeichnung, projekttyp_kurzbz FROM lehre.tbl_projektarbeit JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz) WHERE student_uid='".addslashes($uid_arr[$i])."' AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND projekttyp_kurzbz in('Bachelor', 'Diplom') ORDER BY beginn ASC, projektarbeit_id ASC";
$qry_proj = "
SELECT
lehrveranstaltung_id, titel, themenbereich, note, titel_english,
tbl_projekttyp.bezeichnung, projekttyp_kurzbz
FROM
lehre.tbl_projektarbeit
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
WHERE
student_uid=".$db->db_add_param($uid_arr[$i])."
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
AND projekttyp_kurzbz in('Bachelor', 'Diplom')
ORDER BY beginn ASC, projektarbeit_id ASC";
if($result_proj = $db->db_query($qry_proj))
{
while($row_proj = $db->db_fetch_object($result_proj))
@@ -261,9 +271,9 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.firma_id = tbl_firma.firma_id AND
tbl_projektarbeit.student_uid='".addslashes($uid_arr[$i])."' AND
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
tbl_lehrveranstaltung.lehrveranstaltung_id='".addslashes($row->lehrveranstaltung_id)."'";
tbl_projektarbeit.student_uid=".$db->db_add_param($uid_arr[$i])." AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id);
$firma = '';
$firma_eng = '';
@@ -339,7 +349,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$qry = "SELECT tbl_bisio.* FROM bis.tbl_bisio JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE tbl_lehreinheit.lehrveranstaltung_id='$row->lehrveranstaltung_id'
AND student_uid='".addslashes($uid_arr[$i])."'";
AND student_uid=".$db->db_add_param($uid_arr[$i]);
if($result_bisio = $db->db_query($qry))
{
if($row_bisio = $db->db_fetch_object($result_bisio))
@@ -355,7 +365,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$qry = "SELECT wochen FROM public.tbl_semesterwochen
WHERE (studiengang_kz, semester) in (SELECT studiengang_kz, semester
FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=$row->lehrveranstaltung_id)";
FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id).")";
$wochen = 15;
if($result_wochen = $db->db_query($qry))
{
@@ -371,7 +381,6 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= " <sws>".($row->semesterstunden==0?'':number_format(sprintf('%.1F',$row->semesterstunden/$wochen),1))."</sws>";
$ectspunkte='';
$anrechnung = new anrechnung();
$anrechnung->getAnrechnungPrestudent($prestudent_id, null, $row->lehrveranstaltung_id);
@@ -410,8 +419,15 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
}
$xml .= "<ects_gesamt>".$ects_gesamt."</ects_gesamt>";
$xml .= $xml_fussnote;
}
else
{
$xml .="<name>PERSON NICHT GEFUNDEN / KEIN STATUS</name>";
}
$xml .= " </zeugnis>";
}
}
$xml .= "</zeugnisse>";
echo $xml;
}
+223
View File
@@ -0,0 +1,223 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="75mm"
height="100mm"
viewBox="0 0 75 100"
version="1.1"
id="svg4517"
inkscape:version="0.92pre3 r"
sodipodi:docname="Chart.svg">
<defs
id="defs4511">
<linearGradient
inkscape:collect="always"
id="linearGradient5781">
<stop
style="stop-color:#bb8a8a;stop-opacity:1"
offset="0"
id="stop5777" />
<stop
style="stop-color:#121212;stop-opacity:1"
offset="1"
id="stop5779" />
</linearGradient>
<linearGradient
id="linearGradient5414-8"
inkscape:collect="always">
<stop
id="stop5515"
offset="0"
style="stop-color:#ce2121;stop-opacity:1" />
<stop
id="stop5517"
offset="1"
style="stop-color:#d7a98e;stop-opacity:0" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5414-8"
id="linearGradient5416"
x1="15.893733"
y1="291.10629"
x2="84.106262"
y2="202.89375"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0709151,0,0,1.111518,-16.045751,-27.544968)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient5783"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient8743"
gradientUnits="userSpaceOnUse"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient8745"
gradientUnits="userSpaceOnUse"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient8747"
gradientUnits="userSpaceOnUse"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient8749"
gradientUnits="userSpaceOnUse"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient8751"
gradientUnits="userSpaceOnUse"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5781"
id="linearGradient8753"
gradientUnits="userSpaceOnUse"
x1="77.190254"
y1="208.05676"
x2="22.4"
y2="277" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.9899495"
inkscape:cx="-526.03693"
inkscape:cy="395.68782"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="2497"
inkscape:window-height="1016"
inkscape:window-x="63"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false" />
<metadata
id="metadata4514">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-197)">
<rect
style="opacity:1;fill:url(#linearGradient5416);fill-opacity:1;fill-rule:nonzero;stroke:#474747;stroke-width:1.95017505;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5081"
width="73.04982"
height="98.049828"
x="0.97508752"
y="197.97508" />
<g
id="g5775"
style="fill:url(#linearGradient5783);fill-opacity:1"
transform="matrix(1.0709151,0,0,1.111518,-16.04575,-27.544968)">
<rect
y="227"
x="22.4"
height="50"
width="5"
id="rect5693"
style="opacity:1;fill:url(#linearGradient8743);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.43855953;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="207"
x="32.399998"
height="70"
width="5"
id="rect5693-8"
style="opacity:1;fill:url(#linearGradient8745);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.06855869;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="217"
x="42.399998"
height="60"
width="5"
id="rect5693-8-5"
style="opacity:1;fill:url(#linearGradient8747);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.76675367;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="227"
x="52.399998"
height="50"
width="5"
id="rect5693-8-5-2"
style="opacity:1;fill:url(#linearGradient8749);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.43856001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="237"
x="62.399998"
height="40"
width="5"
id="rect5693-8-5-1"
style="opacity:1;fill:url(#linearGradient8751);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.0755415;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="227"
x="72.399963"
height="50"
width="5"
id="rect5693-8-5-9"
style="opacity:1;fill:url(#linearGradient8753);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.43856001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.54670906px;line-height:7.21669388px;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28866774px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="41.84409"
y="289.04132"
id="text4505"
transform="scale(0.98156545,1.0187808)"><tspan
sodipodi:role="line"
id="tspan4503"
x="41.84409"
y="289.04132"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:55.42420578px;font-family:cantarell;-inkscape-font-specification:cantarell;fill:#000000;fill-opacity:1;stroke-width:0.28866774px">C</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.4 KiB

+129
View File
@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="75mm"
height="100mm"
viewBox="0 0 75 100"
version="1.1"
id="svg4517"
inkscape:version="0.92pre3 r"
sodipodi:docname="Filter.svg">
<defs
id="defs4511">
<linearGradient
inkscape:collect="always"
id="linearGradient5821">
<stop
style="stop-color:#f9f9f9;stop-opacity:0.063"
offset="0"
id="stop5817" />
<stop
style="stop-color:#000000;stop-opacity:1"
offset="1"
id="stop5819" />
</linearGradient>
<linearGradient
id="linearGradient5414-8"
inkscape:collect="always">
<stop
id="stop5515"
offset="0"
style="stop-color:#4f5fab;stop-opacity:1" />
<stop
id="stop5517"
offset="1"
style="stop-color:#d7a98e;stop-opacity:0" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5414-8"
id="linearGradient5416"
x1="15.893733"
y1="291.10629"
x2="84.106262"
y2="202.89375"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0709151,0,0,1.111518,-16.045751,-27.544968)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5821"
id="linearGradient5823"
x1="22.550903"
y1="284.15033"
x2="74.819145"
y2="212.27556"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0709151,0,0,1.111518,-16.045751,-27.544968)" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.979899"
inkscape:cx="153.56609"
inkscape:cy="212.7952"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="2497"
inkscape:window-height="1016"
inkscape:window-x="63"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false" />
<metadata
id="metadata4514">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-197)">
<rect
style="opacity:1;fill:url(#linearGradient5416);fill-opacity:1;fill-rule:nonzero;stroke:#474747;stroke-width:1.95017505;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5081"
width="73.04982"
height="98.049828"
x="0.97508752"
y="197.97508" />
<path
style="fill:url(#linearGradient5823);fill-opacity:1;fill-rule:evenodd;stroke:#595959;stroke-width:3.27308297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 31.951742,241.74867 v 44.46072 l 10.70915,-11.11518 v -33.34554 l 21.4183,-33.34554 h -53.54575 z"
id="path5813"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.54670906px;line-height:7.21669388px;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28866774px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="47.490475"
y="289.5903"
id="text4505"
transform="scale(0.98156545,1.0187808)"><tspan
sodipodi:role="line"
id="tspan4503"
x="47.490475"
y="289.5903"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:55.42420578px;font-family:cantarell;-inkscape-font-specification:cantarell;fill:#000000;fill-opacity:1;stroke-width:0.28866774px">F</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

+929
View File
@@ -0,0 +1,929 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="75mm"
height="100mm"
viewBox="0 0 75 100"
version="1.1"
id="svg4517"
inkscape:version="0.92pre3 r"
sodipodi:docname="Report.svg">
<defs
id="defs4511">
<linearGradient
inkscape:collect="always"
id="linearGradient4922">
<stop
style="stop-color:#030303;stop-opacity:1"
offset="0"
id="stop4918" />
<stop
style="stop-color:#e9e9e9;stop-opacity:1"
offset="1"
id="stop4920" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient5414">
<stop
style="stop-color:#af86af;stop-opacity:1"
offset="0"
id="stop5410" />
<stop
style="stop-color:#faf4f1;stop-opacity:1"
offset="1"
id="stop5412" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5414"
id="linearGradient5416"
x1="15.893733"
y1="291.10629"
x2="84.106262"
y2="202.89375"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0709151,0,0,1.111518,-16.045751,-27.544968)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient4924"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8643"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8645"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8647"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8649"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8651"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8653"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8655"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8657"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8659"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8661"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8663"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8665"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8667"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8669"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8671"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8673"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8675"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8677"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8679"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8681"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8683"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8685"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8687"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8689"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8691"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8693"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8695"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8697"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8699"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8701"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8703"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8705"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8707"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8709"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8711"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8713"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8715"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8717"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8719"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8721"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8723"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8725"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8727"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8729"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8731"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8733"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8735"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8737"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8739"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4922"
id="linearGradient8741"
gradientUnits="userSpaceOnUse"
x1="79.720238"
y1="205.70483"
x2="20.657738"
y2="281.67804" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.979899"
inkscape:cx="67.050792"
inkscape:cy="69.086972"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="2497"
inkscape:window-height="1016"
inkscape:window-x="63"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false"
inkscape:snap-grids="false"
inkscape:snap-to-guides="false"
inkscape:snap-others="false"
inkscape:object-nodes="false"
inkscape:snap-nodes="false"
inkscape:snap-global="false" />
<metadata
id="metadata4514">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-197)">
<rect
style="fill:url(#linearGradient5416);fill-opacity:1;fill-rule:nonzero;stroke:#474747;stroke-width:1.95017505;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5081"
width="73.04982"
height="98.049828"
x="0.97508752"
y="197.97508" />
<g
id="g4895"
style="fill:url(#linearGradient4924);fill-opacity:1"
transform="matrix(1.0709151,0,0,1.111518,-16.04575,-27.544968)">
<g
transform="translate(35.71875,-3.7797619)"
id="g4685"
style="fill:url(#linearGradient8695);fill-opacity:1">
<rect
style="fill:url(#linearGradient8643);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25962421;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100"
width="0.23874897"
height="26.136824"
x="23.709431"
y="209.80672" />
<rect
style="fill:url(#linearGradient8645);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-6"
width="0.23874897"
height="25.814148"
x="26.09692"
y="210.12939" />
<rect
style="fill:url(#linearGradient8647);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-7"
width="0.23874897"
height="25.814148"
x="28.484411"
y="210.12939" />
<rect
style="fill:url(#linearGradient8649);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-5"
width="0.23874897"
height="25.814148"
x="30.871897"
y="210.12939" />
<rect
style="fill:url(#linearGradient8651);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3"
width="0.23874897"
height="25.814148"
x="33.259388"
y="210.12939" />
<rect
style="fill:url(#linearGradient8653);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-56"
width="0.23874897"
height="25.814148"
x="38.034367"
y="210.12939" />
<rect
style="fill:url(#linearGradient8655);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-2"
width="0.23874897"
height="25.814148"
x="35.646873"
y="210.12939" />
<rect
style="fill:url(#linearGradient8657);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801665;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-9"
width="0.23874897"
height="25.814148"
x="40.421856"
y="210.12939" />
<rect
style="fill:url(#linearGradient8659);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25962424;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-1"
width="0.23874897"
height="26.136824"
x="42.809345"
y="209.80672" />
<rect
style="fill:url(#linearGradient8661);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25962427;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2"
width="19.338667"
height="0.32267687"
x="23.709431"
y="235.62086" />
<rect
style="fill:url(#linearGradient8663);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-7"
width="19.099916"
height="0.32267687"
x="23.709431"
y="214.64687" />
<rect
style="fill:url(#linearGradient8665);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-0"
width="19.099916"
height="0.32267687"
x="23.709431"
y="216.26025" />
<rect
style="fill:url(#linearGradient8667);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-9"
width="19.099916"
height="0.32267687"
x="23.709431"
y="211.4201" />
<rect
style="fill:url(#linearGradient8669);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-3"
width="19.099916"
height="0.32267687"
x="23.709431"
y="213.03348" />
<rect
style="fill:url(#linearGradient8671);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-6"
width="19.099916"
height="0.32267687"
x="23.709431"
y="217.87364" />
<rect
style="fill:url(#linearGradient8673);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-06"
width="19.099916"
height="0.32267687"
x="23.709431"
y="219.48701" />
<rect
style="fill:url(#linearGradient8675);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-2"
width="19.099916"
height="0.32267687"
x="23.709431"
y="221.1004" />
<rect
style="fill:url(#linearGradient8677);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-61"
width="19.099916"
height="0.32267687"
x="23.709431"
y="227.55394" />
<rect
style="fill:url(#linearGradient8679);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-8"
width="19.099916"
height="0.32267687"
x="23.709431"
y="230.7807" />
<rect
style="fill:url(#linearGradient8681);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-79"
width="19.099916"
height="0.32267687"
x="23.709431"
y="234.00748" />
<rect
style="fill:url(#linearGradient8683);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-20"
width="19.099916"
height="0.32267687"
x="23.709431"
y="222.71378" />
<rect
style="fill:url(#linearGradient8685);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-23"
width="19.099916"
height="0.32267687"
x="23.709431"
y="225.94055" />
<rect
style="fill:url(#linearGradient8687);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-75"
width="19.099916"
height="0.32267687"
x="23.709431"
y="224.32718" />
<rect
style="fill:url(#linearGradient8689);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-92"
width="19.099916"
height="0.32267687"
x="23.709431"
y="229.16731" />
<rect
style="fill:url(#linearGradient8691);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25801668;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-28"
width="19.099916"
height="0.32267687"
x="23.709431"
y="232.39409" />
<rect
style="fill:url(#linearGradient8693);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.25962427;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-97"
width="19.338667"
height="0.32267687"
x="23.709431"
y="209.80672" />
</g>
<rect
y="246"
x="20"
height="1"
width="60"
id="rect5100-3-2-3-3"
style="fill:url(#linearGradient8697);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80505168;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="241"
x="20"
height="1"
width="60"
id="rect5100-3-2-3-3-6"
style="fill:url(#linearGradient8699);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80505168;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="236"
x="20"
height="1"
width="60"
id="rect5100-3-2-3-3-6-7"
style="fill:url(#linearGradient8701);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80505168;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="251"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-5"
style="fill:url(#linearGradient8703);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="256"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-3"
style="fill:url(#linearGradient8705);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="261"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-56"
style="fill:url(#linearGradient8707);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="266"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-2"
style="fill:url(#linearGradient8709);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="276"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-9"
style="fill:url(#linearGradient8711);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="231"
x="20"
height="1"
width="35"
id="rect5100-3-2-3-3-1"
style="fill:url(#linearGradient8713);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61486834;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="281"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-27"
style="fill:url(#linearGradient8715);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="271"
x="45"
height="1"
width="35"
id="rect5100-3-2-3-3-0"
style="fill:url(#linearGradient8717);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6148684;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="226"
x="20"
height="1"
width="35"
id="rect5100-3-2-3-3-1-9"
style="fill:url(#linearGradient8719);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61486834;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="221"
x="20"
height="1"
width="35"
id="rect5100-3-2-3-3-1-3"
style="fill:url(#linearGradient8721);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61486834;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="211"
x="20"
height="1"
width="35"
id="rect5100-3-2-3-3-1-6"
style="fill:url(#linearGradient8723);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61486834;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="206"
x="20"
height="1"
width="35"
id="rect5100-3-2-3-3-1-0"
style="fill:url(#linearGradient8725);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61486834;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<rect
y="216"
x="20"
height="1"
width="35"
id="rect5100-3-2-3-3-1-62"
style="fill:url(#linearGradient8727);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61486834;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945" />
<g
transform="matrix(0.41143708,0,0,0.41143708,10.886928,168.17075)"
style="fill:url(#linearGradient8741);fill-opacity:1"
id="g5775">
<rect
style="opacity:1;fill:url(#linearGradient8729);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.43855953;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5693"
width="5"
height="50"
x="22.4"
y="227" />
<rect
style="opacity:1;fill:url(#linearGradient8731);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.06855869;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5693-8"
width="5"
height="70"
x="32.399998"
y="207" />
<rect
style="opacity:1;fill:url(#linearGradient8733);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.76675367;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5693-8-5"
width="5"
height="60"
x="42.399998"
y="217" />
<rect
style="opacity:1;fill:url(#linearGradient8735);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.43856001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5693-8-5-2"
width="5"
height="50"
x="52.399998"
y="227" />
<rect
style="opacity:1;fill:url(#linearGradient8737);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.0755415;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5693-8-5-1"
width="5"
height="40"
x="62.399998"
y="237" />
<rect
style="opacity:1;fill:url(#linearGradient8739);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.43856001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5693-8-5-9"
width="5"
height="50"
x="72.399963"
y="227" />
</g>
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.54670906px;line-height:7.21669388px;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28866774px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="42.123096"
y="289.59741"
id="text4505"
transform="scale(0.98156545,1.0187808)"><tspan
sodipodi:role="line"
id="tspan4503"
x="42.123096"
y="289.59741"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:55.42420578px;font-family:cantarell;-inkscape-font-specification:cantarell;fill:#000000;fill-opacity:1;stroke-width:0.28866774px">R</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 32 KiB

+574
View File
@@ -0,0 +1,574 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="75mm"
height="100mm"
viewBox="0 0 75 100"
version="1.1"
id="svg4517"
inkscape:version="0.92pre3 r"
sodipodi:docname="Statistik.svg">
<defs
id="defs4511">
<linearGradient
inkscape:collect="always"
id="linearGradient912">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop908" />
<stop
style="stop-color:#000000;stop-opacity:0;"
offset="1"
id="stop910" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient5414">
<stop
style="stop-color:#e9bf1c;stop-opacity:1"
offset="0"
id="stop5410" />
<stop
style="stop-color:#d7a98e;stop-opacity:0"
offset="1"
id="stop5412" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient5365">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop5361" />
<stop
style="stop-color:#000000;stop-opacity:0;"
offset="1"
id="stop5363" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5365"
id="linearGradient5367"
x1="10"
y1="286"
x2="91"
y2="207"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5414"
id="linearGradient5416"
x1="15.893733"
y1="291.10629"
x2="84.106262"
y2="202.89375"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0709151,0,0,1.111518,-16.045751,-27.544968)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient914"
x1="10"
y1="246.5"
x2="91"
y2="246.5"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4509"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4511"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4513"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4515"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4517"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4519"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4521"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4523"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4525"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4527"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4529"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4531"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4533"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4535"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4537"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4539"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4541"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4543"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4545"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4547"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4549"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4551"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4553"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4555"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4557"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient912"
id="linearGradient4559"
gradientUnits="userSpaceOnUse"
x1="10"
y1="246.5"
x2="91"
y2="246.5" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.7"
inkscape:cx="-56.976954"
inkscape:cy="42.697031"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="2497"
inkscape:window-height="1016"
inkscape:window-x="63"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false" />
<metadata
id="metadata4514">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-197)">
<rect
style="fill:url(#linearGradient5416);fill-opacity:1;fill-rule:nonzero;stroke:#474747;stroke-width:1.95017505;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5081"
width="73.04982"
height="98.049828"
x="0.97508752"
y="197.97508" />
<g
id="g5359"
transform="matrix(0.64456095,0,0,0.86515033,5.3648571,26.350421)"
style="fill:url(#linearGradient5367);fill-opacity:1">
<g
id="g906"
style="opacity:0.64200003;fill:#000000;fill-opacity:1;stroke:url(#linearGradient914)"
transform="translate(0,7.3826591)">
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4509);stroke-width:0.93538535;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100"
width="1"
height="81"
x="10"
y="206" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4511);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-6"
width="1"
height="80"
x="20"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4513);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-7"
width="1"
height="80"
x="30"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4515);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-5"
width="1"
height="80"
x="40"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4517);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3"
width="1"
height="80"
x="50"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4519);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-56"
width="1"
height="80"
x="70"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4521);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-2"
width="1"
height="80"
x="60"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4523);stroke-width:0.9295935;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-9"
width="1"
height="80"
x="80"
y="207" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4525);stroke-width:0.93538541;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-1"
width="1"
height="81"
x="90"
y="206" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4527);stroke-width:0.93538553;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2"
width="81"
height="1"
x="10"
y="286" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4529);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-7"
width="80"
height="1"
x="10"
y="221" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4531);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-0"
width="80"
height="1"
x="10"
y="226" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4533);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-9"
width="80"
height="1"
x="10"
y="211" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4535);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-3"
width="80"
height="1"
x="10"
y="216" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4537);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-6"
width="80"
height="1"
x="10"
y="231" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4539);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-06"
width="80"
height="1"
x="10"
y="236" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4541);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-2"
width="80"
height="1"
x="10"
y="241" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4543);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-61"
width="80"
height="1"
x="10"
y="261" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4545);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-8"
width="80"
height="1"
x="10"
y="271" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4547);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-79"
width="80"
height="1"
x="10"
y="281" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4549);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-20"
width="80"
height="1"
x="10"
y="246" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4551);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-23"
width="80"
height="1"
x="10"
y="256" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4553);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-75"
width="80"
height="1"
x="10"
y="251" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4555);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-92"
width="80"
height="1"
x="10"
y="266" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4557);stroke-width:0.92959362;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-28"
width="80"
height="1"
x="10"
y="276" />
<rect
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4559);stroke-width:0.93538553;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97089945"
id="rect5100-3-2-97"
width="81"
height="1"
x="10"
y="206" />
</g>
</g>
<g
aria-label="P"
transform="matrix(0.28334626,0,0,0.29408913,-74.703128,194.8477)"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:25px;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot5418">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:25px;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="419.58417"
y="338.6937"
id="text4505"><tspan
sodipodi:role="line"
id="tspan4503"
x="419.58417"
y="338.6937"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:192px;font-family:cantarell;-inkscape-font-specification:cantarell;fill:#000000;fill-opacity:1">S</tspan></text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

+6 -1
View File
@@ -37,12 +37,17 @@ echo '<html>
</head>
<body>';
if (php_sapi_name() != 'cli')
{
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('admin'))
exit('Sie ('.$uid.') haben keine Berechtigung');
{
exit('Sie haben keine Berechtigung');
}
}
echo '<H1>Systemcheck!</H1>';
echo '<H2>DB-Updates!</H2>';
+42 -1
View File
@@ -1670,6 +1670,47 @@ if(!$result = @$db->db_query("SELECT aufnahmegruppe FROM public.tbl_gruppe"))
echo 'Boolean aufnahmegruppe zu Gruppen hinzugefuegt. aufnahmegruppe_kurzbz zu tbl_prestudent und tbl_reihungstest hinzugefuegt<br>';
}
// Removing column "r" from tbl_statistik
if ($result = @$db->db_query("SELECT r FROM public.tbl_statistik LIMIT 1;"))
{
$qry = "ALTER TABLE public.tbl_statistik DROP COLUMN r;";
if (!$db->db_query($qry))
echo '<strong>public.tbl_statistik: ' . $db->db_last_error() . '</strong><br>';
else
echo ' public.tbl_statistik: Spalte r entfernt.<br>';
}
// Removing column "php" from tbl_statistik
if ($result = @$db->db_query("SELECT php FROM public.tbl_statistik LIMIT 1;"))
{
$qry = "ALTER TABLE public.tbl_statistik DROP COLUMN php;";
if (!$db->db_query($qry))
echo '<strong>public.tbl_statistik: ' . $db->db_last_error() . '</strong><br>';
else
echo ' public.tbl_statistik: Spalte php entfernt.<br>';
}
// vorlage_kurzbz von 16 auf 32 Zeichen
if($result = $db->db_query("SELECT character_maximum_length FROM information_schema.columns WHERE column_name='vorlage_kurzbz' AND table_name='tbl_vorlage' AND table_schema='public';"))
{
if($row = $db->db_fetch_object($result))
{
if($row->character_maximum_length==16)
{
$qry = "ALTER TABLE public.tbl_vorlage ALTER COLUMN vorlage_kurzbz TYPE varchar(32);
ALTER TABLE public.tbl_vorlagestudiengang ALTER COLUMN vorlage_kurzbz TYPE varchar(32);
";
if(!$db->db_query($qry))
echo '<strong>public.tbl_vorlage: '.$db->db_last_error().'</strong><br>';
else
echo 'public.tbl_vorlage: Spalte vorlage_kurzbz auf 32 Zeichen verlaengert<br>';
}
}
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
@@ -1882,7 +1923,7 @@ $tabellen=array(
"public.tbl_service" => array("service_id", "bezeichnung","beschreibung","ext_id","oe_kurzbz","content_id"),
"public.tbl_sprache" => array("sprache","locale","flagge","index","content","bezeichnung"),
"public.tbl_standort" => array("standort_id","adresse_id","kurzbz","bezeichnung","insertvon","insertamum","updatevon","updateamum","ext_id", "firma_id","code"),
"public.tbl_statistik" => array("statistik_kurzbz","bezeichnung","url","r","gruppe","sql","php","content_id","insertamum","insertvon","updateamum","updatevon","berechtigung_kurzbz","publish","preferences"),
"public.tbl_statistik" => array("statistik_kurzbz","bezeichnung","url","gruppe","sql","content_id","insertamum","insertvon","updateamum","updatevon","berechtigung_kurzbz","publish","preferences"),
"public.tbl_student" => array("student_uid","matrikelnr","prestudent_id","studiengang_kz","semester","verband","gruppe","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_studentlehrverband" => array("student_uid","studiensemester_kurzbz","studiengang_kz","semester","verband","gruppe","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_studiengang" => array("studiengang_kz","kurzbz","kurzbzlang","typ","bezeichnung","english","farbe","email","telefon","max_semester","max_verband","max_gruppe","erhalter_kz","bescheid","bescheidbgbl1","bescheidbgbl2","bescheidgz","bescheidvom","orgform_kurzbz","titelbescheidvom","aktiv","ext_id","zusatzinfo_html","moodle","sprache","testtool_sprachwahl","studienplaetze","oe_kurzbz","lgartcode","mischform","projektarbeit_note_anzeige", "onlinebewerbung"),
+67
View File
@@ -0,0 +1,67 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
/*
* Dieses Script generiert fuer Testzwecke fuer jedes DMS-File einen symbolischen Link auf
* eine Testdatei um im Testsystem korrekte Dateilinks zu haben.
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
$uid = get_uid();
$db = new basis_db();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('system/developer',null,'suid'))
die($rechte->errormsg);
$anzahl_neu=0;
$anzahl_vorhanden=0;
$qry = "SELECT filename FROM campus.tbl_dms_version";
$path = '/var/fhcomplete/dms/';
chdir($path);
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$extension = strtolower(mb_substr($row->filename, mb_strrpos($row->filename,'.')+1));
if(in_array($extension, array('jpg','pdf','zip','doc','docx','gif','png','jpeg','odt','ods','xls')))
$testfile = 'testfile.'.strtolower($extension);
else
$testfile = 'testfile.txt';
if(!file_exists($row->filename))
{
$cmd = 'ln -s '.$testfile.' '.$row->filename;
exec($cmd);
echo "<br>\ncreate $row->filename";
$anzahl_neu++;
}
else
{
echo "<br>\nexists $row->filename";
$anzahl_vorhanden++;
}
}
}
echo '<hr>';
echo 'Done';
echo '<br>Neu:'.$anzahl_neu;
echo '<br>Vorhanden:'.$anzahl_vorhanden;
?>
+150 -128
View File
@@ -28,25 +28,22 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<style:table-properties style:width="17.815cm" fo:margin-left="-0.199cm" table:align="left" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="Tabelle1.A" style:family="table-column">
<style:table-column-properties style:column-width="2,15cm"/>
<style:table-column-properties style:column-width="2.896cm"/>
</style:style>
<style:style style:name="Tabelle1.B" style:family="table-column">
<style:table-column-properties style:column-width="2.401cm"/>
<style:table-column-properties style:column-width="2.796cm"/>
</style:style>
<style:style style:name="Tabelle1.C" style:family="table-column">
<style:table-column-properties style:column-width="4.024cm"/>
<style:table-column-properties style:column-width="1.889cm"/>
</style:style>
<style:style style:name="Tabelle1.D" style:family="table-column">
<style:table-column-properties style:column-width="3.358cm"/>
</style:style>
<style:style style:name="Tabelle1.E" style:family="table-column">
<style:table-column-properties style:column-width="2.752cm"/>
</style:style>
<style:style style:name="Tabelle1.F" style:family="table-column">
<style:table-column-properties style:column-width="0.46cm"/>
<style:table-column-properties style:column-width="1.109cm"/>
</style:style>
<style:style style:name="Tabelle1.G" style:family="table-column">
<style:table-column-properties style:column-width="2.66cm"/>
<style:table-column-properties style:column-width="0.517cm"/>
</style:style>
<style:style style:name="Tabelle1.H" style:family="table-column">
<style:table-column-properties style:column-width="2.815cm"/>
</style:style>
<style:style style:name="Tabelle1.1" style:family="table-row">
<style:table-row-properties style:min-row-height="0.5cm" fo:keep-together="auto"/>
@@ -187,9 +184,8 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<style:paragraph-properties style:page-number="1"/>
<style:text-properties fo:language="de" fo:country="AT"/>
</style:style>
<style:style style:name="P21" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:line-height="100%" />
<style:text-properties fo:font-size="10pt" fo:language="de" fo:country="AT" style:font-size-asian="10pt" style:font-name-complex="Arial" style:font-size-complex="10pt" />
<style:style style:name="P21" style:family="paragraph" style:parent-style-name="Footer">
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P22" style:family="paragraph">
<style:paragraph-properties style:writing-mode="lr-tb"/>
@@ -248,11 +244,11 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:table-column table:style-name="Tabelle1.B"/>
<table:table-column table:style-name="Tabelle1.C"/>
<table:table-column table:style-name="Tabelle1.D"/>
<table:table-column table:style-name="Tabelle1.E"/>
<table:table-column table:style-name="Tabelle1.F"/>
<table:table-column table:style-name="Tabelle1.A" table:number-columns-repeated="2"/>
<table:table-column table:style-name="Tabelle1.G"/>
<table:table-column table:style-name="Tabelle1.H"/>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="7" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P5">Examining Committee</text:p>
</table:table-cell>
<table:covered-table-cell/>
@@ -261,45 +257,49 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P5">Chair</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="6" office:value-type="string">
<text:p text:style-name="P5"><xsl:value-of select="vorsitz_nachname" /></text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P5">1st Examiner</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="6" office:value-type="string">
<text:p text:style-name="P5"><xsl:value-of select="pruefer1_nachname" /></text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P6">2nd Examiner</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="6" office:value-type="string">
<text:p text:style-name="P5"><xsl:value-of select="pruefer2_nachname" /></text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
@@ -308,9 +308,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:table-cell table:style-name="Tabelle1.B5" office:value-type="string">
<text:p text:style-name="P5"><xsl:value-of select="datum" /></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P5">Time of Start</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.B5" office:value-type="string">
<text:p text:style-name="P7"/>
</table:table-cell>
@@ -323,47 +324,24 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" table:number-rows-spanned="3" table:number-columns-spanned="2" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P5">Examination Attempt</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5">
<draw:custom-shape text:anchor-type="char" draw:z-index="9" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="0.02cm">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="6" office:value-type="string">
<text:p text:style-name="P16">
<draw:custom-shape text:anchor-type="char" draw:z-index="9" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.362cm" svg:height="0.373cm" svg:x="2cm" svg:y="0.05cm">
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>
1st Attempt</text:p>
<draw:custom-shape text:anchor-type="char" draw:z-index="10" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.362cm" svg:height="0.373cm" svg:x="4.8cm" svg:y="0.05cm"><text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>
<draw:custom-shape text:anchor-type="char" draw:z-index="11" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.362cm" svg:height="0.373cm" svg:x="7.5cm" svg:y="0.05cm"><text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>
1st Attempt <text:s text:c="8"/>/ 1st Retake <text:s text:c="7"/>/ 2nd Retake</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5">
<draw:custom-shape text:anchor-type="char" draw:z-index="10" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="0.02cm"><text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>
1st Retake</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5">
<draw:custom-shape text:anchor-type="char" draw:z-index="11" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="0.02cm"><text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>
2nd Retake</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
@@ -371,12 +349,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:p text:style-name="P3">Topic and Assessment of Bachelor Paper 1</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.B5" table:number-columns-spanned="4" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.B5" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5"><xsl:value-of select="themenbereich" /></text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" office:value-type="string">
<text:p text:style-name="P5">Grade</text:p>
<text:p text:style-name="P5">(Information)</text:p>
@@ -388,12 +367,13 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:p text:style-name="P3">Topic and Assessment of Bachelor Paper 2</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.B5" table:number-columns-spanned="4" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.B5" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5"><xsl:value-of select="themenbereich_2" /></text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" office:value-type="string">
<text:p text:style-name="P5">Grade</text:p>
<text:p text:style-name="P5">(Information)</text:p>
@@ -405,91 +385,63 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:p text:style-name="P5">Subject of the Examination</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5">Presentation and Examination interview on the Bachelor paper and its links to subjects of the curriculum</text:p>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="6" office:value-type="string">
<text:p text:style-name="P5">Presentation and Examination interview on the Bachelor Paper and its links to subjects of the curriculum</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" table:number-rows-spanned="2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P21">Parts of the examination held in English (Optional - in line with the degree program's guidelines):</text:p>
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P5">Parts of the examination held in English (Optional - in line with the degree program's guidelines):</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="6" office:value-type="string">
<text:p text:style-name="P4">
<draw:custom-shape text:anchor-type="char" draw:z-index="6" draw:name="Rechteck 8" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="0.02cm">
<draw:custom-shape text:anchor-type="char" draw:z-index="6" draw:name="Rechteck 8" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.445cm" svg:height="0.445cm" svg:x="10.456cm" svg:y="0.1cm">
<text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/>
</draw:custom-shape>Presentation of the Bachelor Paper
</text:p>
<text:p text:style-name="P4">Examination interview on the Bachelor Paper and its links to</text:p>
<text:p text:style-name="P5">
<draw:custom-shape text:anchor-type="char" draw:z-index="5" draw:name="Rechteck 10" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.445cm" svg:height="0.445cm" svg:x="10.456cm" svg:y="-0.092cm">
<text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/>
</draw:custom-shape>subjects of the curriculum
</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P4">Examination interview on the Bachelor paper and its links to </text:p>
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P5">
<draw:custom-shape text:anchor-type="char" draw:z-index="5" draw:name="Rechteck 10" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="-0.2cm">
<draw:custom-shape text:anchor-type="char" draw:z-index="8" draw:name="Rechteck 10" draw:style-name="gr2" draw:text-style-name="P22" svg:width="0.359cm" svg:height="0.35cm" svg:x="14.566cm" svg:y="0.07cm">
<text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/>
</draw:custom-shape>
subjects of the curriculum</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A1" table:number-rows-spanned="2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P5">Presentation</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P4">
<draw:custom-shape text:anchor-type="char" draw:z-index="7" draw:name="Rechteck 10" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="0.02cm">
<draw:custom-shape text:anchor-type="char" draw:z-index="7" draw:name="Rechteck 10" draw:style-name="gr2" draw:text-style-name="P22" svg:width="0.355cm" svg:height="0.35cm" svg:x="10.8cm" svg:y="0.07cm">
<text:p/>
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/>
</draw:custom-shape>Bachelor paper 1</text:p>
</draw:custom-shape>Notes on the presentation of the Bachelor Paper Bachelor Paper 1 <text:s text:c="8"/>/ Bachelor Paper 2 </text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P4">
<draw:custom-shape text:anchor-type="char" draw:z-index="8" draw:name="Rechteck 10" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.4cm" svg:height="0.4cm" svg:x="10.9cm" svg:y="0.02cm">
<draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/>
</draw:custom-shape>Bachelor paper 2</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="7" office:value-type="string">
<text:p text:style-name="P5">Question(s) to open the examination interview</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="7" office:value-type="string">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="8" office:value-type="string">
<!-- Wenn die Titel der Projektarbeiten zu lang werden, werden hier Zeilenabstände im Bereich "Notizen" reduziert -->
<xsl:variable select="themenbereich" name="themenbereich"/>
<xsl:variable name="themenbereichlaenge" select="(string-length($themenbereich))"/>
@@ -534,6 +486,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:p text:style-name="P5"/>
<text:p text:style-name="P5"/>
<text:p text:style-name="P5"/>
<text:p text:style-name="P5"/>
<text:p text:style-name="P5"/>
<text:p text:style-name="P5"/>
<text:p text:style-name="P5"/>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
@@ -541,6 +497,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
</table:table>
<text:p text:style-name="P23"> </text:p>
@@ -550,46 +507,76 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:table table:name="Tabelle1" table:style-name="Tabelle1">
<table:table-column table:style-name="Tabelle1.A"/>
<table:table-column table:style-name="Tabelle1.B"/>
<table:table-column table:style-name="Tabelle1.C"/>
<table:table-column table:style-name="Tabelle1.D"/>
<table:table-column table:style-name="Tabelle1.A" table:number-columns-repeated="2"/>
<table:table-column table:style-name="Tabelle1.G"/>
<table:table-column table:style-name="Tabelle1.H"/>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Assessment of the examination interview based on technical accuracy, completeness, structure and linguistic quality.</text:p>
<text:p text:style-name="P10">Passed with highest distinction, Passed with distinction, Passed, Failed</text:p>
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P5">Question(s) to open the examination interview</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.C2" office:value-type="string">
<table:table-row table:style-name="Tabelle1.14">
<table:table-cell table:style-name="Tabelle1.A14" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P18"/>
<text:p text:style-name="P17"/>
<text:p text:style-name="P17"/>
<text:p text:style-name="P17">
<text:soft-page-break/>
</text:p>
<text:p text:style-name="P5"/>
</table:table-cell>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P5">Reasons for failing OR any possible explanatory notes on a passing grade</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.15">
<table:table-cell table:style-name="Tabelle1.C2" office:value-type="string">
<text:p text:style-name="P11"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="3" office:value-type="string">
<text:p text:style-name="P10">Assessment of the examination interview</text:p>
<text:p text:style-name="P10">based on technical accuracy, completeness, structure and linguistic quality.</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P5"><draw:custom-shape text:anchor-type="char" draw:z-index="2" draw:name="Rechteck 3" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.445cm" svg:height="0.445cm" svg:x="8.925cm" svg:y="0.056cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>(+++) Passed with distinction</text:p>
<text:p text:style-name="P5"><draw:custom-shape text:anchor-type="char" draw:z-index="12" draw:name="Rechteck 5" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.445cm" svg:height="0.445cm" svg:x="8.925cm" svg:y="0.078cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>(++) Passed with merit</text:p>
<text:p text:style-name="P5"><draw:custom-shape text:anchor-type="char" draw:z-index="3" draw:name="Rechteck 4" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.445cm" svg:height="0.445cm" svg:x="8.925cm" svg:y="0.074cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>(+) Passed</text:p>
<text:p text:style-name="P5"><draw:custom-shape text:anchor-type="char" draw:z-index="4" draw:name="Rechteck 7" draw:style-name="gr1" draw:text-style-name="P22" svg:width="0.445cm" svg:height="0.445cm" svg:x="8.925cm" svg:y="0.051cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>(-) Failed</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.16">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P5">Any unusual occurrences</text:p>
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P5">Reasons for failing OR any possible explanatory notes on a passing grade</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.C2" office:value-type="string">
<table:table-row table:style-name="Tabelle1.15">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P11"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
@@ -597,11 +584,46 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.16">
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P5">Any unusual occurrences</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.C2" table:number-columns-spanned="8" office:value-type="string">
<text:p text:style-name="P11"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10">
<text:bookmark text:name="_GoBack"/>
</text:p>
<text:p text:style-name="P10"/>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
<table:covered-table-cell/>
</table:table-row>
</table:table>
<text:p text:style-name="P12"/>
+7 -7
View File
@@ -359,7 +359,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A2" table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P4">Topic and Assessment of Master's thesis</text:p>
<text:p text:style-name="P4">Topic and Assessment of Master's Thesis</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.B5" table:number-columns-spanned="6" office:value-type="string">
@@ -381,7 +381,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="7" office:value-type="string">
<text:p text:style-name="P4">Examination interview on the Masters thesis and its links to subjects of the curriculum as well as examination interview on a curricular theme</text:p>
<text:p text:style-name="P4">Examination interview on the Masters Thesis and its links to subjects of the curriculum as well as examination interview on a curricular theme</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
@@ -396,8 +396,8 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.D2" table:number-columns-spanned="7" office:value-type="string">
<text:p text:style-name="P14"><draw:custom-shape text:anchor-type="char" draw:z-index="6" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P21" svg:width="0.336cm" svg:height="0.359cm" svg:x="10.964cm" svg:y="0.153cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>Presentation of the Master's thesis</text:p>
<text:p text:style-name="P14">Examination interview on the Master's thesis <text:span text:style-name="T1">and its links</text:span></text:p>
<text:p text:style-name="P14"><draw:custom-shape text:anchor-type="char" draw:z-index="6" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P21" svg:width="0.336cm" svg:height="0.359cm" svg:x="10.964cm" svg:y="0.153cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>Presentation of the Master's Thesis</text:p>
<text:p text:style-name="P14">Examination interview on the Master's Thesis <text:span text:style-name="T1">and its links</text:span></text:p>
<text:p text:style-name="P4"><draw:custom-shape text:anchor-type="char" draw:z-index="4" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P21" svg:width="0.336cm" svg:height="0.359cm" svg:x="10.982cm" svg:y="-0.046cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>to subjects of the curriculum</text:p>
<text:p text:style-name="P14"><draw:custom-shape text:anchor-type="char" draw:z-index="5" draw:name="Rechteck 1" draw:style-name="gr1" draw:text-style-name="P21" svg:width="0.336cm" svg:height="0.359cm" svg:x="10.986cm" svg:y="-0.019cm"><text:p/><draw:enhanced-geometry svg:viewBox="0 0 21600 21600" draw:type="rectangle" draw:enhanced-path="M 0 0 L 21600 0 21600 21600 0 21600 0 0 Z N"/></draw:custom-shape>Examination interview on other subjects relevant to the curriculum</text:p>
</table:table-cell>
@@ -410,7 +410,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
<table:table-row table:style-name="Tabelle1.1">
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="9" office:value-type="string">
<text:p text:style-name="P4">Notes on the presentation of the Master's thesis</text:p>
<text:p text:style-name="P4">Notes on the presentation of the Master's Thesis</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
@@ -538,10 +538,10 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.D2" table:number-columns-spanned="5" office:value-type="string">
<text:p text:style-name="P4">
(+++) Passed with highest distinction
(+++) Passed with distinction
</text:p>
<text:p text:style-name="P4">
(++) Passt with distinction
(++) Passed with merit
</text:p>
<text:p text:style-name="P4">
(+) Passed
+1 -1
View File
@@ -381,7 +381,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="7" office:value-type="string">
<text:p text:style-name="P4">Prüfungsgespräch über Masterarbeit und Querverbindungen zu Fächern des Studienplans sowie Prüfungsgespräch über Stoffgebiet</text:p>
<text:p text:style-name="P4">Prüfungsgespräch über die Masterarbeit und deren Querverbindungen zu Fächern des Studienplans sowie Prüfungsgespräch über das Stoffgebiet</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
+1 -1
View File
@@ -381,7 +381,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-cell>
<table:covered-table-cell/>
<table:table-cell table:style-name="Tabelle1.A1" table:number-columns-spanned="7" office:value-type="string">
<text:p text:style-name="P4">Prüfungsgespräch über Masterarbeit und Querverbindungen zu Fächern des Studienplans sowie Prüfungsgespräch über Stoffgebiet</text:p>
<text:p text:style-name="P4">Prüfungsgespräch über die Masterarbeit und deren Querverbindungen zu Fächern des Studienplans sowie Prüfungsgespräch über das Stoffgebiet</text:p>
</table:table-cell>
<table:covered-table-cell/>
<table:covered-table-cell/>
+1 -1
View File
@@ -369,7 +369,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P9"/>
<text:p text:style-name="P9"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10">Final assessment: Passed with highest distinction, Passed with distinction, Passed</text:p>
<text:p text:style-name="P10">Final assessment: Passed with distinction, Passed with merit, Passed</text:p>
<text:p text:style-name="P10">Pursuant to section 6 subsection 1 of the University of Applied Sciences Studies Act (FHStG), BGBI. Nr. <xsl:value-of select="bescheidbgbl1" /> idgF</text:p>
<text:p text:style-name="P18"/>
<text:p text:style-name="P18"/>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2784,7 +2784,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
</table:table>
<text:p text:style-name="P15"/>
<text:p text:style-name="P23">Grading Scheme: Passed with highest distinction, Passed with distinction, Passed</text:p>
<text:p text:style-name="P23">Grading Scheme: Passed with distinction, Passed with merit, Passed</text:p>
<text:p text:style-name="P22"/>
<text:p text:style-name="P22">
<draw:frame xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" draw:style-name="fr4" draw:name="graphics5" text:anchor-type="char" svg:x="4.50cm" svg:y="0.1cm" svg:width="3.5cm" svg:height="3.5cm" draw:z-index="16" >
+1 -1
View File
@@ -2814,7 +2814,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
</table:table-row>
</table:table>
<text:p text:style-name="P15"/>
<text:p text:style-name="P23">Grading Scheme: Passed with highest distinction, Passed with distinction, Passed</text:p>
<text:p text:style-name="P23">Grading Scheme: Passed with distinction, Passed with merit, Passed</text:p>
<text:p text:style-name="P22"/>
</xsl:if>
<text:p text:style-name="P22">
+2 -2
View File
@@ -352,7 +352,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.B1" office:value-type="string">
<text:p text:style-name="P20">
<text:span text:style-name="T2"><xsl:value-of select="abschlussbeurteilung_kurzbz" /></text:span>
<text:span text:style-name="T2"><xsl:value-of select="abschlussbeurteilung_kurzbzEng" /></text:span>
</text:p>
</table:table-cell>
</table:table-row>
@@ -393,7 +393,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P9"/>
<text:p text:style-name="P9"/>
<text:p text:style-name="P10"/>
<text:p text:style-name="P10">Final assessment: Passed with highest distinction, Passed with distinction, Passed</text:p>
<text:p text:style-name="P10">Final assessment: Passed with distinction, Passed with merit, Passed</text:p>
<text:p text:style-name="P10">Pursuant to section 6 subsection 1 of the University of Applied Sciences Studies Act (FHStG), BGBI. Nr. <xsl:value-of select="bescheidbgbl1" /> idgF</text:p>
<text:p text:style-name="P18"/>
<text:p text:style-name="P18"/>
+104 -3
View File
@@ -26,6 +26,7 @@ require_once('../../include/studiensemester.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
$uid = get_uid();
@@ -86,6 +87,33 @@ if($result = $db->db_query($qry))
}
}
$ba1_arr = array();
$qry = "SELECT * FROM bis.tbl_beschaeftigungsart1";
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$ba1_arr[$row->ba1code]=$row->ba1kurzbz;
$ba2_arr = array();
$qry = "SELECT * FROM bis.tbl_beschaeftigungsart2";
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$ba2_arr[$row->ba2code]=$row->ba2bez;
$verwendung_arr = array();
$qry = "SELECT * FROM bis.tbl_verwendung";
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$verwendung_arr[$row->verwendung_code]=$row->verwendungbez;
$ausmass_arr = array();
$qry = "SELECT * FROM bis.tbl_beschaeftigungsausmass";
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$ausmass_arr[$row->beschausmasscode]=$row->beschausmassbez;
$stg_obj = new studiengang();
$stg_obj->getAll(null,false);
$qry="
SELECT DISTINCT ON (UID) *
FROM
@@ -140,6 +168,8 @@ if($result = $db->db_query($qry))
$mitarbeiter_data['personalnummer']=sprintf("%015s",$row->personalnummer);
$mitarbeiter_data['vorname']=$row->vorname;
$mitarbeiter_data['nachname']=$row->nachname;
$mitarbeiter_data['fixangestellt']=($row->fixangestellt=='t'?true:false);
$mitarbeiter_data['lektor']=($row->lektor=='t'?true:false);
$person_content.="
<Person>
@@ -287,7 +317,7 @@ if($result = $db->db_query($qry))
}
}
}
$mitarbeiter_data['verwendung']=$verwendung_data;
//Verwendungen ausgeben
foreach($verwendung_data as $row_verwendung)
{
@@ -400,7 +430,10 @@ if($result = $db->db_query($qry))
echo ' <html><head><title>BIS - Meldung Mitarbeiter</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">';
include('../../include/meta/jquery.php');
include('../../include/meta/jquery-tablesorter.php');
echo '
</head><body>';
echo "<H1>BIS - Mitarbeiterdaten werden &uuml;berpr&uuml;ft (f&uuml;r Meldung ".$stsem." / $bisprevious - $bisdatum)</H1><br>";
echo "Anzahl Mitarbeiter: Gesamt: ".$mitarbeiterzahl." / echter Dienstvertrag: ".$echt." / freier Dienstvertrag: ".$frei."<br><br>";
@@ -416,13 +449,30 @@ fclose($dateiausgabe);
echo '<h2>Folgende Personen werden gemeldet</h2>
Anzahl:'.count($mitarbeiter_gesamt).'
<table>
<script type="text/javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[2,0]],
widgets: ["zebra"]
});
});
</script>
<table class="tablesorter" id="t1">
<thead>
<tr>
<th>UID</th>
<th>Vorname</th>
<th>Nachname</th>
<th>Personalnummer</th>
<th>Fixangestellt</th>
<th>Lektor</th>
<th>BeschaeftigungsArt1</th>
<th>BeschaeftigungsArt2</th>
<th>Ausmass</th>
<th>Verwendung</th>
<th>Details (Funktion/Lehre)</th>
</tr>
</thead>
<tbody>';
@@ -434,6 +484,57 @@ foreach($mitarbeiter_gesamt as $row)
echo '<td>'.$row['vorname'].'</td>';
echo '<td>'.$row['nachname'].'</td>';
echo '<td>'.$row['personalnummer'].'</td>';
echo '<td>'.($row['fixangestellt']?'Ja':'Nein').'</td>';
echo '<td>'.($row['lektor']?'Ja':'Nein').'</td>';
foreach($row['verwendung'] as $row_verwendung)
{
// Ba1Code
if(isset($ba1_arr[$row_verwendung['ba1code']]))
echo '<td>'.$ba1_arr[$row_verwendung['ba1code']].'</td>';
else
echo '<td>'.$row_verwendung['ba1code'].'</td>';
// Ba2Code
if(isset($ba2_arr[$row_verwendung['ba2code']]))
echo '<td>'.$ba2_arr[$row_verwendung['ba2code']].'</td>';
else
echo '<td>'.$row_verwendung['ba2code'].'</td>';
// Ausmass
if(isset($ausmass_arr[$row_verwendung['beschausmasscode']]))
echo '<td>'.$ausmass_arr[$row_verwendung['beschausmasscode']].'</td>';
else
echo '<td>'.$row_verwendung['beschausmasscode'].'</td>';
// Verwendung
if(isset($verwendung_arr[$row_verwendung['verwendung_code']]))
echo '<td nowrap>'.$verwendung_arr[$row_verwendung['verwendung_code']].'</td>';
else
echo '<td nowrap>'.$row_verwendung['verwendung_code'].'</td>';
echo '<td nowrap>';
// Details
if(isset($row_verwendung['stgltg']))
{
foreach($row_verwendung['stgltg'] as $row_stgl)
{
echo 'Leitung:'.$stg_obj->kuerzel_arr[$row_stgl];
echo '<br>';
}
}
if(isset($row_verwendung['fkt']))
{
foreach($row_verwendung['fkt'] as $row_fkt)
{
echo $stg_obj->kuerzel_arr[$row_fkt['stgkz']].': '.$row_fkt['sws'].' SWS';
echo '<br>';
}
}
echo '</td>';
}
echo '</tr>';
}
echo '</tbody></table><br>';
+1 -1
View File
@@ -927,7 +927,7 @@ function GenerateXMLStudentBlock($row)
$gsblock.="
<GS>
<MobilitaetsProgrammCode>".$rowgs->mobilitaetsprogramm_code."</MobilitaetsProgrammCode>
<ProgrammNr>".sprintf('%04s',$rowgs->programm_code)."</ProgrammNr>
<ProgrammNr>".$rowgs->programm_code."</ProgrammNr>
<StudTyp>".$studtyp."</StudTyp>
<PartnerCode>".$rowgs->partner_code."</PartnerCode>
<Ausbildungssemester>".$rowgs->ausbildungssemester."</Ausbildungssemester>
+26 -2
View File
@@ -72,6 +72,7 @@ if (!$uid = get_uid())
$jahr_monat=trim(isset($_REQUEST['jahr_monat']) ? $_REQUEST['jahr_monat']:'');
$afa=trim(isset($_REQUEST['afa']) ? $_REQUEST['afa']:'');
$inventur_jahr=trim(isset($_REQUEST['inventur_jahr']) ? $_REQUEST['inventur_jahr']:'');
$anlage_jahr_monat=trim(isset($_REQUEST['anlage_jahr_monat']) ? $_REQUEST['anlage_jahr_monat']:'');
$person_id=trim(isset($_REQUEST['person_id']) ? $_REQUEST['person_id']:'');
if (!empty($person_id) && !is_numeric($person_id))
@@ -503,6 +504,28 @@ if (!$uid = get_uid())
<option <?php echo ($jahr_monat_select=='-' || empty($jahr_monat_select) ?' selected="selected" ':''); ?> value="">&nbsp;-&nbsp;</option>
</select>&nbsp;
</td>
<td><label for="anlage_jahr_monat">Anlagedatum</label>&nbsp;
<select id="anlage_jahr_monat" name="anlage_jahr_monat">
<?php
$anlage_jahr_monat_select=trim((!isset($_REQUEST['anlage_jahr_monat'])? '-':$anlage_jahr_monat));
$tmpJahr=(int)date("Y",mktime(0, 0, 0, 1, 1, date("Y")-12));
for ($i=0;$i<12;$i++)
{
$tmpJahr=$tmpJahr + 1;
$jjjjmm=$tmpJahr.'-00';
echo '<option '.($anlage_jahr_monat_select==$tmpJahr?' selected="selected" ':'').' value="'.$tmpJahr.'">&nbsp;--'.$tmpJahr.'--&nbsp;</option>';
for ($ii=1;$ii<=12;$ii++)
{
$jjjjmm=$tmpJahr.'-'.($ii<10?'0'."$ii":$ii);
echo '<option '.($anlage_jahr_monat_select==$jjjjmm?' selected="selected" ':'').' value="'.$jjjjmm.'">&nbsp;'.$jjjjmm.'&nbsp;</option>';
if ($tmpJahr==date("Y") && $ii==date("m"))
break;
}
}
?>
<option <?php echo ($anlage_jahr_monat_select=='-' || empty($anlage_jahr_monat_select) ?' selected="selected" ':''); ?> value="">&nbsp;-&nbsp;</option>
</select>&nbsp;
</td>
<td style="background-color: #FFFFDD;">&nbsp;<a href="javascript:document.sendform.submit();"><img border="0" src="../../skin/images/application_go.png" alt="suchen">&nbsp;suchen</a>&nbsp;<input style="display:none;" name="debug" value="<?php echo $debug;?>"></td>
</tr>
</table>
@@ -824,12 +847,12 @@ if (!$uid = get_uid())
if (empty($bestellung_id) && empty($bestellnr) )
$bestelldetail_id='';
$check=$inventarnummer.$ort_kurzbz.$betriebsmittelstatus_kurzbz.$betriebsmitteltyp.$bestellung_id.$bestelldetail_id.$bestellnr.$hersteller.$afa.$jahr_monat.$firma_id.$inventur_jahr.$beschreibung.$oe_kurzbz.$seriennummer.$person_id.$betriebsmittel_id;
$check=$inventarnummer.$ort_kurzbz.$betriebsmittelstatus_kurzbz.$betriebsmitteltyp.$bestellung_id.$bestelldetail_id.$bestellnr.$hersteller.$afa.$jahr_monat.$firma_id.$inventur_jahr.$beschreibung.$oe_kurzbz.$seriennummer.$person_id.$betriebsmittel_id.$anlage_jahr_monat;
$order=null; // Sortierung
$oBetriebsmittel->result=array();
$oBetriebsmittel->errormsg='';
if ($check!='' && !$oBetriebsmittel->betriebsmittel_inventar($order,$inventarnummer,$ort_kurzbz,$betriebsmittelstatus_kurzbz,$betriebsmitteltyp,$bestellung_id,$bestelldetail_id,$bestellnr,$hersteller,$afa,$jahr_monat,$firma_id,$inventur_jahr,$beschreibung,$oe_kurzbz,$seriennummer,$person_id,$betriebsmittel_id))
if ($check!='' && !$oBetriebsmittel->betriebsmittel_inventar($order,$inventarnummer,$ort_kurzbz,$betriebsmittelstatus_kurzbz,$betriebsmitteltyp,$bestellung_id,$bestelldetail_id,$bestellnr,$hersteller,$afa,$jahr_monat,$firma_id,$inventur_jahr,$beschreibung,$oe_kurzbz,$seriennummer,$person_id,$betriebsmittel_id, $anlage_jahr_monat))
$errormsg[]=$oBetriebsmittel->errormsg;
echo '<form action="inventarliste.php" method="POST" target="_blank">
@@ -851,6 +874,7 @@ if (!$uid = get_uid())
<input type="hidden" name="seriennummer" value="'.$seriennummer.'">
<input type="hidden" name="person_id" value="'.$person_id.'">
<input type="hidden" name="betriebsmittel_id" value="'.$betriebsmittel_id.'">
<input type="hidden" name="anlage_jahr_monat" value="'.$anlage_jahr_monat.'">
<input type="submit" value="Excel Export" />
</form>
';
+2 -1
View File
@@ -57,6 +57,7 @@ $afa=trim(isset($_REQUEST['afa']) ? $_REQUEST['afa']:'');
$inventur_jahr=trim(isset($_REQUEST['inventur_jahr']) ? $_REQUEST['inventur_jahr']:'');
$order = trim(isset($_REQUEST['order']) ? $_REQUEST['order']:'');
$person_id = trim(isset($_REQUEST['person_id']) ? $_REQUEST['person_id']:'');
$anlage_jahr_monat=trim(isset($_REQUEST['anlage_jahr_monat']) ? $_REQUEST['anlage_jahr_monat']:'');
$debug = false;
$schreib_recht_administration=false;
@@ -70,7 +71,7 @@ $oBetriebsmittelstatus->result=array();
$resultBetriebsmittelstatus=$oBetriebsmittelstatus->result;
$oBetriebsmittel = new betriebsmittel();
if (!$oBetriebsmittel->betriebsmittel_inventar($order,$inventarnummer,$ort_kurzbz,$betriebsmittelstatus_kurzbz,$betriebsmitteltyp,$bestellung_id,$bestelldetail_id,$bestellnr,$hersteller,$afa,$jahr_monat,$firma_id,$inventur_jahr,$beschreibung,$oe_kurzbz,$seriennummer,$person_id,$betriebsmittel_id))
if (!$oBetriebsmittel->betriebsmittel_inventar($order,$inventarnummer,$ort_kurzbz,$betriebsmittelstatus_kurzbz,$betriebsmitteltyp,$bestellung_id,$bestelldetail_id,$bestellnr,$hersteller,$afa,$jahr_monat,$firma_id,$inventur_jahr,$beschreibung,$oe_kurzbz,$seriennummer,$person_id,$betriebsmittel_id,$anlage_jahr_monat))
$errormsg[]=$oBetriebsmittel->errormsg;
$resultBetriebsmittel = $oBetriebsmittel->result;
@@ -475,6 +475,22 @@
$htmlstr.= $row->studiensemester_kurzbz.'; ';
}
}
$htmlstr.='<br><b>Verwendung in folgenden Studienplänen</b>: ';
$qry ="SELECT distinct tbl_studienplan.bezeichnung
FROM
lehre.tbl_studienplan_lehrveranstaltung
JOIN lehre.tbl_studienplan USING(studienplan_id)
WHERE lehrveranstaltung_id=".$db->db_add_param($lv->lehrveranstaltung_id).'
ORDER BY tbl_studienplan.bezeichnung desc';
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$htmlstr.= $row->bezeichnung.'; ';
}
}
$htmlstr.='</span>';
// Details Ende
}
+10 -8
View File
@@ -1407,16 +1407,18 @@ function writeEctsSum(parent)
}
if($(parent).attr("rel") === "semester")
{
var cells = $(parent).find(".jstree-grid-col-1");
var cells = $(parent).children("ul").children();
var sum = 0;
for(var j=1; j<cells.length; j++)
for(var j=0; j<cells.length; j++)
{
if(!isNaN(parseFloat(cells[j].childNodes[0].innerHTML)))
if(!isNaN(parseFloat(cells[j].childNodes[2].childNodes[0].innerHTML)))
{
sum+=parseFloat(cells[j].childNodes[0].innerHTML);
sum+=parseFloat(cells[j].childNodes[2].childNodes[0].innerHTML);
}
}
cells[0].childNodes[0].innerHTML = "<b>"+sum+"</b>";
$(parent).children()[2].innerHTML = "<b>"+sum+"</b>";
}
}
@@ -1427,14 +1429,14 @@ function writeOverallSum(root)
{
if(!$('#stplDetails').length)
$("#treeData").append('<div id="stplDetails" style="padding-top: 1.0em"></div>');
var cells = $(root).find(".jstree-grid-col-1");
var cells = $(root).children("ul").children();
var sum = 0;
for(var i=0; i<cells.length; i++)
{
if(!isNaN(parseFloat(cells[i].childNodes[0].innerHTML)))
if(!isNaN(parseFloat(cells[i].childNodes[2].childNodes[0].innerHTML)))
{
sum+=parseFloat(cells[i].childNodes[0].innerHTML);
sum+=parseFloat(cells[i].childNodes[2].childNodes[0].innerHTML);
}
}
$("#stplDetails").html("ECTS-Summe: <b>"+sum+"</b>");
+305 -50
View File
@@ -52,6 +52,12 @@ $stsem->getNextStudiensemester();
$stg = new studiengang();
$stg->getAll();
$message = '';
$filter_url = '';
if (isset($_GET['filter']) || isset($_GET['unterrichtssprache']) || isset($_GET['studiengang']))
$filter_url = 'filter='.$_GET['filter'].'&unterrichtssprache='.$_GET['unterrichtssprache'].'&studiengang='.$_GET['studiengang'].'&go=Filter&';
?>
<html>
<head>
@@ -67,13 +73,19 @@ $stg->getAll();
{
$("#t1").tablesorter(
{
sortList: [[0,0],[2,0],[3,0],[4,0]],
sortList: [[1,0],[3,0],[4,0],[5,0]],
widgets: ["zebra"],
headers: {10: {sorter: false}, 11: {sorter: false}}
});
$("#t2").tablesorter(
{
sortList: [[0,0],[1,0]],
widgets: ["zebra"]
});
});
function conf(val1)
{
return confirm("Incomingplätze von '"+val1+"' auf 0 setzen?");
return confirm("Incomingplätze der LV '"+val1+"' auf 0 setzen?");
}
</script>
@@ -96,19 +108,26 @@ if($method=="lehrveranstaltungen")
$lehrveranstaltung->incoming = 0;
if($lehrveranstaltung->save())
echo $p->t('global/erfolgreichgespeichert');
$message = $p->t('global/erfolgreichgespeichert');
else
echo $p->t('global/fehleraufgetreten');
$message = $p->t('global/fehleraufgetreten');
}
// Übersicht aller LVs
echo '<h2>Lehrveranstaltungs-Verwaltung</h2>';
echo '
<form name="filterSemester">
<table border="0">
<form name="filterSemester" action="'.$_SERVER['PHP_SELF'].'" method="GET">
<table width="90%" border="0" align="center">
<tr>
<td>'.$p->t('incoming/studentenImWS').'</td>
</tr>
<tr>
<td>'.$p->t('incoming/studentenImSS').'</td>
</tr>
<tr>
<td>'.$p->t('incoming/filter').':
<SELECT name="filterLv" onchange=selectChange()>
<SELECT name="filter">
<option value="allSemester">'.$p->t('incoming/alleSemester').'</option>';
// Vorauswahl der Übergebenen Filter
@@ -126,7 +145,7 @@ if($method=="lehrveranstaltungen")
echo '<option value="SSemester" '.$SSemesterSelected.'>'.$p->t('incoming/sommersemester').'</option>';
echo'</SELECT><br>';
echo $p->t('courseInformation/unterrichtssprache').':<SELECT name="filterUnterrichtssprache" onchange=selectChange()>
echo $p->t('courseInformation/unterrichtssprache').':<SELECT name="unterrichtssprache">
<option value="">'.$p->t('incoming/alleSprachen').'</option>';
// Vorauswahl der Übergebenen Filter
@@ -139,45 +158,51 @@ if($method=="lehrveranstaltungen")
elseif($_GET['unterrichtssprache']=='English')
$EnglishSelected='selected';
echo '<option value="German" '.$GermanSelected.'>German</option>';
echo '<option value="German" '.$GermanSelected.'>'.$p->t("global/deutsch").'</option>';
echo '<option value="English" '.$EnglishSelected.'>English</option>';
echo '<option value="English" '.$EnglishSelected.'>'.$p->t("global/englisch").'</option>';
echo'</SELECT><br>';
echo $p->t('global/studiengang').':<SELECT name="filterStudiengang" onchange=selectChange()>
<option value="">Alle Studiengänge</option>';
echo $p->t('global/studiengang').':<SELECT name="studiengang">
<option value="">'.$p->t('incoming/alleStudiengaenge').'</option>';
// Vorauswahl der Übergebenen Filter
$studiengang = new studiengang();
$studiengang->getAll('typ,kurzbz', true);
$type = array('b' => 'Bachelor', 'm' => 'Master', 'e' => 'Other');
$typ = '';
foreach ($studiengang->result as $row)
{
//Nur Bachelor, Master und CIR-Studiengang
if ($row->typ == 'b' || $row->typ == 'm' || $row->studiengang_kz == '10006')
{
$selected = '';
if ($typ != $row->typ || $typ=='')
{
if ($typ!='')
echo '</optgroup>';
echo '<optgroup label="'.$type[$row->typ].'">';
}
if(isset($_GET['studiengang']) && $_GET['studiengang'] == $row->studiengang_kz)
$selected='selected';
echo '<option value="'.$row->studiengang_kz.'" '.$selected.'>'.strtoupper($row->typ.$row->kurzbz).' - '.$row->bezeichnung.'</option>';
$studiengang_language = ($sprache == 'German') ? $row->bezeichnung : $row->english;
echo '<option value="'.$row->studiengang_kz.'" '.$selected.'>'.strtoupper($row->typ.$row->kurzbz).' - '.$studiengang_language.'</option>';
$typ = $row->typ;
}
}
echo'</SELECT>';
echo'</SELECT><br><br>';
echo '<input type="hidden" name="method" value="lehrveranstaltungen">';
//echo '<input type="hidden" >';
echo '<input type="submit" name="go" value="Filter">';
echo '</td>
</tr>
</table>
<script language="JavaScript">
function selectChange()
{
filter = document.filterSemester.filterLv.options[document.filterSemester.filterLv.selectedIndex].value;
filterSprache = document.filterSemester.filterUnterrichtssprache.options[document.filterSemester.filterUnterrichtssprache.selectedIndex].value;
filterStudiengang = document.filterSemester.filterStudiengang.options[document.filterSemester.filterStudiengang.selectedIndex].value;
url = [location.protocol, "//", location.host, location.pathname].join("");
url = url+"?method=lehrveranstaltungen&filter="+filter+"&unterrichtssprache="+filterSprache+"&studiengang="+filterStudiengang;
document.location=url;
}
</script>
</form>';
// Filter für Semester setzen
@@ -192,8 +217,31 @@ if($method=="lehrveranstaltungen")
if(isset($_GET['unterrichtssprache']) && $_GET['unterrichtssprache']!='')
$filterqry .= " AND tbl_lehrveranstaltung.sprache='".$_GET['unterrichtssprache']."'";
//Uebersicht LVs
/* Erklaerung der Datumszeitraeume ab Zeile 857:
* |=============== Studiensemester ===============|
* |--------------| Incoming beginnt vor SS-Beginn und endet VOR SS-Ende jedoch ueberwiegend innerhalb SS
* |--------------| Incoming beginnt VOR SS-Ende und endet NACH SS-Ende, jedoch ueberwiegend innerhalb SS
* |----------| Incoming beginnt vor SS-Beginn und endet VOR SS-Ende jedoch ueberwiegend außerhalb SS
* |---------| Incoming beginnt VOR SS-Ende und endet NACH SS-Ende, jedoch ueberwiegend außerhalb SS
* |------------------------------| Incoming ist innerhalb oder GENAU SS da
* |------------------------------------------------------| Incoming ist VOR SS-Anfang und NACH SS-Ende da, jedoch ueberwiegend ueberlappend mit SS
* ------------------------------------------------------------ Von und Bis ist NULL
* -------------------| Von ist NULL und bis innerhalb SS
* |--------------------------- Bis ist NULL und von innerhalb SS
*/
$studiensemester_array = array();
$studiensemester = new studiensemester();
$studiensemester_array[] = $studiensemester->getakt();
$studiensemester->getFutureStudiensemester('',2);
foreach ($studiensemester->studiensemester AS $row)
$studiensemester_array[] = $row->studiensemester_kurzbz;
if(isset($_GET['go']))
{
// QUERY liefert LVs aus den gültigen Studienordnungen UND jene mit Anmeldungen, auch wenn Incomingplätze 0 sind oder die LV in keinem gültigen Studienplan liegt
$qry = "SELECT
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.ects,
tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.sprache,
@@ -226,28 +274,128 @@ if($method=="lehrveranstaltungen")
JOIN public.tbl_preincoming using(preincoming_id)
WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
AND
(von is null OR von <= '$stsem->start')
AND
(bis is null OR bis >= (DATE '$stsem->ende'))
(
(bis - '$stsem->start' > '$stsem->start' - von) OR
('$stsem->start' <= von AND bis >= '$stsem->ende' AND '$stsem->ende' - von > bis - '$stsem->ende') OR
(bis <= '$stsem->ende' AND bis >= '$stsem->start' AND von < '$stsem->start') OR
('$stsem->start' <= von AND von < '$stsem->ende' AND bis > '$stsem->ende') OR
(von >= '$stsem->start' AND bis <= '$stsem->ende') OR
(von <= '$stsem->start' AND bis >= '$stsem->ende') OR
(von IS NULL AND bis IS NULL) OR
(von IS NULL AND bis <= '$stsem->ende' AND bis > '$stsem->start') OR
(bis IS NULL AND von < '$stsem->ende' AND von >= '$stsem->start')
)
AND aktiv = true
)a ) as anzahl
FROM
lehre.tbl_lehrveranstaltung JOIN public.tbl_studiengang USING(studiengang_kz)
lehre.tbl_lehrveranstaltung
JOIN
public.tbl_studiengang USING(studiengang_kz)
WHERE
/*tbl_lehrveranstaltung.incoming>0 AND*/
tbl_lehrveranstaltung.incoming>0 AND
tbl_lehrveranstaltung.aktiv AND
tbl_lehrveranstaltung.lehre
AND tbl_lehrveranstaltung.studiengang_kz>0 AND tbl_lehrveranstaltung.studiengang_kz<10000";
tbl_lehrveranstaltung.lehre AND
tbl_lehrveranstaltung.lehrveranstaltung_id IN
(
SELECT lehrveranstaltung_id FROM lehre.tbl_studienplan_lehrveranstaltung
JOIN lehre.tbl_studienplan USING (studienplan_id)
JOIN lehre.tbl_studienordnung USING (studienordnung_id)
JOIN lehre.tbl_studienplan_semester USING (studienplan_id)
WHERE tbl_studienordnung.status_kurzbz='approved'
AND tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id
AND tbl_studienplan_semester.studiensemester_kurzbz IN ('".implode("','", $studiensemester_array)."')
AND tbl_studienplan_semester.semester=tbl_lehrveranstaltung.semester
)
AND ((tbl_lehrveranstaltung.studiengang_kz>0 AND tbl_lehrveranstaltung.studiengang_kz<10000) OR tbl_lehrveranstaltung.studiengang_kz=10006)";
if (isset($_GET['studiengang']) && $_GET['studiengang'] !='')
$qry .= " AND tbl_lehrveranstaltung.studiengang_kz=".$_GET['studiengang'];
$qry .= "AND tbl_studiengang.aktiv ".$filterqry." order by studiengang_kz
$qry .= " AND tbl_studiengang.aktiv ".$filterqry;
$qry .= "
UNION
SELECT
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.ects,
tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.sprache,
tbl_lehrveranstaltung.bezeichnung_english, tbl_lehrveranstaltung.incoming, tbl_lehrveranstaltung.orgform_kurzbz,
(
Select count(*)
FROM (
SELECT
person_id
FROM
campus.vw_student_lehrveranstaltung
JOIN public.tbl_benutzer using(uid)
JOIN public.tbl_student ON(uid=student_uid)
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
AND
lehreinheit_id in (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
AND
tbl_lehreinheit.studiensemester_kurzbz='$stsem->studiensemester_kurzbz')
AND
tbl_prestudentstatus.status_kurzbz='Incoming'
AND tbl_prestudentstatus.studiensemester_kurzbz='$stsem->studiensemester_kurzbz'
UNION
SELECT
person_id
FROM
public.tbl_preincoming_lehrveranstaltung
JOIN public.tbl_preincoming using(preincoming_id)
WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
AND
(
(bis - '$stsem->start' > '$stsem->start' - von) OR
('$stsem->start' <= von AND bis >= '$stsem->ende' AND '$stsem->ende' - von > bis - '$stsem->ende') OR
(bis <= '$stsem->ende' AND bis >= '$stsem->start' AND von < '$stsem->start') OR
('$stsem->start' <= von AND von < '$stsem->ende' AND bis > '$stsem->ende') OR
(von >= '$stsem->start' AND bis <= '$stsem->ende') OR
(von <= '$stsem->start' AND bis >= '$stsem->ende') OR
(von IS NULL AND bis IS NULL) OR
(von IS NULL AND bis <= '$stsem->ende' AND bis > '$stsem->start') OR
(bis IS NULL AND von < '$stsem->ende' AND von >= '$stsem->start')
)
AND aktiv = true
)a ) as anzahl
FROM
public.tbl_preincoming_lehrveranstaltung
JOIN public.tbl_preincoming using(preincoming_id)
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE
(
(bis - '$stsem->start' > '$stsem->start' - von) OR
('$stsem->start' <= von AND bis >= '$stsem->ende' AND '$stsem->ende' - von > bis - '$stsem->ende') OR
(bis <= '$stsem->ende' AND bis >= '$stsem->start' AND von < '$stsem->start') OR
('$stsem->start' <= von AND von < '$stsem->ende' AND bis > '$stsem->ende') OR
(von >= '$stsem->start' AND bis <= '$stsem->ende') OR
(von <= '$stsem->start' AND bis >= '$stsem->ende') OR
(von IS NULL AND bis IS NULL) OR
(von IS NULL AND bis <= '$stsem->ende' AND bis > '$stsem->start') OR
(bis IS NULL AND von < '$stsem->ende' AND von >= '$stsem->start')
)
AND tbl_preincoming.aktiv = true
";
echo '<table class="tablesorter" id="t1" width="90%" border="0" align="center">
if (isset($_GET['studiengang']) && $_GET['studiengang'] !='')
$qry .= " AND tbl_lehrveranstaltung.studiengang_kz=".$_GET['studiengang'];
$qry .= " AND tbl_studiengang.aktiv ".$filterqry." order by studiengang_kz";
if($result = $db->db_query($qry))
{
if ($db->db_num_rows($result)>0)
{
echo '<center>'.$message.'</center>';
echo '<p style="padding-left: 10px; padding-right: 10px;">'.$p->t('incoming/tabelleSortierinformation').'</p>';
echo '<table class="tablesorter" id="t1" width="90%" style="padding-left: 10px; padding-right: 10px;" border="0" align="center">
<thead align="center">
<tr>
<th>LV-ID</th>
<th>'.$p->t('global/studiengang').'</th>
<th>'.$p->t('abgabetool/typ').'</th>
<th>'.$p->t('incoming/orgform').'</th>
@@ -256,30 +404,34 @@ if($method=="lehrveranstaltungen")
<th>'.$p->t('global/lehrveranstaltung').' '.$p->t('global/englisch').'</th>
<th>'.$p->t('incoming/ects').'</th>
<th>'.$p->t('courseInformation/unterrichtssprache').'</th>
<th>Info</th>
<th>'.$p->t('incoming/lvInfo').'</th>
<th>'.$p->t('incoming/freieplätze').'</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>';
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$freieplaetze = $row->incoming - $row->anzahl;
$style = '';
$studiengang = new studiengang();
$studiengang->load($row->studiengang_kz);
$studiengang_language = ($sprache == 'German') ? $studiengang->bezeichnung : $studiengang->english;
$typ = $studiengang->typ;
$style='';
if ($row->incoming=='0')
$style = 'style="color:grey"';
if ($studiengang->typ == 'b')
$typ = 'BA';
$typ = 'Bachelor';
else if ($studiengang->typ == 'm')
$typ = 'MA';
$typ = 'Master';
else
$typ = '-';
echo '<tr>';
if ($freieplaetze<=0)
$style = 'style="background-color: #FF8888"';
echo '<td '.$style.'>',$row->lehrveranstaltung_id,'</td>';
echo '<td '.$style.'>',$studiengang_language,'</td>';
echo '<td '.$style.'>',$typ,'</td>';
echo '<td '.$style.'>',$row->orgform_kurzbz,'</td>';
@@ -287,19 +439,122 @@ if($method=="lehrveranstaltungen")
echo '<td '.$style.'>',$row->bezeichnung,'</td>';
echo '<td '.$style.'>',$row->bezeichnung_english,'</td>';
echo '<td '.$style.'>',$row->ects,'</td>';
echo '<td '.$style.'>',$row->sprache,'</td>';
echo '<td '.$style.'>',($row->sprache=='German'?$p->t("global/deutsch"):$p->t("global/englisch")),'</td>';
echo '<td '.$style.'>
<a href="#Deutsch" class="Item" onclick="javascript:window.open(\'../../cis/private/lehre/ects/preview.php?lv='.$row->lehrveranstaltung_id.'&amp;language=de\',\'Lehrveranstaltungsinformation\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">Deutsch&nbsp;</a>
<a href="#Englisch" class="Item" onclick="javascript:window.open(\'../../cis/private/lehre/ects/preview.php?lv='.$row->lehrveranstaltung_id.'&amp;language=en\',\'Lehrveranstaltungsinformation\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">Englisch</a>
<a href="#Deutsch" class="Item" onclick="javascript:window.open(\'../../addons/lvinfo/cis/view.php?lehrveranstaltung_id='.$row->lehrveranstaltung_id.'&amp;sprache=German\',\'Lehrveranstaltungsinformation\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">'.$p->t("global/deutsch").'&nbsp;</a>
<a href="#Englisch" class="Item" onclick="javascript:window.open(\'../../addons/lvinfo/cis/view.php?lehrveranstaltung_id='.$row->lehrveranstaltung_id.'&amp;sprache=English\',\'Courseinformation\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">'.$p->t("global/englisch").'</a>
</td>';
echo '<td '.$style.'>',($freieplaetze<$row->incoming?'<strong>'.$freieplaetze.'/'.$row->incoming.'</strong>':$freieplaetze.'/'.$row->incoming),'</td>';
echo '<td><a href="incoming_lehrveranstaltungen.php?method=lehrveranstaltungen&mode=setZero&id='.$row->lehrveranstaltung_id.'" onclick="return conf(\''.$row->bezeichnung.'\')">Plätze auf 0 setzen</a></td>';
echo '<td '.$style.'>',($freieplaetze<$row->incoming?'<strong>'.$freieplaetze.' ('.$p->t('incoming/von').' '.$row->incoming.')</strong>':$freieplaetze.' ('.$p->t('incoming/von').' '.$row->incoming.')').'</td>';
echo '<td '.$style.'><a href="#Teilnehmer" class="Item" onclick="javascript:window.open(\'incoming_lehrveranstaltungen.php?method=anmeldungen&amp;id='.$row->lehrveranstaltung_id.'&amp;'.$filter_url.'\',\'Anmeldungen\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">Anmeldungen</a></td>';
echo '<td '.$style.'><a href="incoming_lehrveranstaltungen.php?method=lehrveranstaltungen&mode=setZero&id='.$row->lehrveranstaltung_id.'&'.$filter_url.'" onclick="return conf(\''.$row->bezeichnung.'\')">Incomingplätze auf 0</a></td>';
echo '</tr>';
}
echo '</tbody></table>';
}
else
echo '<center><b>'.$p->t('incoming/derzeitKeineLehrveranstaltungen').'</b></center>';
}
}
else
echo '<center><b>'.$p->t('incoming/waehlenSieAusDenOptionen').'</b></center>';
echo '</tbody></table>';
}
elseif($method=="anmeldungen")
{
// Übersicht aller LVs
echo '<h2>Übersicht Anmeldungen</h2>';
// Filter für Semester setzen
//Uebersicht LVs
/* Erklaerung der Datumszeitraeume
* |=============== Studiensemester ===============|
* |--------------| Incoming beginnt vor SS-Beginn und endet VOR SS-Ende jedoch ueberwiegend innerhalb SS
* |--------------| Incoming beginnt VOR SS-Ende und endet NACH SS-Ende, jedoch ueberwiegend innerhalb SS
* |----------| Incoming beginnt vor SS-Beginn und endet VOR SS-Ende jedoch ueberwiegend außerhalb SS
* |---------| Incoming beginnt VOR SS-Ende und endet NACH SS-Ende, jedoch ueberwiegend außerhalb SS
* |------------------------------| Incoming ist innerhalb oder GENAU SS da
* |------------------------------------------------------| Incoming ist VOR SS-Anfang und NACH SS-Ende da, jedoch ueberwiegend ueberlappend mit SS
* ------------------------------------------------------------ Von und Bis ist NULL
* -------------------| Von ist NULL und bis innerhalb SS
* |--------------------------- Bis ist NULL und von innerhalb SS
*/
if (isset($_GET['id']))
{
$id = $db->db_add_param($_GET['id'], FHC_INTEGER, false);
$qry = " SELECT
nachname, vorname
FROM
campus.vw_student_lehrveranstaltung
JOIN public.tbl_benutzer using(uid)
JOIN public.tbl_student ON(uid=student_uid)
JOIN public.tbl_prestudentstatus USING(prestudent_id)
JOIN public.tbl_person USING(person_id)
WHERE
lehrveranstaltung_id=".$id."
AND
lehreinheit_id in (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id=".$id."
AND
tbl_lehreinheit.studiensemester_kurzbz='$stsem->studiensemester_kurzbz')
AND
tbl_prestudentstatus.status_kurzbz='Incoming'
AND tbl_prestudentstatus.studiensemester_kurzbz='$stsem->studiensemester_kurzbz'
UNION
SELECT
nachname, vorname
FROM
public.tbl_preincoming_lehrveranstaltung
JOIN public.tbl_preincoming using(preincoming_id)
JOIN public.tbl_person USING(person_id)
WHERE lehrveranstaltung_id=".$id."
AND
(
(bis - '$stsem->start' > '$stsem->start' - von) OR
('$stsem->start' <= von AND bis >= '$stsem->ende' AND '$stsem->ende' - von > bis - '$stsem->ende') OR
(bis <= '$stsem->ende' AND bis >= '$stsem->start' AND von < '$stsem->start') OR
('$stsem->start' <= von AND von < '$stsem->ende' AND bis > '$stsem->ende') OR
(von >= '$stsem->start' AND bis <= '$stsem->ende') OR
(von <= '$stsem->start' AND bis >= '$stsem->ende') OR
(von IS NULL AND bis IS NULL) OR
(von IS NULL AND bis <= '$stsem->ende' AND bis > '$stsem->start') OR
(bis IS NULL AND von < '$stsem->ende' AND von >= '$stsem->start')
)
AND tbl_preincoming.aktiv = true";
if($result = $db->db_query($qry))
{
if ($db->db_num_rows($result)>0)
{
echo '<table class="tablesorter" id="t2" width="90%" style="padding-left: 10px; padding-right: 10px;" border="0" align="center">
<thead align="center">
<tr>
<th>'.$p->t('global/nachname').'</th>
<th>'.$p->t('global/vorname').'</th>
</tr>
</thead>
<tbody>';
while($row = $db->db_fetch_object($result))
{
echo '<tr>';
echo '<td>',$row->nachname,'</td>';
echo '<td>',$row->vorname,'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
else
echo '<center><b>Keine Anmeldungen gefunden</b></center>';
}
}
else
'<center><b>Es wurde keine Lehrveranstaltungs-ID übergeben</b></center>';
}
?>
</body>
</html>
+5 -13
View File
@@ -71,8 +71,6 @@ if(!$rechte->isBerechtigt('basis/statistik'))
$sql = (isset($_POST['sql']) ? $_POST['sql'] : die('SQL fehlt'));
$gruppe = (isset($_POST['gruppe']) ? $_POST['gruppe'] : die('Gruppe fehlt'));
$content_id = (isset($_POST['content_id']) ? $_POST['content_id'] : die('ContentID fehlt'));
$php = (isset($_POST['php']) ? $_POST['php'] : die('PHP fehlt'));
$r = (isset($_POST['r']) ? $_POST['r'] : die('R fehlt'));
$publish = (isset($_POST['publish']) ? true : false);
$berechtigung_kurzbz = (isset($_POST['berechtigung_kurzbz']) ? $_POST['berechtigung_kurzbz'] : die('Berechtigungkurzbz fehlt'));
$preferences = (isset($_POST['preferences']) ? $_POST['preferences'] : die('preferences fehlt'));
@@ -91,8 +89,6 @@ if(!$rechte->isBerechtigt('basis/statistik'))
$statistik->sql = $sql;
$statistik->gruppe = $gruppe;
$statistik->content_id = $content_id;
$statistik->php = $php;
$statistik->r = $r;
$statistik->publish = $publish;
$statistik->updateamum = date('Y-m-d H:i:s');
$statistik->updatevon = $user;
@@ -177,14 +173,6 @@ EOT;
<td rowspan="3">SQL</td>
<td rowspan="3"><textarea name="sql" cols="60" rows="5"><?php echo $statistik->sql ?></textarea></td>
<td></td>
<td>R</td>
<td><input type="text" name="r" value="<?php echo $statistik->r ?>"></td>
</tr>
<tr valign="top">
<td></td>
<td>PHP</td>
<td><input type="text" name="php" value="<?php echo $statistik->php ?>"></td>
</tr>
<tr valign="top">
<td></td>
<td>Publish</td>
@@ -192,14 +180,18 @@ EOT;
</tr>
<tr valign="top">
<td></td>
<td>Preferences</td>
<td><textarea name="preferences" cols="60" rows="5"><?php echo $statistik->preferences ?></textarea></td>
<td></td>
<td></td>
<td><input type="submit" value="Speichern" name="save"></td>
<td></td>
</tr>
</table>
</fieldset>
<div align="right" id="sub">
<input type="submit" value="Speichern" name="save">
</div>
</form>
</body>
</html>
+4 -15
View File
@@ -15,7 +15,8 @@
* 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 >
* Authors: Christian Paminger < christian.paminger@technikum-wien.at > and
* Andreas Moik < moik@technikum-wien.at >.
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/globals.inc.php');
@@ -51,13 +52,11 @@
$filter->insertvon = $user;
$filter->updatevon = $user;
if(isset($_POST["action"]) && isset($_REQUEST["filter_id"]))
if(isset($_POST["save"]) && isset($_REQUEST["filter_id"]))
{
if(!$rechte->isBerechtigt('basis/statistik', null, 'suid'))
die('Sie haben keine Berechtigung fuer diese Aktion');
if ($_POST["action"]=='save')
{
if ($_REQUEST["filter_id"]!='')
{
if($filter->load($_REQUEST["filter_id"]))
@@ -83,8 +82,6 @@
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.frame_filter_overview.location.href='filter_overview.php';";
$reloadstr .= "</script>\n";
//echo '<pre>'.var_dump($filter).'</pre>';
}
}
if ((isset($_REQUEST['filter_id'])) && ((!isset($_REQUEST['neu'])) || ($_REQUEST['neu']!= "true")) && is_numeric($_REQUEST['filter_id']))
@@ -126,8 +123,7 @@
$htmlstr .= "<div align='right' id='sub'>\n";
$htmlstr .= " <span id='submsg' style='color:red; visibility:hidden;'>Datensatz ge&auml;ndert!&nbsp;&nbsp;</span>\n";
$htmlstr .= " <input type='hidden' name='filter_id' value='".$filter->filter_id."'>";
$htmlstr .= " <input type='submit' value='save' name='action'>\n";
$htmlstr .= " <input type='button' value='Reset' onclick='unchanged()'>\n";
$htmlstr .= " <input type='submit' value='Speichern' name='save'>\n";
$htmlstr .= "</div>";
$htmlstr .= "</form>";
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>"
@@ -139,13 +135,6 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script type="text/javascript">
function unchanged()
{
document.filterform.reset();
document.filterform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
checkrequired(document.filterform.filter_id);
}
function checkrequired(feld)
{
+1 -1
View File
@@ -117,7 +117,7 @@ if (!$filter->loadAll())
<?php echo $filter->filter_id ?>
</a>
<a href="filter_vorschau.php?filter_id=<?php echo $filter->filter_id ?>" target="_blank">
<img src="../../skin/images/x-office-presentation.png" class="mini-icon" />
<img src="../../skin/images/Filter.svg" class="mini-icon" />
</a>
</td>
<td>
+7 -3
View File
@@ -57,7 +57,7 @@ header( 'Content-Type: text/csv' );
header( 'Content-Disposition: attachment;filename='.$filename);
// Daten holen - Alle Personen mit akt. Status Student, Diplomand die bezahlt haben
// Daten holen - Alle Personen mit akt. Status Student, Diplomand und Incoming die bezahlt haben
$qry="
SELECT * FROM (
SELECT DISTINCT ON (matrikelnr) matrikelnr AS personenkennzeichen,
@@ -85,7 +85,7 @@ FROM public.tbl_person
JOIN public.tbl_prestudentstatus on(tbl_prestudentstatus.prestudent_id=tbl_student.prestudent_id)
WHERE
tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand')
AND get_rolle_prestudent(tbl_prestudent.prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).") in('Student','Diplomand','Incoming','Absolvent')
AND tbl_student.studiengang_kz<10000
AND tbl_student.studiengang_kz>0
AND tbl_student.studiengang_kz!='9".$erhalter_row->erhalter_kz."'
@@ -111,7 +111,7 @@ if($result = $db->db_query($qry))
$data_row[2]=implode(';',$personenkennzeichen);
$data_row[8]=implode(';',$studiengang_kz);
echo implode('|',$data_row)."\r\n";
echo implode('|',$data_row)."|\r\n";
$data_row = array();
$personenkennzeichen = array();
$studiengang_kz = array();
@@ -142,5 +142,9 @@ if($result = $db->db_query($qry))
);
}
$data_row[2]=implode(';',$personenkennzeichen);
$data_row[8]=implode(';',$studiengang_kz);
echo implode('|',$data_row)."|\r\n";
}
+1
View File
@@ -121,3 +121,4 @@ $vars = $statistik->parseVars($variablenstring); ?>
</form>
</body>
</html>