Merge branch 'master' into messages

This commit is contained in:
Paolo
2019-02-15 15:31:55 +01:00
34 changed files with 1925 additions and 297 deletions
@@ -0,0 +1,349 @@
<?php
if (! defined('BASEPATH')) exit('No direct script access allowed');
/**
* List all grades of a Student
*/
class Gradelist extends Auth_Controller
{
private $_grades; // Array of Grades
/**
* Constructor
*/
public function __construct()
{
parent::__construct(
array(
'index' => array('student:r', 'student/noten:r')
)
);
// Loads models
$this->load->model('person/person_model', 'PersonModel');
$this->load->model('organisation/studiengang_model', 'StudiengangModel');
$this->load->model('crm/student_model', 'StudentModel');
$this->load->model('crm/prestudentstatus_model', 'PrestudentstatusModel');
$this->load->model('education/zeugnisnote_model', 'ZeugnisnoteModel');
$this->load->model('education/lehrveranstaltung_model', 'LehrveranstaltungModel');
$this->load->model('codex/note_model', 'NoteModel');
$this->loadPhrases(
array(
'global',
'person',
'lehre',
'ui'
)
);
$result_noten = $this->NoteModel->load();
foreach ($result_noten->retval as $row)
{
$this->_grades[$row->note]['positiv'] = $row->positiv;
$this->_grades[$row->note]['anmerkung'] = $row->anmerkung;
$this->_grades[$row->note]['notenwert'] = $row->notenwert;
}
}
/**
* Print all Grades of a person
* @param $uid UID of the Person
*/
public function index($uid = null)
{
if (is_null($uid))
$uid = getAuthUID();
// load student
$student = $this->StudentModel->load(array($uid));
if (!isSuccess($student) || !hasData($student))
{
echo "You have no Permission or User does not exists";
exit;
}
// Check if logged in User has permission to see grades of this person
$stg = $this->StudiengangModel->load($student->retval[0]->studiengang_kz);
if (!$this->hasPermission($uid, $stg->retval[0]->oe_kurzbz))
{
echo "You have no Permission or User does not exists";
exit;
}
$person = $this->PersonModel->getByUid($uid);
$courses = $this->loadCourseInformation($student->retval[0]->prestudent_id, $student->retval[0]->student_uid);
$data = array (
"user" => $uid,
"person" => $person->retval[0],
"courses" => $courses,
"grades" => $this->_grades
);
$this->load->view('person/gradelist/gradelist.php', $data);
}
/**
* Check if the Logged in User has permission to see the grades of this person
* @param $uid UID of the Person we want to see
* @param $oe_kurzbz Organisation Unit of the Person we want to see
* @return true if the logged in User is allowed to see the content, false if not
*/
private function hasPermission($uid, $oe_kurzbz)
{
$loggedinUser = getAuthUID();
if($uid != $loggedinUser)
{
$this->load->library('PermissionLib');
if($this->permissionlib->isBerechtigt('student/noten','s',$oe_kurzbz))
{
return true;
}
return false;
}
else
{
return true;
}
}
/**
* Loads the Courses and Grades of the Student
*
* @param $prestudent_id of the Student
* @return array with the courses
*/
private function loadCourseInformation($prestudent_id, $uid)
{
$this->load->library('StudienplanLib');
// Get status of Student
$result_status = $this->PrestudentstatusModel->getStatusByFilter($prestudent_id);
if (isError($result_status) || !hasData($result_status))
{
return error('No Status Found');
}
// Get Courses from studyplan for each semester of the student
foreach ($result_status->retval as $row_status)
{
if (in_array($row_status->status_kurzbz,
array('Student','Diplomand','Incoming','Abbrecher','Unterbrecher','Absolvent')))
{
// LVs fuer das Semester holen lt Studienplan
$lvtree = $this->studienplanlib->getLehrveranstaltungTree(
$row_status->studienplan_id,
$row_status->ausbildungssemester,
true
);
$courses['semester'][$row_status->studiensemester_kurzbz]['lvs'] = $lvtree;
$courses['semester'][$row_status->studiensemester_kurzbz]['lvs_nonstpl'] = array();
$result_stpl = $this->StudienplanModel->load($row_status->studienplan_id);
if(isSuccess($result_stpl) && hasData($result_stpl))
{
$stpl_bezeichnung = $result_stpl->retval[0]->bezeichnung;
}
else
$stpl_bezeichnung = 'unknown';
$courses['semester'][$row_status->studiensemester_kurzbz]['data'] = array(
'status' => $row_status->status_kurzbz,
'ausbildungssemester' => $row_status->ausbildungssemester,
'studiensemester_kurzbz' => $row_status->studiensemester_kurzbz,
'studienplan_id' => $row_status->studienplan_id,
'studienplan_bezeichnung' => $stpl_bezeichnung,
);
}
}
// Load Grades and add to studyplan
$result_zeugnis = $this->ZeugnisnoteModel->loadWhere(array("student_uid" => $uid));
if (isSuccess($result_zeugnis) && hasData($result_zeugnis))
{
foreach ($courses['semester'] as $key=>$value)
{
$this->fillNotenPart(
$result_zeugnis,
$courses['semester'][$key]['lvs'],
$value['data']['studiensemester_kurzbz']
);
}
}
// Build Array of Courses that are not part of the studyplan
foreach ($result_zeugnis->retval as $row_noten)
{
if (!isset($row_noten->found))
{
$result_lv = $this->LehrveranstaltungModel->load($row_noten->lehrveranstaltung_id);
$courses['semester'][$row_noten->studiensemester_kurzbz]['lvs_nonstpl'][] = array(
'lehrveranstaltung_id' => $row_noten->lehrveranstaltung_id,
'lehrtyp_kurzbz' => $result_lv->retval[0]->lehrtyp_kurzbz,
'pflicht' => false,
'bezeichnung' => $result_lv->retval[0]->bezeichnung,
'ects' => $result_lv->retval[0]->ects,
'note' => $row_noten->note,
'datum' => $row_noten->benotungsdatum
);
if(!isset($courses['semester'][$row_noten->studiensemester_kurzbz]['data']['ectssumme_nonstpl']))
$courses['semester'][$row_noten->studiensemester_kurzbz]['data']['ectssumme_nonstpl'] = 0;
$courses['semester'][$row_noten->studiensemester_kurzbz]['data']['ectssumme_nonstpl'] += $result_lv->retval[0]->ects;
}
}
$sum_gradeweighted_overall = 0;
$sum_ectsweighted_overall = 0;
$sum_grades_overall = 0;
$num_grades_overall = 0;
$sum_ects_overall = 0;
$sum_ects_positiv_overall = 0;
// Calculate Sum and Average
foreach ($courses['semester'] as $stsem => $row_lvs)
{
$grades = $this->getGrades($row_lvs['lvs']);
$num_grades = 0;
$sum_ects = 0;
$sum_ects_positiv = 0;
$sum_grades = 0;
$notendurchschnitt = 0;
$sum_gradeweighted = 0;
$sum_ectsweighted = 0;
foreach ($grades as $row)
{
if ($this->_grades[$row['note']]['notenwert'] != '')
{
$num_grades++;
$sum_grades += $this->_grades[$row['note']]['notenwert'];
$sum_ectsweighted += $row['ects'];
$sum_gradeweighted += $row['ects'] * $this->_grades[$row['note']]['notenwert'];
}
$sum_ects += $row['ects'];
if ($this->_grades[$row['note']]['positiv'])
$sum_ects_positiv += $row['ects'];
}
if ($num_grades > 0)
$notendurchschnitt = $sum_grades / $num_grades;
else
$notendurchschnitt = 0;
if ($sum_ectsweighted > 0)
$notendurchschnittgewichtet = $sum_gradeweighted / $sum_ectsweighted;
else
$notendurchschnittgewichtet = 0;
$num_grades_overall += $num_grades;
$sum_grades_overall += $sum_grades;
$sum_gradeweighted_overall += $sum_gradeweighted;
$sum_ectsweighted_overall += $sum_ectsweighted;
$sum_ects_overall += $sum_ects;
$sum_ects_positiv_overall += $sum_ects_positiv;
$courses['semester'][$stsem]['data']['notendurchschnitt'] = number_format($notendurchschnitt, 2);
$courses['semester'][$stsem]['data']['notendurchschnittgewichtet'] = number_format($notendurchschnittgewichtet, 2);
$courses['semester'][$stsem]['data']['ectssumme'] = number_format($sum_ects,2);
$courses['semester'][$stsem]['data']['ectssumme_positiv'] = number_formaT($sum_ects_positiv,2);
}
if ($num_grades_overall > 0)
$notendurchschnitt = $sum_grades_overall / $num_grades_overall;
else
$notendurchschnitt = 0;
if ($sum_ectsweighted_overall > 0)
$notendurchschnittgewichtet = $sum_gradeweighted_overall / $sum_ectsweighted_overall;
else
$notendurchschnittgewichtet = 0;
$courses['overall'] = array(
'notendurchschnitt' => number_format($notendurchschnitt, 2),
'notendurchschnittgewichtet' => number_format($notendurchschnittgewichtet, 2),
'ectssumme' => $sum_ects_overall,
'ectssumme_positiv' => $sum_ects_positiv_overall
);
return $courses;
}
/**
* Combines the Studyplan Courses recursively with the Grades of the Student
* Grades that are found in the Studyplan are marked, the others are added to a separate list
* @param $noten reference to array of all grades.
* @param $courses reference to array of all courses.
* @param $studiensemester_kurzbz Studiensemester of the Course and Grades
*/
private function fillNotenPart(&$noten, &$courses, $studiensemester_kurzbz)
{
foreach ($courses as $key => $value)
{
foreach ($noten->retval as $notenkey => $row_noten)
{
if ($row_noten->lehrveranstaltung_id == $value['lehrveranstaltung_id']
&& $row_noten->studiensemester_kurzbz == $studiensemester_kurzbz)
{
$courses[$key]['note'] = $row_noten->note;
$courses[$key]['datum'] = $row_noten->benotungsdatum;
$noten->retval[$notenkey]->found = true;
}
if (isset($value['childs']))
$this->fillNotenPart($noten, $courses[$key]['childs'], $studiensemester_kurzbz);
}
}
}
/**
* Reads all the Courses recursivly and Returns an Array with the Grades and ECTS
* @param $courses array of courses
* @return array with grades and ects
*/
public function getGrades($courses)
{
$grades = array();
foreach ($courses as $row)
{
if (isset($row['note']) && $row['note'] != '')
{
$grades[] = array(
'note' => $row['note'],
'ects' => $row['ects']
);
}
if ($row['childs'])
{
$childgrades = $this->getGrades($row['childs']);
$grades = array_merge($grades, $childgrades);
}
}
return $grades;
}
/**
* Helper Function to Display recursive Courses
* @param $course array if courses
* @param $depth integer defines the number parent elements
*/
static function printRow($course, $depth)
{
$ci =& get_instance();
$ci->load->view('person/gradelist/course.php',
array(
'course' => $course,
'depth' => $depth
)
);
if (isset($course['childs']))
{
foreach ($course['childs'] as $row_course)
Gradelist::printRow($row_course, $depth + 1);
}
}
}
+72
View File
@@ -0,0 +1,72 @@
<?php
if (! defined("BASEPATH")) exit("No direct script access allowed");
class StudienplanLib
{
/**
* Loads model OrganisationseinheitModel
*/
public function __construct()
{
$this->ci =& get_instance();
// Loads model Organisationseinheit_model
$this->ci->load->model('organisation/Studienplan_model', 'StudienplanModel');
}
public function getLehrveranstaltungTree($studienplan_id, $semester, $studplan = null)
{
$tree = array();
$data = $this->ci->StudienplanModel->getStudienplanLehrveranstaltung($studienplan_id, $semester);
if(isSuccess($data) && hasData($data))
{
$this->lehrveranstaltungen = $data->retval;
foreach($this->lehrveranstaltungen as $row)
{
if (!is_null($studplan) && $row->export != $studplan)
continue;
if (is_null($row->studienplan_lehrveranstaltung_id_parent))
{
$treeitem = array(
'lehrveranstaltung_id' => $row->lehrveranstaltung_id,
'lehrtyp_kurzbz' => $row->lehrtyp_kurzbz,
'pflicht' => $row->pflicht,
'bezeichnung' => $row->bezeichnung,
'ects' => $row->ects
);
$childs = $this->getChildElements($row->studienplan_lehrveranstaltung_id);
if(is_array($childs) && count($childs) > 0)
$treeitem['childs'] = $childs;
$tree[] = $treeitem;
}
}
}
return $tree;
}
private function getChildElements($studienplan_lehrveranstaltung_id)
{
$subtree = array();
foreach($this->lehrveranstaltungen as $row)
{
if($studienplan_lehrveranstaltung_id == $row->studienplan_lehrveranstaltung_id_parent)
{
$treeitem = array(
'lehrveranstaltung_id' => $row->lehrveranstaltung_id,
'lehrtyp_kurzbz' => $row->lehrtyp_kurzbz,
'pflicht' => $row->pflicht,
'bezeichnung' => $row->bezeichnung,
'ects' => $row->ects
);
$childs = $this->getChildElements($row->studienplan_lehrveranstaltung_id);
if(is_array($childs))
$treeitem['childs'] = $childs;
$subtree[] = $treeitem;
}
}
return $subtree;
}
}
@@ -13,12 +13,12 @@ class Kostenstelle_model extends DB_Model
}
/**
* Gets all active Kostenstellen for a geschaeftsjahr, as determined by the geschaeftsjahrvon and bis fields
* Gets Kostenstellen for a geschaeftsjahr, as determined by the geschaeftsjahrvon and bis fields
* Gets Kostenstellen of current Geschaeftsjahr if Geschaeftsjahr not specified
* @param $geschaeftsjahr
* @return array|null Kostenstellen or empty array if no geschaeftsjahr found
*/
public function getActiveKostenstellenForGeschaeftsjahr($geschaeftsjahr = null)
public function getKostenstellenForGeschaeftsjahr($geschaeftsjahr = null)
{
$this->load->model('organisation/geschaeftsjahr_model', 'GeschaeftsjahrModel');
@@ -47,12 +47,12 @@ class Kostenstelle_model extends DB_Model
}
/**
* Gets all active Kostenstellen for a geschaeftsjahr, as determined by the geschaeftsjahrvon and bis fields, together with their oe,
* Gets Kostenstellen for a geschaeftsjahr, as determined by the geschaeftsjahrvon and bis fields, together with their oe,
* hierarchally sorted, gets Kostenstellen of current Geschaeftsjahr if Geschaeftsjahr not specified
* @param null $geschaeftsjahr
* @return array|null
*/
public function getActiveKostenstellenForGeschaeftsjahrWithOe($geschaeftsjahr = null)
public function getKostenstellenForGegitschaeftsjahrWithOe($geschaeftsjahr = null)
{
$this->load->model('organisation/geschaeftsjahr_model', 'GeschaeftsjahrModel');
+7 -7
View File
@@ -14,13 +14,13 @@ class Student_model extends DB_Model
}
// ****
// * Generiert die Matrikelnummer
// * FORMAT: 0710254001
// * 07 = Jahr
// * 1/2/0 = WS/SS/incoming
// * 0254 = Studiengangskennzahl vierstellig
// * 001 = Laufende Nummer
// ****
// * Generiert die Matrikelnummer
// * FORMAT: 0710254001
// * 07 = Jahr
// * 1/2/0 = WS/SS/incoming
// * 0254 = Studiengangskennzahl vierstellig
// * 001 = Laufende Nummer
// ****
public function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
{
$jahr = mb_substr($studiensemester_kurzbz, 4);
@@ -11,35 +11,46 @@ class Studienplan_model extends DB_Model
$this->dbTable = "lehre.tbl_studienplan";
$this->pk = "studienplan_id";
}
public function getStudienplaene($studiengang_kz)
{
$this->addJoin("lehre.tbl_studienordnung", "studienordnung_id");
return $this->loadWhere(array("studiengang_kz" => $studiengang_kz));
}
public function getStudienplaeneBySemester($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester = null, $orgform_kurzbz = null)
{
$this->addJoin("lehre.tbl_studienordnung", "studienordnung_id");
$this->addJoin("lehre.tbl_studienplan_semester", "studienplan_id");
$whereArray = array(
"tbl_studienplan.aktiv" => "TRUE",
"tbl_studienordnung.studiengang_kz" => $studiengang_kz,
"tbl_studienplan_semester.studiensemester_kurzbz" => $studiensemester_kurzbz
);
if(!is_null($ausbildungssemester))
{
$whereArray["tbl_studienplan_semester.semester"] = $ausbildungssemester;
}
if(!is_null($orgform_kurzbz))
{
$whereArray["orgform_kurzbz"] = $orgform_kurzbz;
}
return $this->StudienplanModel->loadWhere($whereArray);
}
}
public function getStudienplanLehrveranstaltung($studienplan_id, $semester)
{
$this->addJoin('lehre.tbl_studienplan_lehrveranstaltung', 'studienplan_id');
$this->addJoin('lehre.tbl_lehrveranstaltung', 'lehrveranstaltung_id');
$this->addOrder('tbl_lehrveranstaltung.sort');
return $this->loadWhere(array(
'studienplan_id' => $studienplan_id,
'tbl_studienplan_lehrveranstaltung.semester' => $semester
));
}
}
@@ -0,0 +1,16 @@
<?php
if(isset($course['note']) && isset($grades[$course['note']]))
$gradeclass = ($grades[$course['note']]['positiv']?'gradelist_row_grade_positiv':'gradelist_row_grade_negativ');
else
$gradeclass = '';
?>
<tr class="gradelist_row_<?php echo $course['lehrtyp_kurzbz']; ?> gradelist_row_depth_<?php echo $depth; ?>">
<td><?php echo $course['bezeichnung']; ?></td>
<td align="right"><?php echo (isset($course['ects'])?$course['ects']:''); ?></td>
<td class="<?php echo $gradeclass; ?>">
<?php
if (isset($course['note']) && isset($grades[$course['note']]['anmerkung']))
echo $grades[$course['note']]['anmerkung'];
?>
</td>
</tr>
@@ -0,0 +1,52 @@
<?php
$this->load->view(
'templates/FHC-Header',
array(
'title' => 'Gradelist',
'jquery' => true,
'jqueryui' => true,
'bootstrap' => true,
'fontawesome' => true,
'ajaxlib' => true,
'customCSSs' => array(
'public/css/tools/gradelist.css'
),
'customJSs' => array(
'public/js/bootstrapper.js'
)
)
);
?>
<body>
<div id="wrapper">
<div id="page-wrapper">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<h1 class="page-header">
<?php echo ucfirst($this->p->t('global', 'uebersicht')); ?> -
<?php echo $person->vorname.' '.$person->nachname.' ('.$user.')';?>
</h1>
</div>
</div>
<div>
<b><?php echo $this->p->t('lehre', 'notendurchschnitt'); ?>:</b>
<?php echo $courses['overall']['notendurchschnitt'] ?><br>
<b><?php echo $this->p->t('lehre', 'gewichteternotendurchschnitt'); ?>:</b>
<?php echo $courses['overall']['notendurchschnittgewichtet'] ?><br>
<b><?php echo $this->p->t('lehre', 'ects'); ?>:</b>
<?php echo $courses['overall']['ectssumme_positiv'] ?><br>
<br>
<?php
foreach ($courses['semester'] as $sem => $row_semester)
{
$this->load->view('person/gradelist/semester.php', $row_semester);
}
?>
</div>
</div>
</div>
</div>
</body>
<?php $this->load->view('templates/FHC-Footer'); ?>
@@ -0,0 +1,117 @@
<?php
$semesterdata = $data;
$tableid='table-semester-'.$semesterdata['studiensemester_kurzbz'];
?>
<div id="accordion_<?php echo $tableid;?>">
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading" id="headingcollapse_<?php echo $tableid;?>">
<a class="btn btn-link"
data-toggle="collapse"
data-target="#collapse_<?php echo $tableid;?>"
aria-expanded="true"
aria-controls="collapse_<?php echo $tableid;?>"
>
<?php
echo $semesterdata['studiensemester_kurzbz'].' - '.
$semesterdata['ausbildungssemester'].'. '.$this->p->t('lehre','ausbildungssemester').' - '.
$semesterdata['status'].' | '.
$semesterdata['ectssumme_positiv'];
if(isset($semesterdata['ectssumme_nonstpl']))
echo ' + '.$semesterdata['ectssumme_nonstpl'];
echo ' '.$this->p->t('lehre','ects');
?>
</a>
</div>
<div id="collapse_<?php echo $tableid;?>"
class="panel-collapse collapse"
aria-labelledby="headingcollapse_<?php echo $tableid;?>"
data-parent="#accordion_<?php echo $tableid;?>"
>
<div class="panel-body">
<?php
if (is_array($lvs) && count($lvs) > 0):
echo '<h4>Lehrveranstaltungen laut Studienplan '.$semesterdata['studienplan_bezeichnung'].'</h4>';
?>
<table id="<?php echo $tableid;?>" class="gradetable">
<thead>
<tr>
<th><?php echo $this->p->t('lehre','lehrveranstaltung');?></th>
<th><?php echo $this->p->t('lehre','ects');?></th>
<th><?php echo $this->p->t('lehre','note');?></th>
</tr>
</thead>
<tbody>
<?php
foreach ($lvs as $row_course)
{
Gradelist::printRow($row_course, 0);
}
?>
</tbody>
<tfoot>
<tr>
<th></th>
<th style="text-align: right">
<?php
echo (isset($semesterdata['ectssumme_positiv'])?$semesterdata['ectssumme_positiv']:'');
if (isset($semesterdata['ectssumme'])
&& isset($semesterdata['ectssumme_positiv'])
&& $semesterdata['ectssumme'] != $semesterdata['ectssumme_positiv'])
{
echo ' ('.$semesterdata['ectssumme'].')';
}
?>
</th>
<th></th>
</tr>
</tfoot>
</table>
<?php
endif;
if (isset($lvs_nonstpl) && count($lvs_nonstpl) > 0):
?>
<h2><?php echo $this->p->t('lehre','nichtstudienplanrelevanteKurse'); ?></h2>
<table id="<?php echo $tableid;?>_nonstpl" class="gradetable">
<thead>
<tr>
<th><?php echo $this->p->t('lehre','lehrveranstaltung');?></th>
<th><?php echo $this->p->t('lehre','ects');?></th>
<th><?php echo $this->p->t('lehre','note');?></th>
</tr>
</thead>
<tbody>
<?php
if(is_array($lvs_nonstpl))
{
foreach ($lvs_nonstpl as $row_course)
{
Gradelist::printRow($row_course, 0);
}
}
?>
</tbody>
<tfoot>
<tr>
<th></th>
<th style="text-align: right"><?php echo (isset($semesterdata['ectssumme_nonstpl'])?number_format($semesterdata['ectssumme_nonstpl'],2):''); ?></th>
<th></th>
</tr>
</tfoot>
</table>
<?php
endif;
?>
</div>
<div class="panel-footer">
<b><?php echo $this->p->t('lehre','notendurchschnitt');?>:</b>
<?php echo (isset($semesterdata['notendurchschnitt'])?$semesterdata['notendurchschnitt']:'');?>
<b><?php echo $this->p->t('lehre','gewichteternotendurchschnitt');?>:</b>
<?php echo (isset($semesterdata['notendurchschnittgewichtet'])?$semesterdata['notendurchschnittgewichtet']:'');?>
</div>
</div>
</div>
</div>
</div>
@@ -9,6 +9,7 @@
$LOGDATA_NAME_PARKED = '\'Parked\'';
$LOGTYPE_KURZBZ = '\'Processstate\'';
$STATUS_KURZBZ = '\'Wartender\', \'Bewerber\', \'Aufgenommener\', \'Student\'';
$ADDITIONAL_STG = '10021,10027';
$query = '
WITH currentOrNextStudiensemester AS (
@@ -64,7 +65,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND NOT EXISTS (
SELECT 1
FROM tbl_prestudentstatus spss
@@ -83,7 +87,10 @@
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT cnss.studiensemester_kurzbz FROM currentOrNextStudiensemester cnss)
AND NOT EXISTS (
SELECT 1
@@ -104,7 +111,11 @@
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (
sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT cnss.studiensemester_kurzbz FROM currentOrNextStudiensemester cnss)
AND NOT EXISTS (
SELECT 1
@@ -125,7 +136,10 @@
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT cnss.studiensemester_kurzbz FROM currentOrNextStudiensemester cnss)
AND NOT EXISTS (
SELECT 1
@@ -146,7 +160,10 @@
AND pss.bewerbung_abgeschicktamum IS NULL
AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT cnss.studiensemester_kurzbz FROM currentOrNextStudiensemester cnss)
AND NOT EXISTS (
SELECT 1
@@ -166,7 +183,10 @@
WHERE pss.status_kurzbz IN ('.$STATUS_KURZBZ.')
AND pss.bewerbung_abgeschicktamum IS NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.start >= NOW())
AND NOT EXISTS (
SELECT 1
@@ -206,7 +226,10 @@
FROM public.tbl_prestudent sps
JOIN public.tbl_studiengang ssg USING(studiengang_kz)
WHERE sps.person_id = p.person_id
AND ssg.typ IN ('.$STUDIENGANG_TYP.')
AND (ssg.typ IN ('.$STUDIENGANG_TYP.')
OR
ssg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND '.$INTERESSENT_STATUS.' = (
SELECT spss.status_kurzbz
FROM public.tbl_prestudentstatus spss
@@ -6,6 +6,7 @@
$TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\'';
$LOGDATA_NAME = '\'Login with code\', \'New application\'';
$REJECTED_STATUS = '\'Abgewiesener\'';
$ADDITIONAL_STG = '10021,10027';
$query = '
SELECT
@@ -51,7 +52,10 @@
JOIN public.tbl_studiengang sg USING(studiengang_kz)
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.bestaetigtam is not null
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
@@ -65,7 +69,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
@@ -78,7 +85,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
AND NOT EXISTS (
SELECT 1
@@ -97,7 +107,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
LIMIT 1
) AS "StgAbgeschickt",
@@ -167,7 +180,10 @@
FROM public.tbl_prestudent ps
JOIN public.tbl_studiengang sg USING(studiengang_kz)
WHERE ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND EXISTS (
SELECT 1
FROM public.tbl_prestudentstatus pss
@@ -5,6 +5,7 @@
$STUDIENGANG_TYP = '\'b\'';
$TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\'';
$LOGDATA_NAME = '\'Login with code\', \'New application\'';
$ADDITIONAL_STG = '10021,10027';
$query = '
SELECT
@@ -41,7 +42,10 @@
JOIN public.tbl_studiengang sg USING(studiengang_kz)
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
@@ -54,7 +58,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
@@ -67,7 +74,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
LIMIT 1
) AS "AnzahlAbgeschickt",
@@ -79,7 +89,10 @@
WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.'
AND pss.bewerbung_abgeschicktamum IS NOT NULL
AND ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND pss.studiensemester_kurzbz IN (SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >= NOW())
LIMIT 1
) AS "StgAbgeschickt",
@@ -167,7 +180,10 @@
FROM public.tbl_prestudent ps
JOIN public.tbl_studiengang sg USING(studiengang_kz)
WHERE ps.person_id = p.person_id
AND sg.typ IN ('.$STUDIENGANG_TYP.')
AND (sg.typ IN ('.$STUDIENGANG_TYP.')
OR
sg.studiengang_kz in('.$ADDITIONAL_STG.')
)
AND EXISTS (
SELECT 1
FROM public.tbl_prestudentstatus pss
+2 -1
View File
@@ -93,10 +93,11 @@
// NavigationWidget CSS
if ($navigationwidget === true) generateCSSsInclude('public/css/NavigationWidget.css');
generateCSSsInclude('public/css/fhcomplete.css');
// Eventually required CSS
generateCSSsInclude($customCSSs); // Eventually required CSS
// --------------------------------------------------------------------------------------------------------
// Javascripts
@@ -129,7 +129,7 @@ if (!empty($anmeldungen))
{
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
$date = strtotime($date);
$date = $date+(60*$pruefungsintervall*($count));
$date = $date+(60*$pruefungsintervall*($anmeldung->reihung-1));
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("H:i",$date);
$count++;
}
@@ -248,7 +248,7 @@ $rechte->getBerechtigungen($uid);
{
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
$date = strtotime($date);
$date = $date+(60*$pruefungsintervall*($count));
$date = $date+(60*$pruefungsintervall*($anmeldung->reihung-1));
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("H:i",$date);
$count++;
}
+5 -5
View File
@@ -56,13 +56,13 @@ echo '<!DOCTYPE HTML>
}
})
// Set number of result rows after filtering
.bind("filterEnd",function(e, t)
.bind("filterEnd",function(e, t)
{
var rows = $('table.hasFilters tbody tr:visible').length;
$("#rowCounter").html(rows);
});
$("#toggle").on("click", function(e)
$("#toggle").on("click", function(e)
{
$("#table").checkboxes("toggle");
e.preventDefault();
@@ -72,7 +72,7 @@ echo '<!DOCTYPE HTML>
$("#mailSendButton").html('<?php echo $p->t('mailverteiler/mailAnAlleSenden'); ?>');
});
$("#uncheck").on("click", function(e)
$("#uncheck").on("click", function(e)
{
$("#table").checkboxes("uncheck");
e.preventDefault();
@@ -175,7 +175,7 @@ if (isset($_GET['all']))
else
{
$qry = "SELECT
vorname, nachname, uid
vorname, nachname, uid, geschlecht
FROM
campus.vw_student
WHERE
Binary file not shown.
+7
View File
@@ -110,6 +110,7 @@ foreach($addon_obj->result as $addon)
<command id="menu-statistic-notenspiegel:command" oncommand="StatistikPrintNotenspiegel('html');"/>
<command id="menu-statistic-notenspiegel-excel:command" oncommand="StatistikPrintNotenspiegel('xls');"/>
<command id="menu-statistic-notenspiegel-excel-erweitert:command" oncommand="StatistikPrintNotenspiegelErweitert('xls');"/>
<command id="menu-statistic-notenspiegel-student:command" oncommand="StatistikPrintNotenspiegelStudent();"/>
<command id="menu-statistic-substatistik-studentenprosemester-excel:command" oncommand="StatistikPrintStudentenProSemester('xls');"/>
<command id="menu-statistic-substatistik-studentenprosemester-html:command" oncommand="StatistikPrintStudentenProSemester('');"/>
<command id="menu-statistic-substatistik-alvsstatistik-excel:command" oncommand="StatistikPrintALVSStatistik('xls');"/>
@@ -371,6 +372,12 @@ foreach($addon_obj->result as $addon)
label = "&menu-statistic-notenspiegel.label;"
command = "menu-statistic-notenspiegel:command"
accesskey = "&menu-statistic-notenspiegel.accesskey;"/>
<menuitem
id = "menu-statistic-notenspiegel-student"
key = "menu-statistic-notenspiegel-student:key"
label = "&menu-statistic-notenspiegel-student.label;"
command = "menu-statistic-notenspiegel-student:command"
accesskey = "&menu-statistic-notenspiegel-student.accesskey;"/>
</menupopup>
</menu>
</menupopup>
+20
View File
@@ -1077,6 +1077,26 @@ function StatistikPrintNotenspiegelErweitert(typ)
window.open('<?php echo APP_ROOT ?>content/statistik/notenspiegel_erweitert.php?studiengang_kz='+studiengang_kz+'&semester='+semester+'&typ='+typ+'&orgform='+orgform,'Notenspiegel');
}
function StatistikPrintNotenspiegelStudent()
{
var tree = document.getElementById('student-tree');
var data='';
//Wenn nichts markiert wurde -> alle exportieren
if(tree.currentIndex==-1)
{
alert("Bitte zuerst einen Studenten markieren");
return;
}
var student_uid = getTreeCellText(tree, 'student-treecol-uid', tree.currentIndex);
if (student_uid == '')
{
alert('Markierte Person ist kein Student');
return;
}
window.open('<?php echo APP_ROOT ?>index.ci.php/person/gradelist/index/'+student_uid,'Notenspiegel');
}
// ****
// * Liefert eine statistik ueber die Anzahl der Interessenten/Bewerber Studenten
// ****
+1 -1
View File
@@ -473,7 +473,7 @@ function SyncLVPlan()
// ****
function OpenManualTempus()
{
window.open('<?php echo APP_ROOT ?>content/Tempus.pdf','Manual');
window.open('https://fhcomplete.technikum-wien.at/dokuwiki/doku.php?id=tempus:allgemeines','Manual');
}
// ****
+4
View File
@@ -30,6 +30,8 @@ class benutzer extends person
public $bn_ext_id;
public $aktivierungscode;
public $result = array();
public $updateaktivam;
public $updateaktivvon;
/**
* Konstruktor - Uebergibt die Connection und laedt optional einen Benutzer
@@ -65,6 +67,8 @@ class benutzer extends person
$this->bnaktiv = $this->db_parse_bool($row->aktiv);
$this->alias = $row->alias;
$this->aktivierungscode = $row->aktivierungscode;
$this->updateaktivam = $row->updateaktivam;
$this->updateaktivvon = $row->updateaktivvon;
if(!person::load($row->person_id))
return false;
+4
View File
@@ -114,6 +114,10 @@
<!ENTITY menu-statistic-notenspiegel.label "Notenspiegel HTML">
<!ENTITY menu-statistic-notenspiegel.accesskey "H">
<!ENTITY menu-statistic-notenspiegel-student.key "S">
<!ENTITY menu-statistic-notenspiegel-student.label "Notenspiegel Student">
<!ENTITY menu-statistic-notenspiegel-student.accesskey "S">
<!ENTITY menu-statistic-substatistik-bewerberstatistik.label "BewerberInnenstatistik">
<!ENTITY menu-statistic-substatistik-bewerberstatistik.accesskey "B">
+23
View File
@@ -0,0 +1,23 @@
.page-header {
margin: 10px 0 5px;
}
h1 {
font-size: 2rem;
}
h2 {
font-size: 1.8rem;
}
h3 {
font-size: 1.6rem;
}
h4 {
font-size: 1.4rem;
}
h5 {
font-size: 1.2rem;
}
h6 {
font-size: 1rem;
}
+5 -1
View File
@@ -19,6 +19,10 @@
border-bottom: #ccc 2px solid !important;
}
/* Remove black border at top of table footer */
.tablesorter-default tfoot > tr > th {
border-top: #ccc 2px solid !important;
}
/* set colors of zebra widget */
table.tablesorter tbody tr.even td, table.tablesorter tbody tr.even:hover, table.tablesorter tbody tr.even td:hover{
background-color: #ffff;
@@ -57,4 +61,4 @@ table.tablesort-hover tr:hover, .tablesort-active{
/* bring datepicker to front */
#ui-datepicker-div{
z-index: 9999 !important;
}
}
+40
View File
@@ -0,0 +1,40 @@
.gradetable > thead > tr > th{
border-bottom: 1px solid black;
}
.gradetable > tbody > tr > td{
border-bottom: 1px solid #eeeeee;
}
.gradetable > tfoot > tr > th {
border-top: 1px solid black;
}
.gradelist_row_lv {
}
.gradelist_row_modul > td {
border-bottom: 1px solid black;
background-color: #eeeeee;
}
.gradelist_row_grade_positiv {
color: green;
}
.gradelist_row_grade_negativ {
color: red;
}
.gradelist_row_depth_1 > td:first-child {
padding-left: 15px !important;
}
.gradelist_row_depth_2 > td:first-child {
padding-left: 30px !important;
}
.gradelist_row_depth_3 > td:first-child {
padding-left: 45px !important;
}
.gradelist_row_depth_4 > td:first-child {
padding-left: 60px !important;
}
.gradelist_row_depth_5 > td:first-child {
padding-left: 75px !important;
}
.gradelist_row_depth_6 > td:first-child {
padding-left: 90px !important;
}
+4 -1
View File
@@ -25,7 +25,10 @@ var FHC_PhrasesLib = {
* @param {Object} params : parameters to be replaced instead of {<parameter name>} in phraseObj.text
* @returns {String} : phrase-text
*/
t: function(category, phrase, params = {}) {
t: function(category, phrase, params) {
if (typeof(params)=='undefined')
params = {};
// Checks if FHC_JS_PHRASES_STORAGE_OBJECT is an array
if ($.isArray(FHC_JS_PHRASES_STORAGE_OBJECT))
+42 -29
View File
@@ -480,7 +480,8 @@ var InfocenterDetails = {
return;
// check if a prestudent in same semester is already freigegeben - then not send message again
var freigegeben = false;
var rtFreigegeben = false;
var stgFreigegeben = false;
var receiverPrestudentstatus = null;
//get prestudentstatus of message receiver
@@ -509,8 +510,15 @@ var InfocenterDetails = {
&& prestudentstatus.bestaetigtam !== null && prestudentstatus.status_kurzbz === "Interessent"
&& prestudent.studiengangtyp === "b")
{
freigegeben = true;
break;
if (prestudentstatus.statusgrund_id === null)
{
rtFreigegeben = true;
break;
}
else if($.isNumeric(prestudentstatus.statusgrund_id))
{
stgFreigegeben = true;
}
}
}
}
@@ -520,46 +528,51 @@ var InfocenterDetails = {
var studiengangbezeichnung_englisch = receiverPrestudentstatus.studiengangbezeichnung_englisch;
var msgvars = {};
if (freigegeben)
if (rtfreigabe)
{
InfocenterDetails._refreshLog();
//if already freigegeben, still send (shorter) message if Quereinsteiger
if (ausbildungssemester > 1)
{
msgvars = {
'ausbildungssemester': ausbildungssemester,
'studiengangbezeichnung': studiengangbezeichnung,
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
};
InfocenterDetails.sendFreigabeMessage(prestudentid, RTFREIGABE_MESSAGE_VORLAGE_QUER_KURZ, msgvars);
}
}
else
{
var vorlage_kurzbz = null;
if (rtfreigabe)
if (rtFreigegeben)
{
//if already for RT freigegeben, still send short message if Quereinsteiger
if (ausbildungssemester > 1)
{
vorlage_kurzbz = RTFREIGABE_MESSAGE_VORLAGE_QUER;
msgvars = {
/*'rtlink': FHC_JS_DATA_STORAGE_OBJECT.app_root + 'addons/bewerbung/cis/registration.php?active=aufnahme',*/
'ausbildungssemester': ausbildungssemester,
'studiengangbezeichnung': studiengangbezeichnung,
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
}
};
InfocenterDetails.sendFreigabeMessage(prestudentid, RTFREIGABE_MESSAGE_VORLAGE_QUER_KURZ, msgvars);
}
}
else //not already for RT freigegeben - send RTfreigabe message
{
var vorlage = null;
//send Quereinstiegsmessage if later Ausbildungssemester
if (ausbildungssemester > 1)
{
msgvars = {
'ausbildungssemester': ausbildungssemester,
'studiengangbezeichnung': studiengangbezeichnung,
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
};
vorlage = RTFREIGABE_MESSAGE_VORLAGE_QUER
}
else
{
vorlage_kurzbz = RTFREIGABE_MESSAGE_VORLAGE;
//send normal RTfreigabe message
vorlage = RTFREIGABE_MESSAGE_VORLAGE
}
InfocenterDetails.sendFreigabeMessage(prestudentid, vorlage, msgvars);
}
else
}
else if (rtfreigabe === false)
{
// if Freigabe to Studiengang, send StgFreigabe Message if not already sent
if (!stgFreigegeben)
{
vorlage_kurzbz = STGFREIGABE_MESSAGE_VORLAGE;
InfocenterDetails.sendFreigabeMessage(prestudentid, STGFREIGABE_MESSAGE_VORLAGE, msgvars);
}
InfocenterDetails.sendFreigabeMessage(prestudentid, vorlage_kurzbz, msgvars);
}
};
@@ -727,7 +740,7 @@ var InfocenterDetails = {
var prestudent_id = this.id.substr(this.id.indexOf("_") + 1);
var statusgrund_id = $("#frgstatusgrselect_" + prestudent_id + " select[name=frgstatusgrund]").val();
var data = {"prestudent_id": prestudent_id, "statusgrund_id": statusgrund_id};
InfocenterDetails.saveFreigabe(data);//Studiengangfreigabe
InfocenterDetails.saveFreigabe(data, false);//Studiengangfreigabe
}
)
},
+120 -96
View File
@@ -28,17 +28,17 @@ require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/lehreinheit.class.php');
require_once('../include/fachbereich.class.php');
require_once('../include/organisationseinheit.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/bisverwendung.class.php');
if(isset($_SERVER['REMOTE_USER']))
if (isset($_SERVER['REMOTE_USER']))
{
// Wenn das Script direkt aufgerufen wird muss es ein Admin sein
$user=get_uid();
$berechtigung = new benutzerberechtigung();
$berechtigung->getBerechtigungen($user);
if(!$berechtigung->isBerechtigt('admin'))
if (!$berechtigung->isBerechtigt('admin'))
die('Sie haben keine Berechtigung fuer diese Seite');
}
@@ -51,16 +51,16 @@ header("Pragma: no-cache");
header("Content-type: application/xhtml+xml");
//Parameter holen
if(isset($_GET['uid']))
if (isset($_GET['uid']))
$uid = $_GET['uid'];
else
$uid=null;
$uid = null;
if(isset($_GET['stg_kz']))
if (isset($_GET['stg_kz']))
$studiengang_kz = $_GET['stg_kz'];
else
die('Fehlerhafte Parameteruebergabe');
if(isset($_GET['ss']))
if (isset($_GET['ss']))
$ss = $_GET['ss'];
else
die('Fehlerhafte Parameteruebergabe');
@@ -77,20 +77,19 @@ foreach ($studiengang->result as $row)
//Studiengang laden
$studiengang = new studiengang($studiengang_kz);
//Fachbereiche laden
$fb_arr = array();
$fachbereich_obj = new fachbereich();
$fachbereich_obj->getAll();
foreach ($fachbereich_obj->result as $fb)
//Organisationseinheiten laden
$oe_arr = array();
$organisationseinheit_obj = new organisationseinheit();
$organisationseinheit_obj->getAll();
foreach ($organisationseinheit_obj->result as $oe)
{
$fb_arr[$fb->oe_kurzbz] = $fb->bezeichnung;
$fb_arr[$fb->fachbereich_kurzbz] = $fb->bezeichnung;
$oe_arr[$oe->oe_kurzbz] = $oe->bezeichnung;
}
//Studiengangsleiter holen
$stgl='';
$stgl = '';
$db = new basis_db();
if($studiengang_kz!='')
if ($studiengang_kz != '')
{
$studiengang_obj = new studiengang();
$stgleiter = $studiengang_obj->getLeitung($studiengang_kz);
@@ -102,7 +101,7 @@ if($studiengang_kz!='')
}
}
if($uid==null)
if ($uid == null)
{
$qry = "
SELECT
@@ -120,11 +119,11 @@ if($uid==null)
UNION
SELECT
tbl_benutzer.uid as mitarbeiter_uid
FROM
lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
FROM
lehre.tbl_projektbetreuer, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung,
public.tbl_benutzer, lehre.tbl_projektarbeit, campus.vw_student, public.tbl_mitarbeiter
WHERE
tbl_projektbetreuer.person_id=tbl_benutzer.person_id AND
WHERE
tbl_projektbetreuer.person_id=tbl_benutzer.person_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
student_uid=vw_student.uid AND
tbl_benutzer.uid = tbl_mitarbeiter.mitarbeiter_uid AND
@@ -135,9 +134,9 @@ if($uid==null)
tbl_projektbetreuer.stunden!='0'
) as mitarbeiter ORDER BY mitarbeiter_uid";
if($db->db_query($qry))
if ($db->db_query($qry))
{
while($row = $db->db_fetch_object())
while ($row = $db->db_fetch_object())
{
drawLehrauftrag($row->mitarbeiter_uid);
}
@@ -145,11 +144,12 @@ if($uid==null)
}
else
drawLehrauftrag($uid);
function drawLehrauftrag($uid)
{
global $studiengang;
global $studiengang_kz;
global $fb_arr;
global $oe_arr;
global $stg_arr;
global $ss;
global $xml;
@@ -161,17 +161,17 @@ function drawLehrauftrag($uid)
<studiengang>FH-';
//Studiengang
$typ='';
if($studiengang->typ=='d')
if ($studiengang->typ=='d')
{
$xml.= 'Diplom-';
$typ = 'Diplom';
}
elseif($studiengang->typ=='m')
elseif ($studiengang->typ=='m')
{
$xml.= 'Master-';
$typ = 'Master';
}
elseif($studiengang->typ=='b')
elseif ($studiengang->typ=='b')
{
$xml.= 'Bachelor-';
$typ = 'Bachelor';
@@ -183,41 +183,58 @@ function drawLehrauftrag($uid)
$xml.= '<studiengang_typ>'.$typ.'</studiengang_typ>';
//Studiensemester
if(substr($ss,0,2)=='WS')
if (substr($ss,0,2) == 'WS')
$studiensemester = 'Wintersemester '.substr($ss,2);
else
$studiensemester = 'Sommersemester '.substr($ss,2);
$xml.="<studiensemester_kurzbz>$ss</studiensemester_kurzbz>
$xml .= "<studiensemester_kurzbz>$ss</studiensemester_kurzbz>
<studiensemester>$studiensemester</studiensemester>";
//Lektor
$qry = "SELECT * FROM campus.vw_mitarbeiter LEFT JOIN public.tbl_adresse USING(person_id) WHERE uid=".$db->db_add_param($uid)."
ORDER BY zustelladresse DESC, firma_id LIMIT 1";
$qry = "
SELECT
*
FROM
campus.vw_mitarbeiter
LEFT JOIN public.tbl_adresse USING(person_id)
WHERE
uid=".$db->db_add_param($uid)."
ORDER BY zustelladresse DESC, firma_id
LIMIT 1";
if($result = $db->db_query($qry))
if ($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
if ($row = $db->db_fetch_object($result))
{
$firmenanschrift=false;
if($row->firma_id!='')
$firmenanschrift = false;
if ($row->firma_id != '')
{
$qry ="SELECT tbl_firma.name, tbl_adresse.strasse, tbl_adresse.plz, tbl_adresse.ort FROM public.tbl_firma JOIN public.tbl_adresse USING(firma_id)
WHERE tbl_firma.firma_id=".$db->db_add_param($row->firma_id)." AND person_id=".$db->db_add_param($row->person_id)." LIMIT 1";
if($result_firma = $db->db_query($qry))
$qry ="
SELECT
tbl_firma.name, tbl_adresse.strasse, tbl_adresse.plz, tbl_adresse.ort
FROM
public.tbl_firma
JOIN public.tbl_adresse USING(firma_id)
WHERE
tbl_firma.firma_id=".$db->db_add_param($row->firma_id)."
AND person_id=".$db->db_add_param($row->person_id)."
LIMIT 1";
if ($result_firma = $db->db_query($qry))
{
if($row_firma = $db->db_fetch_object($result_firma))
if ($row_firma = $db->db_fetch_object($result_firma))
{
$name_gesamt = $row_firma->name;
$strasse = $row_firma->strasse;
$plz = $row_firma->plz;
$ort = $row_firma->ort;
$zuhanden = "zu Handen ".trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost);
$firmenanschrift=true;
$firmenanschrift = true;
}
}
}
if(!$firmenanschrift)
if (!$firmenanschrift)
{
$strasse = $row->strasse;
$plz = $row->plz;
@@ -229,7 +246,7 @@ function drawLehrauftrag($uid)
$bis = new bisverwendung();
$bis->getLastAktVerwendung($uid);
$xml.='
$xml .= '
<mitarbeiter>
<titelpre><![CDATA['.$row->titelpre.']]></titelpre>
<vorname><![CDATA['.$row->vorname.']]></vorname>
@@ -248,65 +265,72 @@ function drawLehrauftrag($uid)
}
//Lehreinheiten
$qry = "SELECT * FROM campus.vw_lehreinheit WHERE mitarbeiter_uid=".$db->db_add_param($uid)." AND studiensemester_kurzbz=".$db->db_add_param($ss);
$qry = "
SELECT
*
FROM
campus.vw_lehreinheit
WHERE
mitarbeiter_uid=".$db->db_add_param($uid)."
AND studiensemester_kurzbz=".$db->db_add_param($ss);
if($studiengang_kz!='') //$studiengang_kz!='0' &&
if ($studiengang_kz != '') //$studiengang_kz!='0' &&
$qry .= "AND lv_studiengang_kz=".$db->db_add_param($studiengang_kz);
$qry.=" ORDER BY lv_orgform_kurzbz, lv_bezeichnung, lehreinheit_id";
$qry .= " ORDER BY lv_orgform_kurzbz, lv_bezeichnung, lehreinheit_id";
$lv = array();
$anzahl_lvs=0;
if($result = $db->db_query($qry))
$anzahl_lvs = 0;
if ($result = $db->db_query($qry))
{
$last_le='';
$last_le = '';
$gesamtkosten = 0;
$gesamtstunden = 0;
$gruppen = array();
$grp='';
$gruppen_getrennt='';
$einzelgruppe='';
while($row = $db->db_fetch_object($result))
$grp = '';
$gruppen_getrennt = '';
$einzelgruppe = '';
while ($row = $db->db_fetch_object($result))
{
if($last_le!=$row->lehreinheit_id && $last_le!='')
if ($last_le != $row->lehreinheit_id && $last_le != '')
{
array_unique($gruppen);
sort($gruppen);
foreach ($gruppen as $gruppe)
{
$grp.=$gruppe.' ';
$gruppen_getrennt.= '<einzelgruppe><![CDATA['.$gruppe.']]></einzelgruppe>';
$grp .= $gruppe.' ';
$gruppen_getrennt .= '<einzelgruppe><![CDATA['.$gruppe.']]></einzelgruppe>';
}
$einzelgruppe = $gruppen_getrennt;
$lv[$anzahl_lvs]['lehreinheit_id'] = $lehreinheit_id;
$lv[$anzahl_lvs]['lehrveranstaltung'] = $lehrveranstaltung;
$lv[$anzahl_lvs]['fachbereich'] = (isset($fb_arr[$fachbereich])?$fb_arr[$fachbereich]:'');
$lv[$anzahl_lvs]['gruppe'] = ($grp!=''?trim($grp):' ');
$lv[$anzahl_lvs]['stunden'] = ($stunden!=''?$stunden:' ');
$lv[$anzahl_lvs]['satz'] = ($satz!=''?$satz:' ');
$lv[$anzahl_lvs]['faktor'] = ($faktor!=''?$faktor:' ');
$lv[$anzahl_lvs]['fachbereich'] = (isset($oe_arr[$lehrfach_oe_kurzbz])?$oe_arr[$lehrfach_oe_kurzbz]:'');
$lv[$anzahl_lvs]['gruppe'] = ($grp != ''?trim($grp):' ');
$lv[$anzahl_lvs]['stunden'] = ($stunden != ''?$stunden:' ');
$lv[$anzahl_lvs]['satz'] = ($satz != ''?$satz:' ');
$lv[$anzahl_lvs]['faktor'] = ($faktor != ''?$faktor:' ');
$lv[$anzahl_lvs]['brutto'] = number_format($brutto,2,',','.');
$lv[$anzahl_lvs]['einzelgruppe'] = ($gruppen_getrennt!=''?$gruppen_getrennt:' ');
$lv[$anzahl_lvs]['einzelgruppe'] = ($gruppen_getrennt != ''?$gruppen_getrennt:' ');
$anzahl_lvs++;
$gesamtkosten = $gesamtkosten + $brutto;
$gesamtstunden = $gesamtstunden + $stunden;
$lehreinheit_id='';
$lehreinheit_id = '';
$lehrveranstaltung = '';
$fachbereich = '';
$gruppen= array();
$lehrfach_oe_kurzbz = '';
$gruppen = array();
$stunden = '';
$satz = '';
$faktor = '';
$brutto = '';
$grp='';
$gruppen_getrennt='';
$grp = '';
$gruppen_getrennt = '';
}
$lehreinheit_id=$row->lehreinheit_id;
$lehreinheit_id = $row->lehreinheit_id;
$lehrveranstaltung = CutString($row->lv_bezeichnung, 30, '...').' '.$row->lehrform_kurzbz.' '.$row->lv_semester.'. Semester';
$fachbereich = $row->fachbereich_kurzbz;
$lehrfach_oe_kurzbz = $row->lehrfach_oe_kurzbz;
if($row->gruppe_kurzbz!='')
if ($row->gruppe_kurzbz != '')
$gruppen[] = $row->gruppe_kurzbz;
else
$gruppen[] = trim($stg_arr[$row->studiengang_kz].'-'.$row->semester.$row->verband.$row->gruppe).' ';
@@ -314,21 +338,21 @@ function drawLehrauftrag($uid)
$stunden = $row->semesterstunden;
$satz = $row->stundensatz;
$faktor = $row->faktor;
$brutto = $row->semesterstunden*$row->stundensatz*$row->faktor;
$last_le=$row->lehreinheit_id;
$brutto = $row->semesterstunden * $row->stundensatz * $row->faktor;
$last_le = $row->lehreinheit_id;
}
array_unique($gruppen);
sort($gruppen);
foreach ($gruppen as $gruppe)
{
$grp.=$gruppe.' ';
$gruppen_getrennt.= '<einzelgruppe><![CDATA['.$gruppe.']]></einzelgruppe>';
$grp .= $gruppe.' ';
$gruppen_getrennt .= '<einzelgruppe><![CDATA['.$gruppe.']]></einzelgruppe>';
}
if(isset($lehreinheit_id))
if (isset($lehreinheit_id))
{
$lv[$anzahl_lvs]['lehreinheit_id'] = (isset($lehreinheit_id)?$lehreinheit_id:' ');
$lv[$anzahl_lvs]['lehrveranstaltung'] = (isset($lehrveranstaltung)?$lehrveranstaltung:' ');
$lv[$anzahl_lvs]['fachbereich'] = (isset($fachbereich)?$fb_arr[$fachbereich]:' ');
$lv[$anzahl_lvs]['fachbereich'] = (isset($lehrfach_oe_kurzbz)?$oe_arr[$lehrfach_oe_kurzbz]:' ');
$lv[$anzahl_lvs]['gruppe'] = ($grp!=''?trim($grp):' ');
$lv[$anzahl_lvs]['stunden'] = (isset($stunden)?$stunden:' ');
$lv[$anzahl_lvs]['satz'] = (isset($satz)?$satz:' ');
@@ -337,9 +361,9 @@ function drawLehrauftrag($uid)
$lv[$anzahl_lvs]['einzelgruppe'] = ($gruppen_getrennt!=''?$gruppen_getrennt:' ');
$anzahl_lvs++;
if(isset($brutto))
if (isset($brutto))
$gesamtkosten = $gesamtkosten + $brutto;
if(isset($stunden))
if (isset($stunden))
$gesamtstunden = $gesamtstunden + $stunden;
}
}
@@ -357,8 +381,8 @@ function drawLehrauftrag($uid)
,lehre.tbl_lehreinheit
,lehre.tbl_lehrveranstaltung AS lehrfach
,lehre.tbl_lehrveranstaltung
,PUBLIC.tbl_organisationseinheit
,PUBLIC.tbl_benutzer
,public.tbl_organisationseinheit
,public.tbl_benutzer
,lehre.tbl_projektarbeit
,campus.vw_student
WHERE tbl_projektbetreuer.person_id = tbl_benutzer.person_id
@@ -370,27 +394,27 @@ function drawLehrauftrag($uid)
AND tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id
AND tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($ss)."
AND tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id";
if($studiengang_kz!='')
$qry.=" AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if($result = $db->db_query($qry))
if ($studiengang_kz != '')
$qry .= " AND tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if ($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
while ($row = $db->db_fetch_object($result))
{
$stg = new studiengang();
$stg->load($row->studiengang_kz);
$stg_kuerzel = $stg->kuerzel;
$brutto = $row->stunden*$row->stundensatz*$row->faktor;
if($row->stunden!=0)
$brutto = $row->stunden * $row->stundensatz * $row->faktor;
if ($row->stunden != 0)
{
switch($row->projekttyp_kurzbz)
switch ($row->projekttyp_kurzbz)
{
case 'Bachelor': $kuerzel='BA'; break;
case 'Diplom': $kuerzel='DA'; break;
case 'Projekt': $kuerzel='PJ'; break;
case 'Praktikum': $kuerzel='PX'; break;
case 'Praxis': $kuerzel='PX'; break;
default: $kuerzel='PA'; break;
case 'Bachelor': $kuerzel = 'BA'; break;
case 'Diplom': $kuerzel = 'DA'; break;
case 'Projekt': $kuerzel = 'PJ'; break;
case 'Praktikum': $kuerzel = 'PX'; break;
case 'Praxis': $kuerzel = 'PX'; break;
default: $kuerzel = 'PA'; break;
}
$lv[$anzahl_lvs]['lehreinheit_id'] = (isset($row->projektarbeit_id)?$kuerzel.$row->projektarbeit_id:' ');
@@ -414,7 +438,7 @@ function drawLehrauftrag($uid)
foreach ($lv as $lv_row)
{
$xml.='
$xml .= '
<lehreinheit>
<lehreinheit_id><![CDATA['.$lv_row['lehreinheit_id'].']]></lehreinheit_id>
<lehrveranstaltung><![CDATA['.$lv_row['lehrveranstaltung'].']]></lehrveranstaltung>
@@ -431,15 +455,15 @@ function drawLehrauftrag($uid)
};
// Gesamtstunden und Gesamtkosten
$xml.="
$xml .= "
<gesamtstunden><![CDATA[".number_format($gesamtstunden,2)."]]></gesamtstunden>
<gesamtbetrag><![CDATA[".number_format($gesamtkosten,2,',','.')."]]></gesamtbetrag>";
$xml.="
$xml .= "
<studiengangsleiter><![CDATA[$stgl]]></studiengangsleiter>";
$xml.= '
$xml .= '
<datum><![CDATA['.date('d.m.Y').']]></datum>
</lehrauftrag>
';
+1
View File
@@ -92,6 +92,7 @@ $beschreibung=1;
$berechtigungen = array(
array('admin','Super User Rechte'),
array('assistenz','Assistenz'),
array('student','Defaultberechtigung für Studierende'),
array('basis/addon','Addons verwalten'),
array('basis/ampel','Ampeln Administrieren'),
array('basis/ampeluebersicht','Ampel Übersicht für Leiter'),
+170 -3
View File
@@ -2517,7 +2517,7 @@ if($result = $db->db_query("SELECT 1 FROM system.tbl_app WHERE app='reihungstest
if(!$result = @$db->db_query("SELECT aktiv FROM lehre.tbl_betreuerart LIMIT 1"))
{
$qry = "ALTER TABLE lehre.tbl_betreuerart ADD COLUMN aktiv boolean NOT NULL DEFAULT TRUE;";
if(!$db->db_query($qry))
echo '<strong>lehre.tbl_betreuerart: '.$db->db_last_error().'</strong><br>';
else
@@ -2528,7 +2528,7 @@ if(!$result = @$db->db_query("SELECT aktiv FROM lehre.tbl_betreuerart LIMIT 1"))
if(!$result = @$db->db_query("SELECT aktiv FROM lehre.tbl_projekttyp LIMIT 1"))
{
$qry = "ALTER TABLE lehre.tbl_projekttyp ADD COLUMN aktiv boolean NOT NULL DEFAULT TRUE;";
if(!$db->db_query($qry))
echo '<strong>lehre.tbl_projekttyp: '.$db->db_last_error().'</strong><br>';
else
@@ -2541,7 +2541,7 @@ if($result = @$db->db_query("SELECT is_nullable FROM INFORMATION_SCHEMA.COLUMNS
if($db->db_num_rows($result) > 0)
{
$qry = "ALTER TABLE public.tbl_prestudent ALTER COLUMN aufmerksamdurch_kurzbz DROP NOT NULL;";
if(!$db->db_query($qry))
echo '<strong>public.tbl_prestudent '.$db->db_last_error().'</strong><br>';
else
@@ -2549,6 +2549,173 @@ if($result = @$db->db_query("SELECT is_nullable FROM INFORMATION_SCHEMA.COLUMNS
}
}
// Spalte Zugangscode zu vw_msg_vars hinzufügen
if(!$result = @$db->db_query('SELECT "Zugangscode" FROM public.vw_msg_vars LIMIT 1'))
{
$qry = '
CREATE OR REPLACE VIEW public.vw_msg_vars AS (
SELECT DISTINCT ON(p.person_id, pr.prestudent_id) p.person_id,
pr.prestudent_id AS prestudent_id,
p.nachname AS "Nachname",
p.vorname AS "Vorname",
p.anrede AS "Anrede",
a.strasse AS "Strasse",
a.ort AS "Ort",
a.plz AS "PLZ",
a.gemeinde AS "Gemeinde",
a.langtext AS "Nation",
ke.kontakt AS "Email",
kt.kontakt AS "Telefon",
s.bezeichnung AS "Studiengang DE",
s.english AS "Studiengang EN",
st.bezeichnung AS "Typ",
orgform_kurzbz AS "Orgform",
p.zugangscode AS "Zugangscode"
FROM public.tbl_person p
LEFT JOIN (
SELECT person_id,
kontakt
FROM public.tbl_kontakt
WHERE zustellung = TRUE
AND kontakttyp = \'email\'
ORDER BY kontakt_id DESC
) ke USING(person_id)
LEFT JOIN (
SELECT person_id,
kontakt
FROM public.tbl_kontakt
WHERE zustellung = TRUE
AND kontakttyp IN (\'telefon\', \'mobil\')
ORDER BY kontakt_id DESC
) kt USING(person_id)
LEFT JOIN (
SELECT person_id,
strasse,
ort,
plz,
gemeinde,
langtext
FROM public.tbl_adresse
LEFT JOIN bis.tbl_nation ON(bis.tbl_nation.nation_code = public.tbl_adresse.nation)
WHERE public.tbl_adresse.heimatadresse = TRUE
ORDER BY adresse_id DESC
) a USING(person_id)
LEFT JOIN public.tbl_prestudent pr USING(person_id)
INNER JOIN public.tbl_studiengang s USING(studiengang_kz)
INNER JOIN public.tbl_studiengangstyp st USING(typ)
WHERE p.aktiv = TRUE
ORDER BY p.person_id ASC, pr.prestudent_id ASC
);
';
if(!$db->db_query($qry))
echo '<strong>public.vw_msg_vars: '.$db->db_last_error().'</strong><br>';
else
echo '<br>public.vw_msg_vars zugangscode added';
}
// Spalte Zugangscode zu vw_msg_vars_person hinzufügen
if(!$result = @$db->db_query('SELECT "Zugangscode" FROM public.vw_msg_vars_person LIMIT 1'))
{
$qry = '
CREATE OR REPLACE VIEW public.vw_msg_vars_person AS (
SELECT DISTINCT ON(p.person_id) p.person_id,
p.nachname AS "Nachname",
p.vorname AS "Vorname",
p.anrede AS "Anrede",
a.strasse AS "Strasse",
a.ort AS "Ort",
a.plz AS "PLZ",
a.gemeinde AS "Gemeinde",
a.langtext AS "Nation",
ke.kontakt AS "Email",
kt.kontakt AS "Telefon",
( SELECT tbl_studiensemester.bezeichnung
FROM tbl_studiensemester
WHERE "substring"(tbl_studiensemester.studiensemester_kurzbz::text, 1, 2) = \'WS\'::text AND (tbl_studiensemester.start >= now() AND tbl_studiensemester.ende >= now() OR tbl_studiensemester.start <= now() AND tbl_studiensemester.ende >= now())
ORDER BY tbl_studiensemester.start
LIMIT 1) AS "WS naechstes",
( SELECT tbl_studiensemester.bezeichnung
FROM tbl_studiensemester
WHERE "substring"(tbl_studiensemester.studiensemester_kurzbz::text, 1, 2) = \'WS\'::text AND (tbl_studiensemester.start >= now() AND tbl_studiensemester.ende >= now() OR tbl_studiensemester.start <= now() AND tbl_studiensemester.ende >= now())
ORDER BY tbl_studiensemester.start
OFFSET 1
LIMIT 1) AS "WS uebernaechstes",
p.zugangscode as "Zugangscode"
FROM public.tbl_person p
LEFT JOIN (
SELECT person_id,
kontakt
FROM public.tbl_kontakt
WHERE zustellung = TRUE
AND kontakttyp = \'email\'
ORDER BY kontakt_id DESC
) ke USING(person_id)
LEFT JOIN (
SELECT person_id,
kontakt
FROM public.tbl_kontakt
WHERE zustellung = TRUE
AND kontakttyp IN (\'telefon\', \'mobil\')
ORDER BY kontakt_id DESC
) kt USING(person_id)
LEFT JOIN (
SELECT person_id,
strasse,
ort,
plz,
gemeinde,
langtext
FROM public.tbl_adresse
LEFT JOIN bis.tbl_nation ON(bis.tbl_nation.nation_code = public.tbl_adresse.nation)
WHERE public.tbl_adresse.heimatadresse = TRUE
ORDER BY adresse_id DESC
) a USING(person_id)
ORDER BY p.person_id ASC
);';
if(!$db->db_query($qry))
echo '<strong>public.vw_msg_vars_person: '.$db->db_last_error().'</strong><br>';
else
echo '<br>public.vw_msg_vars_person zugangscode added';
}
// Spalte Zugangscode zu vw_msg_vars_person hinzufügen
// Fachbereich entfernen
if(!$result = @$db->db_query('SELECT lehrfach_oe_kurzbz FROM campus.vw_lehreinheit LIMIT 1'))
{
$qry = "
DROP VIEW campus.vw_lehreinheit;
CREATE OR REPLACE VIEW campus.vw_lehreinheit as
SELECT
tbl_lehrveranstaltung.studiengang_kz AS lv_studiengang_kz, tbl_lehrveranstaltung.semester AS lv_semester, tbl_lehrveranstaltung.kurzbz AS lv_kurzbz, tbl_lehrveranstaltung.bezeichnung AS lv_bezeichnung, tbl_lehrveranstaltung.ects AS lv_ects, tbl_lehrveranstaltung.lehreverzeichnis AS lv_lehreverzeichnis,
tbl_lehrveranstaltung.planfaktor AS lv_planfaktor, tbl_lehrveranstaltung.planlektoren AS lv_planlektoren, tbl_lehrveranstaltung.planpersonalkosten AS lv_planpersonalkosten, tbl_lehrveranstaltung.plankostenprolektor AS lv_plankostenprolektor, tbl_lehrveranstaltung.orgform_kurzbz AS lv_orgform_kurzbz,
tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrveranstaltung_id, tbl_lehreinheit.studiensemester_kurzbz, tbl_lehreinheit.lehrform_kurzbz, tbl_lehreinheit.stundenblockung, tbl_lehreinheit.wochenrythmus, tbl_lehreinheit.start_kw, tbl_lehreinheit.raumtyp, tbl_lehreinheit.raumtypalternativ, tbl_lehreinheit.lehre,
tbl_lehreinheit.unr, tbl_lehreinheit.lvnr, tbl_lehreinheitmitarbeiter.lehrfunktion_kurzbz, tbl_lehreinheit.insertamum, tbl_lehreinheit.insertvon, tbl_lehreinheit.updateamum, tbl_lehreinheit.updatevon,
lehrfach.lehrveranstaltung_id AS lehrfach_id,
lehrfach.oe_kurzbz as lehrfach_oe_kurzbz,
lehrfach.kurzbz AS lehrfach, lehrfach.bezeichnung AS lehrfach_bez, lehrfach.farbe,
tbl_lehrveranstaltung.aktiv, lehrfach.sprache, tbl_lehreinheitmitarbeiter.mitarbeiter_uid, tbl_lehreinheitmitarbeiter.semesterstunden, tbl_lehrveranstaltung.semesterstunden AS lv_semesterstunden, tbl_lehreinheitmitarbeiter.planstunden, tbl_lehreinheitmitarbeiter.stundensatz, tbl_lehreinheitmitarbeiter.faktor,
tbl_lehreinheit.anmerkung, tbl_mitarbeiter.kurzbz AS lektor, tbl_lehreinheitgruppe.studiengang_kz, tbl_lehreinheitgruppe.semester, tbl_lehreinheitgruppe.verband, tbl_lehreinheitgruppe.gruppe, tbl_lehreinheitgruppe.gruppe_kurzbz,
tbl_studiengang.kurzbz AS stg_kurzbz, tbl_studiengang.kurzbzlang AS stg_kurzbzlang, tbl_studiengang.bezeichnung AS stg_bez, tbl_studiengang.typ AS stg_typ, tbl_lehreinheitmitarbeiter.anmerkung AS anmerkunglektor, tbl_lehrveranstaltung.lehrform_kurzbz AS lv_lehrform_kurzbz,
tbl_lehrveranstaltung.bezeichnung_english AS lv_bezeichnung_english, tbl_lehrveranstaltung.lehrtyp_kurzbz
FROM lehre.tbl_lehreinheit
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
JOIN lehre.tbl_lehrveranstaltung lehrfach ON (tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id)
JOIN public.tbl_mitarbeiter USING (mitarbeiter_uid)
JOIN lehre.tbl_lehreinheitgruppe USING (lehreinheit_id)
JOIN public.tbl_studiengang ON tbl_lehreinheitgruppe.studiengang_kz = tbl_studiengang.studiengang_kz;
GRANT SELECT ON campus.vw_lehreinheit TO admin;
GRANT SELECT ON campus.vw_lehreinheit TO vilesci;
GRANT SELECT ON campus.vw_lehreinheit TO web;
";
if(!$db->db_query($qry))
echo '<strong>campus.vw_lehreinheit: '.$db->db_last_error().'</strong><br>';
else
echo '<br>campus.vw_lehreinheit lehrfach_oe_kurzbz added, fachbereich_kurzbz removed';
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
+2
View File
@@ -36,6 +36,7 @@ $filters = array(
{"name": "StgAbgeschickt"},
{"name": "Studiensemester"},
{"name": "LastAction"},
{"name": "LastActionType"},
{"name": "User/Operator"},
{"name": "LockUser"}
],
@@ -68,6 +69,7 @@ $filters = array(
{"name": "StgAbgeschickt"},
{"name": "Studiensemester"},
{"name": "LastAction"},
{"name": "LastActionType"},
{"name": "User/Operator"},
{"name": "LockUser"}
],
+120 -6
View File
@@ -1519,7 +1519,6 @@ $phrases = array(
)
)
),
array(
'app' => 'core',
'category' => 'filter',
@@ -1541,9 +1540,6 @@ $phrases = array(
)
),
//**************************** CORE/person
array(
'app' => 'core',
@@ -2207,8 +2203,126 @@ $phrases = array(
)
)
),
array(
'app' => 'core',
'category' => 'lehre',
'phrase' => 'ects',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'ECTS',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'ECTS',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'lehre',
'phrase' => 'notendurchschnitt',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Notendurchschnitt',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Grade average',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'lehre',
'phrase' => 'gewichteternotendurchschnitt',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'gewichteter Notendurchschnitt',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'weighted grade point average',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'lehre',
'phrase' => 'note',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Note',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Grade',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'lehre',
'phrase' => 'lehrveranstaltung',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Lehrveranstaltung',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Course',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'lehre',
'phrase' => 'nichtstudienplanrelevanteKurse',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Nicht studienplanrelevante Lehrveranstaltung',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'additional Courses',
'description' => '',
'insertvon' => 'system'
)
)
),
//********************** INFOCENTER/infocenter
array(
+529
View File
@@ -0,0 +1,529 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="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:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
>
<xsl:output method="xml" version="1.0" indent="yes"/>
<xsl:template match="lehrauftraege">
<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="Mangal2" svg:font-family="Mangal"/>
<style:font-face style:name="Arial1" svg:font-family="Arial" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Helvetica" svg:font-family="Helvetica" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Serif" svg:font-family="&apos;Liberation Serif&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Mangal" svg:font-family="Mangal" style:font-family-generic="roman" style:font-pitch="variable"/>
<style:font-face style:name="Tahoma" svg:font-family="Tahoma" 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="0" svg:font-family="0" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Arial2" svg:font-family="Arial" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Sans1" svg:font-family="&apos;Liberation Sans&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Liberation Serif1" svg:font-family="&apos;Liberation Serif&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Mangal1" svg:font-family="Mangal" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Microsoft YaHei" svg:font-family="&apos;Microsoft YaHei&apos;" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="SimSun" svg:font-family="SimSun" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="Tahoma1" svg:font-family="Tahoma" style:font-family-generic="system" style:font-pitch="variable"/>
</office:font-face-decls>
<office:automatic-styles>
<style:style style:name="Tabelle1" style:family="table">
<style:table-properties style:width="17cm" table:align="margins"/>
</style:style>
<style:style style:name="Tabelle1.A" style:family="table-column">
<style:table-column-properties style:column-width="1.499cm" style:rel-column-width="850*"/>
</style:style>
<style:style style:name="Tabelle1.B" style:family="table-column">
<style:table-column-properties style:column-width="5.595cm" style:rel-column-width="3172*"/>
</style:style>
<style:style style:name="Tabelle1.C" style:family="table-column">
<style:table-column-properties style:column-width="3.704cm" style:rel-column-width="2100*"/>
</style:style>
<style:style style:name="Tabelle1.D" style:family="table-column">
<style:table-column-properties style:column-width="1.997cm" style:rel-column-width="1132*"/>
</style:style>
<style:style style:name="Tabelle1.E" style:family="table-column">
<style:table-column-properties style:column-width="1.298cm" style:rel-column-width="736*"/>
</style:style>
<style:style style:name="Tabelle1.F" style:family="table-column">
<style:table-column-properties style:column-width="1.011cm" style:rel-column-width="573*"/>
</style:style>
<style:style style:name="Tabelle1.G" style:family="table-column">
<style:table-column-properties style:column-width="1.894cm" style:rel-column-width="1074*"/>
</style:style>
<style:style style:name="Tabelle1.A1" style:family="table-cell">
<style:table-cell-properties fo:padding="0.097cm" fo:border-left="0.05pt solid #000000" fo:border-right="none" fo:border-top="0.05pt solid #000000" fo:border-bottom="0.05pt solid #000000"/>
</style:style>
<style:style style:name="Tabelle1.G1" style:family="table-cell">
<style:table-cell-properties fo:padding="0.097cm" fo:border="0.05pt solid #000000"/>
</style:style>
<style:style style:name="Tabelle1.A2" style:family="table-cell">
<style:table-cell-properties fo:padding-left="0.07cm" fo:padding-right="0.07cm" fo:padding-top="0.05cm" fo:padding-bottom="0.05cm" fo:border-left="0.05pt solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.05pt solid #000000"/>
</style:style>
<style:style style:name="Tabelle1.G2" style:family="table-cell">
<style:table-cell-properties fo:padding-left="0.07cm" fo:padding-right="0.07cm" fo:padding-top="0.05cm" fo:padding-bottom="0.05cm" fo:border-left="0.05pt solid #000000" fo:border-right="0.05pt solid #000000" fo:border-top="none" fo:border-bottom="0.05pt solid #000000"/>
</style:style>
<style:style style:name="Tabelle2" style:family="table">
<style:table-properties style:width="17cm" table:align="margins" style:shadow="none" fo:keep-with-next="always"/>
</style:style>
<style:style style:name="Tabelle2.A" style:family="table-column">
<style:table-column-properties style:column-width="6.001cm" style:rel-column-width="3402*"/>
</style:style>
<style:style style:name="Tabelle2.B" style:family="table-column">
<style:table-column-properties style:column-width="3cm" style:rel-column-width="1701*"/>
</style:style>
<style:style style:name="Tabelle2.C" style:family="table-column">
<style:table-column-properties style:column-width="7.999cm" style:rel-column-width="4535*"/>
</style:style>
<style:style style:name="Tabelle2.1" style:family="table-row">
<style:table-row-properties style:min-row-height="1.499cm"/>
</style:style>
<style:style style:name="Tabelle2.A1" style:family="table-cell">
<style:table-cell-properties style:vertical-align="bottom" fo:padding="0.097cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="1pt dotted #000000"/>
</style:style>
<style:style style:name="Tabelle2.B1" style:family="table-cell">
<style:table-cell-properties fo:padding="0.097cm" fo:border="none"/>
</style:style>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" 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="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:paragraph-properties fo:text-align="end" style:justify-single-word="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P4" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:paragraph-properties fo:text-align="start" style:justify-single-word="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P5" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:paragraph-properties fo:text-align="start" style:justify-single-word="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001fea3c" officeooo:paragraph-rsid="001fea3c" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P6" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="0013c612" officeooo:paragraph-rsid="0013c612" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P7" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="002ab151" officeooo:paragraph-rsid="002ab151" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P8" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="002c2d13" officeooo:paragraph-rsid="002c2d13" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P9" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:font-weight="bold" style:font-size-asian="8pt" style:font-weight-asian="bold" style:font-size-complex="8pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P10" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:font-weight="bold" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-weight-asian="bold" style:font-size-complex="8pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P11" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:paragraph-properties fo:text-align="end" style:justify-single-word="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:font-weight="bold" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-weight-asian="bold" style:font-size-complex="8pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P12" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:font-weight="bold" officeooo:rsid="001fea3c" officeooo:paragraph-rsid="001fea3c" style:font-size-asian="8pt" style:font-weight-asian="bold" style:font-size-complex="8pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P13" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:font-weight="bold" officeooo:rsid="0021faff" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-weight-asian="bold" style:font-size-complex="8pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P14" style:family="paragraph" style:parent-style-name="Table_20_Contents">
<style:paragraph-properties fo:margin-top="0.106cm" fo:margin-bottom="0cm" loext:contextual-spacing="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="de" fo:country="AT" style:text-underline-style="dotted" style:text-underline-width="bold" style:text-underline-color="font-color" officeooo:rsid="0013c612" officeooo:paragraph-rsid="002ab151" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P15" style:family="paragraph" style:parent-style-name="Header">
<style:paragraph-properties fo:text-align="start" style:justify-single-word="false"/>
<style:text-properties style:font-name="Arial" officeooo:rsid="00220045" officeooo:paragraph-rsid="00220045"/>
</style:style>
<style:style style:name="P16" style:family="paragraph" style:parent-style-name="Header">
<style:paragraph-properties fo:text-align="start" style:justify-single-word="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="00220045" officeooo:paragraph-rsid="00220045" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P17" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="14pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="12.25pt" style:font-size-complex="14pt"/>
</style:style>
<style:style style:name="P18" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="12pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="12pt" style:font-size-complex="12pt"/>
</style:style>
<style:style style:name="P19" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P20" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P21" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:font-weight="bold" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-weight-asian="bold" style:font-size-complex="8pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P22" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="en" fo:country="US" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P23" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="en" fo:country="US" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P24" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:text-align="center" style:justify-single-word="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="de" fo:country="AT" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P25" style:family="paragraph" style:parent-style-name="Standard">
<style:text-properties style:font-name="Arial" fo:font-size="10pt" fo:font-weight="bold" officeooo:rsid="001ece18" officeooo:paragraph-rsid="00220045" style:font-size-asian="10pt" style:font-weight-asian="bold" style:font-size-complex="10pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="P26" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-top="0.106cm" fo:margin-bottom="0cm" loext:contextual-spacing="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="de" fo:country="AT" style:text-underline-style="dotted" style:text-underline-width="bold" style:text-underline-color="font-color" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P27" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-top="0.106cm" fo:margin-bottom="0cm" loext:contextual-spacing="false" fo:text-align="end" style:justify-single-word="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="de" fo:country="AT" style:text-underline-style="dotted" style:text-underline-width="bold" style:text-underline-color="font-color" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P28" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-top="0.106cm" fo:margin-bottom="0cm" loext:contextual-spacing="false" fo:text-align="end" style:justify-single-word="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="de" fo:country="AT" style:text-underline-style="dotted" style:text-underline-width="bold" style:text-underline-color="font-color" officeooo:rsid="002ab151" officeooo:paragraph-rsid="002ab151" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P29" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-top="0.106cm" fo:margin-bottom="0cm" loext:contextual-spacing="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" fo:language="de" fo:country="AT" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P30" style:family="paragraph" style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-top="0.106cm" fo:margin-bottom="0cm" loext:contextual-spacing="false" fo:text-align="end" style:justify-single-word="false">
<style:tab-stops>
<style:tab-stop style:position="7.001cm" style:leader-style="solid" style:leader-text="_"/>
</style:tab-stops>
</style:paragraph-properties>
<style:text-properties style:font-name="Arial" fo:font-size="8pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="0021faff" style:font-size-asian="8pt" style:font-size-complex="8pt"/>
</style:style>
<style:style style:name="P31" style:family="paragraph" style:parent-style-name="Standard" style:master-page-name="">
<loext:graphic-properties draw:fill="none"/>
<style:paragraph-properties fo:margin-left="0.3cm" fo:margin-right="8.999cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"/>
<style:text-properties style:font-name="Arial" fo:font-size="12pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="12pt" style:font-size-complex="12pt"/>
</style:style>
<style:style style:name="Seitenumbruch" style:family="paragraph" style:parent-style-name="Standard" style:master-page-name="">
<style:paragraph-properties fo:break-before="page"/>
<loext:graphic-properties draw:fill="none"/>
<style:paragraph-properties fo:margin-left="0.3cm" fo:margin-right="8.999cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"/>
<style:text-properties style:font-name="Arial" fo:font-size="12pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="12pt" style:font-size-complex="12pt"/>
</style:style>
<style:style style:name="P32" style:family="paragraph" style:parent-style-name="Standard">
<loext:graphic-properties draw:fill="none"/>
<style:paragraph-properties fo:margin-left="0.3cm" fo:margin-right="8.999cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="12pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="12pt" style:font-size-complex="12pt"/>
</style:style>
<style:style style:name="P33" style:family="paragraph" style:parent-style-name="Standard">
<loext:graphic-properties draw:fill="none"/>
<style:paragraph-properties fo:margin-left="0.3cm" fo:margin-right="8.999cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="14pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="12.25pt" style:font-size-complex="14pt"/>
</style:style>
<style:style style:name="P34" style:family="paragraph" style:parent-style-name="Standard">
<loext:graphic-properties draw:fill="none"/>
<style:paragraph-properties fo:margin-left="0.3cm" fo:margin-right="8.999cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
<style:text-properties style:font-name="Arial" fo:font-size="7pt" officeooo:rsid="001ece18" officeooo:paragraph-rsid="001ece18" style:font-size-asian="7pt" style:font-size-complex="7pt"/>
</style:style>
<style:style style:name="P35" style:family="paragraph">
<loext:graphic-properties draw:fill-color="#999999"/>
<style:paragraph-properties fo:text-align="center"/>
</style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties officeooo:rsid="001f0457"/>
</style:style>
<style:style style:name="T2" style:family="text">
<style:text-properties officeooo:rsid="001fb2b6"/>
</style:style>
<style:style style:name="T3" style:family="text">
<style:text-properties officeooo:rsid="001fea3c"/>
</style:style>
<style:style style:name="T4" style:family="text">
<style:text-properties fo:language="en" fo:country="US"/>
</style:style>
<style:style style:name="T5" style:family="text">
<style:text-properties officeooo:rsid="00220045"/>
</style:style>
<style:style style:name="T6" style:family="text">
<style:text-properties officeooo:rsid="0023d767"/>
</style:style>
<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics">
<style:graphic-properties fo:margin-left="0.318cm" fo:margin-right="0.318cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:run-through="background" 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:fill="none" draw:fill-color="#ffffff" fo:padding="0cm" fo:border="none" 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: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="char" 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 svg:stroke-color="#b2b2b2" draw:fill-color="#b2b2b2" draw:textarea-horizontal-align="center" draw:textarea-vertical-align="middle" style:protect="position size" 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"/>
</style:style>
</office:automatic-styles>
<office:body>
<xsl:apply-templates select="lehrauftrag"/>
</office:body>
</office:document-content>
</xsl:template>
<xsl:template match="lehrauftrag">
<office:text text:use-soft-page-breaks="true" 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:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0">
<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>
<!-- Wichtig für Mehrfachdruck (mehrere Studenten ausgewählt): Wenn ein Element (in diesem Fall Stempel und Unterschriftenblock) relativ zur SEITE ausgerichtet werden soll,
muss für jedes Dokument (jeder neue Durchlauf der Schleife) ein draw:frame-Tag definiert werden. Diese müssen ALLE VOR den ersten text:p-Elementen stehen.
Deshalb wirde erst die Schleife für die draw:frames aufgerufen, dann folg tder Inhalt -->
<xsl:if test="position()=1">
<xsl:for-each select="../lehrauftrag">
<xsl:variable select="position()" name="number"/><!-- Variable number definieren, die nach jedem Dokument um eines erhöht wird (position) -->
<draw:line text:anchor-type="page" text:anchor-page-number="{$number}" draw:z-index="1" draw:style-name="gr{$number}" draw:text-style-name="P35" svg:x1="1.199cm" svg:y1="9.601cm" svg:x2="0.7cm" svg:y2="9.601cm">
<text:p/>
</draw:line>
<draw:line text:anchor-type="page" text:anchor-page-number="{$number}" draw:z-index="2" draw:style-name="gr{$number}" draw:text-style-name="P35" svg:x1="1.199cm" svg:y1="14.101cm" svg:x2="0.7cm" svg:y2="14.101cm">
<text:p/>
</draw:line>
</xsl:for-each>
</xsl:if>
<draw:line text:anchor-type="page" text:anchor-page-number="1" draw:z-index="1" draw:style-name="gr1" draw:text-style-name="P35" svg:x1="1.199cm" svg:y1="9.601cm" svg:x2="0.7cm" svg:y2="9.601cm">
<text:p/>
</draw:line>
<draw:line text:anchor-type="page" text:anchor-page-number="1" draw:z-index="2" draw:style-name="gr1" draw:text-style-name="P35" svg:x1="1.199cm" svg:y1="14.101cm" svg:x2="0.7cm" svg:y2="14.101cm">
<text:p/>
</draw:line>
<!--<text:p text:style-name="P31"/>-->
<text:p text:style-name="Seitenumbruch"/>
<text:p text:style-name="P32"/>
<text:p text:style-name="P32"><xsl:value-of select="mitarbeiter/name_gesamt" /></text:p>
<text:p text:style-name="P32"><xsl:value-of select="mitarbeiter/anschrift" /></text:p>
<text:p text:style-name="P32"><xsl:value-of select="mitarbeiter/plz" /><xsl:text> </xsl:text><xsl:value-of select="mitarbeiter/ort" /></text:p>
<xsl:if test="string-length(mitarbeiter/zuhanden)!=0">
<text:p text:style-name="P32"><xsl:value-of select="mitarbeiter/zuhanden" /></text:p>
</xsl:if>
<text:p text:style-name="P33"/>
<text:p text:style-name="P34">Abs.: <text:s/>Technikum Wien GmbH, Höchstädtplatz 6, 1200 Wien </text:p>
<text:p text:style-name="P33"/>
<text:p text:style-name="P17"/>
<text:p text:style-name="P17"/>
<text:p text:style-name="P25">Lehrauftrag Lehrgang <xsl:value-of select="studiengang_bezeichnung" /><xsl:text> </xsl:text>
<xsl:value-of select="studiensemester_kurzbz" /></text:p>
<text:p text:style-name="P19"/>
<text:p text:style-name="P21"><xsl:value-of select="mitarbeiter/name_gesamt" /></text:p>
<text:p text:style-name="P19">SV.Nr.: <xsl:value-of select="mitarbeiter/svnr" /></text:p>
<text:p text:style-name="P19">Personalnummer: <xsl:value-of select="mitarbeiter/personalnummer" /></text:p>
<text:p text:style-name="P19"/>
<text:p text:style-name="P19"/>
<text:p text:style-name="P19">Wir beauftragen Sie, im <xsl:value-of select="studiensemester" /> folgende Lehrveranstaltungen abzuhalten:</text:p>
<text:p text:style-name="P19"/>
<table:table table:name="Tabelle1" table:style-name="Tabelle1">
<table:table-column table:style-name="Tabelle1.A"/>
<table:table-column table:style-name="Tabelle1.B"/>
<table:table-column table:style-name="Tabelle1.C"/>
<table:table-column table:style-name="Tabelle1.D"/>
<table:table-column table:style-name="Tabelle1.E"/>
<table:table-column table:style-name="Tabelle1.F"/>
<table:table-column table:style-name="Tabelle1.G"/>
<table:table-row>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P12">ID</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Lehrveranstaltung</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Institut</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Gruppe<text:span text:style-name="T2">(n)</text:span>
</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P13">Std.</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Satz</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.G1" office:value-type="string">
<text:p text:style-name="P10">Brutto</text:p>
</table:table-cell>
</table:table-row>
<xsl:apply-templates select="lehreinheit"/>
<table:table-row>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P1"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P1"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P1"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P11">Summe:</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P11"><xsl:value-of select="gesamtstunden" /></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P9"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.G2" office:value-type="string">
<text:p text:style-name="P11"><xsl:value-of select="gesamtbetrag" /></text:p>
</table:table-cell>
</table:table-row>
</table:table>
<text:p text:style-name="P19"/>
<text:p text:style-name="P19">Die angeführten Stundensätze sind Bruttobeträge, von denen gegebenenfalls die DienstnehmerInnenanteile für Steuern und Sozialversicherung abgezogen werden.
Die angeführte Stundenzahl ist die maximal vorgesehene; abgerechnet werden jedoch nur die tatsächlich gehaltenen Stunden laut Anwesenheitslisten.
Außerdem besteht die Verpflichtung zur Teilnahme an LektorInnenkonferenzen.</text:p>
<table:table table:name="Tabelle2" table:style-name="Tabelle2">
<table:table-column table:style-name="Tabelle2.A"/>
<table:table-column table:style-name="Tabelle2.B"/>
<table:table-column table:style-name="Tabelle2.C"/>
<table:table-row table:style-name="Tabelle2.1">
<table:table-cell table:style-name="Tabelle2.A1" office:value-type="string">
<text:p text:style-name="P7">
<draw:frame draw:style-name="fr2" draw:name="graphics4" text:anchor-type="char" svg:x="6.301cm" svg:y="-0.5cm" svg:width="2.2cm" svg:height="2.2cm" draw:z-index="3">
<draw:image xlink:href="Pictures/100002010000015A0000015A8CD841D1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad"/>
</draw:frame>Wien, am <xsl:value-of select="datum" />
</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle2.B1" office:value-type="string">
<text:p text:style-name="P7"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle2.A1" office:value-type="string">
<text:p text:style-name="P1"/>
</table:table-cell>
</table:table-row>
<table:table-row>
<table:table-cell table:style-name="Tabelle2.B1" office:value-type="string">
<text:p text:style-name="P7">Ort, Datum</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle2.B1" office:value-type="string">
<text:p text:style-name="P7"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle2.B1" office:value-type="string">
<text:p text:style-name="P8"><xsl:value-of select="studiengangsleiter" /></text:p>
<text:p text:style-name="P7">Lehrgangsleitung</text:p>
</table:table-cell>
</table:table-row>
</table:table>
<text:p text:style-name="P20"/>
</office:text>
</xsl:template>
<xsl:template match="lehreinheit">
<table:table-row>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P2"><xsl:value-of select="lehreinheit_id" /></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P2"><xsl:value-of select="lehrveranstaltung" /></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P2">
<xsl:choose>
<xsl:when test="string-length(fachbereich)>28">
<xsl:value-of select="substring(fachbereich,0,25)" /><xsl:text>...</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="fachbereich" />
</xsl:otherwise>
</xsl:choose>
</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<xsl:apply-templates select="gruppen_getrennt"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P3"><xsl:value-of select="stunden" /></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P2"><xsl:value-of select="satz" /></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.G2" office:value-type="string">
<text:p text:style-name="P3"><xsl:value-of select="brutto" /></text:p>
</table:table-cell>
</table:table-row>
</xsl:template>
<xsl:template match="gruppen_getrennt">
<xsl:apply-templates select="einzelgruppe"/>
</xsl:template>
<xsl:template match="einzelgruppe">
<text:p text:style-name="P5"><xsl:value-of select="." /></text:p>
</xsl:template>
</xsl:stylesheet>
+60 -60
View File
@@ -1,60 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
<xsl:stylesheet
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="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: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:form="urn:oasis:names:tc:opendocument:xmlns:form: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:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
>
<xsl:output method="xml" version="1.0" indent="yes"/>
<xsl:template match="lehrauftraege">
<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"
<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/"
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>
@@ -340,7 +340,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<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>
<!-- Wichtig für Mehrfachdruck (mehrere Studenten ausgewählt): Wenn ein Element (in diesem Fall Stempel und Unterschriftenblock) relativ zur SEITE ausgerichtet werden soll,
<!-- Wichtig für Mehrfachdruck (mehrere Studenten ausgewählt): Wenn ein Element (in diesem Fall Stempel und Unterschriftenblock) relativ zur SEITE ausgerichtet werden soll,
muss für jedes Dokument (jeder neue Durchlauf der Schleife) ein draw:frame-Tag definiert werden. Diese müssen ALLE VOR den ersten text:p-Elementen stehen.
Deshalb wirde erst die Schleife für die draw:frames aufgerufen, dann folg tder Inhalt -->
<xsl:if test="position()=1">
@@ -374,7 +374,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P33"/>
<text:p text:style-name="P17"/>
<text:p text:style-name="P17"/>
<text:p text:style-name="P25">Lehrauftrag
<text:p text:style-name="P25">Lehrauftrag
<xsl:if test="studiengang_typ!=''">
<xsl:value-of select="studiengang_typ" />-Studiengang <xsl:value-of select="studiengang_bezeichnung" /><xsl:text> </xsl:text>
</xsl:if>
@@ -403,7 +403,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P10">Lehrveranstaltung</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Institut</text:p>
<text:p text:style-name="P10">Department</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Gruppe<text:span text:style-name="T2">(n)</text:span>
@@ -419,9 +419,9 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P10">Brutto</text:p>
</table:table-cell>
</table:table-row>
<xsl:apply-templates select="lehreinheit"/>
<table:table-row>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P1"/>
@@ -450,13 +450,13 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P11"><xsl:value-of select="gesamtbetrag" /></text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
</table:table-row>
</table:table>
<text:p text:style-name="P19"/>
<text:p text:style-name="P19">Die angeführten Stundensätze sind Bruttobeträge, von denen gegebenenfalls die DienstnehmerInnenanteile für Steuern und Sozialversicherung abgezogen werden.
Die angeführte Stundenzahl ist die maximal vorgesehene; abgerechnet werden jedoch nur die tatsächlich gehaltenen Stunden laut Anwesenheitslisten.
<text:p text:style-name="P19">Die angeführten Stundensätze sind Bruttobeträge, von denen gegebenenfalls die DienstnehmerInnenanteile für Steuern und Sozialversicherung abgezogen werden.
Die angeführte Stundenzahl ist die maximal vorgesehene; abgerechnet werden jedoch nur die tatsächlich gehaltenen Stunden laut Anwesenheitslisten.
Außerdem besteht die Verpflichtung zur Teilnahme an LektorInnenkonferenzen.</text:p>
<table:table table:name="Tabelle2" table:style-name="Tabelle2">
<table:table-column table:style-name="Tabelle2.A"/>
@@ -514,9 +514,9 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<xsl:apply-templates select="gruppen_getrennt"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P3"><xsl:value-of select="stunden" /></text:p>
@@ -530,7 +530,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<xsl:otherwise>
<text:p text:style-name="P2"><xsl:value-of select="satz" /></text:p>
</xsl:otherwise>
</xsl:choose>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.G2" office:value-type="string">
<!-- Wenn LektorInnen bei inkludierte_lehre einen Wert stehen haben, wird am Lehrauftrag bei Stundensatz und Brutto 0 ausgegeben-->
@@ -541,7 +541,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<xsl:otherwise>
<text:p text:style-name="P3"><xsl:value-of select="brutto" /></text:p>
</xsl:otherwise>
</xsl:choose>
</xsl:choose>
</table:table-cell>
</table:table-row>
</xsl:template>
+56 -56
View File
@@ -1,60 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
<xsl:stylesheet
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="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: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:form="urn:oasis:names:tc:opendocument:xmlns:form: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:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
>
<xsl:output method="xml" version="1.0" indent="yes"/>
<xsl:template match="lehrauftraege">
<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"
<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/"
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>
@@ -336,7 +336,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<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>
<!-- Wichtig für Mehrfachdruck (mehrere Studenten ausgewählt): Wenn ein Element (in diesem Fall Stempel und Unterschriftenblock) relativ zur SEITE ausgerichtet werden soll,
<!-- Wichtig für Mehrfachdruck (mehrere Studenten ausgewählt): Wenn ein Element (in diesem Fall Stempel und Unterschriftenblock) relativ zur SEITE ausgerichtet werden soll,
muss für jedes Dokument (jeder neue Durchlauf der Schleife) ein draw:frame-Tag definiert werden. Diese müssen ALLE VOR den ersten text:p-Elementen stehen.
Deshalb wirde erst die Schleife für die draw:frames aufgerufen, dann folg tder Inhalt -->
<xsl:if test="position()=1">
@@ -396,7 +396,7 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P10">Lehrveranstaltung</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Institut</text:p>
<text:p text:style-name="P10">Department</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="P10">Gruppe<text:span text:style-name="T2">(n)</text:span>
@@ -412,9 +412,9 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
<text:p text:style-name="P10">Brutto</text:p>
</table:table-cell>
</table:table-row>
<xsl:apply-templates select="lehreinheit"/>
<table:table-row>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P1"/>
@@ -447,8 +447,8 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
</table:table-row>
</table:table>
<text:p text:style-name="P19"/>
<text:p text:style-name="P19">Die angeführten Stundensätze sind Bruttobeträge, von denen gegebenenfalls die DienstnehmerInnenanteile für Steuern und Sozialversicherung abgezogen werden.
Die angeführte Stundenzahl ist die maximal vorgesehene; abgerechnet werden jedoch nur die tatsächlich gehaltenen Stunden laut Anwesenheitslisten.
<text:p text:style-name="P19">Die angeführten Stundensätze sind Bruttobeträge, von denen gegebenenfalls die DienstnehmerInnenanteile für Steuern und Sozialversicherung abgezogen werden.
Die angeführte Stundenzahl ist die maximal vorgesehene; abgerechnet werden jedoch nur die tatsächlich gehaltenen Stunden laut Anwesenheitslisten.
Außerdem besteht die Verpflichtung zur Teilnahme an LektorInnenkonferenzen.</text:p>
<table:table table:name="Tabelle2" table:style-name="Tabelle2">
<table:table-column table:style-name="Tabelle2.A"/>
@@ -506,9 +506,9 @@ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<xsl:apply-templates select="gruppen_getrennt"/>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A2" office:value-type="string">
<text:p text:style-name="P3"><xsl:value-of select="stunden" /></text:p>