mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-30 10:29:28 +00:00
Merge branch 'master' into issue-3823/Lehrveranstaltungssuche
This commit is contained in:
@@ -65,13 +65,35 @@ class ReihungstestJob extends CLI_Controller
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* runZentraleReihungstestAnmeldefristAssistenzJob
|
||||
*/
|
||||
public function runZentraleReihungstestAnmeldefristAssistenzJob()
|
||||
{
|
||||
// Get placement tests where registration date was yesterday
|
||||
$result = $this->ReihungstestModel->checkReachedRegistrationDate(11000);
|
||||
/*
|
||||
* Sends an email to all assistants of a placement test when an anmeldeschluss has been reached
|
||||
*
|
||||
* @param integer $degreeProgram. Kennzahl of Degree Program to check
|
||||
* @param string $bcc. Optional. BCC-Mailadress to send the Mails to
|
||||
* @param string $from. Optional. Sender-Mailadress shown to recipient
|
||||
*/
|
||||
public function runZentraleReihungstestAnmeldefristAssistenzJob($degreeProgram, $bcc = null, $from = null)
|
||||
{
|
||||
// Encode Params
|
||||
if ($bcc != '')
|
||||
{
|
||||
// $bcc can be given as null-string, so check that too
|
||||
if ($bcc == 'null')
|
||||
{
|
||||
$bcc = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$bcc = urldecode($bcc);
|
||||
}
|
||||
}
|
||||
if ($from != '')
|
||||
{
|
||||
$from = urldecode($from);
|
||||
}
|
||||
|
||||
// Get placement tests where registration date was yesterday
|
||||
$result = $this->ReihungstestModel->checkReachedRegistrationDate($degreeProgram);
|
||||
|
||||
$reachedRegistration_rt_arr = array();
|
||||
|
||||
@@ -99,8 +121,9 @@ class ReihungstestJob extends CLI_Controller
|
||||
show_error($applicants->error);
|
||||
}
|
||||
|
||||
// Get all Bachelor-Degree-Programs with Mailadress
|
||||
$bachelorStudiengeange = $this->StudiengangModel->loadStudiengaengeFromTyp('b');
|
||||
// Get all Bachelor-Degree-Programs with Mailadress
|
||||
$bachelorStudiengeange = $this->StudiengangModel->loadStudiengaengeFromTyp('b');
|
||||
$bachelorStudiengeange_arr = array();
|
||||
|
||||
if (hasData($bachelorStudiengeange))
|
||||
{
|
||||
@@ -116,87 +139,80 @@ class ReihungstestJob extends CLI_Controller
|
||||
foreach ($bachelorStudiengeange_arr as $bachelorStudiengang)
|
||||
{
|
||||
$studiengang_kuerzel = strtoupper($bachelorStudiengang->typ.$bachelorStudiengang->kurzbz);
|
||||
$applicants_list = '';
|
||||
$applicantCounter = 0;
|
||||
$rowstyle = 'style="background-color: #EEEEEE; padding: 4px;"';
|
||||
$mailReceipients = ''; // String with all mailadresses
|
||||
$mailcontent_data_arr = array();
|
||||
foreach ($applicants_arr as $applicant)
|
||||
{
|
||||
if ($bachelorStudiengang->studiengang_kz == $applicant->studiengang_kz)
|
||||
{
|
||||
$mailReceipients .= $applicant->email. ';';
|
||||
$applicantCounter ++;
|
||||
$applicants_list .= '
|
||||
<tr '.$rowstyle.'>
|
||||
<td>'. $applicant->orgform_kurzbz. '</td>
|
||||
<td>'. $applicant->ausbildungssemester. '</td>
|
||||
<td>'. $applicant->nachname. '</td>
|
||||
<td>'. $applicant->vorname. '</td>
|
||||
<td>'. $applicant->zgv_kurzbz. '</td>
|
||||
<td>'. $applicant->prioritaet. '</td>
|
||||
<td>'. $applicant->qualifikationskurs. '</td>
|
||||
<td><a href="mailto:'. $applicant->email. '">'. $applicant->email. '</a></td>
|
||||
</tr>
|
||||
';
|
||||
}
|
||||
}
|
||||
if ($applicantCounter == 0)
|
||||
{
|
||||
$mailcontent = '<p style="font-family: verdana, sans-serif;">Der Anmeldeschluss für den zentralen Reihungstest am ' . date_format(date_create($reihungstest->datum), 'd.m.Y') . ' um ' . $reihungstest->uhrzeit . ' Uhr wurde gestern erreicht.</p>';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;"><b>Für den Studiengang ' . $studiengang_kuerzel . ' nehmen keine InteressentInnen an diesem Reihungstest teil</b></p>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$headerstyle = 'style="background: #DCE4EF; border: 1px solid #FFF; padding: 4px; text-align: left;"';
|
||||
}
|
||||
}
|
||||
if ($applicantCounter == 0)
|
||||
{
|
||||
$mailcontent = '<p style="font-family: verdana, sans-serif;">Der Anmeldeschluss für den zentralen Reihungstest am ' . date_format(date_create($reihungstest->datum), 'd.m.Y') . ' um ' . $reihungstest->uhrzeit . ' Uhr wurde gestern erreicht.</p>';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;"><b>Für den Studiengang '.$studiengang_kuerzel.' nehmen keine InteressentInnen an diesem Reihungstest teil</b></p>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$mailcontent = '<p style="font-family: verdana, sans-serif;">Der Anmeldeschluss für den zentralen Reihungstest am ' . date_format(date_create($reihungstest->datum), 'd.m.Y') . ' um ' . $reihungstest->uhrzeit . ' Uhr wurde gestern erreicht.</p>';
|
||||
$mailcontent .= '
|
||||
<p style="font-family: verdana, sans-serif;"><b>' . $applicantCounter . '</b> InteressentIn(nen) des Studiengangs ' . $studiengang_kuerzel . ' nehmen daran teil:</p>
|
||||
<p style="font-family: verdana, sans-serif;">
|
||||
<a href="'.APP_ROOT.'vilesci/stammdaten/auswertung_fhtw.php?reihungstest='.$reihungstest->reihungstest_id.'&studiengang='.$bachelorStudiengang->studiengang_kz.'" target="_blank">
|
||||
Liste der Anmeldungen
|
||||
</a>
|
||||
</p>';
|
||||
}
|
||||
$mailcontent_data_arr['table'] = $mailcontent;
|
||||
|
||||
$mailcontent = '<p style="font-family: verdana, sans-serif;">Der Anmeldeschluss für den zentralen Reihungstest am ' . date_format(date_create($reihungstest->datum), 'd.m.Y') . ' um ' . $reihungstest->uhrzeit . ' Uhr wurde gestern erreicht.</p>';
|
||||
$mailcontent .= '
|
||||
<p style="font-family: verdana, sans-serif;">Folgende ' . $applicantCounter . ' InteressentInnen des Studiengangs ' . $studiengang_kuerzel . ' nehmen daran teil:</p>
|
||||
<table width="100%" style="cellpadding: 3px; font-family: verdana, sans-serif; border: 1px solid #000000;">
|
||||
<thead>
|
||||
<th ' . $headerstyle . '>OrgForm</th>
|
||||
<th ' . $headerstyle . '>Semester</th>
|
||||
<th ' . $headerstyle . '>Nachname</th>
|
||||
<th ' . $headerstyle . '>Vorname</th>
|
||||
<th ' . $headerstyle . '>ZGV</th>
|
||||
<th ' . $headerstyle . '>Priorität</th>
|
||||
<th ' . $headerstyle . '>Qualikurs</th>
|
||||
<th ' . $headerstyle . '>E-Mail</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
';
|
||||
$mailcontent .= $applicants_list;
|
||||
$mailcontent .= '
|
||||
</tbody>
|
||||
</table>
|
||||
';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;"><a href="mailto:?bcc=' . $mailReceipients . '">Mail an alle schicken</a></p>';
|
||||
}
|
||||
$mailcontent_data_arr['table'] = $mailcontent;
|
||||
// Send email in Sancho design
|
||||
if (!isEmptyString($mailcontent))
|
||||
{
|
||||
sendSanchoMail(
|
||||
'Sancho_ReihungstestteilnehmerJob',
|
||||
$mailcontent_data_arr,
|
||||
$bachelorStudiengang->email,
|
||||
'Anmeldeschluss Reihungstest ' . date_format(date_create($reihungstest->datum), 'd.m.Y') . ' ' . $reihungstest->uhrzeit . ' Uhr',
|
||||
'sancho_header_min_bw.jpg',
|
||||
'sancho_footer_min_bw.jpg',
|
||||
$from,
|
||||
'',
|
||||
$bcc);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Send email in Sancho design
|
||||
if (!isEmptyString($mailcontent))
|
||||
{
|
||||
sendSanchoMail(
|
||||
'Sancho_ReihungstestteilnehmerJob',
|
||||
$mailcontent_data_arr,
|
||||
array($bachelorStudiengang->email, 'kindlm@technikum-wien.at'),
|
||||
'Anmeldeschluss Reihungstest ' . date_format(date_create($reihungstest->datum), 'd.m.Y') . ' ' . $reihungstest->uhrzeit . ' Uhr',
|
||||
'sancho_header_min_bw.jpg',
|
||||
'sancho_footer_min_bw.jpg');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
* Checks, if an applicant was assigned to a test after Anmeldefrist and sends an email to all responsible assistants
|
||||
*
|
||||
* @param integer $degreeProgram. Kennzahl of Degree Program to check
|
||||
* @param string $bcc. Optional. BCC-Mailadress to send the Mails to
|
||||
* @param string $from. Optional. Sender-Mailadress shown to recipient
|
||||
*/
|
||||
public function runZentraleReihungstestNachtraeglichHinzugefuegtJob($degreeProgram, $bcc = null, $from = null)
|
||||
{
|
||||
// Encode Params
|
||||
if ($bcc != '')
|
||||
{
|
||||
// $bcc can be given as null-string, so check that too
|
||||
if ($bcc == 'null')
|
||||
{
|
||||
$bcc = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$bcc = urldecode($bcc);
|
||||
}
|
||||
}
|
||||
if ($from != '')
|
||||
{
|
||||
$from = urldecode($from);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks, if an applicant was assigned to a test after Anmeldefrist
|
||||
*/
|
||||
public function runZentraleReihungstestNachtraeglichHinzugefuegtJob()
|
||||
{
|
||||
// Get applicants that have been added to a test after Anmeldefrist
|
||||
$result = $this->ReihungstestModel->getApplicantAssignedAfterDate(11000);
|
||||
// Get applicants that have been added to a test after Anmeldefrist
|
||||
$result = $this->ReihungstestModel->getApplicantAssignedAfterDate($degreeProgram);
|
||||
|
||||
$applicants_after_anmeldefrist_arr = array();
|
||||
|
||||
@@ -217,32 +233,39 @@ class ReihungstestJob extends CLI_Controller
|
||||
$mailcontent = '';
|
||||
$applicants_list = '';
|
||||
|
||||
if (count($applicants_after_anmeldefrist_arr) > 0)
|
||||
{
|
||||
foreach ($applicants_after_anmeldefrist_arr as $applicant)
|
||||
{
|
||||
if ($studiengang != $applicant->studiengang_kz)
|
||||
{
|
||||
if ($studiengang != '' && $studiengang != $applicant->studiengang_kz)
|
||||
{
|
||||
$bachelorStudiengang = $this->StudiengangModel->load($studiengang);
|
||||
$mailcontent .= $applicants_list;
|
||||
$mailcontent .= '</tbody></table>';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;"><a href="mailto:?bcc=' . $mailReceipients . '">Mail an alle schicken</a></p>';
|
||||
$mailcontent_data_arr['table'] = $mailcontent;
|
||||
sendSanchoMail(
|
||||
'Sancho_ReihungstestteilnehmerJob',
|
||||
$mailcontent_data_arr,
|
||||
array($bachelorStudiengang->retval[0]->email, 'kindlm@technikum-wien.at'),
|
||||
'InteressentIn nach Reihungstest-Anmeldeschluss hinzugefügt',
|
||||
'sancho_header_min_bw.jpg',
|
||||
'sancho_footer_min_bw.jpg');
|
||||
$applicants_list = '';
|
||||
$mailcontent_data_arr = array();
|
||||
}
|
||||
if (count($applicants_after_anmeldefrist_arr) > 0)
|
||||
{
|
||||
foreach ($applicants_after_anmeldefrist_arr as $applicant)
|
||||
{
|
||||
if ($studiengang != $applicant->studiengang_kz)
|
||||
{
|
||||
if ($studiengang != '' && $studiengang != $applicant->studiengang_kz)
|
||||
{
|
||||
$bachelorStudiengang = $this->StudiengangModel->load($studiengang);
|
||||
$mailcontent .= $applicants_list;
|
||||
$mailcontent .= '</tbody></table>';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;">
|
||||
<a href="'.APP_ROOT.'vilesci/stammdaten/auswertung_fhtw.php?reihungstest='.$applicant->reihungstest_id.'&studiengang='.$studiengang.'" target="_blank">
|
||||
Liste der Anmeldungen
|
||||
</a>
|
||||
</p>';
|
||||
$mailcontent_data_arr['table'] = $mailcontent;
|
||||
sendSanchoMail(
|
||||
'Sancho_ReihungstestteilnehmerJob',
|
||||
$mailcontent_data_arr,
|
||||
$bachelorStudiengang->retval[0]->email,
|
||||
'InteressentIn nach Reihungstest-Anmeldeschluss hinzugefügt',
|
||||
'sancho_header_min_bw.jpg',
|
||||
'sancho_footer_min_bw.jpg',
|
||||
$from,
|
||||
'',
|
||||
$bcc);
|
||||
$applicants_list = '';
|
||||
$mailcontent_data_arr = array();
|
||||
}
|
||||
|
||||
$mailcontent = '<p style="font-family: verdana, sans-serif;">Folgende InteressentInnen wurden <b>nach</b> der Anmeldefrist zu einem Reihungstest hinzugefügt.</p>';
|
||||
$mailcontent .= '
|
||||
$mailcontent = '<p style="font-family: verdana, sans-serif;">Folgende InteressentInnen wurden <b>nach</b> der Anmeldefrist zu einem Reihungstest hinzugefügt.<br>Details siehe Link</p>';
|
||||
$mailcontent .= '
|
||||
<table width="100%" style="cellpadding: 3px; font-family: verdana, sans-serif; border: 1px solid #000000;">
|
||||
<thead>
|
||||
<th ' . $headerstyle . '>Datum des Tests</th>
|
||||
@@ -251,10 +274,6 @@ class ReihungstestJob extends CLI_Controller
|
||||
<th ' . $headerstyle . '>Semester</th>
|
||||
<th ' . $headerstyle . '>Nachname</th>
|
||||
<th ' . $headerstyle . '>Vorname</th>
|
||||
<th ' . $headerstyle . '>ZGV</th>
|
||||
<th ' . $headerstyle . '>Priorität</th>
|
||||
<th ' . $headerstyle . '>Qualikurs</th>
|
||||
<th ' . $headerstyle . '>E-Mail</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
';
|
||||
@@ -270,50 +289,57 @@ class ReihungstestJob extends CLI_Controller
|
||||
<td>' . $applicant->ausbildungssemester . '</td>
|
||||
<td>' . $applicant->nachname . '</td>
|
||||
<td>' . $applicant->vorname . '</td>
|
||||
<td>' . $applicant->zgv_kurzbz . '</td>
|
||||
<td>' . $applicant->prioritaet . '</td>
|
||||
<td>' . $applicant->qualifikationskurs . '</td>
|
||||
<td><a href="mailto:' . $applicant->email . '">' . $applicant->email . '</a></td>
|
||||
</tr>
|
||||
';
|
||||
};
|
||||
$bachelorStudiengang = $this->StudiengangModel->load($studiengang);
|
||||
$mailcontent .= $applicants_list;
|
||||
$mailcontent .= '</tbody></table>';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;"><a href="mailto:?bcc=' . $mailReceipients . '">Mail an alle schicken</a></p>';
|
||||
$mailcontent_data_arr['table'] = $mailcontent;
|
||||
sendSanchoMail(
|
||||
'Sancho_ReihungstestteilnehmerJob',
|
||||
$mailcontent_data_arr,
|
||||
array($bachelorStudiengang->retval[0]->email, 'kindlm@technikum-wien.at'),
|
||||
'InteressentIn nach Reihungstest-Anmeldeschluss hinzugefügt',
|
||||
'sancho_header_min_bw.jpg',
|
||||
'sancho_footer_min_bw.jpg');
|
||||
}
|
||||
}
|
||||
};
|
||||
$bachelorStudiengang = $this->StudiengangModel->load($studiengang);
|
||||
$mailcontent .= $applicants_list;
|
||||
$mailcontent .= '</tbody></table>';
|
||||
$mailcontent .= '<p style="font-family: verdana, sans-serif;">
|
||||
<a href="'.APP_ROOT.'vilesci/stammdaten/auswertung_fhtw.php?reihungstest='.$applicant->reihungstest_id.'&studiengang='.$studiengang.'" target="_blank">
|
||||
Liste der Anmeldungen
|
||||
</a>
|
||||
</p>';
|
||||
$mailcontent_data_arr['table'] = $mailcontent;
|
||||
sendSanchoMail(
|
||||
'Sancho_ReihungstestteilnehmerJob',
|
||||
$mailcontent_data_arr,
|
||||
$bachelorStudiengang->retval[0]->email,
|
||||
'InteressentIn nach Reihungstest-Anmeldeschluss hinzugefügt',
|
||||
'sancho_header_min_bw.jpg',
|
||||
'sancho_footer_min_bw.jpg',
|
||||
$from,
|
||||
'',
|
||||
$bcc);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Sends an email to all applicants of a placement test to remind them 3 working days before
|
||||
*
|
||||
* @param integer $degreeProgram. Kennzahl of Degree Program to check
|
||||
* @param string $bcc. Optional. BCC-Mailadress to send the Mails to
|
||||
* @param string $from. Optional. Sender-Mailadress shown to recipient
|
||||
*/
|
||||
public function remindApplicantsOfPlacementTest()
|
||||
{
|
||||
$degreeProgram = $this->input->get('degreeprogram');
|
||||
$bcc = $this->input->get('bcc');
|
||||
$from = $this->input->get('from');
|
||||
|
||||
// Encode Params
|
||||
if ($bcc != '')
|
||||
{
|
||||
$bcc = urldecode($bcc);
|
||||
}
|
||||
if ($from != '')
|
||||
{
|
||||
$from = urldecode($from);
|
||||
}
|
||||
/*
|
||||
* Sends an email to all applicants of a placement test to remind them 3 working days before
|
||||
*
|
||||
* @param integer $degreeProgram. Kennzahl of Degree Program to check
|
||||
* @param string $bcc. Optional. BCC-Mailadress to send the Mails to
|
||||
* @param string $from. Optional. Sender-Mailadress shown to recipient
|
||||
*/
|
||||
public function remindApplicantsOfPlacementTest($degreeProgram, $bcc = null, $from = null)
|
||||
{
|
||||
// Encode Params
|
||||
if ($bcc != '')
|
||||
{
|
||||
// $bcc can be given as null-string, so check that too
|
||||
if ($bcc == 'null')
|
||||
{
|
||||
$bcc = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$bcc = urldecode($bcc);
|
||||
}
|
||||
}
|
||||
if ($from != '')
|
||||
{
|
||||
$from = urldecode($from);
|
||||
}
|
||||
|
||||
// Get placement tests with testdate within the next 2 weeks
|
||||
$resultNextTestDates = $this->ReihungstestModel->getNextPlacementtests($degreeProgram, 14);
|
||||
@@ -376,16 +402,23 @@ class ReihungstestJob extends CLI_Controller
|
||||
show_error($applicants->error);
|
||||
}
|
||||
|
||||
foreach ($applicants_arr as $applicant)
|
||||
{
|
||||
$mailcontent_data_arr = array();
|
||||
$mailcontent_data_arr['anrede'] = $applicant->anrede;
|
||||
$mailcontent_data_arr['nachname'] = $applicant->nachname;
|
||||
$mailcontent_data_arr['vorname'] = $applicant->vorname;
|
||||
$mailcontent_data_arr['rt_datum'] = date_format(date_create($reihungstest->datum), 'd.m.Y');
|
||||
$mailcontent_data_arr['rt_uhrzeit'] = date_format(date_create($reihungstest->uhrzeit), 'H:i');
|
||||
$mailcontent_data_arr['rt_raum'] = $applicant->planbezeichnung;
|
||||
$mailcontent_data_arr['wegbeschreibung'] = $applicant->lageplan;
|
||||
foreach ($applicants_arr as $applicant)
|
||||
{
|
||||
$mailcontent_data_arr = array();
|
||||
$mailcontent_data_arr['anrede'] = $applicant->anrede;
|
||||
$mailcontent_data_arr['nachname'] = $applicant->nachname;
|
||||
$mailcontent_data_arr['vorname'] = $applicant->vorname;
|
||||
$mailcontent_data_arr['rt_datum'] = date_format(date_create($reihungstest->datum), 'd.m.Y');
|
||||
$mailcontent_data_arr['rt_uhrzeit'] = date_format(date_create($reihungstest->uhrzeit), 'H:i');
|
||||
$mailcontent_data_arr['rt_raum'] = $applicant->planbezeichnung;
|
||||
if ($applicant->lageplan == '')
|
||||
{
|
||||
$mailcontent_data_arr['wegbeschreibung'] = 'Für diesen Raum liegt noch keine Wegbeschreibung vor.<br><br>No directions were found for this room';
|
||||
}
|
||||
else
|
||||
{
|
||||
$mailcontent_data_arr['wegbeschreibung'] = $applicant->lageplan;
|
||||
}
|
||||
|
||||
sendSanchoMail(
|
||||
'Sancho_RemindApplicantsOfTest',
|
||||
|
||||
@@ -14,9 +14,6 @@ class Auth_Controller extends FHC_Controller
|
||||
// Loads authentication library and starts authentication
|
||||
$this->load->library('AuthLib');
|
||||
|
||||
// Loads authentication helper
|
||||
$this->load->helper('hlp_authentication');
|
||||
|
||||
// Checks if the caller is allowed to access to this content
|
||||
$this->_isAllowed($requiredPermissions);
|
||||
}
|
||||
|
||||
@@ -2,20 +2,35 @@
|
||||
|
||||
if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// -----------------------------------------------------------------------------------------------------
|
||||
// Functions needed to manage the user authentication
|
||||
// ------------------------------------------------------------------------
|
||||
// NOTE: the following functions do NOT prompt a login page if the user is NOT logged in
|
||||
// -----------------------------------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* It calls the AuthLib, if the user is NOT logged then the login page is shown
|
||||
* If the user is NOT logged then a null value is returned.
|
||||
* If the user is alredy logged, then it is possible to access to the authentication object
|
||||
* that contains the person_id of the logged user
|
||||
* NOTE: if a user is logged then a person_id is always present!
|
||||
*/
|
||||
function getAuthPersonId()
|
||||
{
|
||||
$ci =& get_instance(); // get CI instance
|
||||
|
||||
return isLogged() ? ($ci->authlib->getAuthObj())->{AuthLib::AO_PERSON_ID} : null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* If the user is NOT logged then a null value is returned.
|
||||
* If the user is alredy logged, then it is possible to access to the authentication object
|
||||
* that contains the username of the logged user
|
||||
*
|
||||
* @return string or null
|
||||
* NOTE: if the user is logged with a "foreign" method (ex. Bewerbungstool),
|
||||
* then it is possible that the username is null!
|
||||
*/
|
||||
function getAuthUID()
|
||||
{
|
||||
$ci =& get_instance(); // get CI instance
|
||||
|
||||
return ($ci->authlib->getAuthObj())->{AuthLib::AO_USERNAME};
|
||||
return isLogged() ? ($ci->authlib->getAuthObj())->{AuthLib::AO_USERNAME} : null;
|
||||
}
|
||||
|
||||
@@ -224,3 +224,19 @@ function isDateWorkingDay($date, $days = null)
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the current user is logged by checking that the AuthLib is loaded and
|
||||
* it is present the authentication object in session
|
||||
* NOTE: it is placed here instead of being placed in the helper hlp_authentication_helper
|
||||
* because hlp_authentication_helper is loaded after the authentication.
|
||||
* It is very useful to use this function even in those parts of the code that are accessible
|
||||
* even when a user is NOT authenticated!!!
|
||||
* If and only if this function returns true, then all the functions present in hlp_authentication_helper can be used!
|
||||
*/
|
||||
function isLogged()
|
||||
{
|
||||
$ci =& get_instance(); // get CI instance
|
||||
|
||||
return isset($ci->authlib) && $ci->authlib->getAuthObj() != null;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,6 @@ class AuthLib
|
||||
/**
|
||||
* Construct
|
||||
*
|
||||
*
|
||||
* @param bool $authenticate If the authentication must be performed.
|
||||
*/
|
||||
public function __construct($authenticate = true)
|
||||
@@ -483,6 +482,8 @@ class AuthLib
|
||||
|
||||
/**
|
||||
* Stores the authentication object into the authentication session
|
||||
* Everything was fine, the user at this point is authenticated, it is possible to store the authentication object
|
||||
* in the user session
|
||||
*/
|
||||
private function _storeSessionAuthObj($authObj)
|
||||
{
|
||||
@@ -552,7 +553,12 @@ class AuthLib
|
||||
$this->_showError(getData($auth)); // display a generic error message and logs the occurred error
|
||||
}
|
||||
}
|
||||
// else the user is already logged, then continue with the execution
|
||||
// else the user is already logged, then loads authentication helper and continue with the execution
|
||||
// NOTE: it is needed only here because:
|
||||
// - it is called when a user is already logged in
|
||||
// - it is called after login the user
|
||||
// - it is NOT called in case of fatal error or wrong authentication
|
||||
$this->_ci->load->helper('hlp_authentication');
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -108,9 +108,6 @@ class FiltersLib
|
||||
{
|
||||
$this->_ci =& get_instance(); // get code igniter instance
|
||||
|
||||
// Loads authentication helper
|
||||
$this->_ci->load->helper('hlp_authentication'); // NOTE: needed to load custom filters do not remove!
|
||||
|
||||
$this->_filterUniqueId = $this->_getFilterUniqueId($params); // sets the id for the related filter widget
|
||||
}
|
||||
|
||||
@@ -185,11 +182,8 @@ class FiltersLib
|
||||
{
|
||||
// Loads the needed models
|
||||
$this->_ci->load->model('system/Filters_model', 'FiltersModel');
|
||||
$this->_ci->load->model('person/Benutzer_model', 'BenutzerModel'); // to get the default custom filter
|
||||
|
||||
$this->_ci->FiltersModel->resetQuery(); // reset any previous built query
|
||||
|
||||
$this->_ci->FiltersModel->addJoin('public.tbl_benutzer', 'person_id', 'LEFT'); // left join with benutzer table
|
||||
$this->_ci->FiltersModel->addSelect('system.tbl_filters.*'); // select only from table filters
|
||||
$this->_ci->FiltersModel->addOrder('sort', 'ASC'); // sort on column sort
|
||||
$this->_ci->FiltersModel->addLimit(1); // if more than one filter is set as default only one will be retrieved
|
||||
@@ -223,7 +217,7 @@ class FiltersLib
|
||||
$whereParameters = array(
|
||||
'app' => $app,
|
||||
'dataset_name' => $datasetName,
|
||||
'uid' => getAuthUID(),
|
||||
'person_id' => getAuthPersonId(),
|
||||
'default_filter' => true
|
||||
);
|
||||
|
||||
@@ -260,10 +254,10 @@ class FiltersLib
|
||||
$jsonEncodedFilter = null;
|
||||
|
||||
// If the definition contains data and they are valid
|
||||
if (hasData($definition) && isset($definition->retval[0]->filter) && trim($definition->retval[0]->filter) != '')
|
||||
if (hasData($definition) && isset(getData($definition)[0]->filter) && trim(getData($definition)[0]->filter) != '')
|
||||
{
|
||||
// Get the json definition of the filter
|
||||
$tmpJsonEncodedFilter = json_decode($definition->retval[0]->filter);
|
||||
$tmpJsonEncodedFilter = json_decode(getData($definition)[0]->filter);
|
||||
|
||||
// Checks required filter's properies
|
||||
if (isset($tmpJsonEncodedFilter->name)
|
||||
@@ -585,87 +579,76 @@ class FiltersLib
|
||||
$saveCustomFilter = false; // by default returns a failure
|
||||
|
||||
// Checks parameter customFilterDescription if not valid stop the execution
|
||||
if (isEmptyString($customFilterDescription))
|
||||
{
|
||||
return $saveCustomFilter;
|
||||
}
|
||||
if (isEmptyString($customFilterDescription)) return $saveCustomFilter;
|
||||
|
||||
$this->_ci->load->model('system/Filters_model', 'FiltersModel'); // to load the filter definitions
|
||||
$this->_ci->load->model('person/Benutzer_model', 'BenutzerModel'); // to get the person_id of the authenticated user
|
||||
|
||||
$this->_ci->FiltersModel->resetQuery(); // reset any previous built query
|
||||
$this->_ci->BenutzerModel->resetQuery(); // reset any previous built query
|
||||
|
||||
// Loads data for the authenticated user
|
||||
$authBenutzer = $this->_ci->BenutzerModel->loadWhere(array('uid' => getAuthUID()));
|
||||
if (hasData($authBenutzer)) // if data are found
|
||||
// person_id of the authenticated user
|
||||
$authPersonId = getAuthPersonId();
|
||||
// Postgres array for the description
|
||||
$descPGArray = str_replace('%desc%', $customFilterDescription, '{"%desc%", "%desc%", "%desc%", "%desc%"}');
|
||||
|
||||
// Loads the definition to check if is already present in the DB
|
||||
$definition = $this->_ci->FiltersModel->loadWhere(array(
|
||||
'app' => $this->getSessionElement(self::APP_PARAMETER),
|
||||
'dataset_name' => $this->getSessionElement(self::DATASET_NAME_PARAMETER),
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $authPersonId
|
||||
));
|
||||
|
||||
// New definition to be json encoded
|
||||
$jsonDeifinition = new stdClass();
|
||||
$jsonDeifinition->name = $customFilterDescription; // name of the filter
|
||||
|
||||
// Generates the "column" property
|
||||
$jsonDeifinition->columns = array();
|
||||
$selectedFields = $this->getSessionElement(self::SESSION_SELECTED_FIELDS); // retrieved the selected fields
|
||||
for ($i = 0; $i < count($selectedFields); $i++)
|
||||
{
|
||||
// person_id of the authenticated user
|
||||
$authPersonId = $authBenutzer->retval[0]->person_id;
|
||||
// Postgres array for the description
|
||||
$descPGArray = str_replace('%desc%', $customFilterDescription, '{"%desc%", "%desc%", "%desc%", "%desc%"}');
|
||||
// Each element is an object with a property called "name"
|
||||
$jsonDeifinition->columns[$i] = new stdClass();
|
||||
$jsonDeifinition->columns[$i]->name = $selectedFields[$i];
|
||||
}
|
||||
|
||||
// Loads the definition to check if is already present in the DB
|
||||
$definition = $this->_ci->FiltersModel->loadWhere(array(
|
||||
'app' => $this->getSessionElement(self::APP_PARAMETER),
|
||||
'dataset_name' => $this->getSessionElement(self::DATASET_NAME_PARAMETER),
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $authPersonId
|
||||
));
|
||||
// List of applied filters
|
||||
$jsonDeifinition->filters = $this->getSessionElement(self::SESSION_FILTERS);
|
||||
|
||||
// New definition to be json encoded
|
||||
$jsonDeifinition = new stdClass();
|
||||
$jsonDeifinition->name = $customFilterDescription; // name of the filter
|
||||
// If it is already present
|
||||
if (hasData($definition))
|
||||
{
|
||||
// update it
|
||||
$this->_ci->FiltersModel->update(
|
||||
array(
|
||||
'app' => $this->getSessionElement(self::APP_PARAMETER),
|
||||
'dataset_name' => $this->getSessionElement(self::DATASET_NAME_PARAMETER),
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $authPersonId
|
||||
),
|
||||
array(
|
||||
'filter' => json_encode($jsonDeifinition)
|
||||
)
|
||||
);
|
||||
|
||||
// Generates the "column" property
|
||||
$jsonDeifinition->columns = array();
|
||||
$selectedFields = $this->getSessionElement(self::SESSION_SELECTED_FIELDS); // retrieved the selected fields
|
||||
for ($i = 0; $i < count($selectedFields); $i++)
|
||||
{
|
||||
// Each element is an object with a property called "name"
|
||||
$jsonDeifinition->columns[$i] = new stdClass();
|
||||
$jsonDeifinition->columns[$i]->name = $selectedFields[$i];
|
||||
}
|
||||
$saveCustomFilter = true;
|
||||
}
|
||||
else // otherwise insert a new one
|
||||
{
|
||||
$this->_ci->FiltersModel->insert(
|
||||
array(
|
||||
'app' => $this->getSessionElement(self::APP_PARAMETER),
|
||||
'dataset_name' => $this->getSessionElement(self::DATASET_NAME_PARAMETER),
|
||||
'filter_kurzbz' => uniqid($authPersonId, true),
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $authPersonId,
|
||||
'sort' => null,
|
||||
'default_filter' => false,
|
||||
'filter' => json_encode($jsonDeifinition),
|
||||
'oe_kurzbz' => null
|
||||
)
|
||||
);
|
||||
|
||||
// List of applied filters
|
||||
$jsonDeifinition->filters = $this->getSessionElement(self::SESSION_FILTERS);
|
||||
|
||||
// If it is already present
|
||||
if (hasData($definition))
|
||||
{
|
||||
// update it
|
||||
$this->_ci->FiltersModel->update(
|
||||
array(
|
||||
'app' => $this->getSessionElement(self::APP_PARAMETER),
|
||||
'dataset_name' => $this->getSessionElement(self::DATASET_NAME_PARAMETER),
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $authPersonId
|
||||
),
|
||||
array(
|
||||
'filter' => json_encode($jsonDeifinition)
|
||||
)
|
||||
);
|
||||
|
||||
$saveCustomFilter = true;
|
||||
}
|
||||
else // otherwise insert a new one
|
||||
{
|
||||
$this->_ci->FiltersModel->insert(
|
||||
array(
|
||||
'app' => $this->getSessionElement(self::APP_PARAMETER),
|
||||
'dataset_name' => $this->getSessionElement(self::DATASET_NAME_PARAMETER),
|
||||
'filter_kurzbz' => uniqid($authPersonId, true),
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $authPersonId,
|
||||
'sort' => null,
|
||||
'default_filter' => false,
|
||||
'filter' => json_encode($jsonDeifinition),
|
||||
'oe_kurzbz' => null
|
||||
)
|
||||
);
|
||||
|
||||
$saveCustomFilter = true;
|
||||
}
|
||||
$saveCustomFilter = true;
|
||||
}
|
||||
|
||||
return $saveCustomFilter;
|
||||
@@ -721,7 +704,7 @@ class FiltersLib
|
||||
$childrenPersonalArray = array(); // contains all the children elements in menu enty for personal filters
|
||||
|
||||
// Loops through loaded filters
|
||||
foreach ($filters->retval as $filter)
|
||||
foreach (getData($filters) as $filter)
|
||||
{
|
||||
// Generate a menu entry
|
||||
$menuEntry = $this->_ci->navigationlib->oneLevel(
|
||||
|
||||
@@ -349,6 +349,7 @@ class Reihungstest_model extends DB_Model
|
||||
ps.prestudent_id,
|
||||
rt.datum,
|
||||
rt.uhrzeit,
|
||||
rt.reihungstest_id,
|
||||
tbl_studienplan.orgform_kurzbz,
|
||||
tbl_prestudentstatus.studienplan_id,
|
||||
tbl_prestudentstatus.ausbildungssemester,
|
||||
|
||||
@@ -37,7 +37,8 @@
|
||||
<b><?php echo $this->p->t('lehre', 'gewichteternotendurchschnitt'); ?>
|
||||
<img src="../../../../skin/images/information.png" title="<?php echo htmlentities($this->p->t('lehre', 'info_notendurchschnitt_gewichtet')); ?>" />:</b>
|
||||
<?php echo $courses['overall']['notendurchschnittgewichtet'] ?><br>
|
||||
<b><?php echo $this->p->t('lehre', 'ects'); ?>:</b>
|
||||
<b><?php echo $this->p->t('lehre', 'ects'); ?>
|
||||
<img src="../../../../skin/images/information.png" title="Summe der positiv absolvierten ECTS" />:</b>
|
||||
<?php echo $courses['overall']['ectssumme_positiv'] ?><br>
|
||||
<br>
|
||||
<?php
|
||||
|
||||
+444
-441
@@ -1,441 +1,444 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (C) 2008 Technikum-Wien
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
/*
|
||||
* Erstellt eine Liste mit den Noten des eingeloggten Studenten
|
||||
* das betreffende Studiensemester kann ausgewaehlt werden
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/note.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/studienordnung.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/pruefung.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if (! $db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
|
||||
if (isset($_GET['stsem']))
|
||||
$stsem = $_GET['stsem'];
|
||||
else
|
||||
$stsem = '';
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<script type="text/javascript" src="../../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
|
||||
<title>' . $p->t('tools/leistungsbeurteilung') . '</title>
|
||||
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
function MM_jumpMenu(targ, selObj, restore)
|
||||
{
|
||||
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
|
||||
|
||||
if(restore)
|
||||
{
|
||||
selObj.selectedIndex = 0;
|
||||
}
|
||||
};
|
||||
|
||||
// Add parser through the tablesorter addParser method for sorting Studiensemester
|
||||
$.tablesorter.addParser({
|
||||
// set a unique id
|
||||
id: "studiensemester",
|
||||
is: function(s) {
|
||||
// return false so this parser is not auto detected
|
||||
return false;
|
||||
},
|
||||
format: function(s) {
|
||||
// format data for normalization
|
||||
var result = s.substr(2) + s.substr(0, 2);
|
||||
return result;
|
||||
},
|
||||
// set type, either numeric or text
|
||||
type: "text"
|
||||
});
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#notenliste").tablesorter(
|
||||
{
|
||||
headers: {
|
||||
1: {
|
||||
sorter:"studiensemester"
|
||||
}},
|
||||
' . ($stsem == 'alle' ? 'sortList: [[1,0],[4,0]],' : 'sortList: [[3,0]],') . '
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>' . $p->t('tools/leistungsbeurteilung') . '</h1>';
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
if (isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if ($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$user = $_GET['uid'];
|
||||
$getParam = "&uid=" . $user;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
else
|
||||
$getParam = '';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$error = '';
|
||||
|
||||
if (! check_student($user))
|
||||
{
|
||||
$error .= $p->t('tools/mussAlsStudentEingeloggtSein');
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT vw_student.vorname, vw_student.nachname, vw_student.prestudent_id, tbl_studiengang.studiengang_kz
|
||||
FROM public.tbl_studiengang JOIN campus.vw_student USING (studiengang_kz)
|
||||
WHERE campus.vw_student.uid = " . $db->db_add_param($user) . ";";
|
||||
|
||||
if (! $result = $db->db_query($qry))
|
||||
die($p->t('tools/studentWurdeNichtGefunden'));
|
||||
else
|
||||
{
|
||||
$row = $db->db_fetch_object($result);
|
||||
|
||||
$vorname = $row->vorname;
|
||||
$nachname = $row->nachname;
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->load($row->studiengang_kz);
|
||||
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
if ($prestudent->getLastStatus($prestudent_id))
|
||||
{
|
||||
$studienplan_id = $prestudent->studienplan_id;
|
||||
$studienordnung = new studienordnung();
|
||||
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
|
||||
{
|
||||
$studiengangbezeichnung_sto = $sprache === 'English' ? $studienordnung->__get('studiengangbezeichnung_englisch') : $studienordnung->__get('studiengangbezeichnung');
|
||||
}
|
||||
}
|
||||
|
||||
$studiengang_bezeichnung = empty($studiengangbezeichnung_sto) ? $stg_name : $studiengangbezeichnung_sto;
|
||||
}
|
||||
|
||||
$notenarr = array();
|
||||
$note = new note();
|
||||
$note->getAll();
|
||||
foreach ($note->result as $row)
|
||||
{
|
||||
$notenarr[$row->note]['bezeichnung'] = $row->bezeichnung;
|
||||
$notenarr[$row->note]['notenwert'] = $row->notenwert;
|
||||
}
|
||||
|
||||
// Aktuelles Studiensemester ermitteln
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
if ($stsem == '')
|
||||
$stsem = $stsem_obj->getaktorNext();
|
||||
|
||||
// Erstes und letztes Studiensemester mit Studenten-Status ermitteln
|
||||
$prestudent = new prestudent();
|
||||
// Wenn Incoming, dann Incomingstatus laden, sonst Studentenstatus
|
||||
$prestudent->getPrestudentRolle($prestudent_id, 'Incoming');
|
||||
if(count($prestudent->result) > 0)
|
||||
{
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Incoming');
|
||||
$firstStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
$prestudent->getLastStatus($prestudent_id, null, 'Incoming');
|
||||
$lastStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
}
|
||||
else
|
||||
{
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Student');
|
||||
$firstStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
$prestudent->getLastStatus($prestudent_id, null, 'Student');
|
||||
$lastStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
}
|
||||
|
||||
$stsem_obj->getStudiensemesterBetween($firstStudiensemester, $lastStudiensemester);
|
||||
|
||||
echo "<br />";
|
||||
echo "<b>".$p->t('global/name').":</b> $vorname $nachname<br />";
|
||||
echo "<b>".$p->t('global/studiengang').":</b> $studiengang_bezeichnung<br />";
|
||||
echo "<b>".$p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
|
||||
echo "<OPTION value='notenliste.php?stsem=alle".$getParam."'>".$p->t('news/allesemester')."</OPTION>";
|
||||
$notenImAktuellenStSem = false;
|
||||
foreach ($stsem_obj->studiensemester as $semrow)
|
||||
{
|
||||
if ($stsem == $semrow->studiensemester_kurzbz)
|
||||
{
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "' selected>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
$notenImAktuellenStSem = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "'>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
}
|
||||
}
|
||||
echo "</SELECT><br />";
|
||||
|
||||
// echo "Datum: ".date('d.m.Y')."<br />";
|
||||
echo "<br />";
|
||||
if ($notenImAktuellenStSem == false)
|
||||
{
|
||||
$stsem = 'alle';
|
||||
}
|
||||
// Lehrveranstaltungen und Noten holen
|
||||
if ($stsem != "alle")
|
||||
{
|
||||
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . "
|
||||
AND (tbl_lvgesamtnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . " OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
|
||||
}
|
||||
else
|
||||
$sqlFilter = "";
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
|
||||
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
|
||||
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
|
||||
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum,
|
||||
tbl_zeugnisnote.studiensemester_kurzbz AS studiensemester_zeugnis, tbl_lvgesamtnote.studiensemester_kurzbz AS studiensemester_lvnote,
|
||||
tbl_lehrveranstaltung.zeugnis, tbl_lehrveranstaltung.ects
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
|
||||
LEFT OUTER JOIN
|
||||
campus.tbl_lvgesamtnote
|
||||
USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz)
|
||||
WHERE
|
||||
tbl_zeugnisnote.student_uid = " . $db->db_add_param($user) . $sqlFilter . "
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id
|
||||
ORDER BY bezeichnung";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
// Tabelle anzeigen
|
||||
$tbl = "<table class='tablesorter' id='notenliste' style='width: auto;'>";
|
||||
$tblHead = "<thead>
|
||||
<tr class='liste'>
|
||||
<th>" . $p->t('global/lehrveranstaltung') . "</th>";
|
||||
if ($stsem == "alle")
|
||||
$tblHead .= "<th>" . $p->t('global/studiensemester') . "</th>";
|
||||
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/lvNote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= " <th>" . $p->t('benotungstool/zeugnisnote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= "
|
||||
<th>" . $p->t('tools/benotungsdatumDerZeugnisnote') . "</th>
|
||||
<th>" . $p->t('benotungstool/pruefung') . "</th>
|
||||
</tr>
|
||||
</thead>";
|
||||
$tblBody = "<tbody>";
|
||||
$i = 0;
|
||||
$legende = false;
|
||||
$notenSummenArray = array();
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($row->lehrveranstaltung_id);
|
||||
|
||||
$i ++;
|
||||
$tblBody .= "<tr><td>" . $lv_obj->bezeichnung_arr[$sprache] . ($lv_obj->lehrform_kurzbz != "" && $lv_obj->lehrform_kurzbz != " - " ? " (" . $lv_obj->lehrform_kurzbz . ")" : "") . "</td>";
|
||||
if ($stsem == "alle")
|
||||
$tblBody .= "<td>" . ($row->studiensemester_zeugnis != '' ? $row->studiensemester_zeugnis : $row->studiensemester_lvnote) . "</th>";
|
||||
|
||||
$tblBody .= "<td>";
|
||||
|
||||
// Nur freigegebene Noten anzeigen
|
||||
if ($row->freigabedatum >= $row->lvbenotungsdatum)
|
||||
{
|
||||
if (isset($notenarr[$row->lvnote]))
|
||||
$tblBody .= $notenarr[$row->lvnote]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->lvnote;
|
||||
|
||||
// Nur Noten, die aufs Zeugnis gedruckt werden für Durchschnittsberechnung addieren
|
||||
if ($row->zeugnis == true)
|
||||
{
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['notenwert'] = (isset($notenarr[$row->note]['notenwert']) ? $notenarr[$row->note]['notenwert'] : '');
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['ects'] = $row->ects;
|
||||
}
|
||||
}
|
||||
$tblBody .= "</td>";
|
||||
|
||||
// LV Gesamtnote Punkte
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$lvpunkte = ($row->lvpunkte != '' ? (float) $row->lvpunkte : '');
|
||||
$tblBody .= "<td>" . $lvpunkte . "</td>";
|
||||
}
|
||||
|
||||
if ($row->note != $row->lvnote && $row->lvnote != NULL)
|
||||
{
|
||||
$markier = " style='background-color: #FFD999;'";
|
||||
$legende = true;
|
||||
}
|
||||
else
|
||||
$markier = "";
|
||||
$tblBody .= "<td " . $markier . ">";
|
||||
|
||||
if (isset($notenarr[$row->note]))
|
||||
$tblBody .= $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->note;
|
||||
|
||||
$tblBody .= "</td>";
|
||||
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$punkte = ($row->punkte != '' ? ((float) $row->punkte) : '');
|
||||
$tblBody .= "<td>" . $punkte . "</td>";
|
||||
}
|
||||
|
||||
$tblBody .= '<td>' . $datum_obj->formatDatum($row->benotungsdatum, 'Y-m-d') . '</td>';
|
||||
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungen($user, null, $row->lehrveranstaltung_id, $stsem);
|
||||
|
||||
if (count($pruefung->result) > 0)
|
||||
{
|
||||
$tblBody .= '<td>';
|
||||
foreach ($pruefung->result as $row)
|
||||
{
|
||||
if (isset($notenarr[$row->note]))
|
||||
$note = $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$note = $row->note;
|
||||
|
||||
if ($row->punkte != '')
|
||||
$punkte = ' (' . (float) $row->punkte . ')';
|
||||
else
|
||||
$punkte = '';
|
||||
|
||||
$tblBody .= $row->pruefungstyp_beschreibung . ' ' . $datum_obj->formatDatum($row->datum, 'd.m.Y') . ' ' . $note . $punkte . '<br>';
|
||||
}
|
||||
$tblBody .= '</td>';
|
||||
}
|
||||
else
|
||||
$tblBody .= '<td></td>';
|
||||
|
||||
$tblBody .= "</tr>";
|
||||
}
|
||||
// Durchschnitt und gewichteten Durchschnitt berechnen
|
||||
$notenSumme = 0;
|
||||
$notenSummeGewichtet = 0;
|
||||
$ectsSumme = 0;
|
||||
$anzahlLv = 0;
|
||||
foreach ($notenSummenArray AS $key => $value)
|
||||
{
|
||||
if ($value['notenwert'] != '')
|
||||
{
|
||||
$anzahlLv++;
|
||||
$notenSumme += $value['notenwert'];
|
||||
$ectsSumme += $value['ects'];
|
||||
$notenSummeGewichtet += $value['notenwert'] * $value['ects'];
|
||||
}
|
||||
}
|
||||
|
||||
$tblBody .= "</tbody>";
|
||||
$tblFoot = "<tfoot>";
|
||||
|
||||
if ($anzahlLv != 0)
|
||||
$notenDurchschnitt = round($notenSumme / $anzahlLv, 2);
|
||||
else
|
||||
$notenDurchschnitt = 0;
|
||||
|
||||
if ($ectsSumme != 0)
|
||||
$notenDurchschnittGewichtet = round($notenSummeGewichtet / $ectsSumme, 2);
|
||||
else
|
||||
$notenDurchschnittGewichtet = 0;
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/notendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnitt.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/gewichteterNotendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnittGewichtet.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= "</tfoot>";
|
||||
|
||||
$tbl .= $tblHead.$tblFoot.$tblBody;
|
||||
|
||||
$tbl .= "<table><tbody><tr><td width='20' style='text-align: right;'>*</td><td>" . $p->t('tools/legendeNotendurchschnitt') . "</td></tr>";
|
||||
$tbl .= "<tr><td width='20' style='text-align: right;'>**</td><td>" . $p->t('tools/legendeGewichteterNotendurchschnitt') . "</td></tr>";
|
||||
if ($legende)
|
||||
{
|
||||
$tbl .= "<tr><td width='20' style='background-color: #FFD999;'></td><td>" . $p->t('tools/hinweistextMarkierung') . "</td></tr>";
|
||||
}
|
||||
$tbl .= "</tbody></table></table>";
|
||||
if ($i == 0)
|
||||
echo $p->t('tools/nochKeineBeurteilungEingetragen');
|
||||
else
|
||||
{
|
||||
$tbl .= "</table><br><br><br>";
|
||||
echo $tbl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error .= $p->t('tools/fehlerBeimAuslesenDerNoten');
|
||||
}
|
||||
}
|
||||
echo $error;
|
||||
echo '</body>
|
||||
</html>';
|
||||
?>
|
||||
<?php
|
||||
/*
|
||||
* Copyright (C) 2008 Technikum-Wien
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
/*
|
||||
* Erstellt eine Liste mit den Noten des eingeloggten Studenten
|
||||
* das betreffende Studiensemester kann ausgewaehlt werden
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/note.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/studienordnung.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/pruefung.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if (! $db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
|
||||
if (isset($_GET['stsem']))
|
||||
$stsem = $_GET['stsem'];
|
||||
else
|
||||
$stsem = '';
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<script type="text/javascript" src="../../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
|
||||
<title>' . $p->t('tools/leistungsbeurteilung') . '</title>
|
||||
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
function MM_jumpMenu(targ, selObj, restore)
|
||||
{
|
||||
eval(targ + ".location=\'" + selObj.options[selObj.selectedIndex].value + "\'");
|
||||
|
||||
if(restore)
|
||||
{
|
||||
selObj.selectedIndex = 0;
|
||||
}
|
||||
};
|
||||
|
||||
// Add parser through the tablesorter addParser method for sorting Studiensemester
|
||||
$.tablesorter.addParser({
|
||||
// set a unique id
|
||||
id: "studiensemester",
|
||||
is: function(s) {
|
||||
// return false so this parser is not auto detected
|
||||
return false;
|
||||
},
|
||||
format: function(s) {
|
||||
// format data for normalization
|
||||
var result = s.substr(2) + s.substr(0, 2);
|
||||
return result;
|
||||
},
|
||||
// set type, either numeric or text
|
||||
type: "text"
|
||||
});
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#notenliste").tablesorter(
|
||||
{
|
||||
headers: {
|
||||
1: {
|
||||
sorter:"studiensemester"
|
||||
}},
|
||||
' . ($stsem == 'alle' ? 'sortList: [[1,0],[4,0]],' : 'sortList: [[3,0]],') . '
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>' . $p->t('tools/leistungsbeurteilung') . '</h1>';
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
if (isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if ($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$user = $_GET['uid'];
|
||||
$getParam = "&uid=" . $user;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
else
|
||||
$getParam = '';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$error = '';
|
||||
|
||||
if (! check_student($user))
|
||||
{
|
||||
$error .= $p->t('tools/mussAlsStudentEingeloggtSein');
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT vw_student.vorname, vw_student.nachname, vw_student.prestudent_id, tbl_studiengang.studiengang_kz
|
||||
FROM public.tbl_studiengang JOIN campus.vw_student USING (studiengang_kz)
|
||||
WHERE campus.vw_student.uid = " . $db->db_add_param($user) . ";";
|
||||
|
||||
if (! $result = $db->db_query($qry))
|
||||
die($p->t('tools/studentWurdeNichtGefunden'));
|
||||
else
|
||||
{
|
||||
$row = $db->db_fetch_object($result);
|
||||
|
||||
$vorname = $row->vorname;
|
||||
$nachname = $row->nachname;
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->load($row->studiengang_kz);
|
||||
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
|
||||
$prestudent_id = $row->prestudent_id;
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
if ($prestudent->getLastStatus($prestudent_id))
|
||||
{
|
||||
$studienplan_id = $prestudent->studienplan_id;
|
||||
$studienordnung = new studienordnung();
|
||||
if ($studienordnung->getStudienordnungFromStudienplan($studienplan_id))
|
||||
{
|
||||
$studiengangbezeichnung_sto = $sprache === 'English' ? $studienordnung->__get('studiengangbezeichnung_englisch') : $studienordnung->__get('studiengangbezeichnung');
|
||||
}
|
||||
}
|
||||
|
||||
$studiengang_bezeichnung = empty($studiengangbezeichnung_sto) ? $stg_name : $studiengangbezeichnung_sto;
|
||||
}
|
||||
|
||||
$notenarr = array();
|
||||
$note = new note();
|
||||
$note->getAll();
|
||||
foreach ($note->result as $row)
|
||||
{
|
||||
$notenarr[$row->note]['bezeichnung'] = $row->bezeichnung;
|
||||
$notenarr[$row->note]['notenwert'] = $row->notenwert;
|
||||
}
|
||||
|
||||
// Aktuelles Studiensemester ermitteln
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
if ($stsem == '')
|
||||
$stsem = $stsem_obj->getaktorNext();
|
||||
|
||||
// Erstes und letztes Studiensemester mit Studenten-Status ermitteln
|
||||
$prestudent = new prestudent();
|
||||
// Wenn Incoming, dann Incomingstatus laden, sonst Studentenstatus
|
||||
$prestudent->getPrestudentRolle($prestudent_id, 'Incoming');
|
||||
if(count($prestudent->result) > 0)
|
||||
{
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Incoming');
|
||||
$firstStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
$prestudent->getLastStatus($prestudent_id, null, 'Incoming');
|
||||
$lastStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
}
|
||||
else
|
||||
{
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Student');
|
||||
$firstStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
$prestudent->getLastStatus($prestudent_id, null, 'Student');
|
||||
$lastStudiensemester = $prestudent->studiensemester_kurzbz;
|
||||
}
|
||||
|
||||
$stsem_obj->getStudiensemesterBetween($firstStudiensemester, $lastStudiensemester);
|
||||
|
||||
echo "<br />";
|
||||
echo "<b>".$p->t('global/name').":</b> $vorname $nachname<br />";
|
||||
echo "<b>".$p->t('global/studiengang').":</b> $studiengang_bezeichnung<br />";
|
||||
echo "<b>".$p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
|
||||
echo "<OPTION value='notenliste.php?stsem=alle".$getParam."'>".$p->t('news/allesemester')."</OPTION>";
|
||||
$notenImAktuellenStSem = false;
|
||||
foreach ($stsem_obj->studiensemester as $semrow)
|
||||
{
|
||||
if ($stsem == $semrow->studiensemester_kurzbz)
|
||||
{
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "' selected>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
$notenImAktuellenStSem = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<OPTION value='notenliste.php?stsem=" . $semrow->studiensemester_kurzbz . $getParam . "'>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
}
|
||||
}
|
||||
echo "</SELECT><br />";
|
||||
|
||||
// echo "Datum: ".date('d.m.Y')."<br />";
|
||||
echo "<br />";
|
||||
if ($notenImAktuellenStSem == false)
|
||||
{
|
||||
$stsem = 'alle';
|
||||
}
|
||||
// Lehrveranstaltungen und Noten holen
|
||||
if ($stsem != "alle")
|
||||
{
|
||||
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . "
|
||||
AND (tbl_lvgesamtnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . " OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
|
||||
}
|
||||
else
|
||||
$sqlFilter = "";
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
|
||||
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
|
||||
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
|
||||
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum,
|
||||
tbl_zeugnisnote.studiensemester_kurzbz AS studiensemester_zeugnis, tbl_lvgesamtnote.studiensemester_kurzbz AS studiensemester_lvnote,
|
||||
tbl_lehrveranstaltung.zeugnis, tbl_lehrveranstaltung.ects
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
|
||||
LEFT OUTER JOIN campus.tbl_lvgesamtnote USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz)
|
||||
LEFT OUTER JOIN lehre.tbl_note on tbl_zeugnisnote.note = tbl_note.note
|
||||
WHERE
|
||||
tbl_zeugnisnote.student_uid = " . $db->db_add_param($user) . $sqlFilter . "
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id";
|
||||
|
||||
if(defined('CIS_NOTENLISTE_OFFIZIELL_ANZEIGEN') && CIS_NOTENLISTE_OFFIZIELL_ANZEIGEN)
|
||||
$qry .= " AND tbl_note.offiziell = true";
|
||||
|
||||
$qry .= " ORDER BY tbl_lehrveranstaltung.bezeichnung";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
// Tabelle anzeigen
|
||||
$tbl = "<table class='tablesorter' id='notenliste' style='width: auto;'>";
|
||||
$tblHead = "<thead>
|
||||
<tr class='liste'>
|
||||
<th>" . $p->t('global/lehrveranstaltung') . "</th>";
|
||||
if ($stsem == "alle")
|
||||
$tblHead .= "<th>" . $p->t('global/studiensemester') . "</th>";
|
||||
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/lvNote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= " <th>" . $p->t('benotungstool/zeugnisnote') . "</th>";
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tblHead .= "<th>" . $p->t('benotungstool/punkte') . "</th>";
|
||||
|
||||
$tblHead .= "
|
||||
<th>" . $p->t('tools/benotungsdatumDerZeugnisnote') . "</th>
|
||||
<th>" . $p->t('benotungstool/pruefung') . "</th>
|
||||
</tr>
|
||||
</thead>";
|
||||
$tblBody = "<tbody>";
|
||||
$i = 0;
|
||||
$legende = false;
|
||||
$notenSummenArray = array();
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($row->lehrveranstaltung_id);
|
||||
|
||||
$i ++;
|
||||
$tblBody .= "<tr><td>" . $lv_obj->bezeichnung_arr[$sprache] . ($lv_obj->lehrform_kurzbz != "" && $lv_obj->lehrform_kurzbz != " - " ? " (" . $lv_obj->lehrform_kurzbz . ")" : "") . "</td>";
|
||||
if ($stsem == "alle")
|
||||
$tblBody .= "<td>" . ($row->studiensemester_zeugnis != '' ? $row->studiensemester_zeugnis : $row->studiensemester_lvnote) . "</th>";
|
||||
|
||||
$tblBody .= "<td>";
|
||||
|
||||
// Nur freigegebene Noten anzeigen
|
||||
if ($row->freigabedatum >= $row->lvbenotungsdatum)
|
||||
{
|
||||
if (isset($notenarr[$row->lvnote]))
|
||||
$tblBody .= $notenarr[$row->lvnote]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->lvnote;
|
||||
|
||||
// Nur Noten, die aufs Zeugnis gedruckt werden für Durchschnittsberechnung addieren
|
||||
if ($row->zeugnis == true)
|
||||
{
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['notenwert'] = (isset($notenarr[$row->note]['notenwert']) ? $notenarr[$row->note]['notenwert'] : '');
|
||||
$notenSummenArray[$row->lehrveranstaltung_id]['ects'] = $row->ects;
|
||||
}
|
||||
}
|
||||
$tblBody .= "</td>";
|
||||
|
||||
// LV Gesamtnote Punkte
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$lvpunkte = ($row->lvpunkte != '' ? (float) $row->lvpunkte : '');
|
||||
$tblBody .= "<td>" . $lvpunkte . "</td>";
|
||||
}
|
||||
|
||||
if ($row->note != $row->lvnote && $row->lvnote != NULL)
|
||||
{
|
||||
$markier = " style='background-color: #FFD999;'";
|
||||
$legende = true;
|
||||
}
|
||||
else
|
||||
$markier = "";
|
||||
$tblBody .= "<td " . $markier . ">";
|
||||
|
||||
if (isset($notenarr[$row->note]))
|
||||
$tblBody .= $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$tblBody .= $row->note;
|
||||
|
||||
$tblBody .= "</td>";
|
||||
|
||||
if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$punkte = ($row->punkte != '' ? ((float) $row->punkte) : '');
|
||||
$tblBody .= "<td>" . $punkte . "</td>";
|
||||
}
|
||||
|
||||
$tblBody .= '<td>' . $datum_obj->formatDatum($row->benotungsdatum, 'Y-m-d') . '</td>';
|
||||
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungen($user, null, $row->lehrveranstaltung_id, $stsem);
|
||||
|
||||
if (count($pruefung->result) > 0)
|
||||
{
|
||||
$tblBody .= '<td>';
|
||||
foreach ($pruefung->result as $row)
|
||||
{
|
||||
if (isset($notenarr[$row->note]))
|
||||
$note = $notenarr[$row->note]['bezeichnung'];
|
||||
else
|
||||
$note = $row->note;
|
||||
|
||||
if ($row->punkte != '')
|
||||
$punkte = ' (' . (float) $row->punkte . ')';
|
||||
else
|
||||
$punkte = '';
|
||||
|
||||
$tblBody .= $row->pruefungstyp_beschreibung . ' ' . $datum_obj->formatDatum($row->datum, 'd.m.Y') . ' ' . $note . $punkte . '<br>';
|
||||
}
|
||||
$tblBody .= '</td>';
|
||||
}
|
||||
else
|
||||
$tblBody .= '<td></td>';
|
||||
|
||||
$tblBody .= "</tr>";
|
||||
}
|
||||
// Durchschnitt und gewichteten Durchschnitt berechnen
|
||||
$notenSumme = 0;
|
||||
$notenSummeGewichtet = 0;
|
||||
$ectsSumme = 0;
|
||||
$anzahlLv = 0;
|
||||
foreach ($notenSummenArray AS $key => $value)
|
||||
{
|
||||
if ($value['notenwert'] != '')
|
||||
{
|
||||
$anzahlLv++;
|
||||
$notenSumme += $value['notenwert'];
|
||||
$ectsSumme += $value['ects'];
|
||||
$notenSummeGewichtet += $value['notenwert'] * $value['ects'];
|
||||
}
|
||||
}
|
||||
|
||||
$tblBody .= "</tbody>";
|
||||
$tblFoot = "<tfoot>";
|
||||
|
||||
if ($anzahlLv != 0)
|
||||
$notenDurchschnitt = round($notenSumme / $anzahlLv, 2);
|
||||
else
|
||||
$notenDurchschnitt = 0;
|
||||
|
||||
if ($ectsSumme != 0)
|
||||
$notenDurchschnittGewichtet = round($notenSummeGewichtet / $ectsSumme, 2);
|
||||
else
|
||||
$notenDurchschnittGewichtet = 0;
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/notendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnitt.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= '<tr>';
|
||||
$tblFoot .= '<td colspan="'.($stsem == "alle" ? 3 : 2).'" align="right"><b>' . $p->t("tools/gewichteterNotendurchschnittDerZeugnisnote") . '</b></td>';
|
||||
$tblFoot .= '<td style="background-color: #EEEEEE;">'.$notenDurchschnittGewichtet.'</td>';
|
||||
$tblFoot .= '<td colspan="2"></td>';
|
||||
|
||||
$tblFoot .= "</tr>";
|
||||
|
||||
$tblFoot .= "</tfoot>";
|
||||
|
||||
$tbl .= $tblHead.$tblFoot.$tblBody;
|
||||
|
||||
$tbl .= "<table><tbody><tr><td width='20' style='text-align: right;'>*</td><td>" . $p->t('tools/legendeNotendurchschnitt') . "</td></tr>";
|
||||
$tbl .= "<tr><td width='20' style='text-align: right;'>**</td><td>" . $p->t('tools/legendeGewichteterNotendurchschnitt') . "</td></tr>";
|
||||
if ($legende)
|
||||
{
|
||||
$tbl .= "<tr><td width='20' style='background-color: #FFD999;'></td><td>" . $p->t('tools/hinweistextMarkierung') . "</td></tr>";
|
||||
}
|
||||
$tbl .= "</tbody></table></table>";
|
||||
if ($i == 0)
|
||||
echo $p->t('tools/nochKeineBeurteilungEingetragen');
|
||||
else
|
||||
{
|
||||
$tbl .= "</table><br><br><br>";
|
||||
echo $tbl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error .= $p->t('tools/fehlerBeimAuslesenDerNoten');
|
||||
}
|
||||
}
|
||||
echo $error;
|
||||
echo '</body>
|
||||
</html>';
|
||||
?>
|
||||
|
||||
@@ -606,9 +606,10 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
|
||||
foreach ($prestudent->result as $ps)
|
||||
{
|
||||
if ($ps->getLaststatus($ps->prestudent_id, $stdsem_lv_besuch))
|
||||
// prüfen ob Student zum Zeitpunkt der LV oder zumindest irgendwann Student im Studiengang war/ist
|
||||
if ($ps->getLaststatus($ps->prestudent_id, $stdsem_lv_besuch) || $ps->studiengang_kz == $studiengang_kz)
|
||||
{
|
||||
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher"))
|
||||
if (($ps->status_kurzbz == "Student") || ($ps->status_kurzbz == "Unterbrecher") || ($ps->status_kurzbz == ""))
|
||||
{
|
||||
array_push($prestudenten, $ps);
|
||||
}
|
||||
|
||||
@@ -314,8 +314,14 @@ function LoadGruppe(type)
|
||||
</td></tr>
|
||||
|
||||
<tr>
|
||||
<td width="30%">
|
||||
<h2>'.$p->t("lvplan/saalplan").'</h2>
|
||||
<td width="30%">';
|
||||
|
||||
if(!defined('CIS_LVPLAN_SAALPLAN_ANZEIGEN') || CIS_LVPLAN_SAALPLAN_ANZEIGEN)
|
||||
{
|
||||
echo '<h2>'.$p->t("lvplan/saalplan").'</h2>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</td>
|
||||
<td>';
|
||||
|
||||
@@ -328,21 +334,24 @@ function LoadGruppe(type)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top">
|
||||
<td valign="top">';
|
||||
|
||||
if(!defined('CIS_LVPLAN_SAALPLAN_ANZEIGEN') || CIS_LVPLAN_SAALPLAN_ANZEIGEN)
|
||||
{ echo '
|
||||
<select name="select" style="width:200px;" onChange="MM_jumpMenu(\'self\',this,0)">
|
||||
<option value="stpl_week.php" selected>'.$p->t('lvplan/raumAuswaehlen').'</option>';
|
||||
if(defined('CIS_SAALPLAN_ALLERAEUME_OPTION') && CIS_SAALPLAN_ALLERAEUME_OPTION)
|
||||
echo '<option value="stpl_week.php?type=ort&ort_kurzbz=all" value="all">'.$p->t('lvplan/alleRaeume').'</option>';
|
||||
|
||||
if(defined('CIS_SAALPLAN_ALLERAEUME_OPTION') && CIS_SAALPLAN_ALLERAEUME_OPTION)
|
||||
echo '<option value="stpl_week.php?type=ort&ort_kurzbz=all" value="all">'.$p->t('lvplan/alleRaeume').'</option>';
|
||||
|
||||
|
||||
for ($i=0;$i<$num_rows_ort;$i++)
|
||||
{
|
||||
$row=$db->db_fetch_object ($result_ort, $i);
|
||||
echo "<option value=\"stpl_week.php?type=ort&ort_kurzbz=$row->ort_kurzbz\">$row->ort_kurzbz ($row->bezeichnung)</option>";
|
||||
}
|
||||
for ($i=0;$i<$num_rows_ort;$i++)
|
||||
{
|
||||
$row=$db->db_fetch_object ($result_ort, $i);
|
||||
echo "<option value=\"stpl_week.php?type=ort&ort_kurzbz=$row->ort_kurzbz\">$row->ort_kurzbz ($row->bezeichnung)</option>";
|
||||
}
|
||||
|
||||
echo '</select>';
|
||||
}
|
||||
|
||||
if ($raumres)
|
||||
{
|
||||
|
||||
@@ -441,7 +441,7 @@ elseif (isset($reserve) && $raumres)
|
||||
$reservierung->insertamum=date('Y-m-d H:i:s');
|
||||
$reservierung->insertvon=$uid;
|
||||
|
||||
if(!empty($_REQUEST['lecturer_uids'] && isset($_REQUEST['studiengang_kz'])))
|
||||
if(isset($_REQUEST['lecturer_uids']) && !empty($_REQUEST['lecturer_uids'] && isset($_REQUEST['studiengang_kz'])))
|
||||
{
|
||||
$lecturer_uids = $_REQUEST['lecturer_uids'];
|
||||
foreach ($lecturer_uids as $lecturer_uid)
|
||||
|
||||
@@ -223,9 +223,9 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<td>'.$row->lehrfach.'</td>';
|
||||
echo '<td>'.$row->le_lehrform_kurzbz.'</td>';
|
||||
if ($row->lehrfach_bez!=$row->lv_bezeichnung)
|
||||
echo '<td>'.$row->lv_bezeichnung.' ('.$p->t('lvaliste/lehrfach').': '.$row->lehrfach_bez.')</td>';
|
||||
echo '<td><a href="../lehre/lesson.php?lvid='.$row->lehrveranstaltung_id.'&studiensemester_kurzbz='.$stdsem.'">'.$row->lv_bezeichnung.' ('.$p->t('lvaliste/lehrfach').': '.$row->lehrfach_bez.')</a></td>';
|
||||
else
|
||||
echo '<td>'.$row->lv_bezeichnung.'</td>';
|
||||
echo '<td><a href="../lehre/lesson.php?lvid='.$row->lehrveranstaltung_id.'&studiensemester_kurzbz='.$stdsem.'">'.$row->lv_bezeichnung.'</a></td>';
|
||||
echo '<td>'.$row->lektor.'</td>';
|
||||
echo '<td><a href="mailto:'.$row->email.'">'.$row->stg_kurzbz.'</a></td>';
|
||||
echo '<td>'.$row->semester.'</td>';
|
||||
@@ -304,15 +304,16 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
tbl_lehrveranstaltung.bezeichnung, tbl_projektarbeit.titel,
|
||||
(SELECT nachname || ' ' || vorname FROM public.tbl_benutzer JOIN public.tbl_person USING(person_id)
|
||||
WHERE uid=student_uid) as student, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester,
|
||||
tbl_studiengang.email
|
||||
tbl_studiengang.email, tbl_betreuerart.beschreibung AS beutreuerart_beschreibung
|
||||
FROM
|
||||
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektarbeit, lehre.tbl_projektbetreuer, public.tbl_studiengang
|
||||
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektarbeit, lehre.tbl_projektbetreuer, public.tbl_studiengang, lehre.tbl_betreuerart
|
||||
WHERE
|
||||
tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
|
||||
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stdsem)." AND
|
||||
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
|
||||
tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz AND
|
||||
tbl_projektbetreuer.betreuerart_kurzbz=tbl_betreuerart.betreuerart_kurzbz AND
|
||||
tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER);
|
||||
|
||||
$stg_obj = new studiengang();
|
||||
@@ -330,6 +331,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<th>'.$p->t('lvaliste/semester').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/lvBezeichnung').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/student').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/betreuungsart').'</th>';
|
||||
echo '<th>'.$p->t('lvaliste/titelProjektarbeit').'</th>';
|
||||
echo '</tr></thead><tbody>';
|
||||
while($row = $db->db_fetch_object($result))
|
||||
@@ -339,6 +341,7 @@ require_once('../../../include/benutzerberechtigung.class.php');
|
||||
echo '<td>'.$row->semester.'</td>';
|
||||
echo '<td>'.$row->bezeichnung.'</td>';
|
||||
echo '<td>'.$row->student.'</td>';
|
||||
echo '<td>'.$row->beutreuerart_beschreibung.'</td>';
|
||||
echo '<td>'.$row->titel.'</td>';
|
||||
|
||||
echo '</tr>';
|
||||
|
||||
@@ -111,7 +111,7 @@ if (!$searchPerson && !$searchOrt && !$searchDms && !$searchContent && !$searchO
|
||||
|
||||
function searchPerson($searchItems)
|
||||
{
|
||||
global $db, $p, $noalias;
|
||||
global $db, $p, $noalias, $uid;
|
||||
$bn = new benutzer();
|
||||
$bn->search($searchItems, 21);
|
||||
|
||||
@@ -163,7 +163,19 @@ function searchPerson($searchItems)
|
||||
//echo '<td>',$row->titelpre,'</td>';
|
||||
echo '<td>',$row->anrede,'</td>';
|
||||
echo '<td>',$row->vorname,'</td>';
|
||||
echo '<td><a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
echo '<td>';
|
||||
if(!defined('CIS_SUCHE_PROFIL_ANZEIGEN'))
|
||||
echo '<a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
else if(!CIS_SUCHE_PROFIL_ANZEIGEN)
|
||||
{
|
||||
$mitarbeiter = new Mitarbeiter($uid);
|
||||
if($mitarbeiter->errormsg === NULL)
|
||||
echo '<a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
else
|
||||
echo $row->nachname;
|
||||
}
|
||||
else
|
||||
echo '<a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
if($row->aktiv==false)
|
||||
echo '<span style="color: red"> (ausgeschieden)</span>';
|
||||
elseif($bisverwendung->beschausmasscode=='5')
|
||||
|
||||
@@ -50,6 +50,9 @@ define('CIS_LVALISTE_NOTENEINGABE_ANZEIGEN',true);
|
||||
// Anzeige des LV-Plan Links bei globaler Suche
|
||||
define('CIS_SUCHE_LVPLAN_ANZEIGEN',true);
|
||||
|
||||
// Anzeige des Links zum Profil von Personen bei globaler Suche
|
||||
define('CIS_SUCHE_PROFIL_ANZEIGEN',true);
|
||||
|
||||
// Soll geprueft werden ob das Passwort innerhalb des letzten Jahres geaendert wurde true|false
|
||||
// Wenn dies nicht geaendert wurde wird nach dem Login auf die Passwort aendern Seite umgeleitet
|
||||
define('CIS_CHECK_PASSWORD_CHANGE',false);
|
||||
@@ -93,6 +96,9 @@ define('FAS_GESAMTNOTE_PRUEFUNGSHONORAR',false);
|
||||
// Aus Datenschutzgründen ist dies per default deaktiviert
|
||||
define('CIS_GESAMTNOTE_FREIGABEMAIL_NOTE', false);
|
||||
|
||||
// Gibt an ob in der Notenliste der Studierenden nur offizielle Noten oder alle angezeigt werden
|
||||
define('CIS_NOTENLISTE_OFFIZIELL_ANZEIGEN', false);
|
||||
|
||||
// Grenzwerte für Anwesenheit
|
||||
define('FAS_ANWESENHEIT_ROT', 70);
|
||||
define('FAS_ANWESENHEIT_GELB', 90);
|
||||
@@ -123,6 +129,7 @@ define('CIS_LVPLAN_PERSONENAUSWAHL_ANZEIGEN',true);
|
||||
define('CIS_LVPLAN_LEHRVERBANDAUSWAHL_ANZEIGEN',true);
|
||||
define('CIS_LVPLAN_ARCHIVAUSWAHL_ANZEIGEN',true);
|
||||
define('CIS_LVPLAN_ZUSATZMENUE_ANZEIGEN',true);
|
||||
define('CIS_LVPLAN_SAALPLAN_ANZEIGEN',true);
|
||||
|
||||
//Anmerkung bei Unterrichtseinheiten im LV-Plan anzeigen. Anmerkungen bei LV-Plan Sync mitkopieren.
|
||||
define('LVPLAN_ANMERKUNG_ANZEIGEN',true);
|
||||
@@ -238,7 +245,7 @@ define('LOG_CONTENT', false);
|
||||
// ContentID of default content-template for reports. New contents will be childs of this.
|
||||
define('REPORT_CONTENT_TEMPLATE', '');
|
||||
|
||||
// Schwund in %, der bei Arbeitsplätzen herausgerechnet werden soll.
|
||||
// Schwund in %, der bei Arbeitsplätzen herausgerechnet werden soll.
|
||||
// zB 5. Dann werden bei 20 Plätzen 5% Schwund herausgerechnet und nur 19 Plätze zurückgegeben
|
||||
define('REIHUNGSTEST_ARBEITSPLAETZE_SCHWUND', 0);
|
||||
|
||||
|
||||
+7
-7
@@ -110,7 +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-studienverlauf-student:command" oncommand="StatistikPrintStudienverlaufStudent();"/>
|
||||
<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');"/>
|
||||
@@ -377,14 +377,14 @@ 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>
|
||||
<menuitem
|
||||
id = "menu-statistic-studienverlauf-student"
|
||||
key = "menu-statistic-studienverlauf-student:key"
|
||||
label = "&menu-statistic-studienverlauf-student.label;"
|
||||
command = "menu-statistic-studienverlauf-student:command"
|
||||
accesskey = "&menu-statistic-studienverlauf-student.accesskey;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<!-- *** Statistik *** -->
|
||||
|
||||
@@ -1127,7 +1127,7 @@ 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()
|
||||
function StatistikPrintStudienverlaufStudent()
|
||||
{
|
||||
var tree = document.getElementById('student-tree');
|
||||
var data='';
|
||||
@@ -1144,7 +1144,7 @@ function StatistikPrintNotenspiegelStudent()
|
||||
alert('Markierte Person ist kein Student');
|
||||
return;
|
||||
}
|
||||
window.open('<?php echo APP_ROOT ?>index.ci.php/person/gradelist/index/'+student_uid,'Notenspiegel');
|
||||
window.open('<?php echo APP_ROOT ?>index.ci.php/person/gradelist/index/'+student_uid,'Studienverlauf');
|
||||
}
|
||||
|
||||
// ****
|
||||
|
||||
@@ -1826,10 +1826,17 @@ function StudentPrestudentRolleBestaetigen()
|
||||
var studiensemester_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', tree.currentIndex);
|
||||
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
|
||||
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', tree.currentIndex);
|
||||
var bewerbung_abgeschicktamum = getTreeCellText(tree, 'student-prestudent-tree-rolle-bewerbung_abgeschicktamum', tree.currentIndex);
|
||||
|
||||
studiengang_kz = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
if(confirm('Diesen Status bestaetigen?'))
|
||||
{
|
||||
// Status darf nur bestaetig werden, wenn Bewerbung schon abgeschickt wurde
|
||||
if (bewerbung_abgeschicktamum=='')
|
||||
{
|
||||
alert('Die Bewerbung wurde noch nicht abgeschickt und kann deshalb nicht bestätigt werden');
|
||||
return false;
|
||||
}
|
||||
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
|
||||
@@ -233,7 +233,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#lehrveranstaltung_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#orgform_kurzbz (rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#semester Sem)"
|
||||
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#orgform_kurzbz (rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#semester Sem) ID: rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#lehrveranstaltung_id"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
@@ -247,7 +247,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehreinheit/rdf#lehreinheit_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehreinheit/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehreinheit/rdf#studiensemester_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/lehreinheit/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehreinheit/rdf#studiensemester_kurzbz ID: rdf:http://www.technikum-wien.at/lehreinheit/rdf#lehreinheit_id"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
|
||||
+15
-7
@@ -301,7 +301,7 @@ class akte extends basis_db
|
||||
* @param string $order Sortierreihenfolge im SQL
|
||||
* @return true wenn ok, sonst false
|
||||
*/
|
||||
public function getAkten($person_id, $dokument_kurzbz=null, $stg_kz = null, $prestudent_id = null, $returnInhalt = false, $order = 'erstelltam')
|
||||
public function getAkten($person_id, $dokument_kurzbz = null, $stg_kz = null, $prestudent_id = null, $returnInhalt = false, $order = 'erstelltam')
|
||||
{
|
||||
$qry = "SELECT
|
||||
akte_id, person_id, dokument_kurzbz, mimetype, erstelltam, gedruckt, titel_intern, anmerkung_intern,
|
||||
@@ -309,20 +309,28 @@ class akte extends basis_db
|
||||
CASE WHEN inhalt is not null THEN true ELSE false END as inhalt_vorhanden,
|
||||
nachgereicht_am, ausstellungsnation, formal_geprueft_amum, archiv, signiert, stud_selfservice";
|
||||
if($returnInhalt === true)
|
||||
$qry.=",inhalt ";
|
||||
{
|
||||
$qry .= ",inhalt ";
|
||||
}
|
||||
|
||||
$qry.=" FROM public.tbl_akte WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
|
||||
if($dokument_kurzbz!=null)
|
||||
$qry.=" AND dokument_kurzbz=".$this->db_add_param($dokument_kurzbz);
|
||||
if($dokument_kurzbz != '')
|
||||
{
|
||||
$qry .= " AND dokument_kurzbz=".$this->db_add_param($dokument_kurzbz);
|
||||
}
|
||||
if($stg_kz != null && $prestudent_id != null)
|
||||
$qry.=" AND dokument_kurzbz not in (SELECT dokument_kurzbz FROM public.tbl_dokument JOIN public.tbl_dokumentstudiengang USING(dokument_kurzbz)
|
||||
{
|
||||
$qry .= " AND dokument_kurzbz not in (SELECT dokument_kurzbz FROM public.tbl_dokument JOIN public.tbl_dokumentstudiengang USING(dokument_kurzbz)
|
||||
WHERE studiengang_kz= ".$this->db_add_param($stg_kz).") AND dokument_kurzbz NOT IN ('Zeugnis','DiplSupp','Bescheid') AND dokument_kurzbz NOT IN
|
||||
(SELECT dokument_kurzbz FROM public.tbl_dokumentprestudent JOIN public.tbl_dokument USING(dokument_kurzbz)
|
||||
WHERE prestudent_id=".$this->db_add_param($prestudent_id).")";
|
||||
}
|
||||
|
||||
if ($order != '')
|
||||
$qry.=" ORDER BY ".$order;
|
||||
|
||||
{
|
||||
$qry .= " ORDER BY ".$order;
|
||||
}
|
||||
//echo $qry;
|
||||
$this->errormsg = $qry;
|
||||
|
||||
if($this->db_query($qry))
|
||||
|
||||
@@ -688,7 +688,7 @@ class dokument extends basis_db
|
||||
$bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig');
|
||||
$dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig');
|
||||
$beschreibung_mehrsprachig = $sprache->getSprachQuery('beschreibung_mehrsprachig');
|
||||
$qry = "SELECT distinct on (dokument_kurzbz) dokument_kurzbz, bezeichnung, pflicht, nachreichbar, ausstellungsdetails,
|
||||
$qry = "SELECT distinct on (dokument_kurzbz) dokument_kurzbz, bezeichnung, pflicht, nachreichbar, ausstellungsdetails, stufe,
|
||||
$bezeichnung_mehrsprachig, $dokumentbeschreibung_mehrsprachig, $beschreibung_mehrsprachig
|
||||
FROM public.tbl_dokumentstudiengang
|
||||
JOIN public.tbl_prestudent using (studiengang_kz)
|
||||
|
||||
@@ -292,7 +292,7 @@ class dokument_export
|
||||
|
||||
if($ret!=0)
|
||||
{
|
||||
$this->errormsg = 'Dokumentenkonvertierung ist derzeit nicht möglich. Bitte informieren Sie den Administrator';
|
||||
$this->errormsg = 'Dokumentenkonvertierung ist derzeit nicht möglich. Bitte versuchen Sie es in einer Minute erneut oder kontaktieren Sie einen Administrator';
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
@@ -465,7 +465,7 @@ class dokument_export
|
||||
|
||||
if($ret!=0)
|
||||
{
|
||||
$this->errormsg = 'Dokumentenkonvertierung ist derzeit nicht möglich. Bitte informieren Sie den Administrator';
|
||||
$this->errormsg = 'Dokumentenkonvertierung ist derzeit nicht möglich. Bitte versuchen Sie es in einer Minute erneut oder kontaktieren Sie einen Administrator';
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -30,6 +30,8 @@ class organisationsform extends basis_db
|
||||
public $code;
|
||||
public $bezeichnung;
|
||||
public $rolle;
|
||||
public $bisorgform_kurzbz;
|
||||
public $bezeichnung_mehrsprachig;
|
||||
|
||||
public $result = array();
|
||||
|
||||
@@ -37,9 +39,12 @@ class organisationsform extends basis_db
|
||||
*
|
||||
* Konstruktor
|
||||
*/
|
||||
public function __construct()
|
||||
public function __construct($orgform_kurzbz = null)
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if($orgform_kurzbz != null)
|
||||
$this->load($orgform_kurzbz);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -48,7 +53,16 @@ class organisationsform extends basis_db
|
||||
*/
|
||||
public function load($orgform_kurzbz)
|
||||
{
|
||||
$qry = "SELECT * FROM bis.tbl_orgform WHERE orgform_kurzbz=".$this->db_add_param($orgform_kurzbz).';';
|
||||
$sprache = new sprache();
|
||||
$bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig');
|
||||
$qry = "SELECT orgform_kurzbz,
|
||||
code,
|
||||
bezeichnung,
|
||||
rolle,
|
||||
bisorgform_kurzbz,
|
||||
$bezeichnung_mehrsprachig
|
||||
FROM bis.tbl_orgform
|
||||
WHERE orgform_kurzbz=".$this->db_add_param($orgform_kurzbz).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
@@ -58,6 +72,8 @@ class organisationsform extends basis_db
|
||||
$this->code = $row->code;
|
||||
$this->bezeichnung = $row->bezeichnung;
|
||||
$this->rolle = $this->db_parse_bool($row->rolle);
|
||||
$this->bisorgform_kurzbz = $row->bisorgform_kurzbz;
|
||||
$this->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig',$row);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -73,7 +89,15 @@ class organisationsform extends basis_db
|
||||
*/
|
||||
public function getAll()
|
||||
{
|
||||
$qry = "SELECT * FROM bis.tbl_orgform";
|
||||
$sprache = new sprache();
|
||||
$bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig');
|
||||
$qry = "SELECT orgform_kurzbz,
|
||||
code,
|
||||
bezeichnung,
|
||||
rolle,
|
||||
bisorgform_kurzbz,
|
||||
$bezeichnung_mehrsprachig
|
||||
FROM bis.tbl_orgform";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
@@ -85,6 +109,8 @@ class organisationsform extends basis_db
|
||||
$orgform->code = $row->code;
|
||||
$orgform->bezeichnung = $row->bezeichnung;
|
||||
$orgform->rolle = $this->db_parse_bool($row->rolle);
|
||||
$orgform->bisorgform_kurzbz = $row->bisorgform_kurzbz;
|
||||
$orgform->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig',$row);
|
||||
|
||||
$this->result[] = $orgform;
|
||||
}
|
||||
@@ -133,9 +159,16 @@ class organisationsform extends basis_db
|
||||
*/
|
||||
public function getOrgformLV()
|
||||
{
|
||||
$qry = "SELECT *
|
||||
FROM bis.tbl_orgform
|
||||
WHERE orgform_kurzbz NOT IN ('VBB', 'ZGS')
|
||||
$sprache = new sprache();
|
||||
$bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig');
|
||||
$qry = "SELECT orgform_kurzbz,
|
||||
code,
|
||||
bezeichnung,
|
||||
rolle,
|
||||
bisorgform_kurzbz,
|
||||
$bezeichnung_mehrsprachig
|
||||
FROM bis.tbl_orgform
|
||||
WHERE orgform_kurzbz NOT IN ('VBB', 'ZGS')
|
||||
ORDER BY orgform_kurzbz";
|
||||
|
||||
if ($result = $this->db_query($qry))
|
||||
@@ -148,6 +181,8 @@ class organisationsform extends basis_db
|
||||
$orgform->code = $row->code;
|
||||
$orgform->bezeichnung = $row->bezeichnung;
|
||||
$orgform->rolle = $row->rolle;
|
||||
$orgform->bisorgform_kurzbz = $row->bisorgform_kurzbz;
|
||||
$orgform->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig',$row);
|
||||
|
||||
$this->result[] = $orgform;
|
||||
}
|
||||
|
||||
@@ -114,9 +114,9 @@
|
||||
<!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-studienverlauf-student.key "S">
|
||||
<!ENTITY menu-statistic-studienverlauf-student.label "Studienverlauf Student">
|
||||
<!ENTITY menu-statistic-studienverlauf-student.accesskey "S">
|
||||
|
||||
<!ENTITY menu-statistic-substatistik-bewerberstatistik.label "BewerberInnenstatistik">
|
||||
<!ENTITY menu-statistic-substatistik-bewerberstatistik.accesskey "B">
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
<?php
|
||||
$this->phrasen['lvaliste/titel']='Lehrveranstaltungsübersicht';
|
||||
$this->phrasen['lvaliste/anwesenheit']='Anwesenheit';
|
||||
$this->phrasen['lvaliste/anwesenheit/studenten']='Anwesenheit der Studierenden';
|
||||
$this->phrasen['lvaliste/hilfeText']='Erklärung\n\nStg-Sem: Studiengang-Semester\nGruppen: Teilnehmende Gruppen\nBlock: Blockung (1->Einzelstunden; 2->Doppelstunden; ...)\nWR: Wochenrhythmus (1->jede Woche; 2->jede 2. Woche; ...)\nStd: gesamte Semesterstunden\nKW: Kalenderwoche in der die Lehrveranstaltung startet';
|
||||
$this->phrasen['lvaliste/hilfeAnzeigen']='Hilfe anzeigen';
|
||||
|
||||
@@ -31,4 +33,5 @@ $this->phrasen['lvaliste/gesamtnote']='Noten eintragen';
|
||||
$this->phrasen['lvaliste/anzahl']='Anzahl';
|
||||
$this->phrasen['lvaliste/summe']='Summe';
|
||||
$this->phrasen['lvaliste/lvinfo']='LV-Info';
|
||||
$this->phrasen['lvaliste/id']='ID';
|
||||
$this->phrasen['lvaliste/id']='ID';
|
||||
$this->phrasen['lvaliste/betreuungsart']='Betreuungsart';
|
||||
@@ -29,6 +29,9 @@ $this->phrasen['lvaliste/keineDatensaetze']='No Entrys for this Semester!';
|
||||
$this->phrasen['lvaliste/lehrveranstaltungen']='Courses';
|
||||
$this->phrasen['lvaliste/betreuungen']='Supervisor';
|
||||
$this->phrasen['lvaliste/koordination']='Coordination';
|
||||
$this->phrasen['lvaliste/gesamtnote']='Enter grades';
|
||||
$this->phrasen['lvaliste/anzahl']='Number';
|
||||
$this->phrasen['lvaliste/summe']='Total';
|
||||
$this->phrasen['lvaliste/lvinfo']='Course-Info';
|
||||
$this->phrasen['lvaliste/id']='ID';
|
||||
$this->phrasen['lvaliste/betreuungsart']='Kind of supervision';
|
||||
|
||||
@@ -669,6 +669,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
else
|
||||
{
|
||||
$note_alt = $arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['note'];
|
||||
$note_alt_positiv = $arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['note_positiv'];
|
||||
$note_neu = $row_stud->anmerkung;
|
||||
|
||||
// alte oder neue note besser
|
||||
@@ -687,6 +688,13 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['note'] = $db->db_parse_bool($row_stud->offiziell) ? $row_stud->anmerkung : "";
|
||||
$arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['note_positiv'] = $db->db_parse_bool($row_stud->positiv);
|
||||
$arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['sort'] = $row_stud->sort;
|
||||
|
||||
// ects dazuzählen wenn alte Note negativ, neue positiv
|
||||
if ($arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['note_positiv'] === true && $note_alt_positiv !== true)
|
||||
{
|
||||
$ects_total_positiv += $row_stud->ects;
|
||||
$semester_ects_positiv += $row_stud->ects;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Binary file not shown.
@@ -282,7 +282,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
<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>
|
||||
<text:p text:style-name="P15">Transcript of Records</text:p>
|
||||
<text:p text:style-name="P15">COURSE CERTIFICATE</text:p>
|
||||
<text:p text:style-name="P16"/>
|
||||
<!-- Beim Campus International wird der Text "Studiengang" nicht angedruckt -->
|
||||
<xsl:choose>
|
||||
@@ -331,30 +331,29 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
<text:p text:style-name="P4">Date of Birth:<text:tab/><xsl:value-of select="gebdatum" /></text:p>
|
||||
<text:p text:style-name="P4"/>
|
||||
<text:p text:style-name="P19">
|
||||
<xsl:choose>
|
||||
<xsl:when test="geschlecht='m'">
|
||||
<xsl:text>Herr </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="geschlecht='w'">
|
||||
<xsl:text>Frau </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>Herr/Frau </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:value-of select="name"/> hat im <xsl:value-of select="studiensemester" /> als
|
||||
<xsl:choose>
|
||||
<xsl:when test="geschlecht='m'">
|
||||
<xsl:text>ordentlicher Student </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="geschlecht='w'">
|
||||
<xsl:text>ordentliche Studentin </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>ordentliche/r Student/in </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
folgende Lehrveranstaltung an der FH Technikum Wien absolviert:</text:p>
|
||||
<xsl:choose>
|
||||
<xsl:when test="geschlecht='m'">
|
||||
<xsl:text>Mr. </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="geschlecht='w'">
|
||||
<xsl:text>Ms. </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>Mr./Ms. </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:value-of select="name"/> completed the following course at UAS Technikum Wien in the
|
||||
<!-- Deutsches "Sommersemester" auf englisches "Summersemester" ändern -->
|
||||
<xsl:choose>
|
||||
<xsl:when test="substring(studiensemester, 1, 6)='Sommer'">
|
||||
Summer<xsl:value-of select="substring(studiensemester,7)" />
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="studiensemester"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
as a full student:
|
||||
</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"/>
|
||||
|
||||
@@ -283,7 +283,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
<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>
|
||||
<text:p text:style-name="P15">Transcript of Records</text:p>
|
||||
<text:p text:style-name="P15">COURSE CERTIFICATE</text:p>
|
||||
<text:p text:style-name="P16"/>
|
||||
<text:p text:style-name="P16">
|
||||
<xsl:choose>
|
||||
@@ -317,30 +317,28 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
<text:p text:style-name="P4">Date of Birth:<text:tab/><xsl:value-of select="gebdatum" /></text:p>
|
||||
<text:p text:style-name="P4"/>
|
||||
<text:p text:style-name="P19">
|
||||
<xsl:choose>
|
||||
<xsl:when test="geschlecht='m'">
|
||||
<xsl:text>Herr </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="geschlecht='w'">
|
||||
<xsl:text>Frau </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>Herr/Frau </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:value-of select="name"/> hat im <xsl:value-of select="studiensemester" /> als
|
||||
<xsl:choose>
|
||||
<xsl:when test="geschlecht='m'">
|
||||
<xsl:text>außerordentlicher Student </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="geschlecht='w'">
|
||||
<xsl:text>außerordentliche Studentin </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>außerordentliche/r Student/in </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
folgende Lehrveranstaltung an der FH Technikum Wien absolviert:</text:p>
|
||||
<xsl:choose>
|
||||
<xsl:when test="geschlecht='m'">
|
||||
<xsl:text>Mr. </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="geschlecht='w'">
|
||||
<xsl:text>Ms. </xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>Mr./Ms. </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:value-of select="name"/> completed the following course at UAS Technikum Wien in the
|
||||
<!-- Deutsches "Sommersemester" auf englisches "Summersemester" ändern -->
|
||||
<xsl:choose>
|
||||
<xsl:when test="substring(studiensemester, 1, 6)='Sommer'">
|
||||
Summer<xsl:value-of select="substring(studiensemester,7)" />
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="studiensemester"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
as an external student:</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"/>
|
||||
|
||||
@@ -530,7 +530,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
<xsl:template match="unterrichtsfach">
|
||||
<xsl:if test="note_positiv='1'">
|
||||
<xsl:if test="note_positiv='1' or note=''">
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="Tabelle1.A7" office:value-type="string">
|
||||
<xsl:choose>
|
||||
|
||||
@@ -519,7 +519,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
<xsl:template match="unterrichtsfach">
|
||||
<xsl:if test="note_positiv='1'">
|
||||
<xsl:if test="note_positiv='1' or note=''">
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="Tabelle1.A7" office:value-type="string">
|
||||
<xsl:choose>
|
||||
|
||||
@@ -505,7 +505,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
<xsl:template match="unterrichtsfach">
|
||||
<xsl:if test="note_positiv='1'">
|
||||
<xsl:if test="note_positiv='1' or note=''">
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="Tabelle1.A7" office:value-type="string">
|
||||
<xsl:choose>
|
||||
|
||||
@@ -504,7 +504,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
<xsl:template match="unterrichtsfach">
|
||||
<xsl:if test="note_positiv='1'">
|
||||
<xsl:if test="note_positiv='1' or note=''">
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="Tabelle1.A7" office:value-type="string">
|
||||
<xsl:choose>
|
||||
|
||||
@@ -1,129 +0,0 @@
|
||||
<?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="abschlusspruefung">
|
||||
<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="Helvetica" svg:font-family="Helvetica"/>
|
||||
<style:font-face style:name="Mangal1" svg:font-family="Mangal"/>
|
||||
<style:font-face style:name="Liberation Serif" svg:font-family="'Liberation Serif'" 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="'Liberation Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/>
|
||||
<style:font-face style:name="Mangal" svg:font-family="Mangal" style:font-family-generic="system" style:font-pitch="variable"/>
|
||||
<style:font-face style:name="Microsoft YaHei" svg:font-family="'Microsoft YaHei'" 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"/>
|
||||
</office:font-face-decls>
|
||||
<office:automatic-styles>
|
||||
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="10pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="8.75pt" style:font-size-complex="10pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="28pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="28pt" style:font-size-complex="28pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="16pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="16pt" style:font-size-complex="16pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P4" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:color="#ff3333" fo:font-weight="bold" fo:font-size="16pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="16pt" style:font-size-complex="16pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="Seitenumbruch" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:break-before="page" fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="28pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="28pt" style:font-size-complex="28pt"/>
|
||||
</style:style>
|
||||
</office:automatic-styles>
|
||||
|
||||
<office:body>
|
||||
<xsl:apply-templates select="pruefung"/>
|
||||
</office:body>
|
||||
</office:document-content>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="pruefung">
|
||||
<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>
|
||||
|
||||
<text:p text:style-name="Seitenumbruch">Diplom</text:p>
|
||||
<!-- Ueberprueft ob benoetigte Datenfelder leer sind -->
|
||||
<xsl:if test="staatsbuergerschaft = ''"><text:p text:style-name="P4">Staatsbürgerschaft nicht angegeben</text:p></xsl:if>
|
||||
<xsl:if test="datum = ''"><text:p text:style-name="P4">Datum der Abschlussprüfung nicht gesetzt</text:p></xsl:if>
|
||||
<xsl:if test="titel = ''"><text:p text:style-name="P4">Kein akademischer Grad ausgewählt</text:p></xsl:if>
|
||||
<xsl:if test="sponsion = ''"><text:p text:style-name="P4">Sponsionsdatum nicht gesetzt</text:p></xsl:if>
|
||||
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Gemäß § 10 Abs. 3 Z 9 des Bundesgesetzes über Fachhochschul-Studiengänge</text:p>
|
||||
<text:p text:style-name="P1">(Fachhochschul-Studiengesetz - FHStG), BGBl. Nr. 340/1993 idgF,</text:p>
|
||||
<text:p text:style-name="P1">verleiht das Fachhochschulkollegium</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="anrede" /><xsl:text> </xsl:text><xsl:value-of select="name" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">geboren am <xsl:value-of select="gebdatum" /> in
|
||||
<xsl:if test="string-length(gebort)!=0">
|
||||
<xsl:value-of select="gebort" />
|
||||
<xsl:text>, </xsl:text>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="geburtsnation" />, Staatsbürgerschaft <xsl:value-of select="staatsbuergerschaft" />,</text:p>
|
||||
<text:p text:style-name="P1">
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains(anrede, 'err')">
|
||||
<xsl:text>der</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="contains(anrede, 'rau')">
|
||||
<xsl:text>die</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>die/der</xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
den Lehrgang zur Weiterbildung nach §9 FHStG idgF</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="stg_bezeichnung" /></text:p>
|
||||
<text:p text:style-name="P1">(Lehrgangsnummer <xsl:value-of select="studiengang_kz" />)</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">an der Fachhochschule Technikum Wien abgeschlossen hat,</text:p>
|
||||
<text:p text:style-name="P1">den Abschluss-Grad</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="titel" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Wien, <xsl:value-of select="sponsion" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Für das Fachhochschulkollegium</text:p>
|
||||
<text:p text:style-name="P1">Der Rektor</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"><xsl:value-of select="rektor" /></text:p>
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,111 +0,0 @@
|
||||
<?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="abschlusspruefung">
|
||||
<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="Helvetica" svg:font-family="Helvetica"/>
|
||||
<style:font-face style:name="Mangal1" svg:font-family="Mangal"/>
|
||||
<style:font-face style:name="Liberation Serif" svg:font-family="'Liberation Serif'" 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="'Liberation Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/>
|
||||
<style:font-face style:name="Mangal" svg:font-family="Mangal" style:font-family-generic="system" style:font-pitch="variable"/>
|
||||
<style:font-face style:name="Microsoft YaHei" svg:font-family="'Microsoft YaHei'" 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"/>
|
||||
</office:font-face-decls>
|
||||
<office:automatic-styles>
|
||||
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="10pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="8.75pt" style:font-size-complex="10pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="28pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="28pt" style:font-size-complex="28pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="16pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="16pt" style:font-size-complex="16pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="Seitenumbruch" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:break-before="page" fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="28pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="28pt" style:font-size-complex="28pt"/>
|
||||
</style:style>
|
||||
</office:automatic-styles>
|
||||
|
||||
<office:body>
|
||||
<xsl:apply-templates select="pruefung"/>
|
||||
</office:body>
|
||||
</office:document-content>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="pruefung">
|
||||
<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>
|
||||
|
||||
<text:p text:style-name="Seitenumbruch">Diploma</text:p>
|
||||
<!-- Ueberprueft ob benoetigte Datenfelder leer sind -->
|
||||
<xsl:if test="staatsbuergerschaft_engl = ''"><text:p text:style-name="P4">Staatsbürgerschaft nicht angegeben</text:p></xsl:if>
|
||||
|
||||
<xsl:if test="titel = ''"><text:p text:style-name="P4">Kein akademischer Grad ausgewählt</text:p></xsl:if>
|
||||
<xsl:if test="sponsion = ''"><text:p text:style-name="P4">Sponsionsdatum nicht gesetzt</text:p></xsl:if>
|
||||
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Pursuant to paragraph 10 section 3 subsection 9 of the Universities of Applied Sciences Studies Act</text:p>
|
||||
<text:p text:style-name="P1">(Austrian legal reference: Fachhochschul-Studiengesetz - FHStG, BGBl. Nr. <xsl:value-of select="bescheidbgbl1" /> idgF,</text:p>
|
||||
<text:p text:style-name="P1">the University of Applied Sciences Council (Fachhochschulkollegium) awards</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="anrede_engl" /><xsl:text> </xsl:text><xsl:value-of select="name" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">born <xsl:value-of select="gebdatum" /> in
|
||||
<xsl:if test="string-length(gebort)!=0">
|
||||
<xsl:value-of select="gebort" />
|
||||
<xsl:text>, </xsl:text>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="geburtsnation_engl" />, citizen of <xsl:value-of select="staatsbuergerschaft_engl" />,</text:p>
|
||||
<text:p text:style-name="P1">who completed the CVET course</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="stg_bezeichnung_engl" /></text:p>
|
||||
<text:p text:style-name="P1">(program number <xsl:value-of select="studiengang_kz" />)</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">at the University of Applied Sciences Technikum Wien in accordance with §9 FHStG as amended</text:p>
|
||||
<text:p text:style-name="P1">the title</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="titel" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Vienna, <xsl:value-of select="sponsion" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">On behalf of the University of Applied Sciences Council</text:p>
|
||||
<text:p text:style-name="P1">The Rector</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"><xsl:value-of select="rektor" /></text:p>
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -1,128 +0,0 @@
|
||||
<?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="abschlusspruefung">
|
||||
<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="Helvetica" svg:font-family="Helvetica"/>
|
||||
<style:font-face style:name="Mangal1" svg:font-family="Mangal"/>
|
||||
<style:font-face style:name="Liberation Serif" svg:font-family="'Liberation Serif'" 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="'Liberation Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/>
|
||||
<style:font-face style:name="Mangal" svg:font-family="Mangal" style:font-family-generic="system" style:font-pitch="variable"/>
|
||||
<style:font-face style:name="Microsoft YaHei" svg:font-family="'Microsoft YaHei'" 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"/>
|
||||
</office:font-face-decls>
|
||||
<office:automatic-styles>
|
||||
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="10pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="8.75pt" style:font-size-complex="10pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="28pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="28pt" style:font-size-complex="28pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="16pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="16pt" style:font-size-complex="16pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="P4" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:color="#ff3333" fo:font-weight="bold" fo:font-size="16pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="16pt" style:font-size-complex="16pt"/>
|
||||
</style:style>
|
||||
<style:style style:name="Seitenumbruch" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:break-before="page" fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:paragraph-properties fo:line-height="122%" fo:text-align="center" style:justify-single-word="false"/>
|
||||
<style:text-properties style:font-name="Arial" fo:font-size="28pt" officeooo:rsid="0006c6a3" officeooo:paragraph-rsid="0006c6a3" style:font-size-asian="28pt" style:font-size-complex="28pt"/>
|
||||
</style:style>
|
||||
</office:automatic-styles>
|
||||
|
||||
<office:body>
|
||||
<xsl:apply-templates select="pruefung"/>
|
||||
</office:body>
|
||||
</office:document-content>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="pruefung">
|
||||
<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>
|
||||
|
||||
<text:p text:style-name="Seitenumbruch">Diplom</text:p>
|
||||
<!-- Ueberprueft ob benoetigte Datenfelder leer sind -->
|
||||
<xsl:if test="staatsbuergerschaft = ''"><text:p text:style-name="P4">Staatsbürgerschaft nicht angegeben</text:p></xsl:if>
|
||||
<xsl:if test="titel = ''"><text:p text:style-name="P4">Kein akademischer Grad ausgewählt</text:p></xsl:if>
|
||||
<xsl:if test="sponsion = ''"><text:p text:style-name="P4">Sponsionsdatum nicht gesetzt</text:p></xsl:if>
|
||||
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Gemäß § 10 Abs. 3 Z 9 des Bundesgesetzes über Fachhochschul-Studiengänge</text:p>
|
||||
<text:p text:style-name="P1">(Fachhochschul-Studiengesetz - FHStG), BGBl. Nr. 340/1993 idgF,</text:p>
|
||||
<text:p text:style-name="P1">verleiht das Fachhochschulkollegium</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="anrede" /><xsl:text> </xsl:text><xsl:value-of select="name" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">geboren am <xsl:value-of select="gebdatum" /> in
|
||||
<xsl:if test="string-length(gebort)!=0">
|
||||
<xsl:value-of select="gebort" />
|
||||
<xsl:text>, </xsl:text>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="geburtsnation" />, Staatsbürgerschaft <xsl:value-of select="staatsbuergerschaft" />,</text:p>
|
||||
<text:p text:style-name="P1">
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains(anrede, 'err')">
|
||||
<xsl:text>der</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="contains(anrede, 'rau')">
|
||||
<xsl:text>die</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>die/der</xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
den Lehrgang zur Weiterbildung nach §9 FHStG idgF</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="stg_bezeichnung" /></text:p>
|
||||
<text:p text:style-name="P1">(Lehrgangsnummer <xsl:value-of select="studiengang_kz" />)</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">an der Fachhochschule Technikum Wien abgeschlossen hat,</text:p>
|
||||
<text:p text:style-name="P1">den Abschluss-Grad</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"><xsl:value-of select="titel" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P3"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Wien, <xsl:value-of select="sponsion" /></text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1">Für das Fachhochschulkollegium</text:p>
|
||||
<text:p text:style-name="P1">Der Rektor</text:p>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"/>
|
||||
<text:p text:style-name="P1"><xsl:value-of select="rektor" /></text:p>
|
||||
</office:text>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -683,8 +683,7 @@ echo '
|
||||
19: {sorter: false, filter: false},
|
||||
20: {sorter: false, filter: false},
|
||||
21: {sorter: false, filter: false}},
|
||||
widgetOptions : {filter_saveFilters : true,
|
||||
filter_functions : {
|
||||
widgetOptions : {filter_functions : {
|
||||
// Add select menu to this column
|
||||
10 : {
|
||||
"True" : function(e, n, f, i, $r, c, data) { return /t/.test(e); },
|
||||
@@ -704,13 +703,6 @@ echo '
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$(\'.resetsaved\').click(function()
|
||||
{
|
||||
$("#t1").trigger("filterReset");
|
||||
location.reload();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
@@ -990,7 +982,6 @@ if ($result_lv!=0)
|
||||
|
||||
$num_rows=$db->db_num_rows($result_lv);
|
||||
echo '<h3>Übersicht - '.$num_rows.' LVAs</h3>
|
||||
<button type="button" class="resetsaved" title="Reset Filter">Reset Filter</button>
|
||||
<table class="tablesorter" id="t1">
|
||||
<thead>
|
||||
<tr>';
|
||||
|
||||
@@ -24,6 +24,7 @@ require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/akte.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
@@ -54,9 +55,15 @@ if(isset($_POST['submitdatei']))
|
||||
//Base64 Codieren
|
||||
$content = base64_encode($content);
|
||||
$akte_id = $_POST['akte_id'];
|
||||
$signiert = isset($_POST['signiert']);
|
||||
$selfservice = isset($_POST['selfservice']);
|
||||
$db = new basis_db();
|
||||
|
||||
$qry = "UPDATE public.tbl_akte SET inhalt=".$db->db_add_param($content)." WHERE akte_id=".$db->db_add_param($akte_id, FHC_INTEGER).";";
|
||||
$qry = "UPDATE public.tbl_akte
|
||||
SET inhalt=".$db->db_add_param($content).",
|
||||
signiert= ".$db->db_add_param($signiert, FHC_BOOLEAN).",
|
||||
stud_selfservice= ".$db->db_add_param($selfservice, FHC_BOOLEAN)."
|
||||
WHERE akte_id=".$db->db_add_param($akte_id, FHC_INTEGER).";";
|
||||
|
||||
if($db->db_query($qry))
|
||||
echo '<span class="ok">Saved!</span>';
|
||||
@@ -66,18 +73,39 @@ if(isset($_POST['submitdatei']))
|
||||
}
|
||||
|
||||
if(isset($_GET['akte_id']) && is_numeric($_GET['akte_id']))
|
||||
{
|
||||
$akte_id = $_GET['akte_id'];
|
||||
}
|
||||
else
|
||||
$akte_id = '';
|
||||
|
||||
$signiert = false;
|
||||
$selfservice = false;
|
||||
$aktetitel =
|
||||
$akte_obj = new akte();
|
||||
if ($akte_obj->load($akte_id))
|
||||
{
|
||||
$signiert = $akte_obj->signiert;
|
||||
$selfservice = $akte_obj->stud_selfservice;
|
||||
$aktetitel = $akte_obj->bezeichnung.' ('.$akte_obj->titel.')';
|
||||
}
|
||||
else
|
||||
{
|
||||
$aktetitel = '<span style="color: red">Es wurde keine Akte ID übergeben</span>';
|
||||
}
|
||||
|
||||
echo '
|
||||
<br>
|
||||
Hier können bestehnde Akten die bereits im FAS archiviert mit neuen Dokumenten überschrieben werden.<br>
|
||||
Hier können bestehende Akten, die bereits im FAS archiviert wurden, mit neuen Dokumenten überschrieben werden.<br>
|
||||
Dies ist hilfreich wenn zB Zeugnisse manuell korrigiert wurden.
|
||||
<br><br>
|
||||
<form method="POST" enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'">
|
||||
<table>
|
||||
<tr><td>Datei:</td><td><input type="file" name="datei" /></td></tr>
|
||||
<tr><td>Akte:</td><td>'.$aktetitel.'</td></tr>
|
||||
<tr><td>Neue Datei:</td><td><input type="file" name="datei" /></td></tr>
|
||||
<tr><td>AkteID:</td><td><input type="text" name="akte_id" value="'.$akte_id.'"/></td></tr>
|
||||
<tr><td>Signiert:</td><td><input type="checkbox" name="signiert" '.($signiert ? 'checked' : '').'/></td></tr>
|
||||
<tr><td>Selfservice:</td><td><input type="checkbox" name="selfservice" '.($selfservice ? 'checked' : '').'/></td></tr>
|
||||
<tr><td> </td><td> </td></tr>
|
||||
<tr><td></td><td><input type="submit" name="submitdatei" value="Upload" /></td></tr>
|
||||
|
||||
|
||||
@@ -834,27 +834,44 @@ if ($punkteUebertragen)
|
||||
// Um einen Bewerberstatus zu setzen, muss "reihungstestangetreten" true sein
|
||||
if ($prestudent->reihungstestangetreten == true)
|
||||
{
|
||||
$prestudent->new = true;
|
||||
$prestudent->prestudent_id = $array['prestudent_id'];
|
||||
$prestudent->status_kurzbz = 'Bewerber';
|
||||
$prestudent->studiensemester_kurzbz = $prestudentrolle->studiensemester_kurzbz;
|
||||
$prestudent->ausbildungssemester = $prestudentrolle->ausbildungssemester;
|
||||
$prestudent->datum = date('Y-m-d');
|
||||
$prestudent->insertamum = date('Y-m-d H:i:s');
|
||||
$prestudent->insertvon = $user;
|
||||
$prestudent->orgform_kurzbz = $prestudentrolle->orgform_kurzbz;
|
||||
$prestudent->bestaetigtam = '';
|
||||
$prestudent->bestaetigtvon = '';
|
||||
$prestudent->bewerbung_abgeschicktamum = '';
|
||||
$prestudent->studienplan_id = $prestudentrolle->studienplan_id;
|
||||
|
||||
if (!$prestudent->save_rolle())
|
||||
// Um einen Bewerberstatus zu setzen, muss die ZGV ausgefüllt sein
|
||||
if ($prestudent->zgv_code != '')
|
||||
{
|
||||
$msg_error .= '<br>Fehler beim speichern des Bewerberstatus für Prestudent '.$array['prestudent_id'].': '.$prestudent->errormsg;
|
||||
$studiengang = new studiengang($prestudent->studiengang_kz);
|
||||
// Bei Mastern muss auch die ZGV-Master ausgefüllt sein
|
||||
if ($studiengang->typ == 'm' && $prestudent->zgvmas_code == '')
|
||||
{
|
||||
$msg_error .= '<br>Fehler beim speichern des Bewerberstatus für Prestudent '.$array['prestudent_id'].'. Es muss zuerst eine Master-ZGV eingetragen sein.';
|
||||
}
|
||||
else
|
||||
{
|
||||
$prestudent->new = true;
|
||||
$prestudent->prestudent_id = $array['prestudent_id'];
|
||||
$prestudent->status_kurzbz = 'Bewerber';
|
||||
$prestudent->studiensemester_kurzbz = $prestudentrolle->studiensemester_kurzbz;
|
||||
$prestudent->ausbildungssemester = $prestudentrolle->ausbildungssemester;
|
||||
$prestudent->datum = date('Y-m-d');
|
||||
$prestudent->insertamum = date('Y-m-d H:i:s');
|
||||
$prestudent->insertvon = $user;
|
||||
$prestudent->orgform_kurzbz = $prestudentrolle->orgform_kurzbz;
|
||||
$prestudent->bestaetigtam = '';
|
||||
$prestudent->bestaetigtvon = '';
|
||||
$prestudent->bewerbung_abgeschicktamum = '';
|
||||
$prestudent->studienplan_id = $prestudentrolle->studienplan_id;
|
||||
|
||||
if (!$prestudent->save_rolle())
|
||||
{
|
||||
$msg_error .= '<br>Fehler beim speichern des Bewerberstatus für Prestudent '.$array['prestudent_id'].': '.$prestudent->errormsg;
|
||||
}
|
||||
else
|
||||
{
|
||||
$count_success_bewerber++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$count_success_bewerber++;
|
||||
$msg_error .= '<br>Fehler beim speichern des Bewerberstatus für Prestudent '.$array['prestudent_id'].'. Es muss zuerst eine ZGV eingetragen sein.';
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1331,7 +1348,7 @@ if (isset($_REQUEST['reihungstest']))
|
||||
ORDER BY start ASC LIMIT 1
|
||||
)
|
||||
)
|
||||
AND bewerbung_abgeschicktamum IS NOT NULL
|
||||
/*AND bewerbung_abgeschicktamum IS NOT NULL*/ /* Leider gibt es bestaetigte Bewerbungen, die nie abgeschickt wurden */
|
||||
AND bestaetigtam IS NOT NULL
|
||||
AND tbl_gebiet.gebiet_id != 7
|
||||
";
|
||||
|
||||
@@ -37,15 +37,15 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/styles/jquery.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
|
||||
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
|
||||
<script src="../../include/js/JSONeditor/JSONeditor.js" type="text/javascript"></script>
|
||||
<link rel="stylesheet" type="text/css" href="../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<script src="../../include/js/JSONeditor/JSONeditor.js" type="text/javascript"></script>';
|
||||
|
||||
include('../../include/meta/jquery.php');
|
||||
include('../../include/meta/jquery-tablesorter.php');
|
||||
|
||||
echo '
|
||||
<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/jquery/sizzle/sizzle.js"></script>
|
||||
<script src="../../vendor/components/jqueryui/jquery-ui.min.js" type="text/javascript"></script>
|
||||
<script type="text/javascript">
|
||||
function initwarnung()
|
||||
@@ -54,6 +54,17 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
"\nDie bestehenden Variablen werden dabei überschrieben!"+
|
||||
"\n\nACHTUNG: Wenn das Script keine Initialisierung unterstützt, wird es normal ausgeführt");
|
||||
}
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#table1").tablesorter(
|
||||
{
|
||||
sortList: [[2,0]],
|
||||
widgets: ["zebra", "filter"],
|
||||
headers: { 1: { sorter: "shortDate", dateFormat: "ddmmyyyy" },
|
||||
7: { sorter: false, filter: false },
|
||||
8: { sorter: false, filter: false }}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -191,16 +202,18 @@ if(!$cj->getAll(null, 'titel'))
|
||||
echo '<br><a href="'.$_SERVER['PHP_SELF'].'?type=new">Neuen Cronjob anlegen</a>';
|
||||
|
||||
echo '<br><br>
|
||||
<table class="liste table-autosort:2 table-stripeclass:alternate table-autostripe">
|
||||
<table id="table1" style="table-layout: fixed; white-space: nowrap">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="table-sortable:default">ID</th>
|
||||
<th class="table-sortable:default">Server</th>
|
||||
<th class="table-sortable:default">Titel</th>
|
||||
<th class="table-sortable:default">Aktiv</th>
|
||||
<th class="table-sortable:default">letzter Start</th>
|
||||
<th class="table-sortable:default">nächster Start</th>
|
||||
<th colspan="2"></th>
|
||||
<th style="width: 30px">ID</th>
|
||||
<th>Server</th>
|
||||
<th>Titel</th>
|
||||
<th>Datei</th>
|
||||
<th style="width: 50px">Aktiv</th>
|
||||
<th>letzter Start</th>
|
||||
<th>nächster Start</th>
|
||||
<th style="width: 50px"></th>
|
||||
<th style="width: 50px"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
@@ -208,17 +221,25 @@ echo '<br><br>
|
||||
foreach ($cj->result as $job)
|
||||
{
|
||||
if($next = $job->getNextExecutionTime())
|
||||
$next = date('d.m.Y H:i:s',$next);
|
||||
{
|
||||
$next = date('d.m.Y H:i:s', $next);
|
||||
}
|
||||
$grau = '';
|
||||
if (!$job->aktiv)
|
||||
{
|
||||
$grau = 'color: grey !important;';
|
||||
}
|
||||
echo "
|
||||
<tr>
|
||||
<td>".htmlspecialchars($job->cronjob_id)."</td>
|
||||
<td>".htmlspecialchars($job->server_kurzbz)."</td>
|
||||
<td>".htmlspecialchars($job->titel)."</td>
|
||||
<td>".($job->aktiv?'Ja':'Nein')."</td>
|
||||
<td>".$datum_obj->formatDatum($job->last_execute,'d.m.Y H:i:s')."</td>
|
||||
<td>".$next." (<a href=\"".$_SERVER['PHP_SELF']."?cronjob_id=$job->cronjob_id&type=execute\">jetzt starten</a>)</td>
|
||||
<td><a href=\"".$_SERVER['PHP_SELF']."?cronjob_id=$job->cronjob_id&type=edit\">details</a></td>
|
||||
<td><a href=\"".$_SERVER['PHP_SELF']."?cronjob_id=$job->cronjob_id&type=delete\">entfernen</a></td>
|
||||
<td style='$grau'>".htmlspecialchars($job->cronjob_id)."</td>
|
||||
<td style='$grau'>".htmlspecialchars($job->server_kurzbz)."</td>
|
||||
<td style='$grau'>".htmlspecialchars($job->titel)."</td>
|
||||
<td style='$grau text-overflow: ellipsis; white-space: nowrap; overflow:hidden;'>".htmlspecialchars($job->file)."</td>
|
||||
<td style='$grau'>".($job->aktiv?'Ja':'Nein')."</td>
|
||||
<td style='$grau'>".$datum_obj->formatDatum($job->last_execute,'d.m.Y H:i:s')."</td>
|
||||
<td style='$grau'>".$next." (<a href=\"".$_SERVER['PHP_SELF']."?cronjob_id=$job->cronjob_id&type=execute\">jetzt starten</a>)</td>
|
||||
<td style='$grau'><a href=\"".$_SERVER['PHP_SELF']."?cronjob_id=$job->cronjob_id&type=edit\">details</a></td>
|
||||
<td style='$grau'><a href=\"".$_SERVER['PHP_SELF']."?cronjob_id=$job->cronjob_id&type=delete\">entfernen</a></td>
|
||||
</tr>";
|
||||
}
|
||||
|
||||
|
||||
@@ -200,62 +200,92 @@ if(isset($_GET['excel']))
|
||||
|
||||
$studienplaene_list = implode(',', array_keys($studienplaene_arr));
|
||||
$qry = "
|
||||
SELECT
|
||||
SELECT DISTINCT rt_person_id,
|
||||
rt_id,
|
||||
prestudent_id,
|
||||
'0' AS prestudent_id,
|
||||
tbl_rt_person.person_id,
|
||||
vorname,
|
||||
nachname,
|
||||
ort_kurzbz,
|
||||
studienplan_id,
|
||||
studiengang_kz,
|
||||
tbl_rt_person.ort_kurzbz,
|
||||
tbl_rt_person.studienplan_id,
|
||||
tbl_prestudent.studiengang_kz,
|
||||
gebdatum,
|
||||
geschlecht,
|
||||
punkte
|
||||
,(
|
||||
SELECT
|
||||
kontakt
|
||||
FROM
|
||||
public.tbl_kontakt
|
||||
WHERE
|
||||
kontakttyp = 'email'
|
||||
punkte,
|
||||
(
|
||||
SELECT kontakt
|
||||
FROM tbl_kontakt
|
||||
WHERE kontakttyp = 'email'
|
||||
AND person_id = tbl_rt_person.person_id
|
||||
AND zustellung = true LIMIT 1
|
||||
) AS email
|
||||
,(
|
||||
SELECT
|
||||
ausbildungssemester
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id = tbl_prestudent.prestudent_id
|
||||
AND datum = (
|
||||
SELECT MAX(datum)
|
||||
FROM public.tbl_prestudentstatus
|
||||
WHERE prestudent_id = tbl_prestudent.prestudent_id
|
||||
AND status_kurzbz = 'Interessent'
|
||||
) LIMIT 1
|
||||
) AS ausbildungssemester
|
||||
,(
|
||||
SELECT orgform_kurzbz
|
||||
FROM public.tbl_prestudentstatus
|
||||
) AS email,
|
||||
(
|
||||
SELECT ausbildungssemester
|
||||
FROM PUBLIC.tbl_prestudentstatus
|
||||
WHERE prestudent_id = tbl_prestudent.prestudent_id
|
||||
AND datum = (
|
||||
SELECT MAX(datum)
|
||||
FROM public.tbl_prestudentstatus
|
||||
FROM PUBLIC.tbl_prestudentstatus
|
||||
WHERE prestudent_id = tbl_prestudent.prestudent_id
|
||||
AND status_kurzbz = 'Interessent'
|
||||
) LIMIT 1
|
||||
) AS orgform_kurzbz
|
||||
FROM
|
||||
public.tbl_rt_person
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN public.tbl_prestudent ON (tbl_rt_person.person_id=tbl_prestudent.person_id)
|
||||
WHERE
|
||||
rt_id = ".$db->db_add_param($reihungstest->reihungstest_id, FHC_INTEGER)."
|
||||
AND tbl_rt_person.studienplan_id IN(SELECT studienplan_id FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_prestudent.prestudent_id)
|
||||
ORDER BY
|
||||
ort_kurzbz NULLS FIRST,nachname,vorname
|
||||
) AS ausbildungssemester,
|
||||
(
|
||||
SELECT orgform_kurzbz
|
||||
FROM PUBLIC.tbl_prestudentstatus
|
||||
WHERE prestudent_id = tbl_prestudent.prestudent_id
|
||||
AND datum = (
|
||||
SELECT MAX(datum)
|
||||
FROM PUBLIC.tbl_prestudentstatus
|
||||
WHERE prestudent_id = tbl_prestudent.prestudent_id
|
||||
AND status_kurzbz = 'Interessent'
|
||||
) LIMIT 1
|
||||
) AS orgform_kurzbz
|
||||
FROM PUBLIC.tbl_rt_person
|
||||
JOIN PUBLIC.tbl_person USING (person_id)
|
||||
JOIN PUBLIC.tbl_reihungstest rt ON (rt_id = rt.reihungstest_id)
|
||||
JOIN PUBLIC.tbl_prestudent ON (tbl_rt_person.person_id = tbl_prestudent.person_id)
|
||||
JOIN PUBLIC.tbl_prestudentstatus USING (prestudent_id)
|
||||
WHERE rt_id = ".$db->db_add_param($reihungstest_id, FHC_INTEGER)."
|
||||
AND tbl_rt_person.studienplan_id IN (
|
||||
SELECT studienplan_id
|
||||
FROM PUBLIC.tbl_prestudentstatus
|
||||
WHERE prestudent_id = tbl_prestudent.prestudent_id
|
||||
)
|
||||
AND tbl_prestudentstatus.studiensemester_kurzbz IN (
|
||||
SELECT studiensemester_kurzbz
|
||||
FROM PUBLIC.tbl_studiensemester
|
||||
WHERE studiensemester_kurzbz = rt.studiensemester_kurzbz
|
||||
|
||||
UNION
|
||||
|
||||
(
|
||||
SELECT studiensemester_kurzbz
|
||||
FROM PUBLIC.tbl_studiensemester
|
||||
WHERE ende <= (
|
||||
SELECT start
|
||||
FROM PUBLIC.tbl_studiensemester
|
||||
WHERE studiensemester_kurzbz = rt.studiensemester_kurzbz
|
||||
)
|
||||
ORDER BY ende DESC LIMIT 1
|
||||
)
|
||||
|
||||
UNION
|
||||
|
||||
(
|
||||
SELECT studiensemester_kurzbz
|
||||
FROM PUBLIC.tbl_studiensemester
|
||||
WHERE start >= (
|
||||
SELECT ende
|
||||
FROM PUBLIC.tbl_studiensemester
|
||||
WHERE studiensemester_kurzbz = rt.studiensemester_kurzbz
|
||||
)
|
||||
ORDER BY start ASC LIMIT 1
|
||||
)
|
||||
)
|
||||
ORDER BY ort_kurzbz NULLS FIRST,
|
||||
nachname,
|
||||
vorname
|
||||
";
|
||||
|
||||
$gebietbezeichnungen = array();
|
||||
|
||||
Reference in New Issue
Block a user