Merge branch 'master' into timesheet

This commit is contained in:
Gerald Raab
2018-08-30 17:25:56 +02:00
45 changed files with 5421 additions and 918 deletions
@@ -11,4 +11,164 @@ class Lehrveranstaltung_model extends DB_Model
$this->dbTable = 'lehre.tbl_lehrveranstaltung';
$this->pk = 'lehrveranstaltung_id';
}
/**
* Gets unique Groupstrings for Lehrveranstaltungen, e.g. WS2018_BIF_1_PRJM_VZ_LV12345
* @param $studiensemester_kurzbz
* @param null $ausbildungssemester
* @param null $studiengang_kz
* @param null $lehrveranstaltung_ids
* @return StdClass
*/
public function getLehrveranstaltungGroupNames($studiensemester_kurzbz, $ausbildungssemester = null, $studiengang_kz = null, $lehrveranstaltung_ids = null)
{
$this->load->model('system/studiensemester_model', 'StudiensemesterModel');
$this->load->model('organisation/studiengang_model', 'StudiengangModel');
$studiengang_kz_arr = array();
$ausbildungssemester_arr = array();
$lehrveranstaltung_id_arr = array();
if (is_numeric($studiengang_kz))
{
$studiengang_kz_arr[] = $studiengang_kz;
}
elseif (is_array($studiengang_kz))
{
$studiengang_kz_arr = $studiengang_kz;
}
else
{
$studiengangdata = $this->StudiengangModel->getStudiengaengeByStudiensemester($studiensemester_kurzbz);
if (!hasData($studiengangdata))
show_error('no studiengaenge retrieved');
foreach ($studiengangdata->retval as $studiengang)
{
$studiengang_kz_arr[] = $studiengang->studiengang_kz;
}
}
if (is_numeric($ausbildungssemester))
{
$ausbildungssemester_arr[] = $ausbildungssemester;
}
elseif (is_array($ausbildungssemester))
{
$ausbildungssemester_arr = $ausbildungssemester;
}
else
{
foreach ($studiengang_kz_arr as $studiengang_kz_item)
{
$result = $this->StudiensemesterModel->getAusbildungssemesterByStudiensemesterAndStudiengang($studiensemester_kurzbz, $studiengang_kz_item);
if (isError($result))
return error($result->retval);
foreach ($result->retval as $semester)
{
if (!in_array($semester->semester, $ausbildungssemester_arr))
$ausbildungssemester_arr[] = $semester->semester;
}
}
}
if (is_numeric($lehrveranstaltung_ids))
{
$lehrveranstaltung_id_arr[] = $lehrveranstaltung_ids;
}
elseif (is_array($lehrveranstaltung_ids))
{
$lehrveranstaltung_id_arr = $lehrveranstaltung_ids;
}
$parametersarray = array($studiensemester_kurzbz, $studiensemester_kurzbz);
$query = "
SELECT lehrveranstaltung_id, ? || '_' || kuerzel || '_' || lvpostfix AS lvgroupname
FROM(
SELECT DISTINCT ON (kuerzel, lvpostfix)
lehrveranstaltung_id,
UPPER(tbl_studiengang.typ :: VARCHAR(1) || tbl_studiengang.kurzbz) AS kuerzel,
tbl_lehrveranstaltung.semester || '_' || tbl_lehrveranstaltung.kurzbz || '_' || COALESCE(tbl_lehrveranstaltung.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) || '_LV' || lehrveranstaltung_id AS lvpostfix
FROM lehre.tbl_lehrveranstaltung
JOIN public.tbl_studiengang ON tbl_lehrveranstaltung.studiengang_kz = tbl_studiengang.studiengang_kz
WHERE tbl_lehrveranstaltung.lehrtyp_kurzbz != 'modul'
AND EXISTS (SELECT 1 FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND studiensemester_kurzbz = ?)";
if (count($ausbildungssemester_arr) > 0)
$query .= " AND tbl_lehrveranstaltung.semester IN (". implode(", ", $ausbildungssemester_arr).")";
if (count($studiengang_kz_arr) > 0)
$query .= " AND tbl_lehrveranstaltung.studiengang_kz IN (". implode(", ", $studiengang_kz_arr).")";
if (count($lehrveranstaltung_id_arr) > 0)
{
$query .= " AND tbl_lehrveranstaltung.lehrveranstaltung_id IN (". implode(', ', $lehrveranstaltung_id_arr).")";
}
$query .= ") lvgroups ORDER BY lvgroupname";
return $this->execQuery($query, $parametersarray);
}
/**
* Gets all students of a Lehrveranstaltung
* @param $studiensemester_kurzbz
* @param $lehrveranstaltung_id
* @return array|null
*/
public function getStudentsByLv($studiensemester_kurzbz, $lehrveranstaltung_id)
{
$query = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student,
tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_benutzer.uid,
UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kuerzel, tbl_studiengang.orgform_kurzbz, vw_student_lehrveranstaltung.semester, vw_student_lehrveranstaltung.studiensemester_kurzbz, vw_student_lehrveranstaltung.bezeichnung
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student ON(uid=student_uid)
LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
LEFT JOIN public.tbl_studiengang ON(vw_student_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz)
WHERE
vw_student_lehrveranstaltung.studiensemester_kurzbz=?
AND
vw_student_lehrveranstaltung.lehrveranstaltung_id=?
ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC";
return $this->execQuery($query, array($studiensemester_kurzbz, $lehrveranstaltung_id));
}
/**
* Gets all lecturers of a Lehrveranstaltung
* @param $studiensemester_kurzbz
* @param $lehrveranstaltung_id
* @return array|null
*/
public function getLecturersByLv($studiensemester_kurzbz, $lehrveranstaltung_id)
{
$query = "SELECT * FROM (SELECT distinct on(uid) vorname, nachname, tbl_benutzer.uid as uid,
CASE WHEN lehrfunktion_kurzbz='LV-Leitung' THEN true ELSE false END as lvleiter
FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_benutzer, public.tbl_person
WHERE
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND
tbl_person.person_id=tbl_benutzer.person_id AND
lehrveranstaltung_id=? AND
tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND
tbl_benutzer.aktiv=true AND tbl_person.aktiv=true AND
studiensemester_kurzbz=?) AS a
ORDER BY lvleiter DESC, nachname, vorname";
return $this->execQuery($query, array($lehrveranstaltung_id, $studiensemester_kurzbz));
}
}
@@ -407,4 +407,26 @@ class Studiengang_model extends DB_Model
array('reihungstest')
);
}
/**
* Gets Studiengaenge of a Studiensemesester
* @param $studiensemester_kurzbz
* @return array|null
*/
public function getStudiengaengeByStudiensemester($studiensemester_kurzbz)
{
$query = "SELECT
distinct tbl_studiengang.*, UPPER(typ::varchar(1) || kurzbz) AS kuerzel
FROM
public.tbl_studiengang
JOIN lehre.tbl_studienordnung USING(studiengang_kz)
JOIN lehre.tbl_studienplan USING(studienordnung_id)
JOIN lehre.tbl_studienplan_semester USING(studienplan_id)
WHERE
tbl_studienplan_semester.studiensemester_kurzbz=?
ORDER BY
typ, kurzbz";
return $this->execQuery($query, array($studiensemester_kurzbz));
}
}
@@ -32,6 +32,26 @@ class Studiensemester_model extends DB_Model
return $this->execQuery($query);
}
/**
* getNextOrAktSemester
* 62 days - in july and august, semester after summer is returned
*/
public function getAktOrNextSemester($days = 62)
{
if (!is_numeric($days))
{
$days = 62;
}
$query = 'SELECT studiensemester_kurzbz
FROM public.tbl_studiensemester
WHERE start < NOW() + \'' . $days . ' DAYS\':: INTERVAL
ORDER BY start DESC
LIMIT 1';
return $this->execQuery($query);
}
/**
* getNextFrom
*/
@@ -80,4 +100,23 @@ class Studiensemester_model extends DB_Model
return $this->execQuery($query);
}
/**
* Gets valid Ausbildungssemester of a Studiensemester with a Studiengang
* @param $studiensemester_kurzbz
* @param $studiengang_kz
* @return array|null
*/
public function getAusbildungssemesterByStudiensemesterAndStudiengang($studiensemester_kurzbz, $studiengang_kz)
{
$query = "SELECT DISTINCT semester
FROM lehre.tbl_studienplan
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
JOIN lehre.tbl_studienplan_semester USING(studienplan_id)
WHERE tbl_studienplan_semester.studiensemester_kurzbz = ?
AND tbl_studienordnung.studiengang_kz = ?
ORDER BY semester";
return $this->execQuery($query, array($studiensemester_kurzbz, $studiengang_kz));
}
}
@@ -22,4 +22,55 @@ class Benutzerfunktion_model extends DB_Model
return $this->loadWhere(array('person_id' => $person_id));
}
}
/**
* Gets all Benutzer for a given OE and specified Benutzerfunktionen
* @param $oe_kurzbz
* @param $funktion_kurzbz string with one benutzerfunktionname or array with one or more
* @return array|null
*/
public function getBenutzerFunktionen($funktion_kurzbz, $oe_kurzbz = null, $activeoeonly = false, $activebenonly = false)
{
$parametersArray = array();
$query = "SELECT * FROM public.tbl_benutzerfunktion";
if ($activeoeonly === true)
$query .= " JOIN public.tbl_organisationseinheit USING(oe_kurzbz)";
if ($activebenonly === true)
$query .= " JOIN public.tbl_benutzer USING(uid)";
$query .= "WHERE (datum_von <= NOW() OR datum_von IS NULL) AND (datum_bis >= NOW() OR datum_bis IS NULL)";
if (is_string($funktion_kurzbz))
{
$query .= " AND funktion_kurzbz = ".$funktion_kurzbz.")";
}
elseif (is_array($funktion_kurzbz) && count($funktion_kurzbz) > 0)
{
$funktionstr = "'".implode("', '", $funktion_kurzbz)."'";
$query .= " AND funktion_kurzbz IN (".$funktionstr.")";
}
if (is_string($oe_kurzbz))
{
$query .= " AND tbl_benutzerfunktion.oe_kurzbz = ?";
$parametersArray[] = $oe_kurzbz;
}
if ($activebenonly === true)
{
$query .= " AND tbl_benutzer.aktiv";
}
if ($activeoeonly === true)
{
$query .= " AND tbl_organisationseinheit.aktiv";
}
$query .= " ORDER BY funktion_kurzbz, oe_kurzbz, uid";
return $this->execQuery($query, $parametersArray);
}
}
+4 -2
View File
@@ -166,7 +166,7 @@ $qry = 'SELECT
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student,
tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr
tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student ON(uid=student_uid)
@@ -174,6 +174,7 @@ $qry = 'SELECT
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
LEFT JOIN public.tbl_studiengang ON(tbl_student.studiengang_kz=tbl_studiengang.studiengang_kz)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id='.$db->db_add_param($lvid, FHC_INTEGER).' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='.$db->db_add_param($studiensemester);
@@ -229,7 +230,8 @@ if($result = $db->db_query($qry))
'semester'=>$row->semester,
'verband'=>trim($row->verband),
'gruppe'=>trim($row->gruppe),
'zusatz'=>$zusatz
'zusatz'=>$zusatz,
'studiengang_kurzbz'=>$row->kurzbzlang
));
}
}
+22 -7
View File
@@ -32,9 +32,11 @@ require_once('../../../include/datum.class.php');
require_once('../../../include/note.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/studienordnung.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/pruefung.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/prestudent.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
@@ -47,11 +49,11 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="../../../skin/jquery-ui-1.9.2.custom.min.css">
<script type="text/javascript" src="../../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="../../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
<script type="text/javascript" src="../../../vendor/components/jqueryui/jquery-ui.min.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.ui.datepicker.translation.js"></script>
<link rel="stylesheet" type="text/css" href="../../../skin/jquery-ui-1.9.2.custom.min.css">
<script type="text/javascript" src="../../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="../../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
<script type="text/javascript" src="../../../vendor/components/jqueryui/jquery-ui.min.js"></script>
<script type="text/javascript" src="../../../include/js/jquery.ui.datepicker.translation.js"></script>
<script type="text/javascript" src="../../../vendor/jquery/sizzle/sizzle.js"></script>
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
<title>'.$p->t('tools/leistungsbeurteilung').'</title>
@@ -118,7 +120,7 @@ if(!check_student($user))
}
else
{
$qry = "SELECT vw_student.vorname, vw_student.nachname, tbl_studiengang.studiengang_kz
$qry = "SELECT vw_student.vorname, vw_student.nachname, vw_student.prestudent_id, tbl_studiengang.studiengang_kz
FROM public.tbl_studiengang JOIN campus.vw_student USING (studiengang_kz)
WHERE campus.vw_student.uid = ".$db->db_add_param($user).";";
@@ -133,6 +135,19 @@ else
$stg_obj = new studiengang();
$stg_obj->load($row->studiengang_kz);
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
$prestudent_id = $row->prestudent_id;
$prestudent = new prestudent($prestudent_id);
if ($prestudent->getLastStatus($prestudent_id, $prestudent->studiensemester_kurzbz))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung_sto = $sprache === 'English' ? $studienordnung->__get('studiengangbezeichnung_englisch') : $studienordnung->__get('studiengangbezeichnung');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung_sto) ? $stg_name : $studiengangbezeichnung_sto;
}
$notenarr=array();
@@ -152,7 +167,7 @@ else
echo "<br />";
echo "<b>".$p->t('global/name').":</b> $vorname $nachname<br />";
echo "<b>".$p->t('global/studiengang').":</b> $stg_name<br />";
echo "<b>".$p->t('global/studiengang').":</b> $studiengang_bezeichnung<br />";
echo "<b>".$p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
echo "<OPTION value='notenliste.php?stsem=alle".$getParam."'>alle Semester</OPTION>";
foreach ($stsem_obj->studiensemester as $semrow)
+77 -54
View File
@@ -1,48 +1,51 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
/*
* Copyright (C) 2006 Technikum-Wien
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
require_once('../../config/cis.config.inc.php');
require_once('../../include/basis_db.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/phrasen.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
if (!$user=get_uid())
die($p->t('global/fehlerBeimErmittelnDerUID'));
require_once ('../../config/cis.config.inc.php');
require_once ('../../include/basis_db.class.php');
require_once ('../../include/functions.inc.php');
require_once ('../../include/studiensemester.class.php');
require_once ('../../include/phrasen.class.php');
require_once ('../../include/gruppe.class.php');
$stsem_obj = new studiensemester();
$stsem = $stsem_obj->getaktorNext();
$sprache = getSprache();
$p = new phrasen($sprache);
if (! $db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
if (! $user = get_uid())
die($p->t('global/fehlerBeimErmittelnDerUID'));
$stsem_obj = new studiensemester();
$stsem = $stsem_obj->getaktorNext();
$ss_nearest_to_akt = $stsem_obj->getNearestFrom($stsem);
if (check_lektor($user))
$is_lector = true;
else
$is_lector = false;
$gruppe_kurzbz = $_GET['grp'];
$gruppe = new gruppe($gruppe_kurzbz);
if(check_lektor($user))
$is_lector=true;
else
$is_lector=false;
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
@@ -67,37 +70,57 @@ echo '
}
);
</script>
<title>'.$p->t('mailverteiler/personenImVerteiler').'</title>
<title>' . $p->t('mailverteiler/personenImVerteiler') . '</title>
</head>
<body id="inhalt">';
$qry = "SELECT uid, vorname, nachname FROM campus.vw_benutzer JOIN tbl_benutzergruppe USING (uid) WHERE gruppe_kurzbz='".addslashes($_GET['grp'])."' AND (studiensemester_kurzbz IS NULL OR studiensemester_kurzbz='".addslashes($stsem)."') ORDER BY nachname, vorname";
if($result=$db->db_query($qry))
{
echo '<p>'.$row=$db->db_num_rows($result).' '.$p->t('mailverteiler/personen');
}
echo'<table class="tablesorter" id="table">
$qry = "SELECT
uid, vorname, nachname
FROM
campus.vw_benutzer
JOIN
tbl_benutzergruppe USING (uid)
WHERE
gruppe_kurzbz='" . addslashes($gruppe_kurzbz) . "'";
// Fuer den Studiengang EWU wird zusaetzlich das aktuelle Studiensemester ermittelt
if ($gruppe->studiengang_kz == 10005 && mb_stripos($gruppe_kurzbz,'EWU') === 0)
{
$qry .= " AND (studiensemester_kurzbz IS NULL
OR studiensemester_kurzbz IN ('" . addslashes($stsem) . "','" . addslashes($ss_nearest_to_akt) . "'))";
}
else
{
$qry .= " AND (studiensemester_kurzbz IS NULL
OR studiensemester_kurzbz='" . addslashes($stsem) . "')";
}
$qry .= " ORDER BY
nachname, vorname";
if ($result = $db->db_query($qry))
{
echo '<p>' . $row = $db->db_num_rows($result) . ' ' . $p->t('mailverteiler/personen');
}
echo '<table class="tablesorter" id="table">
<thead>
<tr>
<th>'.$p->t('global/nachname').'</th>
<th>'.$p->t('global/vorname').'</th>
<th>'.$p->t('global/mail').'</th>
<th>' . $p->t('global/nachname') . '</th>
<th>' . $p->t('global/vorname') . '</th>
<th>' . $p->t('global/mail') . '</th>
</tr></thead><tbody>';
//$sql_query = "SELECT vornamen AS vn,nachname AS nn,a.uid as uid FROM public.tbl_personmailgrp AS a, public.tbl_person AS b WHERE a.uid=b.uid AND a.mailgrp_kurzbz='$grp' ORDER BY nachname";
if($result=$db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
echo "<tr>";
echo " <td>$row->nachname</td>";
echo " <td>$row->vorname</td>";
echo " <td><a href='mailto:$row->uid@".DOMAIN."' class='Item'>$row->uid@".DOMAIN."</a></td>";
echo "</tr>";
}
}
// $sql_query = "SELECT vornamen AS vn,nachname AS nn,a.uid as uid FROM public.tbl_personmailgrp AS a, public.tbl_person AS b WHERE a.uid=b.uid AND a.mailgrp_kurzbz='$grp' ORDER BY nachname";
if ($result = $db->db_query($qry))
{
while ($row = $db->db_fetch_object($result))
{
echo "<tr>";
echo " <td>$row->nachname</td>";
echo " <td>$row->vorname</td>";
echo " <td><a href='mailto:$row->uid@" . DOMAIN . "' class='Item'>$row->uid@" . DOMAIN . "</a></td>";
echo "</tr>";
}
}
echo '
</tbody></table>
</body>
+162 -61
View File
@@ -46,7 +46,7 @@ $uid=get_uid();
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
// Administratoren duerfen die UID als Parameter uebergeben um die Dokumente
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
@@ -105,7 +105,7 @@ if(isset($_GET['action']) && $_GET['action']=='download')
echo '<!DOCTYPE HTML>
<html>
<head>
<title>'.$p->t('tools/dokumente').'</title>
<title>'.$p->t('tools/bestaetigungenZeugnisse').'</title>
<meta charset="UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">';
include('../../../include/meta/jquery.php');
@@ -113,25 +113,59 @@ echo '<!DOCTYPE HTML>
echo '
<script language="JavaScript" type="text/javascript">
$(document).ready(function()
$(document).ready(function()
{
$(".tablesorter").tablesorter(
{
$("#t1").tablesorter(
{
sortList: [[0,1]],
widgets: ["zebra"]
});
sortList: [[1,0]],
headers: { 0: { sorter: false }},
widgets: ["zebra"]
});
function changeSemester(obj)
$(".tablesorter2").tablesorter(
{
self.location = obj.options[obj.selectedIndex].value + "'.$getParam.'";
}
sortList: [[1,1]],
headers: { 0: { sorter: false }},
widgets: ["zebra"]
});
});
function changeSemester(obj)
{
self.location = obj.options[obj.selectedIndex].value + "'.$getParam.'";
};
function createStudienerfolg(stsem, language, finanzamtCheckboxId)
{
var finanzamt = document.getElementById(finanzamtCheckboxId).checked;
var xsl = "";
if (language == "en")
xsl = "StudienerfolgEng";
else
xsl = "Studienerfolg";
if(finanzamt)
finanzamt = "&typ=finanzamt";
else
finanzamt = "";
if(stsem == "alle")
alle = "&all=1";
else
alle = "";
window.location.href= "../pdfExport.php?xml=studienerfolg.rdf.php&xsl="+xsl+"&ss="+stsem+"&uid='.$uid.'"+finanzamt+alle;
};
</script>
<style>
table.tablesorter tbody td
{
padding: 4px;
{
</style>
</head>
<body>
<h1>'.$p->t('tools/dokumente').'</h1>
<h2>Bestätigungen</h2>';
<h1>'.$p->t('tools/bestaetigungenZeugnisse').'</h1>';
$prestudent = new prestudent();
$prestudent->getPrestudentRolle($student_studiengang->prestudent_id);
@@ -155,8 +189,13 @@ if($stsem == '')
$stsem_obj->getAll();
*/
echo $p->t('global/studiensemester');
echo ' <SELECT name="stsem" onChange="changeSemester(this)">';
echo ' <SELECT name="stsem" id="stsem" onChange="changeSemester(this)">';
if (!in_array($stsem, $stsem_arr))
{
echo '<OPTION value="dokumente.php?stsem='.$stsem.'" selected>';
echo $stsem;
echo '</OPTION>';
}
foreach ($stsem_arr as $semrow)
{
if ($stsem == $semrow)
@@ -174,61 +213,106 @@ foreach ($stsem_arr as $semrow)
}
echo '</SELECT><br /><br />';
$konto = new konto();
$buchungstypen = array();
if (defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
{
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
}
$stsem_zahlung = $konto->getLastStSemBuchungstypen($uid, $buchungstypen, $stsem);
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
{
$path = "../pdfExport.php?xsl=Inskription&xml=student.rdf.php&ss=".$stsem."&uid=".$uid."&xsl_stg_kz=".$xsl_stg_kz;
echo '<a href="'.$path.'">'.$p->t('tools/inskriptionsbestaetigung').'</a>';
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahlt',array($stsem));
echo '<br /><br />';
}
else
{
echo $p->t('tools/inskriptionsbestaetigung');
echo ' - '.$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
echo '<br /><br />';
}
if (defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
// Wenn es für das übergebene Studiensemester keinen PreStudentStatus gibt, werden nur Abschlussdokumente angezeigt
if (in_array($stsem, $stsem_arr))
{
$konto = new konto();
$buchungstypen = array();
if (defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
{
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
}
echo '<h2>' . $p->t('tools/inskriptionsbestaetigung') . '</h2>';
$stsem_zahlung = $konto->getLastStSemBuchungstypen($uid, $buchungstypen, $stsem);
echo '<table class="tablesorter" style="width:auto;">
<thead>
<tr>
<th></th>
<th>'.$p->t('global/name').'</th>
</tr>
</thead>
<tbody><tr>';
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
{
$pfad = "../pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&ss=".$stsem."&uid=".$uid;
echo '<a href="'.$pfad.'">'.$p->t('tools/studienbuchblatt').'</a>';
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahlt',array($stsem));
$path = "../pdfExport.php?xsl=Inskription&xml=student.rdf.php&ss=".$stsem."&uid=".$uid."&xsl_stg_kz=".$xsl_stg_kz;
echo '<td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td><a href="'.$path.'">'.$p->t('tools/inskriptionsbestaetigung').' '.$stsem.'</a></td>';
}
else
echo $p->t('tools/studienbuchblatt')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
echo '<br /><br />';
{
echo '<td colspan="2">'.$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem)).'</td>';
}
echo '</tr></tbody></table>';
if (defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
{
echo '<h2>' . $p->t('tools/studienbuchblatt') . '</h2>';
echo '<table class="tablesorter" style="width:auto;">
<thead>
<tr>
<th></th>
<th>'.$p->t('global/name').'</th>
</tr>
</thead>
<tbody><tr>';
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
{
$pfad = "../pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&ss=".$stsem."&uid=".$uid;
echo '<td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td><a href="'.$pfad.'">'.$p->t('tools/studienbuchblatt').' '.$stsem.'</a></td>';
}
else
{
echo '<td colspan="2">'.$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem)).'</td>';
}
echo '</tr></tbody></table>';
}
if (defined('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN') && CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN)
{
echo '<h2>' . $p->t('tools/studienerfolgsbestaetigung') . '</h2>';
echo '<table class="tablesorter" style="width:auto;">
<thead>
<tr>
<th></th>
<th>'.$p->t('global/name').'</th>
<th></th>
</tr>
</thead>
<tbody>';
echo '<tr><td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td><a href="#" onclick="createStudienerfolg(\''.$stsem.'\', \'de\', \'finanzamtDeutschStudiensemester\')">'.$p->t('tools/studienerfolgsbestaetigung').' '.$stsem.' '.$p->t('global/deutsch').'</a></td>';
echo '<td><input type="checkbox" id="finanzamtDeutschStudiensemester"> '.$p->t('tools/vorlageWohnsitzfinanzamt').'</td></tr>';
echo '<tr><td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td><a href="#" onclick="createStudienerfolg(\'alle\', \'de\', \'finanzamtDeutschAlle\')">'.$p->t('tools/studienerfolgsbestaetigung').' '.$p->t('tools/alleStudiensemester').' '.$p->t('global/deutsch').'</a></td>';
echo '<td><input type="checkbox" id="finanzamtDeutschAlle"> '.$p->t('tools/vorlageWohnsitzfinanzamt').'</td></tr>';
echo '<tr><td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td><a href="#" onclick="createStudienerfolg(\''.$stsem.'\', \'en\', \'finanzamtEnglishStudiensemester\')">'.$p->t('tools/studienerfolgsbestaetigung').' '.$stsem.' '.$p->t('global/englisch').'</a></td>';
echo '<td><input type="checkbox" id="finanzamtEnglishStudiensemester"> '.$p->t('tools/vorlageWohnsitzfinanzamt').'</td></tr>';
echo '<tr><td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td><a href="#" onclick="createStudienerfolg(\'alle\', \'en\', \'finanzamtEnglishAlle\')">'.$p->t('tools/studienerfolgsbestaetigung').' '.$p->t('tools/alleStudiensemester').' '.$p->t('global/englisch').'</a></td>';
echo '<td><input type="checkbox" id="finanzamtEnglishAlle"> '.$p->t('tools/vorlageWohnsitzfinanzamt').'</td></tr>';
echo '</tbody></table>';
}
}
if (defined('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN') && CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN)
{
echo "<a href='studienerfolgsbestaetigung.php?".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
echo "<a href='studienerfolgsbestaetigung.php?lang=en".$getParam."' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
echo "<br />";
}
echo "<br />";
else
echo '<p class="error">'.$p->t('tools/keinStatusImStudiensemester',array($stsem)).'</p>';
$akte = new akte();
if($akte->getArchiv($student_studiengang->person_id, true, true) && count($akte->result)>0)
echo '<h2>' . $p->t('tools/abschlussdokumente') . '</h2>';
if($akte->getArchiv($student_studiengang->person_id, null, true) && count($akte->result)>0)
{
echo '
<h2>Abschlussdokumente</h2>
<table id="t1" style="width:auto;">
<table class="tablesorter2" style="width:auto;">
<thead>
<tr>
<th>Erstelldatum</th>
<th>Dokument</th>
<th></th>
<th>'.$p->t('tools/erstelldatum').'</th>
<th>'.$p->t('tools/dokument').'</th>
</tr>
</thead>
<tbody>
@@ -240,13 +324,30 @@ if($akte->getArchiv($student_studiengang->person_id, true, true) && count($akte-
{
$pfad = 'dokumente.php?action=download&id='.$row->akte_id.'&uid='.$uid;
echo '<tr>';
echo '<td><img src="../../../skin/images/pdfpic.gif" /></td>';
echo '<td>'.$datum_obj->formatDatum($row->erstelltam,'d.m.Y').'</td>';
echo '<td><a href="'.$pfad.'"><img src="../../../skin/images/pdfpic.gif" /> '.$row->bezeichnung.'</a></td>';
echo '<td><a href="'.$pfad.'">'.$row->bezeichnung.'</a></td>';
echo '</tr>';
}
echo '</tbody></table>';
}
else
{
echo '
<table class="tablesorter2" style="width:auto;">
<thead>
<tr>
<th></th>
<th>'.$p->t('tools/erstelldatum').'</th>
<th>'.$p->t('tools/dokument').'</th>
</tr>
</thead>
<tbody>
';
echo '<td colspan="3">'.$p->t('tools/nochKeineAbschlussdokumenteVorhanden').'</td>';
echo '</tbody></table>';
}
echo '</body>
</html>
';
+16 -1
View File
@@ -25,6 +25,7 @@ require_once('../../../config/global.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/globals.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/studienordnung.class.php');
require_once('../../../include/person.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/betriebsmittel.class.php');
@@ -34,6 +35,7 @@ require_once('../../../include/phrasen.class.php');
require_once('../../../include/betriebsmittel_betriebsmittelstatus.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/mitarbeiter.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/kontakt.class.php');
require_once('../../../include/fotostatus.class.php');
@@ -291,8 +293,21 @@ if ($type == 'student' && (!defined('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN') ||
{
$studiengang->load($user->studiengang_kz);
$prestudent = new prestudent($user->prestudent_id);
if ($prestudent->getLastStatus($user->prestudent_id, $prestudent->studiensemester_kurzbz))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung_sto = $studienordnung->__get('studiengangbezeichnung');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung_sto) ? $studiengang->bezeichnung : $studiengangbezeichnung_sto;
echo "
".$p->t('global/studiengang').": $studiengang->bezeichnung<br>
".$p->t('global/studiengang').": $studiengang_bezeichnung<br>
".$p->t('global/semester').": $user->semester <a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a><br>
".$p->t('global/verband').": $user->verband ".($user->verband!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester&verband=$user->verband\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a>":"")."<br>
".$p->t('global/gruppe').": $user->gruppe ".($user->gruppe!=' '?"<a href='#' onClick='javascript:window.open(\"../stud_in_grp.php?kz=$user->studiengang_kz&sem=$user->semester&verband=$user->verband&grp=$user->gruppe\",\"_blank\",\"width=600,height=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes, resizable=1\");return false;'>".$p->t('benotungstool/liste')."</a>":"")."<br>";
@@ -1,114 +0,0 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/basis_db.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$uid=get_uid();
if(isset($_GET['uid']))
{
// Administratoren duerfen die UID als Parameter uebergeben um die Studienerfolgsbestätigung
// von anderen Personen anzuzeigen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if($rechte->isBerechtigt('admin'))
$uid=$_GET['uid'];
}
if(isset($_GET['lang']) && $_GET['lang']=='en')
$xsl = 'StudienerfolgEng';
else
$xsl = 'Studienerfolg';
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>'.$p->t('tools/studienerfolgsbestaetigung').'</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function createStudienerfolg()
{
var stsem = document.getElementById("stsem").value;
var finanzamt = document.getElementById("finanzamt").checked;
if(finanzamt)
finanzamt = "&typ=finanzamt";
else
finanzamt = "";
if(stsem == "alle")
alle = "&all=1";
else
alle = "";
window.location.href= "../pdfExport.php?xml=studienerfolg.rdf.php&xsl='.$xsl.'&ss="+stsem+"&uid='.$uid.'"+finanzamt+alle;
}
</script>
</head>
<body>
<h1>'.$p->t('tools/studienerfolgsbestaetigung').'</h1>
<br>'.$p->t('tools/studiensemesterAuswaehlen').'<br><br>';
$qry = "SELECT distinct studiensemester_kurzbz FROM campus.vw_student JOIN public.tbl_prestudentstatus USING(prestudent_id) WHERE uid='".addslashes($uid)."'";
if($result = $db->db_query($qry))
{
echo $p->t('global/studiensemester').': <SELECT id="stsem">';
echo '<OPTION value="alle">alle Semester</OPTION>';
$stsem_obj = new studiensemester();
$stsem = $stsem_obj->getPrevious();
while($row = $db->db_fetch_object($result))
{
if($stsem==$row->studiensemester_kurzbz)
$selected = 'selected';
else
$selected = '';
echo '<OPTION value="'.$row->studiensemester_kurzbz.'" '.$selected.'>'.$row->studiensemester_kurzbz.'</OPTION>';
}
echo '</SELECT>';
echo '<br><br><INPUT type="checkbox" id="finanzamt">'.$p->t('tools/vorlageWohnsitzfinanzamt').'<br>';
echo '<br><br><INPUT type="button" value="'.$p->t('global/erstellen').'" onclick="createStudienerfolg()" />';
}
echo '
</body>
</html>';
?>
Generated
+63 -41
View File
@@ -674,16 +674,16 @@
},
{
"name": "fzaninotto/faker",
"version": "v1.7.1",
"version": "v1.8.0",
"source": {
"type": "git",
"url": "https://github.com/fzaninotto/Faker.git",
"reference": "d3ed4cc37051c1ca52d22d76b437d14809fc7e0d"
"reference": "f72816b43e74063c8b10357394b6bba8cb1c10de"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/fzaninotto/Faker/zipball/d3ed4cc37051c1ca52d22d76b437d14809fc7e0d",
"reference": "d3ed4cc37051c1ca52d22d76b437d14809fc7e0d",
"url": "https://api.github.com/repos/fzaninotto/Faker/zipball/f72816b43e74063c8b10357394b6bba8cb1c10de",
"reference": "f72816b43e74063c8b10357394b6bba8cb1c10de",
"shasum": ""
},
"require": {
@@ -691,7 +691,7 @@
},
"require-dev": {
"ext-intl": "*",
"phpunit/phpunit": "^4.0 || ^5.0",
"phpunit/phpunit": "^4.8.35 || ^5.7",
"squizlabs/php_codesniffer": "^1.5"
},
"type": "library",
@@ -720,7 +720,7 @@
"faker",
"fixtures"
],
"time": "2017-08-15 16:48:10"
"time": "2018-07-12 10:23:15"
},
{
"name": "joeldbirch/superfish",
@@ -952,6 +952,12 @@
{
"name": "ludo/jquery-treetable",
"version": "3.2.0",
"dist": {
"type": "zip",
"url": "https://github.com/ludo/jquery-treetable/archive/3.2.0.zip",
"reference": null,
"shasum": null
},
"type": "library"
},
{
@@ -1209,6 +1215,12 @@
{
"name": "nicolaskruchten/pivottable",
"version": "2.15.0",
"dist": {
"type": "zip",
"url": "https://github.com/nicolaskruchten/pivottable/archive/v2.15.0.zip",
"reference": null,
"shasum": null
},
"type": "library"
},
{
@@ -1414,6 +1426,12 @@
{
"name": "rmariuzzo/jquery-checkboxes",
"version": "1.0.7",
"dist": {
"type": "zip",
"url": "https://github.com/rmariuzzo/checkboxes.js/archive/v1.0.7.zip",
"reference": null,
"shasum": null
},
"type": "library"
},
{
@@ -1722,16 +1740,16 @@
},
{
"name": "symfony/console",
"version": "v2.8.42",
"version": "v2.8.44",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "e8e59b74ad1274714dad2748349b55e3e6e630c7"
"reference": "0c1fcbb9afb5cff992c982ff99c0434f0146dcfc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/e8e59b74ad1274714dad2748349b55e3e6e630c7",
"reference": "e8e59b74ad1274714dad2748349b55e3e6e630c7",
"url": "https://api.github.com/repos/symfony/console/zipball/0c1fcbb9afb5cff992c982ff99c0434f0146dcfc",
"reference": "0c1fcbb9afb5cff992c982ff99c0434f0146dcfc",
"shasum": ""
},
"require": {
@@ -1779,7 +1797,7 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
"time": "2018-05-15 21:17:45"
"time": "2018-07-26 11:13:39"
},
{
"name": "symfony/debug",
@@ -1840,25 +1858,28 @@
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.8.0",
"version": "v1.9.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "7cc359f1b7b80fc25ed7796be7d96adc9b354bae"
"reference": "e3d826245268269cd66f8326bd8bc066687b4a19"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/7cc359f1b7b80fc25ed7796be7d96adc9b354bae",
"reference": "7cc359f1b7b80fc25ed7796be7d96adc9b354bae",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19",
"reference": "e3d826245268269cd66f8326bd8bc066687b4a19",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"suggest": {
"ext-ctype": "For best performance"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.8-dev"
"dev-master": "1.9-dev"
}
},
"autoload": {
@@ -1891,20 +1912,20 @@
"polyfill",
"portable"
],
"time": "2018-04-30 19:57:29"
"time": "2018-08-06 14:22:27"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.8.0",
"version": "v1.9.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "3296adf6a6454a050679cde90f95350ad604b171"
"reference": "d0cd638f4634c16d8df4508e847f14e9e43168b8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/3296adf6a6454a050679cde90f95350ad604b171",
"reference": "3296adf6a6454a050679cde90f95350ad604b171",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d0cd638f4634c16d8df4508e847f14e9e43168b8",
"reference": "d0cd638f4634c16d8df4508e847f14e9e43168b8",
"shasum": ""
},
"require": {
@@ -1916,7 +1937,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.8-dev"
"dev-master": "1.9-dev"
}
},
"autoload": {
@@ -1950,20 +1971,20 @@
"portable",
"shim"
],
"time": "2018-04-26 10:06:28"
"time": "2018-08-06 14:22:27"
},
{
"name": "symfony/yaml",
"version": "v2.8.42",
"version": "v2.8.44",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "51356b7a2ff7c9fd06b2f1681cc463bb62b5c1ff"
"reference": "fbf876678e29dc634430dcf0096e216eb0004467"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/51356b7a2ff7c9fd06b2f1681cc463bb62b5c1ff",
"reference": "51356b7a2ff7c9fd06b2f1681cc463bb62b5c1ff",
"url": "https://api.github.com/repos/symfony/yaml/zipball/fbf876678e29dc634430dcf0096e216eb0004467",
"reference": "fbf876678e29dc634430dcf0096e216eb0004467",
"shasum": ""
},
"require": {
@@ -2000,7 +2021,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
"time": "2018-05-01 22:52:40"
"time": "2018-07-26 09:03:18"
},
{
"name": "tapmodo/Jcrop",
@@ -2015,16 +2036,16 @@
},
{
"name": "tinymce/tinymce",
"version": "4.8.0",
"version": "4.8.1",
"source": {
"type": "git",
"url": "https://github.com/tinymce/tinymce-dist.git",
"reference": "0ca397b293d81cfb83de39c0952091233f6a6977"
"reference": "66308359bd3ff09996ed0e4121ca777c7f4ab508"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/tinymce/tinymce-dist/zipball/0ca397b293d81cfb83de39c0952091233f6a6977",
"reference": "0ca397b293d81cfb83de39c0952091233f6a6977",
"url": "https://api.github.com/repos/tinymce/tinymce-dist/zipball/66308359bd3ff09996ed0e4121ca777c7f4ab508",
"reference": "66308359bd3ff09996ed0e4121ca777c7f4ab508",
"shasum": ""
},
"type": "component",
@@ -2057,7 +2078,7 @@
"tinymce",
"wysiwyg"
],
"time": "2018-07-11 08:59:33"
"time": "2018-07-26 06:38:42"
},
{
"name": "tomazdragar/SimpleCropper",
@@ -2122,20 +2143,21 @@
},
{
"name": "twig/twig",
"version": "v1.35.3",
"version": "v1.35.4",
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
"reference": "b48680b6eb7d16b5025b9bfc4108d86f6b8af86f"
"reference": "7e081e98378a1e78c29cc9eba4aefa5d78a05d2a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/b48680b6eb7d16b5025b9bfc4108d86f6b8af86f",
"reference": "b48680b6eb7d16b5025b9bfc4108d86f6b8af86f",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/7e081e98378a1e78c29cc9eba4aefa5d78a05d2a",
"reference": "7e081e98378a1e78c29cc9eba4aefa5d78a05d2a",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
"php": ">=5.3.3",
"symfony/polyfill-ctype": "^1.8"
},
"require-dev": {
"psr/container": "^1.0",
@@ -2174,16 +2196,16 @@
},
{
"name": "Twig Team",
"homepage": "http://twig.sensiolabs.org/contributors",
"homepage": "https://twig.symfony.com/contributors",
"role": "Contributors"
}
],
"description": "Twig, the flexible, fast, and secure template language for PHP",
"homepage": "http://twig.sensiolabs.org",
"homepage": "https://twig.symfony.com",
"keywords": [
"templating"
],
"time": "2018-03-20 04:25:58"
"time": "2018-07-13 07:12:17"
},
{
"name": "zetacomponents/base",
+3
View File
@@ -197,4 +197,7 @@ define('DVB_PORTAL', 'https://stubei-p.portal.at');
define('DVB_USERNAME','username');
// Passwort
define('DVB_PASSWORD','passwort');
define('CI_ENVIRONMENT', 'development'); // Code igniter environment variable
?>
+1 -5
View File
@@ -60,12 +60,8 @@ if(isset($_POST['submitbild']))
if(move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile))
{
if(!chgrp($uploadfile,'dms'))
echo 'CHGRP failed';
if(!chmod($uploadfile, 0774))
echo 'CHMOD failed';
$dms = new dms();
$dms->setPermission($uploadfile);
$dms->version='0';
$dms->kategorie_kurzbz=$kategorie_kurzbz;
@@ -81,7 +81,7 @@ if(count($stg->result)>0)
}
}
//Studiengaenge ermitteln bei denen sich die lektorzuordnung innerhalb der letzten 31 Tage geaendert haben
$qry_stg = "SELECT distinct studiengang_kz
$qry_stg = "SELECT distinct studiengang_kz, typ, kurzbz
FROM (
SELECT
studiengang_kz
@@ -105,10 +105,13 @@ $qry_stg = "SELECT distinct studiengang_kz
tbl_projektarbeit.lehreinheit_id = tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id
) as foo
JOIN public.tbl_studiengang USING (studiengang_kz)
";
if(count($stg_arr)>0)
$qry_stg.=" WHERE studiengang_kz in (".$db->db_implode4SQL($stg_arr).")";
$qry_stg.=" ORDER BY typ, kurzbz";
$liste_gesamt = array();
$gesamt =& $workbook->addWorksheet('Gesamt');
@@ -152,6 +155,8 @@ if($result_stg = $db->db_query($qry_stg))
$i=0;
$gesamtsheet_row++;
$gesamt->write(0,0,'', $format_colored);
$gesamt->write(0,1,'Kennzeichnet Änderungen am Lehrauftrag innerhalb der letzten 31 Tage', $format_normal);
$worksheet->write(0,0,'Erstellt am '.date('d.m.Y').' '.$semester_aktuell.' '.$studiengang->kuerzel, $format_bold);
$gesamt->write($gesamtsheet_row,0,'Erstellt am '.date('d.m.Y').' '.$semester_aktuell.' '.$studiengang->kuerzel, $format_bold);
$gesamtsheet_row+=2;
@@ -166,6 +171,8 @@ if($result_stg = $db->db_query($qry_stg))
$gesamt->write($gesamtsheet_row,$i,"Vorname", $format_bold);
$worksheet->write(2,++$i,"Familienname", $format_bold);
$gesamt->write($gesamtsheet_row,$i,"Familienname", $format_bold);
$worksheet->write(2,++$i,"Fixangestellt", $format_bold);
$gesamt->write($gesamtsheet_row,$i,"Fixangestellt", $format_bold);
$worksheet->write(2,++$i,"LV-Stunden", $format_bold);
$gesamt->write($gesamtsheet_row,$i,"LV-Stunden", $format_bold);
$worksheet->write(2,++$i,"LV-Kosten", $format_bold);
@@ -185,6 +192,7 @@ if($result_stg = $db->db_query($qry_stg))
tbl_mitarbeiter.personalnummer, tbl_person.person_id, tbl_mitarbeiter.mitarbeiter_uid,
tbl_lehreinheitmitarbeiter.faktor as faktor, tbl_lehreinheitmitarbeiter.stundensatz as stundensatz,
tbl_lehreinheitmitarbeiter.semesterstunden as semesterstunden,
CASE WHEN tbl_mitarbeiter.fixangestellt = true THEN 'Ja' ELSE 'Nein' END as fixangestellt,
CASE WHEN COALESCE(tbl_lehreinheitmitarbeiter.updateamum, tbl_lehreinheitmitarbeiter.insertamum)>now()-interval '31 days' THEN 't' ELSE 'f' END as geaendert
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_mitarbeiter,
@@ -228,6 +236,7 @@ if($result_stg = $db->db_query($qry_stg))
$liste[$row->mitarbeiter_uid]['titelpre'] = $row->titelpre;
$liste[$row->mitarbeiter_uid]['vorname'] = $row->vorname;
$liste[$row->mitarbeiter_uid]['nachname'] = $row->nachname;
$liste[$row->mitarbeiter_uid]['fixangestellt'] = $row->fixangestellt;
$liste[$row->mitarbeiter_uid]['betreuergesamtstunden'] = 0;
$liste[$row->mitarbeiter_uid]['betreuergesamtkosten'] = 0;
if($row->geaendert=='t')
@@ -236,7 +245,7 @@ if($result_stg = $db->db_query($qry_stg))
//Alle holen die eine Betreuung aber keinen Lehrauftrag haben
$qry = "SELECT
distinct personalnummer, titelpre, vorname, nachname, uid
distinct personalnummer, titelpre, vorname, nachname, uid, CASE WHEN fixangestellt = true THEN 'Ja' ELSE 'Nein' END as fixangestellt
FROM
lehre.tbl_projektbetreuer, public.tbl_person, public.tbl_benutzer,
public.tbl_mitarbeiter, lehre.tbl_projektarbeit, lehre.tbl_lehreinheit,
@@ -276,6 +285,7 @@ if($result_stg = $db->db_query($qry_stg))
$liste[$row->uid]['titelpre'] = $row->titelpre;
$liste[$row->uid]['vorname'] = $row->vorname;
$liste[$row->uid]['nachname'] = $row->nachname;
$liste[$row->uid]['fixangestellt'] = $row->fixangestellt;
$liste[$row->uid]['geaendert']=false;
$liste[$row->uid]['gesamtstunden'] = 0;
$liste[$row->uid]['gesamtkosten'] = 0;
@@ -290,7 +300,10 @@ if($result_stg = $db->db_query($qry_stg))
//Betreuungen fuer Projektarbeiten
foreach ($liste as $uid=>$arr)
{
$qry = "SELECT tbl_projektbetreuer.faktor, tbl_projektbetreuer.stunden, tbl_projektbetreuer.stundensatz, CASE WHEN COALESCE(tbl_projektbetreuer.updateamum, tbl_projektbetreuer.insertamum)>now()-interval '31 days' THEN 't' ELSE 'f' END as geaendert
$qry = "SELECT tbl_projektbetreuer.faktor,
tbl_projektbetreuer.stunden,
tbl_projektbetreuer.stundensatz,
CASE WHEN COALESCE(tbl_projektbetreuer.updateamum, tbl_projektbetreuer.insertamum)>now()-interval '31 days' THEN 't' ELSE 'f' END as geaendert
FROM lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
public.tbl_benutzer, lehre.tbl_projektarbeit, campus.vw_student
WHERE tbl_projektbetreuer.person_id=tbl_benutzer.person_id AND tbl_benutzer.uid=".$db->db_add_param($uid)." AND
@@ -354,6 +367,9 @@ if($result_stg = $db->db_query($qry_stg))
//Nachname
$worksheet->write($zeile,++$i,$row['nachname'], $format);
$gesamt->write($gesamtsheet_row,$i,$row['nachname'], $format);
//Fixangestellt
$worksheet->write($zeile,++$i,$row['fixangestellt'], $format);
$gesamt->write($gesamtsheet_row,$i,$row['fixangestellt'], $format);
//LVStunden
$lvstunden = str_replace(',', '.', $row['lvstunden']);
$worksheet->write($zeile,++$i,$lvstunden, $format);
@@ -401,8 +417,8 @@ if($result_stg = $db->db_query($qry_stg))
}
//Gesamtkosten anzeigen
$worksheet->writeNumber($zeile,10,$gesamtkosten, $format_number_bold);
$gesamt->writeNumber($gesamtsheet_row,10,$gesamtkosten, $format_number_bold);
$worksheet->writeNumber($zeile,11,$gesamtkosten, $format_number_bold);
$gesamt->writeNumber($gesamtsheet_row,11,$gesamtkosten, $format_number_bold);
}
}
@@ -94,7 +94,7 @@ $format_title->setAlign('merge');
//Zeilenueberschriften ausgeben
$i = 0;
$zeile = 1;
$zeile = 0;
$worksheet->write($zeile, $i, "ANREDE", $format_bold);
$maxlength[$i] = 6;
@@ -108,10 +108,8 @@ $worksheet->write($zeile, ++$i, "TITELPOST", $format_bold);
$maxlength[$i] = 9;
$worksheet->write($zeile, ++$i, "EMail Privat", $format_bold);
$maxlength[$i] = 12;
$worksheet->write($zeile,++$i,"STRASSE", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile-1,$i,"Zustelladresse", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"STRASSE (Zustelladresse)", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"PLZ", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"ORT", $format_bold);
@@ -158,7 +156,7 @@ $maxlength[$i] = 16;
$worksheet->write($zeile, ++$i, "STATUS", $format_bold);
$maxlength[$i] = 6;
$worksheet->write($zeile, ++$i, "STATI IN ANDEREN STUDIENGÄNGEN", $format_bold);
$worksheet->write($zeile, ++$i, "STATUS IN ANDEREN STUDIENGÄNGEN", $format_bold);
$maxlength[$i] = 8;
$worksheet->write($zeile, ++$i, "EMail Intern", $format_bold);
$maxlength[$i] = 12;
+2 -2
View File
@@ -218,7 +218,7 @@ foreach ($uid_arr as $uid)
'vorname' => $bn->vorname,
'nachname' => $bn->nachname,
'titelpre' => $bn->titelpre,
'titepost' => $bn->titelpost,
'titelpost' => $bn->titelpost,
'personalnummer' => $ma->personalnummer,
'ausstellungsdatum' => date('d.m.Y'),
'gebdatum' => $datum_obj->formatDatum($ma->gebdatum, 'd.m.Y'),
@@ -261,7 +261,7 @@ foreach ($uid_arr as $uid)
'vorname' => $bn->vorname,
'nachname' => $bn->nachname,
'titelpre' => $bn->titelpre,
'titepost' => $bn->titelpost,
'titelpost' => $bn->titelpost,
'studiengang' => $studiengang->kurzbzlang,
'gebdatum' => $datum_obj->formatDatum($bn->gebdatum, 'd.m.Y'),
'matrikelnummer' => $student->matrikelnr,
+14 -9
View File
@@ -1233,15 +1233,20 @@ class betriebsmittel extends basis_db
if($result = $this->db_query($qry))
{
$ausgegeben_am = '';
while($row = $this->db_fetch_object($result))
{
if(empty($ausgegeben_am) || (!empty($ausgegeben_am) && $ausgegeben_am < $row->ausgegebenam))
$ausgegeben_am = $row->ausgegebenam;
}
//return latest issue date
$this->result = $ausgegeben_am;
return true;
if($this->db_num_rows($result) > 0)
{
$ausgegeben_am = '';
while($row = $this->db_fetch_object($result))
{
if(empty($ausgegeben_am) || (!empty($ausgegeben_am) && $ausgegeben_am < $row->ausgegebenam))
$ausgegeben_am = $row->ausgegebenam;
}
//return latest issue date
$this->result = $ausgegeben_am;
return true;
}
else
return false;
}
else
{
File diff suppressed because it is too large Load Diff
+430 -413
View File
@@ -1,413 +1,430 @@
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class pruefling extends basis_db
{
//Tabellenspalten
public $pruefling_id;
public $studiengang_kz;
public $idnachweis;
public $registriert;
public $prestudent_id;
public $semester;
// ErgebnisArray
public $result=array();
public $num_rows=0;
public $new;
/**
* Konstruktor - Laedt optional einen pruefling
* @param $frage_id Frage die geladen werden soll (default=null)
*/
public function __construct($pruefling_id=null)
{
parent::__construct();
if($pruefling_id != null)
$this->load($pruefling_id);
}
/**
* Laedt Pruefling mit der uebergebenen ID
* @param $pruefling_id ID der Frage die geladen werden soll
*/
public function load($pruefling_id)
{
$qry = "SELECT * FROM testtool.tbl_pruefling WHERE pruefling_id=".$this->db_add_param($pruefling_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefling_id = $row->pruefling_id;
$this->studiengang_kz = $row->studiengang_kz;
$this->idnachweis = $row->idnachweis;
$this->registriert = $row->registriert;
$this->prestudent_id = $row->prestudent_id;
$this->semester = $row->semester;
return true;
}
else
{
$this->errormsg = "Kein Eintrag gefunden fuer $pruefling_id";
return false;
}
}
else
{
$this->errormsg = "Fehler beim Laden";
return false;
}
}
/**
* Prueft die Variablen vor dem Speichern
* auf Gueltigkeit.
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
return true;
}
/**
* Speichert die Benutzerdaten in die Datenbank
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz angelegt
* ansonsten der Datensatz mit $uid upgedated
* @return true wenn erfolgreich, false im Fehlerfall
*/
public function save()
{
//Variablen auf Gueltigkeit pruefen
if(!$this->validate())
return false;
if($this->new) //Wenn new true ist dann ein INSERT absetzen ansonsten ein UPDATE
{
$qry = 'BEGIN;INSERT INTO testtool.tbl_pruefling (studiengang_kz, idnachweis, registriert, prestudent_id, semester) VALUES('.
$this->db_add_param($this->studiengang_kz).",".
$this->db_add_param($this->idnachweis).",".
$this->db_add_param($this->registriert).",".
$this->db_add_param($this->prestudent_id).",".
$this->db_add_param($this->semester).");";
}
else
{
$qry = 'UPDATE testtool.tbl_pruefling SET'.
' studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER).','.
' idnachweis='.$this->db_add_param($this->idnachweis).','.
' registriert='.$this->db_add_param($this->registriert).','.
' semester='.$this->db_add_param($this->semester).','.
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).
" WHERE pruefling_id=".$this->db_add_param($this->pruefling_id, FHC_INTEGER, false).";";
}
if($this->db_query($qry))
{
if($this->new)
{
$qry = "SELECT currval('testtool.tbl_pruefling_pruefling_id_seq') as id";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefling_id = $row->id;
$this->db_query('COMMIT;');
return true;
}
else
{
$this->db_query('ROLLBACK;');
$this->errormsg = 'Fehler beim Lesen der Sequence';
return false;
}
}
else
{
$this->db_query('ROLLBACK;');
$this->errormsg = 'Fehler beim Lesen der Sequence';
return false;
}
}
else
{
return true;
}
}
else
{
$this->db_query('ROLLBACK');
$this->errormsg = 'Fehler beim Speichern der Frage';
return false;
}
}
/**
* Laedt einen Puefling anhand der Prestudent_id
*
* @param $prestudent_id
* @return boolean
*/
public function getPruefling($prestudent_id)
{
$qry = "SELECT * FROM testtool.tbl_pruefling WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefling_id = $row->pruefling_id;
$this->studiengang_kz = $row->studiengang_kz;
$this->idnachweis = $row->idnachweis;
$this->registriert = $row->registriert;
$this->prestudent_id = $row->prestudent_id;
$this->semester = $row->semester;
return true;
}
else
{
$this->errormsg = "Kein Eintrag gefunden";
return false;
}
}
else
{
$this->errormsg = "Fehler beim Laden";
return false;
}
}
/**
* Ermittelt den aktuellen Level (schwierigkeitsgrad der Frage)
* des Prueflings fuer das uebergebene Gebiet
*
* @param $pruefling_id
* @param $gebiet_id
*/
public function getPrueflingLevel($pruefling_id, $gebiet_id)
{
$gebiet = new gebiet($gebiet_id);
//wenn Levelsystem fuer dieses Gebiet aktiviert ist
if($gebiet->level_start!='')
{
//Maximal und Minimal Level fuer dieses Gebiet ermitteln
$max_level = 0;
$min_level = 0;
$qry = "SELECT max(level) as max, min(level) as min FROM testtool.tbl_frage
WHERE gebiet_id=".$this->db_add_param($gebiet_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$max_level = $row->max;
$min_level = $row->min;
}
else
{
$this->errormsg = 'unbekannter Fehler in getPrueflingLevel';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Ermitteln des Pruefling-Levels';
return false;
}
//alle bisherigen Antworten fuer dieses Gebiet holen
$qry = "SELECT
tbl_vorschlag.punkte
FROM
testtool.tbl_pruefling_frage
JOIN testtool.tbl_vorschlag USING(frage_id)
JOIN testtool.tbl_antwort USING(vorschlag_id)
JOIN testtool.tbl_frage USING(frage_id)
WHERE
tbl_frage.gebiet_id=".$this->db_add_param($gebiet_id, FHC_INTEGER)." AND
tbl_pruefling_frage.pruefling_id=".$this->db_add_param($pruefling_id, FHC_INTEGER)." AND
tbl_antwort.pruefling_id = tbl_pruefling_frage.pruefling_id
ORDER BY tbl_pruefling_frage.nummer ASC";
$aktueller_level=$gebiet->level_start;
$anzahl_richtig=0;
$anzahl_falsch=0;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
if($row->punkte>0)
{
//wenn die Frage richtig beantwortet wurde dann richtig-zaehler erhoehen
$anzahl_richtig++;
$anzahl_falsch=0;
}
else
{
//wenn die Frage falsch beantwortet wurde dann falsch-zaehler erhoehen
$anzahl_richtig=0;
$anzahl_falsch++;
}
//wenn einer der Zaehler das Sprunglevel erreicht hat, dann
//in ein anderes Level springen
if($anzahl_richtig==$gebiet->level_sprung_auf)
{
$aktueller_level++;
$anzahl_richtig=0;
$anzahl_falsch=0;
}
elseif($anzahl_falsch==$gebiet->level_sprung_ab)
{
$aktueller_level--;
$anzahl_richtig=0;
$anzahl_falsch=0;
}
//aktueller level darf nicht kleiner/groesser als der minimal/maximal Level sein
if($aktueller_level<$min_level)
$aktueller_level=$min_level;
if($aktueller_level>$max_level)
$aktueller_level=$max_level;
}
return $aktueller_level;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
else
return -1;
}
/**
* Berechnet das Reihungstestergebnis fuer eine Person und ggf Reihungstest
*
* @param $person_id ID der Person.
* @param $punkte Wenn true werden Punkte geliefert, sonst Prozentsumme.
* @param $reihungstest_id ID des Reihungstests.
* @return Endpunkte des Reihungstests oder False wenn keine Punkte vorhanden
*/
public function getReihungstestErgebnisPerson($person_id, $punkte=false, $reihungstest_id=null)
{
$qry = "SELECT * FROM testtool.vw_auswertung
WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
$ergebnis=0;
if(!is_null($reihungstest_id))
$qry.=" AND reihungstest_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER);
if($result = $this->db_query($qry))
{
// Wenn keine Eintraege vorhanden dann false
if($this->db_num_rows($result)==0)
return false;
while($row = $this->db_fetch_object($result))
{
//wenn maxpunkte ueberschritten wurde -> 100%
if($row->punkte>=$row->maxpunkte)
{
$prozent=100;
$row->punkte = $row->maxpunkte;
}
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
if($punkte)
{
$ergebnis +=$row->punkte;
}
else
$ergebnis+=$prozent*$row->gewicht;
}
return $ergebnis;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
/**
* Berechnet das Reihungstestergebnis fuer einen Prestudenten und ggf Reihungstest
*
* @param $prestudent_id ID des Prestudenten
* @param $punkte Wenn true werden Punkte geliefert, sonst Prozentsumme.
* @param $reihungstest_id ID des Reihungstests.
* @return Endpunkte des Reihungstests oder false wenn keine Punkte vorhanden
*/
public function getReihungstestErgebnisPrestudent($prestudent_id, $punkte=false, $reihungstest_id=null)
{
$qry = "SELECT * FROM testtool.vw_auswertung
WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if(!is_null($reihungstest_id))
$qry.=" AND reihungstest_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER);
$ergebnis=0;
if($result = $this->db_query($qry))
{
if($this->db_num_rows($result)==0)
return false;
while($row = $this->db_fetch_object())
{
//wenn maxpunkte ueberschritten wurde -> 100%
if($row->punkte>=$row->maxpunkte)
{
$prozent=100;
$row->punkte = $row->maxpunkte;
}
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
if($punkte)
$ergebnis +=$row->punkte;
else
$ergebnis+=$prozent*$row->gewicht;
}
return $ergebnis;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
}
?>
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class pruefling extends basis_db
{
//Tabellenspalten
public $pruefling_id;
public $studiengang_kz;
public $idnachweis;
public $registriert;
public $prestudent_id;
public $semester;
// ErgebnisArray
public $result=array();
public $num_rows=0;
public $new;
/**
* Konstruktor - Laedt optional einen pruefling
* @param $frage_id Frage die geladen werden soll (default=null)
*/
public function __construct($pruefling_id=null)
{
parent::__construct();
if($pruefling_id != null)
$this->load($pruefling_id);
}
/**
* Laedt Pruefling mit der uebergebenen ID
* @param $pruefling_id ID der Frage die geladen werden soll
*/
public function load($pruefling_id)
{
$qry = "SELECT * FROM testtool.tbl_pruefling WHERE pruefling_id=".$this->db_add_param($pruefling_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefling_id = $row->pruefling_id;
$this->studiengang_kz = $row->studiengang_kz;
$this->idnachweis = $row->idnachweis;
$this->registriert = $row->registriert;
$this->prestudent_id = $row->prestudent_id;
$this->semester = $row->semester;
return true;
}
else
{
$this->errormsg = "Kein Eintrag gefunden fuer $pruefling_id";
return false;
}
}
else
{
$this->errormsg = "Fehler beim Laden";
return false;
}
}
/**
* Prueft die Variablen vor dem Speichern
* auf Gueltigkeit.
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
return true;
}
/**
* Speichert die Benutzerdaten in die Datenbank
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz angelegt
* ansonsten der Datensatz mit $uid upgedated
* @return true wenn erfolgreich, false im Fehlerfall
*/
public function save()
{
//Variablen auf Gueltigkeit pruefen
if(!$this->validate())
return false;
if($this->new) //Wenn new true ist dann ein INSERT absetzen ansonsten ein UPDATE
{
$qry = 'BEGIN;INSERT INTO testtool.tbl_pruefling (studiengang_kz, idnachweis, registriert, prestudent_id, semester) VALUES('.
$this->db_add_param($this->studiengang_kz).",".
$this->db_add_param($this->idnachweis).",".
$this->db_add_param($this->registriert).",".
$this->db_add_param($this->prestudent_id).",".
$this->db_add_param($this->semester).");";
}
else
{
$qry = 'UPDATE testtool.tbl_pruefling SET'.
' studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER).','.
' idnachweis='.$this->db_add_param($this->idnachweis).','.
' registriert='.$this->db_add_param($this->registriert).','.
' semester='.$this->db_add_param($this->semester).','.
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).
" WHERE pruefling_id=".$this->db_add_param($this->pruefling_id, FHC_INTEGER, false).";";
}
if($this->db_query($qry))
{
if($this->new)
{
$qry = "SELECT currval('testtool.tbl_pruefling_pruefling_id_seq') as id";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefling_id = $row->id;
$this->db_query('COMMIT;');
return true;
}
else
{
$this->db_query('ROLLBACK;');
$this->errormsg = 'Fehler beim Lesen der Sequence';
return false;
}
}
else
{
$this->db_query('ROLLBACK;');
$this->errormsg = 'Fehler beim Lesen der Sequence';
return false;
}
}
else
{
return true;
}
}
else
{
$this->db_query('ROLLBACK');
$this->errormsg = 'Fehler beim Speichern der Frage';
return false;
}
}
/**
* Laedt einen Puefling anhand der Prestudent_id
*
* @param $prestudent_id
* @return boolean
*/
public function getPruefling($prestudent_id)
{
$qry = "SELECT * FROM testtool.tbl_pruefling WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefling_id = $row->pruefling_id;
$this->studiengang_kz = $row->studiengang_kz;
$this->idnachweis = $row->idnachweis;
$this->registriert = $row->registriert;
$this->prestudent_id = $row->prestudent_id;
$this->semester = $row->semester;
return true;
}
else
{
$this->errormsg = "Kein Eintrag gefunden";
return false;
}
}
else
{
$this->errormsg = "Fehler beim Laden";
return false;
}
}
/**
* Ermittelt den aktuellen Level (schwierigkeitsgrad der Frage)
* des Prueflings fuer das uebergebene Gebiet
*
* @param $pruefling_id
* @param $gebiet_id
*/
public function getPrueflingLevel($pruefling_id, $gebiet_id)
{
$gebiet = new gebiet($gebiet_id);
//wenn Levelsystem fuer dieses Gebiet aktiviert ist
if($gebiet->level_start!='')
{
//Maximal und Minimal Level fuer dieses Gebiet ermitteln
$max_level = 0;
$min_level = 0;
$qry = "SELECT max(level) as max, min(level) as min FROM testtool.tbl_frage
WHERE gebiet_id=".$this->db_add_param($gebiet_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$max_level = $row->max;
$min_level = $row->min;
}
else
{
$this->errormsg = 'unbekannter Fehler in getPrueflingLevel';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Ermitteln des Pruefling-Levels';
return false;
}
//alle bisherigen Antworten fuer dieses Gebiet holen
$qry = "SELECT
tbl_vorschlag.punkte
FROM
testtool.tbl_pruefling_frage
JOIN testtool.tbl_vorschlag USING(frage_id)
JOIN testtool.tbl_antwort USING(vorschlag_id)
JOIN testtool.tbl_frage USING(frage_id)
WHERE
tbl_frage.gebiet_id=".$this->db_add_param($gebiet_id, FHC_INTEGER)." AND
tbl_pruefling_frage.pruefling_id=".$this->db_add_param($pruefling_id, FHC_INTEGER)." AND
tbl_antwort.pruefling_id = tbl_pruefling_frage.pruefling_id
ORDER BY tbl_pruefling_frage.nummer ASC";
$aktueller_level=$gebiet->level_start;
$anzahl_richtig=0;
$anzahl_falsch=0;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
if($row->punkte>0)
{
//wenn die Frage richtig beantwortet wurde dann richtig-zaehler erhoehen
$anzahl_richtig++;
$anzahl_falsch=0;
}
else
{
//wenn die Frage falsch beantwortet wurde dann falsch-zaehler erhoehen
$anzahl_richtig=0;
$anzahl_falsch++;
}
//wenn einer der Zaehler das Sprunglevel erreicht hat, dann
//in ein anderes Level springen
if($anzahl_richtig==$gebiet->level_sprung_auf)
{
$aktueller_level++;
$anzahl_richtig=0;
$anzahl_falsch=0;
}
elseif($anzahl_falsch==$gebiet->level_sprung_ab)
{
$aktueller_level--;
$anzahl_richtig=0;
$anzahl_falsch=0;
}
//aktueller level darf nicht kleiner/groesser als der minimal/maximal Level sein
if($aktueller_level<$min_level)
$aktueller_level=$min_level;
if($aktueller_level>$max_level)
$aktueller_level=$max_level;
}
return $aktueller_level;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
else
return -1;
}
/**
* Berechnet das Reihungstestergebnis fuer eine Person und ggf Reihungstest
* ACHTUNG - Diese Funktion liefert keine zuverlaessigen Ergebnisse wenn keine ReihungstestID uebergeben wird
* und die Person mehrere Reihungstests absolviert hat!
* @param $person_id ID der Person.
* @param $punkte Wenn true werden Punkte geliefert, sonst Prozentsumme.
* @param $reihungstest_id ID des Reihungstests.
* @return Endpunkte des Reihungstests oder False wenn keine Punkte vorhanden
*/
public function getReihungstestErgebnisPerson($person_id, $punkte=false, $reihungstest_id=null)
{
$qry = "SELECT * FROM testtool.vw_auswertung
WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
$ergebnis=0;
if(!is_null($reihungstest_id))
{
$qry.=" AND reihungstest_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER);
// Quercheck der PrestudentID ueber den Status damit bei Personen
// die den Reihungstest oefter im selben Studiengang gemacht haben nicht das
// Ergebniss der beiden Tests summiert bekommen
// Im Zweifelsfall wird der neuere Reihungstest genommen
$qry.= " AND prestudent_id = (
SELECT
prestudent_id
FROM
public.tbl_rt_person
JOIN public.tbl_reihungstest ON(rt_id=reihungstest_id)
JOIN public.tbl_prestudent USING(person_id)
JOIN public.tbl_prestudentstatus USING(prestudent_id, studienplan_id)
WHERE
tbl_rt_person.person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
AND tbl_rt_person.rt_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER)."
AND tbl_prestudentstatus.status_kurzbz='Interessent'
ORDER BY
tbl_reihungstest.datum desc LIMIT 1)";
}
if($result = $this->db_query($qry))
{
// Wenn keine Eintraege vorhanden dann false
if($this->db_num_rows($result)==0)
return false;
while($row = $this->db_fetch_object($result))
{
//wenn maxpunkte ueberschritten wurde -> 100%
if($row->punkte>=$row->maxpunkte)
{
$prozent=100;
$row->punkte = $row->maxpunkte;
}
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
if($punkte)
{
$ergebnis +=$row->punkte;
}
else
$ergebnis+=$prozent*$row->gewicht;
}
return $ergebnis;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
/**
* Berechnet das Reihungstestergebnis fuer einen Prestudenten und ggf Reihungstest
*
* @param $prestudent_id ID des Prestudenten
* @param $punkte Wenn true werden Punkte geliefert, sonst Prozentsumme.
* @param $reihungstest_id ID des Reihungstests.
* @return Endpunkte des Reihungstests oder false wenn keine Punkte vorhanden
*/
public function getReihungstestErgebnisPrestudent($prestudent_id, $punkte=false, $reihungstest_id=null)
{
$qry = "SELECT * FROM testtool.vw_auswertung
WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if(!is_null($reihungstest_id))
$qry.=" AND reihungstest_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER);
$ergebnis=0;
if($result = $this->db_query($qry))
{
if($this->db_num_rows($result)==0)
return false;
while($row = $this->db_fetch_object())
{
//wenn maxpunkte ueberschritten wurde -> 100%
if($row->punkte>=$row->maxpunkte)
{
$prozent=100;
$row->punkte = $row->maxpunkte;
}
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
if($punkte)
$ergebnis +=$row->punkte;
else
$ergebnis+=$prozent*$row->gewicht;
}
return $ergebnis;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
}
?>
+31
View File
@@ -1259,4 +1259,35 @@ class reihungstest extends basis_db
return false;
}
}
/**
* Prueft ob eine Person-Reihungstest-Studienplan zuteilung existiert (Muss in der DB unique sein)
* @param int $person_id ID der Person.
* @param int $rt_id ID des Reihungstests.
* @param int $studienplan_id Studienplan ID.
* @return boolean true wenn vorhanden, false wenn nicht oder im Fehlerfall
*/
public function checkPersonRtStudienplanExists($person_id, $rt_id, $studienplan_id)
{
$qry = "SELECT
*
FROM
public.tbl_rt_person
WHERE
tbl_rt_person.person_id=".$this->db_add_param($person_id)."
AND tbl_rt_person.rt_id=".$this->db_add_param($rt_id)."
AND tbl_rt_person.studienplan_id=".$this->db_add_param($studienplan_id);
if($result = $this->db_query($qry))
{
if($this->db_num_rows($result) > 0)
return true;
else
return false;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
+8 -5
View File
@@ -55,6 +55,14 @@
*
*/
// Loads FHC config files
require_once 'config/global.config.inc.php';
require_once 'config/vilesci.config.inc.php';
// Check if the CI_ENVIRONMENT constants is set and eventually use it to set the CI_ENV environment variable
if (defined('CI_ENVIRONMENT')) $_SERVER['CI_ENV'] = CI_ENVIRONMENT;
// If the CI_ENV environment variable is not set then use "development" as default
define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
/*
@@ -65,7 +73,6 @@ define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'developm
* Different environments will require different levels of error reporting.
* By default development will show errors but testing and live will hide them.
*/
switch (ENVIRONMENT)
{
case 'development':
@@ -299,10 +306,6 @@ switch (ENVIRONMENT)
*
*/
// First load the FHC-Config-Files ...
require_once 'config/global.config.inc.php';
require_once 'config/vilesci.config.inc.php';
// ... and the vendor autoload
include_once 'vendor/autoload.php';
+1 -1
View File
@@ -16,7 +16,7 @@ $this->phrasen['dms_link/berechtigungskonzeptMailverteiler']='1475'; //Berechtig
$this->phrasen['dms_link/handbuchUrlaubsverwaltung']='759'; //Handbuch Urlaubsverwaltung -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/handbuchZeitaufzeichnung']='1545'; //Handbuch Zeitaufzeichnung -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/fiktiveNormalarbeitszeit']='2512'; //fiktive Normalarbeitszeit -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/learningAgreementErasmus']='29266'; //Learning Agreement Incomings Erasmus
$this->phrasen['dms_link/learningAgreementErasmus']='85863'; //Learning Agreement Incomings Erasmus
$this->phrasen['dms_link/learningAgreement']='38866'; //Learning Agreement Incomings NICHT Erasmus
$this->phrasen['dms_link/passwortpolicy']='57972'; //Passwortpolicy
+1 -1
View File
@@ -18,7 +18,7 @@ $this->phrasen['lehre/anwesenheitsUndNotenlisten']='Anwesenheits- und Notenliste
$this->phrasen['lehre/leistungsuebersicht']='Leistungsübersicht';
$this->phrasen['lehre/newsgroups']='Newsgroups';
$this->phrasen['lehre/feedback']='Feedback';
$this->phrasen['lehre/termineImLvPlan']='Termine im LV-Plan';
$this->phrasen['lehre/termineImLvPlan']='Alle Termine dieser LV';
$this->phrasen['lehre/benotungstoolHandbuch']='Handbuch';
$this->phrasen['lehre/kreuzerltool']='Übungstool<br>("Kreuzerl"-Tool)';
+11
View File
@@ -2,6 +2,9 @@
//Dokumente
$this->phrasen['tools/dokumente']='Dokumente';
$this->phrasen['tools/dokument']='Dokument';
$this->phrasen['tools/erstelldatum']='Erstelldatum';
$this->phrasen['tools/bestaetigungenZeugnisse']='Bestätigungen/Zeugnisse';
$this->phrasen['tools/inskriptionsbestaetigung']='Inskriptionsbestätigung';
$this->phrasen['tools/studienbeitragFuerSSBezahlt']='Studienbeitrag für das %1$s bezahlt';
$this->phrasen['tools/studienbeitragFuerSSNochNichtBezahlt']='Studienbeitrag für das %1$s noch nicht bezahlt';
@@ -9,6 +12,10 @@ $this->phrasen['tools/studienerfolgsbestaetigung']='Studienerfolgsbestätigung';
$this->phrasen['tools/studiensemesterAuswaehlen']='Bitte wählen Sie das entsprechende Studiensemester aus';
$this->phrasen['tools/vorlageWohnsitzfinanzamt']='zur Vorlage beim Wohnsitzfinanzamt';
$this->phrasen['tools/studienbuchblatt']='Studienbuchblatt';
$this->phrasen['tools/alleStudiensemester']='Alle Studiensemester';
$this->phrasen['tools/abschlussdokumente']='Abschlussdokumente/Zeugnisse';
$this->phrasen['tools/nochKeineAbschlussdokumenteVorhanden']='Noch keine Abschlussdokumente vorhanden';
$this->phrasen['tools/keinStatusImStudiensemester']='Für das übergebene Studiensemester %1$s existiert kein Status. Bitte wählen Sie ein gültiges Studiensemester aus dem DropDown.';
//Leistungsbeurteilung
$this->phrasen['tools/leistungsbeurteilung']='Leistungsbeurteilung';
@@ -18,6 +25,10 @@ $this->phrasen['tools/nochKeineBeurteilungEingetragen']='Es wurden noch keine Be
$this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Fehler beim Auslesen der Noten';
$this->phrasen['tools/benotungsdatumDerZeugnisnote']='Benotungsdatum der Zeugnisnote';
$this->phrasen['tools/hinweistextMarkierung']='Kennzeichnet jene Einträge, bei denen sich die LV-Note von der Zeugnisnote unterscheidet. <b>Letztgültig ist die Zeugnisnote</b>.<br>Sollten diese Angaben nicht stimmen, wenden Sie sich bitte an Ihre zuständige Assistenz.';
$this->phrasen['tools/notendurchschnittDerZeugnisnote']='Notendurchschnitt* der Zeugnisnote';
$this->phrasen['tools/gewichteterNotendurchschnittDerZeugnisnote']='Gewichteter** Notendurchschnitt* der Zeugnisnote';
$this->phrasen['tools/legendeGewichteterNotendurchschnitt']='Der gewichtete Notendurchschnitt errechnet sich aus der Note der Lehrveranstaltung, multipliziert mit deren ECTS, dividiert durch die Summe aller ECTS';
$this->phrasen['tools/legendeNotendurchschnitt']='Bitte beachten Sie, dass außercurriculare Lehrveranstaltungen (zB Freifächer) den errechneten Notendurchschnitt verfälschen können';
//Zahlungen
$this->phrasen['tools/zahlungen']='Zahlungen';
+1 -1
View File
@@ -16,7 +16,7 @@ $this->phrasen['dms_link/berechtigungskonzeptMailverteiler']='1475'; //Berechtig
$this->phrasen['dms_link/handbuchUrlaubsverwaltung']='759'; //Handbuch Urlaubsverwaltung
$this->phrasen['dms_link/handbuchZeitaufzeichnung']='1545'; //Handbuch Zeitaufzeichnung -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/fiktiveNormalarbeitszeit']='2512'; //fiktive Normalarbeitszeit -> Leer lassen, falls es keines gibt
$this->phrasen['dms_link/learningAgreementErasmus']='29266'; //Learning Agreement Incomings Erasmus
$this->phrasen['dms_link/learningAgreementErasmus']='85863'; //Learning Agreement Incomings Erasmus
$this->phrasen['dms_link/learningAgreement']='38866'; //Learning Agreement Incomings NICHT Erasmus
// Content IDs (=Deutsch)
+11
View File
@@ -2,6 +2,9 @@
//Dokumente
$this->phrasen['tools/dokumente']='Documents';
$this->phrasen['tools/dokument']='Document';
$this->phrasen['tools/erstelldatum']='Creation date';
$this->phrasen['tools/bestaetigungenZeugnisse']='Certificates/Transcripts';
$this->phrasen['tools/inskriptionsbestaetigung']='Enrollment Confirmation';
$this->phrasen['tools/studienbeitragFuerSSBezahlt']='tuition fee for semester %1$s paid';
$this->phrasen['tools/studienbeitragFuerSSNochNichtBezahlt']='tuition fee for semester %1$s not yet paid';
@@ -9,6 +12,10 @@ $this->phrasen['tools/studienerfolgsbestaetigung']='Student progress report';
$this->phrasen['tools/studiensemesterAuswaehlen']='Please select the corresponding semester';
$this->phrasen['tools/vorlageWohnsitzfinanzamt']='for submission to local tax office';
$this->phrasen['tools/studienbuchblatt']='Studienbuchblatt'; //Noch zu übersetzen
$this->phrasen['tools/alleStudiensemester']='All semester';
$this->phrasen['tools/abschlussdokumente']='Final documents/Transcripts';
$this->phrasen['tools/nochKeineAbschlussdokumenteVorhanden']='No final documents available yet';
$this->phrasen['tools/keinStatusImStudiensemester']='No status found for %1$s. Please select a valid semester from the dropdown.';
//Leistungsbeurteilung
$this->phrasen['tools/leistungsbeurteilung']='Performance Assessment ';
@@ -18,6 +25,10 @@ $this->phrasen['tools/nochKeineBeurteilungEingetragen']='No grade has been enter
$this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Error reading the grades.';
$this->phrasen['tools/benotungsdatumDerZeugnisnote']='Date of grading';
$this->phrasen['tools/hinweistextMarkierung']='The marking indicates those entries where the grade for the course is different from the grade on the report card.<b>The grade on the report card is the valid one.</b> <br>Should these details not be correct please contact the Administrative Assistant responsible.';
$this->phrasen['tools/notendurchschnittDerZeugnisnote']='Average of final grade*';
$this->phrasen['tools/gewichteterNotendurchschnittDerZeugnisnote']='Weighted** average of final grade*';
$this->phrasen['tools/legendeGewichteterNotendurchschnitt']='The weighted average grade is calculated using the grade of the course, multiplied with its ECTS, divided by the sum of all ECTS';
$this->phrasen['tools/legendeNotendurchschnitt']='Please note that extracurricular courses (eg elective courses) may distort the calculated average grade';
//Zahlungen
$this->phrasen['tools/zahlungen']='Payments';
+19 -3
View File
@@ -31,10 +31,12 @@ require_once('../include/abschlusspruefung.class.php');
require_once('../include/person.class.php');
require_once('../include/benutzer.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/nation.class.php');
require_once('../include/datum.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/studienordnung.class.php');
require_once('../include/akadgrad.class.php');
require_once('../include/organisationseinheit.class.php');
require_once('../include/projektarbeit.class.php');
@@ -85,6 +87,7 @@ function draw_content_xml($row)
$person = new person();
$mitarbeiter = new mitarbeiter();
$student= new student($row->student_uid);
$prestudent = new prestudent($student->prestudent_id);
$nation=new nation($student->geburtsnation);
$geburtsnation=$nation->kurztext;
@@ -97,6 +100,19 @@ function draw_content_xml($row)
$akadgrad = new akadgrad($row->akadgrad_id);
$vorsitz_geschlecht = '';
if ($prestudent->getLastStatus($student->prestudent_id, null, 'Absolvent'))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung = $studienordnung->__get('studiengangbezeichnung');
$studiengangbezeichnung_englisch = $studienordnung->__get('studiengangbezeichnung_englisch');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $studiengang->bezeichnung : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $studiengang->english : $studiengangbezeichnung_englisch;
if($mitarbeiter->load($row->vorsitz))
{
$vorsitz = $mitarbeiter->titelpre.' '.$mitarbeiter->vorname;
@@ -218,7 +234,7 @@ function draw_content_xml($row)
}
}
$studiengang_bezeichnung2 = explode(" ", $studiengang->bezeichnung, 2);
$studiengang_bezeichnung2 = explode(" ", $studiengang_bezeichnung, 2);
$name = $student->titelpre.' '.trim($student->vorname.' '.$student->vornamen).' '.$student->nachname;
$name .= ($student->titelpost!=''?', '.$student->titelpost:'');
$name = trim($name);
@@ -274,9 +290,9 @@ function draw_content_xml($row)
<geburtsnation><![CDATA['.$geburtsnation.']]></geburtsnation>
<geburtsnation_engl><![CDATA['.$geburtsnation_engl.']]></geburtsnation_engl>
<studiengang_kz><![CDATA['.$studiengang_kz.']]></studiengang_kz>
<stg_bezeichnung><![CDATA['.$studiengang->bezeichnung.']]></stg_bezeichnung>
<stg_bezeichnung><![CDATA['.$studiengang_bezeichnung.']]></stg_bezeichnung>
<stg_bezeichnung2><![CDATA['.(isset($studiengang_bezeichnung2[1])?$studiengang_bezeichnung2[1]:'').']]></stg_bezeichnung2>
<stg_bezeichnung_engl><![CDATA['.$studiengang->english.']]></stg_bezeichnung_engl>
<stg_bezeichnung_engl><![CDATA['.$studiengang_bezeichnung_englisch.']]></stg_bezeichnung_engl>
<stg_oe_parent><![CDATA['.$oe_parent.']]></stg_oe_parent>
<stg_art><![CDATA['.$studiengang->typ.']]></stg_art>
<akadgrad_kurzbz><![CDATA['.$akadgrad->akadgrad_kurzbz.']]></akadgrad_kurzbz>
+16 -5
View File
@@ -82,10 +82,17 @@ foreach ($uid_arr as $uid)
$studiengang='';
}
else
{
{
//Student
$qry ="SELECT vorname, nachname, matrikelnr, uid, tbl_studiengang.bezeichnung, tbl_studiengang.english, aktivierungscode, alias
FROM campus.vw_student JOIN public.tbl_studiengang USING(studiengang_kz) WHERE uid=".$db->db_add_param($uid);
$qry ="SELECT vorname, nachname, matrikelnr, uid, tbl_studiengang.bezeichnung, tbl_studiengang.english, aktivierungscode, alias, tbl_studienordnung.studiengangbezeichnung, tbl_studienordnung.studiengangbezeichnung_englisch
FROM campus.vw_student
JOIN public.tbl_studiengang USING(studiengang_kz)
LEFT JOIN public.tbl_prestudentstatus USING(prestudent_id)
LEFT JOIN lehre.tbl_studienplan USING (studienplan_id)
LEFT JOIN lehre.tbl_studienordnung USING (studienordnung_id)
WHERE uid=".$db->db_add_param($uid)."
ORDER BY tbl_prestudentstatus.datum DESC LIMIT 1";
if($db->db_query($qry))
{
if($row = $db->db_fetch_object())
@@ -97,6 +104,10 @@ foreach ($uid_arr as $uid)
$matrikelnr = $row->matrikelnr;
$studiengang = convertProblemChars($row->bezeichnung);
$studiengang_eng = convertProblemChars($row->english);
$studiengangbezeichnung = convertProblemChars($row->studiengangbezeichnung);
$studiengangbezeichnung_englisch = convertProblemChars($row->studiengangbezeichnung_englisch);
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $studiengang : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $studiengang_eng : $studiengangbezeichnung_englisch;
$uid = $row->uid;
}
else
@@ -118,8 +129,8 @@ foreach ($uid_arr as $uid)
echo "\n <alias><![CDATA[]]></alias>";
if($studiengang!='')
{
echo "\n <bezeichnung><![CDATA[".$studiengang."]]></bezeichnung>";
echo "\n <bezeichnung_english><![CDATA[".$studiengang_eng."]]></bezeichnung_english>";
echo "\n <bezeichnung><![CDATA[".$studiengang_bezeichnung."]]></bezeichnung>";
echo "\n <bezeichnung_english><![CDATA[".$studiengang_bezeichnung_englisch."]]></bezeichnung_english>";
}
echo "\n <email><![CDATA[".$uid.'@'.DOMAIN."]]></email>";
echo "\n <fileserver><![CDATA[".$fileserver."]]></fileserver>";
+198 -141
View File
@@ -32,6 +32,7 @@ require_once('../include/studiensemester.class.php');
require_once('../include/nation.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/studienplan.class.php');
require_once('../include/studienordnung.class.php');
$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null);
$prestudent_arr = (isset($_REQUEST['prestudent_id'])?$_REQUEST['prestudent_id']:null);
@@ -46,7 +47,7 @@ echo "<ausbildungsvertraege>\n";
$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0];
$student_help = new student();
$student_help = new student();
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
if($student_help->load($uid))
{
@@ -69,9 +70,24 @@ if($student_help->load($uid))
$studTyp ='';
$titel_kurzbz = '';
}
$prestudent = new prestudent($student_help->prestudent_id);
if ($prestudent->getLastStatus($student_help->prestudent_id, null, 'Student'))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung = $studienordnung->__get('studiengangbezeichnung');
$studiengangbezeichnung_englisch = $studienordnung->__get('studiengangbezeichnung_englisch');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $studiengang->bezeichnung : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $studiengang->english : $studiengangbezeichnung_englisch;
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
echo "\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
echo "\t<studiengang>".$studiengang_bezeichnung."</studiengang>\n";
echo "\t<studiengang_englisch>".$studiengang_bezeichnung_englisch."</studiengang_englisch>\n";
}
foreach($uid_arr as $uid)
@@ -84,146 +100,160 @@ foreach($uid_arr as $uid)
$student = new student();
if($student->load($uid))
{
$datum_aktuell = date('d.m.Y');
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
$studiengang = new studiengang();
$studiengang->load($student->studiengang_kz);
$staatsbuergerschaft = new nation();
$staatsbuergerschaft->load($student->staatsbuergerschaft);
$lehrgangstyp = new studiengang();
$lehrgangstyp->loadLehrgangstyp($studiengang->lgartcode);
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
if ($studiengang->studiengang_kz<0)
{
$stg = new studiengang();
$stg->load($studiengang->studiengang_kz);
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz));
}
else
$studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz));
echo "\t\t<quote>1</quote>\n";
echo "\t\t<anrede>".$student->anrede."</anrede>\n";
echo "\t\t<vorname>".$student->vorname." ".$student->vornamen."</vorname>\n";
echo "\t\t<vornamen>".$student->vornamen."</vornamen>\n";
echo "\t\t<nachname>".$student->nachname."</nachname>\n";
echo "\t\t<titelpre>".$student->titelpre."</titelpre>\n";
echo "\t\t<titelpost>".$student->titelpost."</titelpost>\n";
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
echo "\t\t<gebort>".$student->gebort."</gebort>\n";
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
echo "\t\t<svnr>".$svnr."</svnr>\n";
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
echo "\t\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
echo "\t\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
echo "\t\t<lgartcode>".$lehrgangstyp->lgartcode."</lgartcode>";
echo "\t\t<lgartBezeichnung>".$lehrgangstyp->bezeichnung."</lgartBezeichnung>";
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
// check ob Quereinsteiger
$prestudent = new prestudent();
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'1';
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
$studiensemester_beginn = new studiensemester();
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
$studiensemester_beginn->load($studienbeginn);
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
$studiensemester_endedatum = new studiensemester();
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t\t<studiengang_sprache>".$studiengang->sprache."</studiengang_sprache>\n";
echo "\t\t<studiengang_maxsemester>".$studiengang->max_semester."</studiengang_maxsemester>\n";
echo "\t\t<studiengang_anzahljahre>".($studiengang->max_semester/2)."</studiengang_anzahljahre>\n";
//Wenn Quereinsteiger stimmt studiengang_maxsemester nicht mit der tatsaechlichen Ausbildungsdauer ueberein
$student_maxsemester = ($studiengang->max_semester-$ausbildungssemester)+1;
echo "\t\t<student_maxsemester>".$student_maxsemester."</student_maxsemester>\n";
echo "\t\t<student_anzahljahre>".($student_maxsemester/2)."</student_anzahljahre>\n";
$akadgrad = new akadgrad();
$akadgrad->getAkadgradStudent($student->uid);
echo "\t\t<akadgrad>".$akadgrad->titel."</akadgrad>\n";
echo "\t\t<akadgrad_kurzbz>".$akadgrad->akadgrad_kurzbz."</akadgrad_kurzbz>\n";
//für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen
$lv_studiengang_kz='';
$lv_studiengang_bezeichnung='';
$lv_studiengang_typ='';
$datum_aktuell = date('d.m.Y');
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
$studiengang = new studiengang();
$studiengang->load($student->studiengang_kz);
$staatsbuergerschaft = new nation();
$staatsbuergerschaft->load($student->staatsbuergerschaft);
$lehrgangstyp = new studiengang();
$lehrgangstyp->loadLehrgangstyp($studiengang->lgartcode);
$stg_typ=new studiengang();
$lv=new lehrveranstaltung();
$lv->load_lva_student($student->uid);
if(count($lv->lehrveranstaltungen)>0)
$prestudent = new prestudent($student->prestudent_id);
if ($prestudent->getLastStatus($student->prestudent_id, null, 'Student'))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
$lv_studiengang=new studiengang();
$lv_studiengang->load($lv_studiengang_kz);
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
$lv_studiengang_typ=$stg_typ->bezeichnung;
$studiengangbezeichnung = $studienordnung->__get('studiengangbezeichnung');
$studiengangbezeichnung_englisch = $studienordnung->__get('studiengangbezeichnung_englisch');
}
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
echo "\t\t<lv_studiengang_typ>$lv_studiengang_typ</lv_studiengang_typ>";
echo "\t\t<lv_studiengang_bezeichnung>$lv_studiengang_bezeichnung</lv_studiengang_bezeichnung>";
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
}
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $studiengang->bezeichnung : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $studiengang->english : $studiengangbezeichnung_englisch;
$adresse = new adresse();
$adresse->load_pers($student->person_id);
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
foreach($adresse->result as $row_adresse)
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
if ($studiengang->studiengang_kz<0)
{
$stg = new studiengang();
$stg->load($studiengang->studiengang_kz);
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz));
}
else
$studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz));
echo "\t\t<quote>1</quote>\n";
echo "\t\t<anrede>".$student->anrede."</anrede>\n";
echo "\t\t<vorname>".$student->vorname." ".$student->vornamen."</vorname>\n";
echo "\t\t<vornamen>".$student->vornamen."</vornamen>\n";
echo "\t\t<nachname>".$student->nachname."</nachname>\n";
echo "\t\t<titelpre>".$student->titelpre."</titelpre>\n";
echo "\t\t<titelpost>".$student->titelpost."</titelpost>\n";
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
echo "\t\t<gebort>".$student->gebort."</gebort>\n";
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
echo "\t\t<svnr>".$svnr."</svnr>\n";
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
echo "\t\t<studiengang>".$studiengang_bezeichnung."</studiengang>\n";
echo "\t\t<studiengang_englisch>".$studiengang_bezeichnung_englisch."</studiengang_englisch>\n";
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
echo "\t\t<lgartcode>".$lehrgangstyp->lgartcode."</lgartcode>";
echo "\t\t<lgartBezeichnung>".$lehrgangstyp->bezeichnung."</lgartBezeichnung>";
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
// check ob Quereinsteiger
$prestudent = new prestudent();
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'1';
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
$studiensemester_beginn = new studiensemester();
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
$studiensemester_beginn->load($studienbeginn);
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
$studiensemester_endedatum = new studiensemester();
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t\t<studiengang_sprache>".$studiengang->sprache."</studiengang_sprache>\n";
echo "\t\t<studiengang_maxsemester>".$studiengang->max_semester."</studiengang_maxsemester>\n";
echo "\t\t<studiengang_anzahljahre>".($studiengang->max_semester/2)."</studiengang_anzahljahre>\n";
//Wenn Quereinsteiger stimmt studiengang_maxsemester nicht mit der tatsaechlichen Ausbildungsdauer ueberein
$student_maxsemester = ($studiengang->max_semester-$ausbildungssemester)+1;
echo "\t\t<student_maxsemester>".$student_maxsemester."</student_maxsemester>\n";
echo "\t\t<student_anzahljahre>".($student_maxsemester/2)."</student_anzahljahre>\n";
$akadgrad = new akadgrad();
$akadgrad->getAkadgradStudent($student->uid);
echo "\t\t<akadgrad>".$akadgrad->titel."</akadgrad>\n";
echo "\t\t<akadgrad_kurzbz>".$akadgrad->akadgrad_kurzbz."</akadgrad_kurzbz>\n";
//für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen
$lv_studiengang_kz='';
$lv_studiengang_bezeichnung='';
$lv_studiengang_typ='';
$stg_typ=new studiengang();
$lv=new lehrveranstaltung();
$lv->load_lva_student($student->uid);
if(count($lv->lehrveranstaltungen)>0)
{
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
$lv_studiengang=new studiengang();
$lv_studiengang->load($lv_studiengang_kz);
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
$lv_studiengang_typ=$stg_typ->bezeichnung;
}
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
echo "\t\t<lv_studiengang_typ>$lv_studiengang_typ</lv_studiengang_typ>";
echo "\t\t<lv_studiengang_bezeichnung>$lv_studiengang_bezeichnung</lv_studiengang_bezeichnung>";
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
$adresse = new adresse();
$adresse->load_pers($student->person_id);
foreach($adresse->result as $row_adresse)
{
if($row_adresse->zustelladresse)
{
if($row_adresse->zustelladresse)
{
echo "\t\t<strasse>".$row_adresse->strasse."</strasse>\n";
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
break;
}
echo "\t\t<strasse>".$row_adresse->strasse."</strasse>\n";
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
break;
}
$prestudent = new prestudent();
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
if($prestudent->orgform_kurzbz!='')
$orgform = $prestudent->orgform_kurzbz;
else
$orgform = $studiengang->orgform_kurzbz;
echo "\t\t<orgform>".$orgform."</orgform>\n";
}
$prestudent = new prestudent();
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
if($prestudent->orgform_kurzbz!='')
$orgform = $prestudent->orgform_kurzbz;
else
$orgform = $studiengang->orgform_kurzbz;
echo "\t\t<orgform>".$orgform."</orgform>\n";
}
echo "\t</ausbildungsvertrag>\n";
}
@@ -256,9 +286,23 @@ if($prestudent_help->load($prest_id))
$studTyp ='';
$titel_kurzbz = '';
}
if ($prestudent_help->getLastStatus($prest_id, null, 'Student'))
{
$studienplan_id = $prestudent_help->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung = $studienordnung->__get('studiengangbezeichnung');
$studiengangbezeichnung_englisch = $studienordnung->__get('studiengangbezeichnung_englisch');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $studiengang->bezeichnung : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $studiengang->english : $studiengangbezeichnung_englisch;
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
echo "\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
echo "\t<studiengang>".$studiengang_bezeichnung."</studiengang>\n";
echo "\t<studiengang_englisch>".$studiengang_bezeichnung_englisch."</studiengang_englisch>\n";
}
foreach($prestudent_arr as $prest_id)
@@ -282,7 +326,20 @@ foreach($prestudent_arr as $prest_id)
$staatsbuergerschaft->load($person->staatsbuergerschaft);
$lehrgangstyp = new studiengang();
$lehrgangstyp->loadLehrgangstyp($studiengang->lgartcode);
if ($prestudent->getLastStatus($student->prestudent_id, null, 'Student'))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung = $studienordnung->__get('studiengangbezeichnung');
$studiengangbezeichnung_englisch = $studienordnung->__get('studiengangbezeichnung_englisch');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $studiengang->bezeichnung : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $studiengang->english : $studiengangbezeichnung_englisch;
$svnr = ($person->svnr == '')?($person->ersatzkennzeichen != ''?'Ersatzkennzeichen: '.$person->ersatzkennzeichen:''):$person->svnr;
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
@@ -307,8 +364,8 @@ foreach($prestudent_arr as $prest_id)
echo "\t\t<gebort>".$person->gebort."</gebort>\n";
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
echo "\t\t<svnr>".$svnr."</svnr>\n";
echo "\t\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
echo "\t\t<studiengang_englisch>".$studiengang->english."</studiengang_englisch>\n";
echo "\t\t<studiengang>".$studiengang_bezeichnung."</studiengang>\n";
echo "\t\t<studiengang_englisch>".$studiengang_bezeichnung_englisch."</studiengang_englisch>\n";
echo "\t\t<studiengang_kurzbz>".$studiengang->kurzbzlang."</studiengang_kurzbz>\n";
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
echo "\t\t<studiengangSprache>".$studiengang->sprache."</studiengangSprache>";
+18 -2
View File
@@ -28,6 +28,7 @@ require_once('../include/datum.class.php');
require_once('../include/basis_db.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/studienordnung.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/studiensemester.class.php');
require_once('../include/student.class.php');
@@ -97,8 +98,23 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
echo ' <geburtsdatum><![CDATA['.$datum->convertISODate($row->gebdatum).']]></geburtsdatum>';
echo ' <matrikelnummer>'.TRIM($row->matrikelnr).'</matrikelnummer>';
echo ' <studiengang_kz>'.$studiengang_kz.'</studiengang_kz>';
echo ' <studiengang_bezeichnung_deutsch><![CDATA['.$row->bezeichnung.']]></studiengang_bezeichnung_deutsch>';
echo ' <studiengang_bezeichnung_englisch><![CDATA['.$row->english.']]></studiengang_bezeichnung_englisch>';
$prestudent = new prestudent($row->prestudent_id);
if ($prestudent->getLastStatus($row->prestudent_id, null, 'Student'))
{
$studienplan_id = $prestudent->studienplan_id;
$studienordnung = new studienordnung();
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
{
$studiengangbezeichnung = $studienordnung->__get('studiengangbezeichnung');
$studiengangbezeichnung_englisch = $studienordnung->__get('studiengangbezeichnung_englisch');
}
}
$studiengang_bezeichnung = empty($studiengangbezeichnung) ? $row->bezeichnung : $studiengangbezeichnung;
$studiengang_bezeichnung_englisch = empty($studiengangbezeichnung_englisch) ? $row->english : $studiengangbezeichnung_englisch;
echo ' <studiengang_bezeichnung_deutsch><![CDATA['.$studiengang_bezeichnung.']]></studiengang_bezeichnung_deutsch>';
echo ' <studiengang_bezeichnung_englisch><![CDATA['.$studiengang_bezeichnung_englisch.']]></studiengang_bezeichnung_englisch>';
$prestudent = new prestudent();
$prestudent->getFirstStatus($row->prestudent_id, 'Student');
+11 -4
View File
@@ -131,17 +131,22 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
//Wenn das Semester 0 ist, dann wird das Semester aus der Rolle geholt. (Ausnahme: Incoming)
//damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint
$qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus
$qry ="SELECT ausbildungssemester as semester, tbl_studienordnung.studiengangbezeichnung, tbl_studienordnung.studiengangbezeichnung_englisch
FROM public.tbl_prestudentstatus
LEFT JOIN lehre.tbl_studienplan USING (studienplan_id)
LEFT JOIN lehre.tbl_studienordnung USING (studienordnung_id)
WHERE
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')
tbl_prestudentstatus.status_kurzbz not in('Incoming','Aufgenommener','Bewerber','Wartender', 'Interessent')
ORDER BY DATUM DESC LIMIT 1";
if($result_sem = $db->db_query($qry))
{
if($row_sem = $db->db_fetch_object($result_sem))
{
$row->semester = $row_sem->semester;
$row->studiengangbezeichnung = $row_sem->studiengangbezeichnung;
$row->studiengangbezeichnung_englisch = $row_sem->studiengangbezeichnung_englisch;
$bezeichnung = $row_sem->semester.'. Semester';
}
else
@@ -150,13 +155,15 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
else
$bezeichnung = '';
$studiengangbezeichnung = empty($row->studiengangbezeichnung) ? $row->bezeichnung : $row->studiengangbezeichnung;
$studiengangbezeichnung_englisch = empty($row->studiengangbezeichnung_englisch) ? $row->english : $row->studiengangbezeichnung_englisch;
$xml .= " <studiensemester><![CDATA[".$row->sembezeichnung."]]></studiensemester>";
$xml .= " <stsem><![CDATA[".$row->stsem."]]></stsem>";
$xml .= " <semester><![CDATA[".$row->semester."]]></semester>";
$xml .= " <semester_bezeichnung><![CDATA[".$bezeichnung."]]></semester_bezeichnung>";
$xml .= " <studiengang><![CDATA[".$row->bezeichnung."]]></studiengang>";
$xml .= " <studiengang_englisch><![CDATA[".$row->english."]]></studiengang_englisch>";
$xml .= " <studiengang><![CDATA[".$studiengangbezeichnung."]]></studiengang>";
$xml .= " <studiengang_englisch><![CDATA[".$studiengangbezeichnung_englisch."]]></studiengang_englisch>";
if($row->typ=='b')
$bezeichnung='Bachelor';
elseif($row->typ=='m')
+250
View File
@@ -0,0 +1,250 @@
.croppie-container {
width: 100%;
height: 100%;
}
.croppie-container .cr-image {
z-index: -1;
position: absolute;
top: 0;
left: 0;
transform-origin: 0 0;
max-height: none;
max-width: none;
}
.croppie-container .cr-boundary {
position: relative;
overflow: hidden;
margin: 0 auto;
z-index: 1;
width: 100%;
height: 100%;
}
.croppie-container .cr-viewport,
.croppie-container .cr-resizer {
position: absolute;
border: 2px solid #fff;
margin: auto;
top: 0;
bottom: 0;
right: 0;
left: 0;
box-shadow: 0 0 2000px 2000px rgba(0, 0, 0, 0.5);
z-index: 0;
}
.croppie-container .cr-resizer {
z-index: 2;
box-shadow: none;
pointer-events: none;
}
.croppie-container .cr-resizer-vertical,
.croppie-container .cr-resizer-horisontal {
position: absolute;
pointer-events: all;
}
.croppie-container .cr-resizer-vertical::after,
.croppie-container .cr-resizer-horisontal::after {
display: block;
position: absolute;
box-sizing: border-box;
border: 1px solid black;
background: #fff;
width: 10px;
height: 10px;
content: '';
}
.croppie-container .cr-resizer-vertical {
bottom: -5px;
cursor: row-resize;
width: 100%;
height: 10px;
}
.croppie-container .cr-resizer-vertical::after {
left: 50%;
margin-left: -5px;
}
.croppie-container .cr-resizer-horisontal {
right: -5px;
cursor: col-resize;
width: 10px;
height: 100%;
}
.croppie-container .cr-resizer-horisontal::after {
top: 50%;
margin-top: -5px;
}
.croppie-container .cr-original-image {
display: none;
}
.croppie-container .cr-vp-circle {
border-radius: 50%;
}
.croppie-container .cr-overlay {
z-index: 1;
position: absolute;
cursor: move;
touch-action: none;
}
.croppie-container .cr-slider-wrap {
width: 75%;
margin: 15px auto;
text-align: center;
}
.croppie-result {
position: relative;
overflow: hidden;
}
.croppie-result img {
position: absolute;
}
.croppie-container .cr-image,
.croppie-container .cr-overlay,
.croppie-container .cr-viewport {
-webkit-transform: translateZ(0);
-moz-transform: translateZ(0);
-ms-transform: translateZ(0);
transform: translateZ(0);
}
/*************************************/
/***** STYLING RANGE INPUT ***********/
/*************************************/
/*http://brennaobrien.com/blog/2014/05/style-input-type-range-in-every-browser.html */
/*************************************/
.cr-slider {
-webkit-appearance: none;
/*removes default webkit styles*/
/*border: 1px solid white; *//*fix for FF unable to apply focus style bug */
width: 300px;
/*required for proper track sizing in FF*/
max-width: 100%;
padding-top: 8px;
padding-bottom: 8px;
background-color: transparent;
}
.cr-slider::-webkit-slider-runnable-track {
width: 100%;
height: 3px;
background: rgba(0, 0, 0, 0.5);
border: 0;
border-radius: 3px;
}
.cr-slider::-webkit-slider-thumb {
-webkit-appearance: none;
border: none;
height: 16px;
width: 16px;
border-radius: 50%;
background: #ddd;
margin-top: -6px;
}
.cr-slider:focus {
outline: none;
}
/*
.cr-slider:focus::-webkit-slider-runnable-track {
background: #ccc;
}
*/
.cr-slider::-moz-range-track {
width: 100%;
height: 3px;
background: rgba(0, 0, 0, 0.5);
border: 0;
border-radius: 3px;
}
.cr-slider::-moz-range-thumb {
border: none;
height: 16px;
width: 16px;
border-radius: 50%;
background: #ddd;
margin-top: -6px;
}
/*hide the outline behind the border*/
.cr-slider:-moz-focusring {
outline: 1px solid white;
outline-offset: -1px;
}
.cr-slider::-ms-track {
width: 100%;
height: 5px;
background: transparent;
/*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */
border-color: transparent;/*leave room for the larger thumb to overflow with a transparent border */
border-width: 6px 0;
color: transparent;/*remove default tick marks*/
}
.cr-slider::-ms-fill-lower {
background: rgba(0, 0, 0, 0.5);
border-radius: 10px;
}
.cr-slider::-ms-fill-upper {
background: rgba(0, 0, 0, 0.5);
border-radius: 10px;
}
.cr-slider::-ms-thumb {
border: none;
height: 16px;
width: 16px;
border-radius: 50%;
background: #ddd;
margin-top:1px;
}
.cr-slider:focus::-ms-fill-lower {
background: rgba(0, 0, 0, 0.5);
}
.cr-slider:focus::-ms-fill-upper {
background: rgba(0, 0, 0, 0.5);
}
/*******************************************/
/***********************************/
/* Rotation Tools */
/***********************************/
.cr-rotate-controls {
position: absolute;
bottom: 5px;
left: 5px;
z-index: 1;
}
.cr-rotate-controls button {
border: 0;
background: none;
}
.cr-rotate-controls i:before {
display: inline-block;
font-style: normal;
font-weight: 900;
font-size: 22px;
}
.cr-rotate-l i:before {
content: '↺';
}
.cr-rotate-r i:before {
content: '↻';
}
Binary file not shown.
+199
View File
@@ -0,0 +1,199 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/fhtw_logo_schwarz.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="7.81cm" svg:height="1.463cm" svg:x="0.353cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Zutrittskarte</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">WarmUp-Kurse</text:span>
</text:p>
</draw:text-box>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.97cm">
<draw:text-box>
<text:p text:style-name="P1"><xsl:value-of select="titelpre"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1">
<xsl:value-of select="nachname"/>
<xsl:if test="string-length(titelpost)!=0">
<xsl:text>, </xsl:text><xsl:value-of select="titelpost"/>
</xsl:if>
</text:p>
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
+206
View File
@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/fhtw_logo_farbe.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="5.827cm" svg:height="1.463cm" svg:x="2.335cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Ausweis für ao.</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Studierende</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T3">Student Card</text:span>
</text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr1" draw:name="Bild1" text:anchor-type="paragraph" svg:x="0.212cm" svg:y="0.21cm" svg:width="1.131cm" svg:height="1.24cm" draw:z-index="6">
<draw:image xlink:href="Pictures/bundesadler.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.639cm">
<draw:text-box>
<text:p text:style-name="P1"><xsl:value-of select="titelpre"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1">
<xsl:value-of select="nachname"/>
<xsl:if test="string-length(titelpost)!=0">
<xsl:text>, </xsl:text><xsl:value-of select="titelpost"/>
</xsl:if>
</text:p>
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
<text:p text:style-name="P1">Pers.-Kz. <xsl:value-of select="matrikelnummer"/></text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
+206
View File
@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/academy_logo_farbe.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="5.827cm" svg:height="1.463cm" svg:x="2.335cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Ausweis für ao.</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Studierende</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T3">Student Card</text:span>
</text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr1" draw:name="Bild1" text:anchor-type="paragraph" svg:x="0.212cm" svg:y="0.21cm" svg:width="1.131cm" svg:height="1.24cm" draw:z-index="6">
<draw:image xlink:href="Pictures/bundesadler.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.639cm">
<draw:text-box>
<text:p text:style-name="P1"><xsl:value-of select="titelpre"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1">
<xsl:value-of select="nachname"/>
<xsl:if test="string-length(titelpost)!=0">
<xsl:text>, </xsl:text><xsl:value-of select="titelpost"/>
</xsl:if>
</text:p>
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
<text:p text:style-name="P1">Pers.-Kz. <xsl:value-of select="matrikelnummer"/></text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
+199
View File
@@ -0,0 +1,199 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/alumni_logo_farbe.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="7.81cm" svg:height="1.463cm" svg:x="0.353cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Ausweis für</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Alumni Club Mitglieder</text:span>
</text:p>
</draw:text-box>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.97cm">
<draw:text-box>
<text:p text:style-name="P1"><xsl:value-of select="titelpre"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1">
<xsl:value-of select="nachname"/>
<xsl:if test="string-length(titelpost)!=0">
<xsl:text>, </xsl:text><xsl:value-of select="titelpost"/>
</xsl:if>
</text:p>
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
+199
View File
@@ -0,0 +1,199 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/fhtw_logo_schwarz.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="7.81cm" svg:height="1.463cm" svg:x="0.353cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Zutrittskarte</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Aufbaukurse</text:span>
</text:p>
</draw:text-box>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.97cm">
<draw:text-box>
<text:p text:style-name="P1"><xsl:value-of select="titelpre"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1">
<xsl:value-of select="nachname"/>
<xsl:if test="string-length(titelpost)!=0">
<xsl:text>, </xsl:text><xsl:value-of select="titelpost"/>
</xsl:if>
</text:p>
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
+199
View File
@@ -0,0 +1,199 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/fhtw_logo_schwarz.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="7.81cm" svg:height="1.463cm" svg:x="0.353cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Zutrittskarte</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Hertha Firnberg Schulen</text:span>
</text:p>
</draw:text-box>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.97cm">
<draw:text-box>
<text:p text:style-name="P1"/>
<xsl:if test="string-length(gebdatum)=0">
<text:p text:style-name="P1"/>
</xsl:if>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="nachname"/></text:p>
<xsl:if test="string-length(gebdatum)!=0">
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
</xsl:if>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
@@ -0,0 +1,199 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2"
grddl:transformation="http://docs.oasis-open.org/office/1.2/xslt/odf2rdf.xsl"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0">
<xsl:output method="xml" encoding="UTF-8" version="1.0" indent="yes" />
<xsl:template match="zutrittskarte">
<office:document-content
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
office:version="1.2">
<office:scripts/>
<office:font-face-decls>
<style:font-face style:name="Lohit Hindi1" svg:font-family="&apos;Lohit Hindi&apos;"/>
<style:font-face style:name="Times New Roman" svg:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Arial" svg:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="TheSans" svg:font-family="TheSans" style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Droid Sans Fallback" svg:font-family="&apos;Droid Sans Fallback&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Lohit Hindi" svg:font-family="&apos;Lohit Hindi&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:break-before="page"/>
<style:text-properties fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph">
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="P6" style:family="paragraph">
<loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
<style:paragraph-properties fo:line-height="100%" style:writing-mode="lr-tb"/>
<style:text-properties fo:color="#095e96" style:font-name="Liberation Sans" fo:font-size="8pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="8pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="8pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties style:font-name="Liberation Sans" fo:font-size="8pt" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties fo:color="#00649c" style:font-name="Liberation Sans" fo:font-size="10.5pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties fo:color="#71787d" style:font-name="Liberation Sans" fo:font-size="12pt" fo:font-style="normal" fo:font-weight="normal" style:font-size-asian="12pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="12pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr2" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="fr3" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" fo:background-color="transparent" draw:fill="none" draw:fill-color="#ffffff" style:shadow="none" draw:shadow-opacity="100%" style:mirror="none" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/>
</style:style>
<style:style style:name="gr1" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="0.453cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="page" style:horizontal-pos="from-left" style:horizontal-rel="page" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
<style:style style:name="gr2" style:family="graphic">
<style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" fo:min-height="1.462cm" style:run-through="foreground" style:wrap="run-through" style:number-wrapped-paragraphs="no-limit" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/>
</style:style>
</office:automatic-styles>
<office:body>
<office:text>
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<xsl:apply-templates select="student"/>
</office:text>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="student">
<xsl:variable name="uid" select="uid" />
<xsl:variable name="idx"><xsl:value-of select="position()-1"/></xsl:variable>
<text:p text:style-name="P3">
<draw:frame draw:style-name="fr2" draw:name="Bild2" text:anchor-type="paragraph" svg:x="5.302cm" svg:y="0.302cm" svg:width="2.519cm" svg:height="1.295cm" draw:z-index="7">
<draw:image xlink:href="Pictures/fhtw_logo_schwarz.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/png"/>
</draw:frame>
<draw:frame text:anchor-type="paragraph" draw:z-index="5" draw:style-name="gr2" draw:text-style-name="P6" svg:width="7.81cm" svg:height="1.463cm" svg:x="0.353cm" svg:y="0.21cm">
<draw:text-box>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Zutrittskarte</text:span>
</text:p>
<text:p text:style-name="P5">
<text:span text:style-name="T2">Vorbereitungslehrgang AMS</text:span>
</text:p>
</draw:text-box>
</draw:frame>
</text:p>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P2"/>
<text:p text:style-name="P1">
<draw:frame text:anchor-type="paragraph" draw:z-index="{$idx}0" draw:style-name="gr1" draw:text-style-name="P4" svg:width="5.733cm" svg:height="0.479cm" svg:x="2.505cm" svg:y="2.97cm">
<draw:text-box>
<text:p text:style-name="P1"><xsl:value-of select="titelpre"/></text:p>
<text:p text:style-name="P1"><xsl:value-of select="vorname"/></text:p>
<text:p text:style-name="P1">
<xsl:value-of select="nachname"/>
<xsl:if test="string-length(titelpost)!=0">
<xsl:text>, </xsl:text><xsl:value-of select="titelpost"/>
</xsl:if>
</text:p>
<text:p text:style-name="P1"><xsl:value-of select="gebdatum"/></text:p>
</draw:text-box>
</draw:frame>
<draw:frame draw:style-name="fr3" draw:name="Grafik_{$uid}" text:anchor-type="char" svg:x="0.55cm" svg:y="1.829cm" svg:width="1.75cm" svg:height="2.379cm" draw:z-index="{$idx}5">
<draw:image xlink:href="Pictures/{$uid}.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" loext:mime-type="image/jpeg"/>
</draw:frame>
</text:p>
</xsl:template>
</xsl:stylesheet >
+1 -1
View File
@@ -215,7 +215,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P8"/>
<text:p text:style-name="P4">Account Mini FAQ</text:p>
<text:p text:style-name="P8"/>
<text:p text:style-name="P6">Wie aktiviere ich meinen Acccount?</text:p>
<text:p text:style-name="P6">Wie aktiviere ich meinen Account?</text:p>
<text:p text:style-name="P9">Öffnen Sie mit ihrem Web-Browser die Adresse </text:p>
<text:p text:style-name="P9"/>
<text:p text:style-name="P2">https://cis.technikum-wien.at/cis/public/accountactivation.php</text:p>
+40 -12
View File
@@ -342,12 +342,13 @@ $qry_anzahl_mitarbeiter = "
FROM
public.tbl_person
JOIN public.tbl_benutzer USING(person_id)
JOIN public.tbl_akte USING (person_id)
LEFT JOIN PUBLIC.tbl_akte ON (tbl_akte.person_id = tbl_person.person_id
AND tbl_akte.dokument_kurzbz = 'Lichtbil'
AND (tbl_akte.inhalt IS NOT NULL OR tbl_akte.dms_id IS NOT NULL))
LEFT JOIN public.tbl_mitarbeiter ON (tbl_benutzer.uid=mitarbeiter_uid)
WHERE
foto is not NULL
AND tbl_benutzer.aktiv
AND tbl_akte.dokument_kurzbz='Lichtbil'
AND 'akzeptiert' NOT IN(SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus
WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1)
AND 'abgewiesen' NOT IN (SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus
@@ -367,12 +368,13 @@ $qry_anzahl_studenten = "
FROM
public.tbl_person
JOIN public.tbl_benutzer USING(person_id)
JOIN public.tbl_akte USING (person_id)
LEFT JOIN PUBLIC.tbl_akte ON (tbl_akte.person_id = tbl_person.person_id
AND tbl_akte.dokument_kurzbz = 'Lichtbil'
AND (tbl_akte.inhalt IS NOT NULL OR tbl_akte.dms_id IS NOT NULL))
LEFT JOIN public.tbl_mitarbeiter ON (tbl_benutzer.uid=mitarbeiter_uid)
WHERE
foto is not NULL
AND tbl_benutzer.aktiv
AND tbl_akte.dokument_kurzbz='Lichtbil'
AND 'akzeptiert' NOT IN(SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus
WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1)
AND 'abgewiesen' NOT IN (SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus
@@ -392,11 +394,12 @@ $qry_anzahl_gesamt = "
FROM
public.tbl_person
JOIN public.tbl_benutzer USING(person_id)
JOIN public.tbl_akte USING (person_id)
LEFT JOIN PUBLIC.tbl_akte ON (tbl_akte.person_id = tbl_person.person_id
AND tbl_akte.dokument_kurzbz = 'Lichtbil'
AND (tbl_akte.inhalt IS NOT NULL OR tbl_akte.dms_id IS NOT NULL))
WHERE
foto is not NULL
AND tbl_benutzer.aktiv
AND tbl_akte.dokument_kurzbz='Lichtbil'
AND 'akzeptiert' NOT IN(SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus
WHERE person_id=tbl_person.person_id ORDER BY datum desc, person_fotostatus_id desc LIMIT 1)
AND 'abgewiesen' NOT IN (SELECT fotostatus_kurzbz FROM public.tbl_person_fotostatus
@@ -418,24 +421,29 @@ echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST" style="float:left">
// Laden einer Person deren Profilfoto noch nicht akzeptiert wurde
$qry = "
SELECT
*,
tbl_person.person_id,
tbl_person.vorname,
tbl_person.nachname,
tbl_akte.dokument_kurzbz,
tbl_akte.dms_id,
(SELECT 1 FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON(mitarbeiter_uid=uid)
WHERE person_id=tbl_person.person_id LIMIT 1) as mitarbeiter
FROM
public.tbl_person
JOIN public.tbl_benutzer USING(person_id)
JOIN public.tbl_akte USING (person_id)
LEFT JOIN PUBLIC.tbl_akte ON (tbl_akte.person_id = tbl_person.person_id
AND tbl_akte.dokument_kurzbz = 'Lichtbil'
AND (tbl_akte.inhalt IS NOT NULL OR tbl_akte.dms_id IS NOT NULL))
WHERE
foto is not NULL
AND tbl_benutzer.aktiv
AND tbl_akte.dokument_kurzbz='Lichtbil'
".$ansicht;
if($error==true && $person_id!='')
{
// Wenn ein Fehler auftritt oder Bestof geklickt wird, wird die Person erneut angezeigt
$qry.=" AND person_id=".$db->db_add_param($person_id);
$qry.=" AND tbl_person.person_id=".$db->db_add_param($person_id);
}
else
{
@@ -470,7 +478,22 @@ if($result = $db->db_query($qry))
<table style="position: relative;">
<tr>
<td class="hoverbox">
<a href="#"><p class="previewtext">Originalvorschau</p><img id="image" class="image" src="../../content/bild.php?src=akte&person_id='.$row->person_id.'"><img id="imagepreview" src="../../content/bild.php?src=akte&person_id='.$row->person_id.'" class="preview"></a>
<a href="#">';
// Wenn es keine Akte mit Lichtbild gibt, das Foto der Person laden, sonst aus der Akte
if ($row->dokument_kurzbz == 'Lichtbil')
{
echo ' <p class="previewtext">Originalvorschau</p>
<img id="image" class="image" src="../../content/bild.php?src=akte&person_id='.$row->person_id.'">
<img id="imagepreview" src="../../content/bild.php?src=akte&person_id='.$row->person_id.'" class="preview">';
}
else
{
echo ' <p class="previewtext">Originalvorschau</p>
<img id="image" class="image" src="../../content/bild.php?src=person&person_id='.$row->person_id.'">
<img id="imagepreview" src="../../content/bild.php?src=person&person_id='.$row->person_id.'" class="preview">';
}
echo '
</a>
<br>
<div id="imagesize"></div>
</td>
@@ -493,7 +516,12 @@ if($result = $db->db_query($qry))
echo '<input type="submit" name="refresh" value="Refresh" /> ';
echo '</form>';
echo '<br><br><br>';
echo '<a href="#FotoUpload" onclick="window.open(\'../../content/bildupload.php?person_id='.$row->person_id.'\',\'BildUpload\', \'height=50,width=600,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\'); return false;">Bild Upload</a>';
// Wenn es eine Akte mit Lichtbild gibt, das Foto aus der Akte laden (Parameter Akte im Link) sonst aus der Person
if ($row->dokument_kurzbz == 'Lichtbil')
echo '<a href="#FotoUpload" onclick="window.open(\'bildzuschnitt.php?person_id='.$row->person_id.'&typ=akte\',\'BildUpload\', \'height=900,width=700,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\'); return false;">Bild zuschneiden/Upload</a>';
else
echo '<a href="#FotoUpload" onclick="window.open(\'bildzuschnitt.php?person_id='.$row->person_id.'&typ=person\',\'BildUpload\', \'height=900,width=700,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\'); return false;">Bild zuschneiden/Upload</a>';
if ($row->dms_id !='')
{
echo '<br><br>';
+429
View File
@@ -0,0 +1,429 @@
<?php
/*
* Copyright (C) 2006 Technikum-Wien
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
* .
* Authors: Manfred Kindl <manfred.kindl@technikum-wien.at>
*/
require_once ('../../config/cis.config.inc.php');
require_once ('../../config/global.config.inc.php');
require_once ('../../include/functions.inc.php');
require_once ('../../include/person.class.php');
require_once ('../../include/prestudent.class.php');
require_once ('../../include/benutzerberechtigung.class.php');
require_once ('../../include/akte.class.php');
require_once ('../../include/dokument.class.php');
require_once ('../../include/mail.class.php');
require_once ('../../include/phrasen.class.php');
require_once ('../../include/dms.class.php');
require_once ('../../include/fotostatus.class.php');
require_once ('../../include/studiensemester.class.php');
require_once ('../../include/nation.class.php');
require_once ('../../include/personlog.class.php');
//require_once ('../bewerbung.config.inc.php');
//require_once ('../include/functions.inc.php');
header("Content-Type: text/html; charset=utf-8");
// session_cache_limiter('none'); //muss gesetzt werden sonst funktioniert der Download mit IE8 nicht
// session_start();
$sprache = getSprache();
$p = new phrasen($sprache);
$log = new personlog();
$db = new basis_db();
if (isset($_GET['lang']))
setSprache($_GET['lang']);
$person_id = isset($_GET['person_id']) ? $_GET['person_id'] : '';
$typ = isset($_GET['typ']) ? $_GET['typ'] : 'akte'; // Parameter ob das Bild aus der Akte oder der Person geladen werden soll
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('basis/fhausweis','suid'))
{
die($rechte->errormsg);
}
$dokumenttyp = 'Lichtbil';
$error = '';
$message = '';
$dokumenttyp_upload = '';
$PHP_SELF = $_SERVER['PHP_SELF']; ?>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo $p->t('bewerbung/fileUpload'); ?></title>
<link rel="stylesheet" href="../../skin/croppie.css">
<link rel="stylesheet" type="text/css" href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="../../skin/fhcomplete.css">
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="../../vendor/twbs/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="../../include/js/croppie.js"></script>
<script type="text/javascript">
function showExtensionInfo()
{
var typ = 'Lichtbil';
var extinfo = "";
var fileReaderSupport = true;
// Check for support of FileReader.
if ( !window.FileReader || !window.File || !window.FileList || !window.Blob )
fileReaderSupport = false;
// Lichtbilder werden mit Croppie zugeschnitten und in imageupload.php hochgeladen
if (typ == 'Lichtbil' && fileReaderSupport)
{
imageUpload();
}
else
{
$(".croppie-container").empty();
}
};
function imageUpload()
{
$uploadCrop = $(".croppie-container").croppie({
enableExif: true,
enforceBoundary: true,
enableOrientation: true,
viewport: {
width: 240,
height: 320
},
boundary: {
width: 400,
height: 400
}
});
// $(".croppie-container").addClass("ready");
// $uploadCrop.croppie("bind",
// {
// url: 'Mani.jpg'
// }).then(function()
// {
// console.log("jQuery bind complete");
// });
// Empfehlung von https://www.passbildgroesse.de/ sind 827x1063. Das Seitenverhältnis 828x1104 passt aber besser zum FH-Ausweis
$("#fileselect").on("change", function () { readFile(this); });
$("#submitimage").on("click", function (ev)
{
// Check ob File gewählt wurde
// if ($('input[type=file]').val() == '')
// {
// $("#messages").empty();
// $("#messages").html( '<div class="alert alert-danger" id="danger-alert_dms_akteupload">'+
// '<button type="button" class="close" data-dismiss="alert">x</button>'+
// '<strong>No file selected</strong>'+
// '</div>');
// }
// else
{
$uploadCrop.croppie("result", {
type: "base64",
// size: {width: 828, height: 1104},
size: "original",
format: 'jpeg',
backgroundColor: '#DDDDDD'
}).then(function (resultdata) {
var src = resultdata;
var person_id = <?php echo $person_id; ?>;
var filename = $('input[type=file]').val().split('\\').pop();
//in imageupload.php wird das Bild verarbeitet und abgespeichert
$.post(
"imageupload.php",
{src: src, person_id: person_id, img_filename: filename, img_type: 'image/jpeg'},
function(data)
{
if (data.type == "success")
{
$("#messages").empty();
$("#messages").html( '<div class="alert alert-success" id="success-alert_dms_akteupload">'+
'<button type="button" class="close" data-dismiss="alert">x</button>'+
'<strong>'+data.msg+'</strong>'+
'</div>');
window.setTimeout(function()
{
$("#success-alert_dms_akteupload").fadeTo(500, 0).slideUp(500, function(){
$(this).remove();
});
//window.location.href = 'dms_akteupload.php?person_id=<?php echo $person_id; ?>';
//window.opener.location = 'bewerbung.php?active=dokumente';
}, 1000);
}
else if (data.type == "error")
{
$("#messages").empty();
$("#messages").html( '<div class="alert alert-danger" id="danger-alert_dms_akteupload">'+
'<button type="button" class="close" data-dismiss="alert">x</button>'+
'<strong>'+data.msg+'</strong>'+
'</div>');
}
},
"json"
);
});
}
});
};
$(function()
{
showExtensionInfo();
window.resizeTo(700, $('#documentForm').height() + 100);
});
function readFile(input)
{
if (input.files && input.files[0])
{
var reader = new FileReader();
reader.onload = function (e)
{
var image = new Image();
image.src = e.target.result;
image.onload = function () {
// Check auf Filetype
var splittedSource = this.src.split(';'); // base64 String splitten
var filetype = splittedSource[0];
if (filetype != 'data:image/jpeg' && filetype != 'data:image/jpg')
{
alert("Das Bild muss von Typ .jpg sein");
return false;
}
// Check auf Bildgroeße
var height = this.height;
var width = this.width;
if (height < 320 || width < 240)
{
alert("Das Bild muss mindestens die Auflösung 240x320 Pixel haben.\nBitte wählen Sie ein größeres Bild.");
return false;
}
else
{
$(".croppie-container").addClass("ready");
$uploadCrop.croppie("bind",
{
url: e.target.result
}).then(function()
{
console.log("jQuery bind complete");
});
}
};
}
reader.readAsDataURL(input.files[0]);
}
else
{
alert("Sorry - you\'re browser doesn\'t support the FileReader API");
}
};
window.setTimeout(function()
{
$("#success-alert_dms_akteupload").fadeTo(500, 0).slideUp(500, function(){
$(this).remove();
});
}, 1500);
</script>
<style>
body
{
margin:10px;
}
.errorAusstellungsnation
{
border-color: #a94442;
}
</style>
</head>
<body>
<?php
echo '<div class="container" id="messages">';
if ($error === false)
{
echo '<div class="alert alert-success" id="success-alert_dms_akteupload">
<button type="button" class="close" data-dismiss="alert">x</button>
<strong>'.$message.'</strong>
</div>';
}
elseif ($error === true)
{
echo '<div class="alert alert-danger" id="danger-alert_dms_akteupload">
<button type="button" class="close" data-dismiss="alert">x</button>
<strong>'.$p->t('global/fehleraufgetreten').' </strong>'.$message.'
</div>';
}
echo '</div>';
if ($person_id != '')
{
echo '
<form id="documentForm" method="POST" enctype="multipart/form-data" action="' . $PHP_SELF . '?person_id=' . $person_id . '&dokumenttyp=' . $dokumenttyp . '" class="form-horizontal">
<div class="container"> <br />
<div class="row">
<div class="col-md-12">
<div class="panel panel-default">
<div class="panel-heading"><strong>Upload Image</strong></div>
<div class="panel-body">';
// Container für Bildzuschnitt
echo '<div class=""><img class="croppie-container" src="../../content/bild.php?src='.$typ.'&person_id='.$person_id.'" /></div>';
echo'
<div class="">
<input id="fileselect" type="file" name="file" class="file" />
</div><br>
<input id="submitimage" type="button" name="submitimage" value="Upload" class="btn btn-labeled btn-primary">
<input type="hidden" name="fileupload" id="fileupload">
</div>
</div>
</div>
</div>
</div>
</form>';
}
else
{
echo $p->t('bewerbung/fehlerKeinePersonId');
}
function resize($filename, $width, $height)
{
$ext = explode('.', $_FILES['file']['name']);
$ext = mb_strtolower($ext[count($ext) - 1]);
// Hoehe und Breite neu berechnen
list ($width_orig, $height_orig) = getimagesize($filename);
if ($width && ($width_orig < $height_orig))
{
$width = ($height / $height_orig) * $width_orig;
}
else
{
$height = ($width / $width_orig) * $height_orig;
}
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
// Bild nur verkleinern aber nicht vergroessern
if ($width_orig > $width || $height_orig > $height)
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
else
$image_p = $image;
$tmpfname = tempnam(sys_get_temp_dir(), 'FHC');
imagejpeg($image_p, $tmpfname, 80);
imagedestroy($image_p);
@imagedestroy($image);
return $tmpfname;
}
// Sendet eine Email an die Assistenz, dass ein neues Dokument hochgeladen wurde
function sendDokumentupload($empfaenger_stgkz, $dokument_kurzbz, $orgform_kurzbz, $studiensemester_kurzbz, $prestudent_id, $dms_id)
{
global $person_id, $p;
// Array fuer Mailempfaenger. Vorruebergehende Loesung. Kindlm am 28.10.2015
$empf_array = array();
if (defined('BEWERBERTOOL_UPLOAD_EMPFAENGER'))
$empf_array = unserialize(BEWERBERTOOL_UPLOAD_EMPFAENGER);
$person = new person();
$person->load($person_id);
$dokumentbezeichnung = '';
$studiengang = new studiengang();
$studiengang->load($empfaenger_stgkz);
$typ = new studiengang();
$typ->getStudiengangTyp($studiengang->typ);
$email = $p->t('bewerbung/emailDokumentuploadStart');
$email .= '<br><table style="font-size:small"><tbody>';
$email .= '<tr><td><b>' . $p->t('global/studiengang') . '</b></td><td>' . $typ->bezeichnung . ' ' . $studiengang->bezeichnung . ($orgform_kurzbz != '' ? ' (' . $orgform_kurzbz . ')' : '') . '</td></tr>';
$email .= '<tr><td><b>' . $p->t('global/studiensemester') . '</b></td><td>' . $studiensemester_kurzbz . '</td></tr>';
$email .= '<tr><td><b>' . $p->t('global/name') . '</b></td><td>' . $person->vorname . ' ' . $person->nachname . '</td></tr>';
$email .= '<tr><td><b>' . $p->t('bewerbung/dokument') . '</b></td><td>';
$akte = new akte();
$akte->getAkten($person_id, $dokument_kurzbz);
foreach ($akte->result as $row)
{
$dokument = new dokument();
$dokument->loadDokumenttyp($row->dokument_kurzbz);
if ($row->insertvon == 'online')
{
if ($row->nachgereicht == true)
$email .= '- ' . $dokument->bezeichnung_mehrsprachig[DEFAULT_LANGUAGE] . ' -> ' . $p->t('bewerbung/dokumentWirdNachgereicht') . '<br>';
else
$email .= '<a href="' . APP_ROOT . 'cms/dms.php?id=' . $dms_id . '">' . $dokument->bezeichnung_mehrsprachig[DEFAULT_LANGUAGE] . ' [' . $row->bezeichnung . ']</a><br>';
$dokumentbezeichnung = $dokument->bezeichnung_mehrsprachig[DEFAULT_LANGUAGE];
}
}
$email .= '</td>';
$email .= '<tr><td><b>' . $p->t('bewerbung/prestudentID') . '</b></td><td>' . $prestudent_id . '</td></tr>';
$email .= '</tbody></table>';
$email .= '<br>' . $p->t('bewerbung/emailBodyEnde');
// An der FHTW werden alle Mails von Bachelor-Studiengängen an das Infocenter geschickt, solange die Bewerbung noch nicht bestätigt wurde
if (CAMPUS_NAME == 'FH Technikum Wien')
{
if( defined('BEWERBERTOOL_MAILEMPFANG') &&
BEWERBERTOOL_MAILEMPFANG != '' &&
$studiengang->typ == 'b')
{
$empfaenger = BEWERBERTOOL_MAILEMPFANG;
}
else
$empfaenger = getMailEmpfaenger($studiengang->typ, '', $orgform_kurzbz);
}
else
{
$empfaenger = getMailEmpfaenger($empfaenger_stgkz);
}
$mail = new mail($empfaenger, 'no-reply', $p->t('bewerbung/dokumentuploadZuBewerbung', array(
$dokumentbezeichnung
)) . ' ' . $person->vorname . ' ' . $person->nachname, 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($email);
if (! $mail->send())
return false;
else
return true;
}
?>
</body>
</html>
+245
View File
@@ -0,0 +1,245 @@
<?php
/*
* Copyright (C) 2006 Technikum-Wien
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
* Authors: Manfred Kindl <manfred.kindl@technikum-wien.at>
*/
header("Content-Type: text/html; charset=utf-8");
require_once ('../../config/cis.config.inc.php');
require_once ('../../include/functions.inc.php');
require_once ('../../include/person.class.php');
require_once ('../../include/benutzer.class.php');
require_once ('../../include/akte.class.php');
require_once ('../../include/phrasen.class.php');
require_once ('../../include/fotostatus.class.php');
require_once ('../../include/dms.class.php');
require_once ('../../include/benutzerberechtigung.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('basis/fhausweis','suid'))
{
die($rechte->errormsg);
}
// Bild kommt im Seitenverhältnis 3:4 passend für FH-Ausweis
$base64_src = isset($_POST['src']) ? $_POST['src'] : die($p->t('global/fehlerBeiDerParameteruebergabe').'"src"');
$person_id = isset($_POST['person_id']) ? $_POST['person_id'] : die($p->t('global/fehlerBeiDerParameteruebergabe').'"person_id"');
$img_filename = isset($_POST['img_filename']) ? $_POST['img_filename'] : die($p->t('global/fehlerBeiDerParameteruebergabe').'"img_filename"');
$img_type = isset($_POST['img_type']) ? $_POST['img_type'] : die($p->t('global/fehlerBeiDerParameteruebergabe').'"img_type"');
$result_obj = array();
// Entfernt den data-string (data:image/png;base64,) vom Beginn des Codes damit nur der reine base64 Code zurueckgegeben wird
$base64_src = (preg_replace('/^data:(.*?)base64,/', '', $base64_src));
// Falls die $base64_src danach leer sein sollte, wird abgebrochen
if ($base64_src == '')
{
$result_obj['type'] = "error";
$result_obj['msg'] = "<b>Fehler: $akte->errormsg</b>";
echo json_encode($result_obj);
exit;
}
function resize($base64, $width, $height) // 828 x 1104 -> 240 x 320
{
ob_start();
$image = imagecreatefromstring (base64_decode($base64));
// Hoehe und Breite neu berechnen
list ($width_orig, $height_orig) = getimagesizefromstring (base64_decode($base64));
if ($width && ($width_orig < $height_orig))
{
$width = intval(($height / $height_orig) * $width_orig);
}
else
{
$height = intval(($width / $width_orig) * $height_orig);
}
$image_p = imagecreatetruecolor($width, $height);
//$image = imagecreatefromjpeg($filename);
// Bild nur verkleinern aber nicht vergroessern
if ($width_orig > $width || $height_orig > $height)
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
else
$image_p = $image;
imagejpeg($image_p);
$retval = ob_get_contents();
ob_end_clean();
$retval = base64_encode($retval);
@imagedestroy($image_p);
@imagedestroy($image);
return $retval;
}
// Wenn der Fotostatus "Akzeptiert" ist, darf kein neues Foto hochgeladen werden
// Auskommentiert, da mit Recht basis/fhausweis schon möglich
/*$fs = new fotostatus();
if ($fs->akzeptiert($person_id))
die($p->t('profil/profilfotoUploadGesperrt'));*/
// DMS eintrag erstellen
$ext = strtolower(pathinfo($img_filename, PATHINFO_EXTENSION));
$dms_filename = uniqid();
$dms_filename .= "." . $ext;
$filename_path = DMS_PATH . $dms_filename;
// Im DMS wird das Bild in der Originalauflösung von 828x1104 gespeichert
$newfile = fopen($filename_path, 'w');
fwrite($newfile, base64_decode($base64_src));
if (fclose($newfile))
{
// Wenn Akte mit DMS-ID vorhanden, dann neue DMS-Version hochladen
$akte = new akte();
$version = '0';
$dms_id = '';
if ($akte->getAkten($person_id, 'Lichtbil'))
{
// Erste Akte @todo: Ist auch so in content/akte.php. Kann irrefuehrende Ergebisse liefern, wenn bereits mehrere Akten des selben Typs vorhanden sind.
if (isset($akte->result[0]))
{
$akte = $akte->result[0];
if ($akte->dms_id != '')
{
$dms = new dms();
$dms->load($akte->dms_id);
$version = $dms->version + 1;
$dms_id = $akte->dms_id;
}
}
}
$dms = new dms();
$dms->dms_id = $dms_id;
$dms->version = $version;
$dms->kategorie_kurzbz = 'Akte';
$dms->insertamum = date('Y-m-d H:i:s');
$dms->insertvon = $uid;
$dms->mimetype = cutString($img_type, 256);
$dms->filename = $dms_filename;
$dms->name = cutString($img_filename, 256, '~', true);
if ($dms->save(true))
{
$dms_id = $dms->dms_id;
$akte = new akte();
if ($akte->getAkten($person_id, 'Lichtbil'))
{
if (count($akte->result) > 0)
{
$akte = $akte->result[0];
$akte->new = false;
$akte->updateamum = date('Y-m-d H:i:s');
$akte->updatevon = $uid;
}
else
{
$akte->new = true;
$akte->insertamum = date('Y-m-d H:i:s');
$akte->insertvon = $uid;
}
}
else
{
$akte->new = true;
$akte->insertamum = date('Y-m-d H:i:s');
$akte->insertvon = $uid;
}
$akte->dokument_kurzbz = 'Lichtbil';
$akte->person_id = $person_id;
//$akte->inhalt = base64_encode($content); Fotos werden nur als DMS und in tbl_person gespeichert
$akte->mimetype = $img_type;
$akte->erstelltam = date('Y-m-d H:i:s');
$akte->gedruckt = false;
$akte->titel = cutString($img_filename, 32, '~', true); // Filename
$akte->bezeichnung = "Lichtbild gross";
$akte->uid = '';
$akte->nachgereicht = false;
// $akte->anmerkung = ''; Auch bei nachträglichem Upload bleibt die Anmerkung erhalten
$akte->dms_id = $dms_id;
if (! $akte->save())
{
$result_obj['type'] = "error";
$result_obj['msg'] = "<b>Fehler: $akte->errormsg</b>";
echo json_encode($result_obj);
}
}
else
{
$result_obj['type'] = "error";
$result_obj['msg'] = $p->t('global/fehlerBeimSpeichernDerDaten');
echo json_encode($result_obj);
}
}
else
{
$result_obj['type'] = "error";
$result_obj['msg'] = $p->t('global/dateiNichtErfolgreichHochgeladen');
echo json_encode($result_obj);
}
// Bild in tbl_person auf 240x320 skalieren
$base64_src = resize($base64_src, 240, 320);
$person = new person();
if ($person->load($person_id))
{
// base64 Wert in die Datenbank speichern
$person->foto = $base64_src;
$person->new = false;
// Fotostatus auf "hochgeladen" setzen
if ($person->save())
{
$fs = new fotostatus();
$fs->person_id = $person->person_id;
$fs->fotostatus_kurzbz = 'hochgeladen';
$fs->datum = date('Y-m-d');
$fs->insertamum = date('Y-m-d H:i:s');
$fs->insertvon = $uid;
$fs->updateamum = date('Y-m-d H:i:s');
$fs->updatevon = $uid;
if (! $fs->save(true))
echo '<span class="error">Fehler beim Setzen des Bildstatus</span>';
else
{
$result_obj['type'] = "success";
$result_obj['msg'] = "<b>Bild wurde erfolgreich gespeichert</b>";
echo json_encode($result_obj);
}
}
else
{
$result_obj['type'] = "error";
$result_obj['msg'] = "<b>" . $person->errormsg . "</b>";
echo json_encode($result_obj);
}
}
+35 -21
View File
@@ -136,6 +136,8 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
$personToDelete_obj = new person();
if ($personToDelete_obj->load($personToDelete))
{
$error = false;
$sql_query_upd1 = "BEGIN;";
$personToKeep_obj = new person();
$personToKeep_obj->load($personToKeep);
@@ -145,10 +147,32 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
{
$msg_error[] = 'Beide Personen haben eine Sozialversicherungsnummer oder ein Ersatzkennzeichen und können nicht zusammengelegt werden.<br>
Bitte wenden Sie sich an einen Administrator.';
$error = true;
}
else
// Wenn zwei gleiche rt_person Einträge vorhanden sind, wird ein Fehler ausgegeben und abgebrochen
$reihungstest_personToKeep = new reihungstest();
$reihungstest_personToKeep->getReihungstestPerson($personToKeep);
$doppelteReihungstestzuordnung = false;
foreach ($reihungstest_personToKeep->result as $row)
{
$rt_doppelt = new reihungstest();
if ($rt_doppelt->checkPersonRtStudienplanExists($personToDelete, $row->reihungstest_id, $row->studienplan_id))
{
$doppelteReihungstestzuordnung = true;
$msg_error[] = "Die Person ".$personToDelete." hat schon eine Reihungstestzuordnung
zu Reihungstest ID ".$row->reihungstest_id." im Studienplan ".$row->studienplan_id.".<br>
Sie müssen die Datensätze manuell bereinigen, bevor Sie die Personen zusammenlegen können.";
$error = true;
break;
}
}
if ($doppelteReihungstestzuordnung === false)
$sql_query_upd1 .= "UPDATE public.tbl_rt_person SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
if ($error == false)
{
$sql_query_upd1 = "BEGIN;";
// Wenn bei einer der Personen das Foto gesperrt ist, dann die Sperre uebernehmen
if ($personToDelete_obj->foto_sperre)
$sql_query_upd1 .= "UPDATE public.tbl_person SET foto_sperre=true WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";";
@@ -218,8 +242,8 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
}
// Bild in tbl_person auf 240x320 skalieren
//$base64_src = resize($base64foto, 240, 320); Auskommentiert bis das auch im Echtsystem geht
$base64_src = $base64foto;
$base64_src = resize($base64foto, 240, 320);
$sql_query_upd1 .= "UPDATE public.tbl_person SET foto=" . $db->db_add_param($base64_src) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";";
}
@@ -260,23 +284,6 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
else
$zugangscode = $personToKeep_obj->zugangscode;
// Check ob rt_person-zuordnung schon vorhanden ist
// Wenn ja, wird der Eintrag der zu löschenden Person ebenfalls gelöscht
$reihungstest_person = new reihungstest();
//if (!$reihungstest_person->getReihungstestPerson($personToKeep))
$sql_query_upd1 .= "UPDATE public.tbl_rt_person SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
/*else
{
$sql_query_upd1 .= "DELETE FROM public.tbl_rt_person WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
$reihungstest = new reihungstest($reihungstest_person->result[0]->reihungstest_id);
$msg_warning[] = "Das verbliebene Person ".$personToKeep." hat schon eine Reihungstestzuordnung
zu Reihungstest ID".$reihungstest->reihungstest_id." am ".$reihungstest->datum."
für das ".$reihungstest->studiensemester_kurzbz." im Studiengang ".$reihungstest->studiengang_kz." (Studienplan ".$reihungstest_person->result[0]->studienplan_id.")<br>
Die Reihungstestzuordnung von ".$personToDelete." wurde gelöscht";
}*/
$sql_query_upd1 .= "UPDATE addon.tbl_kompetenz SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
$sql_query_upd1 .= "UPDATE lehre.tbl_abschlusspruefung SET pruefer1=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE pruefer1=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
$sql_query_upd1 .= "UPDATE lehre.tbl_abschlusspruefung SET pruefer2=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE pruefer2=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
@@ -928,6 +935,13 @@ function resize($base64, $width, $height) // 828 x 1104 -> 240 x 320
}
function checkPersonen()
{
// Check, ob jeweils ein Radiobutton ausgewählt wurde
if(!$('input[type=radio][name=radio_1]').is(':checked') || !$('input[type=radio][name=radio_2]').is(':checked'))
{
alert('Bitte wählen Sie auf beiden Seiten einen Radio-Button aus');
return false;
}
// Wenn die Personen zu unterschiedlich sind, Warnung ausgeben
// Prüfen auf Vorname, Nachname, Geburtsdatum
var nachnameLinks = $('input[type=radio][name=radio_1]:checked').closest('tr').find('.nachname').text().toLowerCase();