mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Merge branch 'master' into feature-279/FAS_AliasgenerierungMitSonderzeichen
This commit is contained in:
@@ -188,7 +188,7 @@ class AnrechnungJob extends JOB_Controller
|
||||
$studiengang_bezeichnung = $this->StudiengangModel->load($studiengang_kz)->retval[0]->stg_bezeichnung;
|
||||
|
||||
// Get STGL mail address
|
||||
list ($to, $vorname) = self::_getSTGLMailAddress($studiengang_kz);
|
||||
$stglMailReceiver_arr = self::_getSTGLMailAddress($studiengang_kz);
|
||||
|
||||
// Get HTML table with new Anrechnungen of that STG plus amount of them
|
||||
list ($anrechnungen_amount, $anrechnungen_table) = self::_getSTGLMailDataTable($studiengang_kz, $anrechnungen);
|
||||
@@ -199,22 +199,25 @@ class AnrechnungJob extends JOB_Controller
|
||||
CIS_ROOT. 'cis/menu.php?content_id=&content='.
|
||||
CIS_ROOT. index_page(). self::APPROVE_ANRECHNUNG_URI;
|
||||
|
||||
foreach ($stglMailReceiver_arr as $stgl)
|
||||
{
|
||||
// Prepare mail content
|
||||
$body_fields = array(
|
||||
'vorname' => $vorname,
|
||||
'studiengang' => $studiengang_bezeichnung,
|
||||
'anzahl' => $anrechnungen_amount,
|
||||
'datentabelle' => $anrechnungen_table,
|
||||
'link' => anchor($url, 'Anrechnungsanträge Übersicht')
|
||||
);
|
||||
|
||||
// Send mail
|
||||
sendSanchoMail(
|
||||
'AnrechnungAntragStellen',
|
||||
$body_fields,
|
||||
$to,
|
||||
'Anerkennung nachgewiesener Kenntnisse: Neuer Antrag wurde gestellt'
|
||||
);
|
||||
$body_fields = array(
|
||||
'vorname' => $stgl['vorname'],
|
||||
'studiengang' => $studiengang_bezeichnung,
|
||||
'anzahl' => $anrechnungen_amount,
|
||||
'datentabelle' => $anrechnungen_table,
|
||||
'link' => anchor($url, 'Anrechnungsanträge Übersicht')
|
||||
);
|
||||
|
||||
// Send mail
|
||||
sendSanchoMail(
|
||||
'AnrechnungAntragStellen',
|
||||
$body_fields,
|
||||
$stgl['to'],
|
||||
'Anerkennung nachgewiesener Kenntnisse: Neuer Antrag wurde gestellt'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$this->logInfo('SUCCEDED: Sending emails to STGL about yesterdays new Anrechnungen succeded.');
|
||||
@@ -342,15 +345,21 @@ html;
|
||||
// Get STGL mail address
|
||||
private function _getSTGLMailAddress($studiengang_kz)
|
||||
{
|
||||
$stglMailAdress_arr = array();
|
||||
$result = $this->StudiengangModel->getLeitung($studiengang_kz);
|
||||
|
||||
// Get STGL mail address
|
||||
if (hasData($result))
|
||||
{
|
||||
return array(
|
||||
$result->retval[0]->uid. '@'. DOMAIN,
|
||||
$result->retval[0]->vorname
|
||||
);
|
||||
foreach (getData($result) as $stgl)
|
||||
{
|
||||
$stglMailAdress_arr[]= array(
|
||||
'to' => $stgl->uid. '@'. DOMAIN,
|
||||
'vorname' => $stgl->vorname
|
||||
);
|
||||
}
|
||||
|
||||
return $stglMailAdress_arr;
|
||||
}
|
||||
// If not available, get assistance mail address
|
||||
else
|
||||
|
||||
@@ -412,28 +412,31 @@ class approveAnrechnungDetail extends Auth_Controller
|
||||
{
|
||||
$result = $this->AnrechnungModel->load($anrechnung_id);
|
||||
|
||||
if(!$result = getData($result)[0])
|
||||
if(!hasData($result))
|
||||
{
|
||||
show_error('Failed loading Anrechnung');
|
||||
}
|
||||
|
||||
|
||||
$result = $this->LehrveranstaltungModel->loadWhere(array(
|
||||
'lehrveranstaltung_id' => $result->lehrveranstaltung_id
|
||||
'lehrveranstaltung_id' => getData($result)[0]->lehrveranstaltung_id
|
||||
));
|
||||
|
||||
if(!$result = getData($result)[0])
|
||||
if(!hasData($result))
|
||||
{
|
||||
show_error('Failed loading Lehrveranstaltung');
|
||||
}
|
||||
|
||||
// Get STGL
|
||||
$result = $this->StudiengangModel->getLeitung($result->studiengang_kz);
|
||||
|
||||
if($result = getData($result)[0])
|
||||
$result = $this->StudiengangModel->getLeitung(getData($result)[0]->studiengang_kz);
|
||||
|
||||
if (hasData($result))
|
||||
{
|
||||
if ($result->uid == $this->_uid)
|
||||
foreach (getData($result) as $stgl)
|
||||
{
|
||||
return;
|
||||
if ($stgl->uid == $this->_uid)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -285,11 +285,14 @@ class approveAnrechnungUebersicht extends Auth_Controller
|
||||
// Get STGL
|
||||
$result = $this->StudiengangModel->getLeitung($result->studiengang_kz);
|
||||
|
||||
if($result = getData($result)[0])
|
||||
if (hasData($result))
|
||||
{
|
||||
if ($result->uid == $this->_uid)
|
||||
foreach (getData($result) as $stgl)
|
||||
{
|
||||
return;
|
||||
if ($stgl->uid == $this->_uid)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -376,23 +379,24 @@ class approveAnrechnungUebersicht extends Auth_Controller
|
||||
$this->load->model('education/Lehrveranstaltung_model', 'LehrveranstaltungModel');
|
||||
$result = $this->LehrveranstaltungModel->getLecturersByLv($anrechnung['studiensemester_kurzbz'], $anrechnung['lehrveranstaltung_id']);
|
||||
|
||||
if (!$result = getData($result))
|
||||
if (!hasData($result))
|
||||
{
|
||||
show_error('Failed retrieving lectors of Lehrveranstaltung');
|
||||
}
|
||||
|
||||
$lecturersByLv = getData($result);
|
||||
|
||||
// Check if lv has LV-Leitung
|
||||
$key = array_search(true, array_column($result, 'lvleiter'));
|
||||
|
||||
$key = array_search(true, array_column($lecturersByLv, 'lvleiter'));
|
||||
// If lv has LV-Leitung, keep only the one
|
||||
if ($key !== false)
|
||||
{
|
||||
$lector_arr[]= $result[$key];
|
||||
$lector_arr[]= $lecturersByLv[$key];
|
||||
}
|
||||
// ...otherwise keep all lectors
|
||||
else
|
||||
{
|
||||
$lector_arr = array_merge($lector_arr, $result);
|
||||
$lector_arr = array_merge($lector_arr, $lecturersByLv);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@ class requestAnrechnung extends Auth_Controller
|
||||
$prestudent_id = getData($result)[0]->prestudent_id;
|
||||
|
||||
// Check if application deadline is expired
|
||||
$is_expired = self::_checkAntragDeadline(
|
||||
$is_expired = self::_isExpired(
|
||||
$this->config->item('submit_application_start'),
|
||||
$this->config->item('submit_application_end'),
|
||||
$studiensemester_kurzbz
|
||||
@@ -226,10 +226,10 @@ class requestAnrechnung extends Auth_Controller
|
||||
* @param $start Start date for application submission.
|
||||
* @param $ende End date for application submission.
|
||||
* @param $studiensemester_kurzbz
|
||||
* @return bool True if today is not during the start- and ending deadlines (= if is expired)
|
||||
* @return bool True if deadline is expired
|
||||
* @throws Exception
|
||||
*/
|
||||
private function _checkAntragDeadline($start, $ende, $studiensemester_kurzbz)
|
||||
private function _isExpired($start, $ende, $studiensemester_kurzbz)
|
||||
{
|
||||
$this->load->model('organisation/Studiensemester_model', 'StudiensemesterModel');
|
||||
|
||||
@@ -253,8 +253,8 @@ class requestAnrechnung extends Auth_Controller
|
||||
$start = new DateTime($start);
|
||||
$ende = new DateTime($ende);
|
||||
|
||||
// True if today is not during the start- and ending deadlines (= if is expired)
|
||||
return ($today <= $start || $today >= $ende);
|
||||
// True if expired
|
||||
return ($today < $start || $today > $ende);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -324,8 +324,8 @@ class requestAnrechnung extends Auth_Controller
|
||||
private function _LVhasBlockingGrades($studiensemester_kurzbz, $lehrveranstaltung_id)
|
||||
{
|
||||
// Get Note of Lehrveranstaltung
|
||||
$this->load->model('education/Lvgesamtnote_model', 'LvgesamtnoteModel');
|
||||
$result = $this->LvgesamtnoteModel->load(array(
|
||||
$this->load->model('education/Zeugnisnote_model', 'ZeugnisnoteModel');
|
||||
$result = $this->ZeugnisnoteModel->load(array(
|
||||
'student_uid' => $this->_uid,
|
||||
'studiensemester_kurzbz' => $studiensemester_kurzbz,
|
||||
'lehrveranstaltung_id' => $lehrveranstaltung_id
|
||||
|
||||
@@ -20,6 +20,7 @@ class InfoCenter extends Auth_Controller
|
||||
const INDEX_PAGE = 'index';
|
||||
const FREIGEGEBEN_PAGE = 'freigegeben';
|
||||
const REIHUNGSTESTABSOLVIERT_PAGE = 'reihungstestAbsolviert';
|
||||
const ABGEWIESEN_PAGE = 'abgewiesen';
|
||||
const SHOW_DETAILS_PAGE = 'showDetails';
|
||||
const SHOW_ZGV_DETAILS_PAGE = 'showZGVDetails';
|
||||
const ZGV_UBERPRUEFUNG_PAGE = 'ZGVUeberpruefung';
|
||||
@@ -107,6 +108,7 @@ class InfoCenter extends Auth_Controller
|
||||
array(
|
||||
'index' => 'infocenter:r',
|
||||
'freigegeben' => 'infocenter:r',
|
||||
'abgewiesen' => 'infocenter:r',
|
||||
'reihungstestAbsolviert' => 'infocenter:r',
|
||||
'showDetails' => 'infocenter:r',
|
||||
'showZGVDetails' => 'lehre/zgvpruefung:r',
|
||||
@@ -203,6 +205,16 @@ class InfoCenter extends Auth_Controller
|
||||
$this->load->view('system/infocenter/infocenterFreigegeben.php');
|
||||
}
|
||||
|
||||
/**
|
||||
* Abgewiesen page of the InfoCenter tool
|
||||
*/
|
||||
public function abgewiesen()
|
||||
{
|
||||
$this->_setNavigationMenu(self::ABGEWIESEN_PAGE); // define the navigation menu for this page
|
||||
|
||||
$this->load->view('system/infocenter/infocenterAbgewiesen.php');
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@@ -921,7 +933,8 @@ class InfoCenter extends Auth_Controller
|
||||
|
||||
$this->_log($person_id, 'freigegeben', $logparams);
|
||||
|
||||
$this->_sendFreigabeMail($prestudent_id);
|
||||
if (is_numeric($statusgrund_id) || $logdata['studiengang_typ'] === 'm')
|
||||
$this->_sendFreigabeMail($prestudent_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1199,6 +1212,10 @@ class InfoCenter extends Auth_Controller
|
||||
{
|
||||
$this->_setNavigationMenu(self::REIHUNGSTESTABSOLVIERT_PAGE);
|
||||
}
|
||||
elseif (strpos($navigation_page, self::ABGEWIESEN_PAGE) !== false)
|
||||
{
|
||||
$this->_setNavigationMenu(self::ABGEWIESEN_PAGE);
|
||||
}
|
||||
|
||||
$this->outputJsonSuccess('success');
|
||||
}
|
||||
@@ -1422,12 +1439,14 @@ class InfoCenter extends Auth_Controller
|
||||
|
||||
$freigegebenLink = site_url(self::INFOCENTER_URI.'/'.self::FREIGEGEBEN_PAGE);
|
||||
$reihungstestAbsolviertLink = site_url(self::INFOCENTER_URI.'/'.self::REIHUNGSTESTABSOLVIERT_PAGE);
|
||||
$abgewiesenLink = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE);
|
||||
|
||||
$currentFilterId = $this->input->get(self::FILTER_ID);
|
||||
if (isset($currentFilterId))
|
||||
{
|
||||
$freigegebenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
$reihungstestAbsolviertLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
$abgewiesenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
}
|
||||
|
||||
$this->navigationlib->setSessionMenu(
|
||||
@@ -1466,6 +1485,18 @@ class InfoCenter extends Auth_Controller
|
||||
null, // subscriptLinkValue
|
||||
'', // target
|
||||
20 // sort
|
||||
),
|
||||
'abgewiesen' => $this->navigationlib->oneLevel(
|
||||
'Abgewiesene', // description
|
||||
$abgewiesenLink, // link
|
||||
null, // children
|
||||
'close', // icon
|
||||
null, // subscriptDescription
|
||||
false, // expand
|
||||
null, // subscriptLinkClass
|
||||
null, // subscriptLinkValue
|
||||
'', // target
|
||||
30 // sort
|
||||
)
|
||||
)
|
||||
);
|
||||
@@ -1491,6 +1522,8 @@ class InfoCenter extends Auth_Controller
|
||||
}
|
||||
if ($origin_page === self::ZGV_UBERPRUEFUNG_PAGE)
|
||||
$link = site_url(self::ZGV_UEBERPRUEFUNG_URI);
|
||||
if ($origin_page === self::ABGEWIESEN_PAGE)
|
||||
$link = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE);
|
||||
|
||||
$prevFilterId = $this->input->get(self::PREV_FILTER_ID);
|
||||
if (isset($prevFilterId))
|
||||
@@ -1528,6 +1561,7 @@ class InfoCenter extends Auth_Controller
|
||||
$homeLink = site_url(self::INFOCENTER_URI.'/'.self::INDEX_PAGE);
|
||||
$freigegebenLink = site_url(self::INFOCENTER_URI.'/'.self::FREIGEGEBEN_PAGE);
|
||||
$absolviertLink = site_url(self::INFOCENTER_URI.'/'.self::REIHUNGSTESTABSOLVIERT_PAGE);
|
||||
$abgewiesenLink = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE);
|
||||
$prevFilterId = $this->input->get(self::PREV_FILTER_ID);
|
||||
if (isset($prevFilterId))
|
||||
{
|
||||
@@ -1586,6 +1620,24 @@ class InfoCenter extends Auth_Controller
|
||||
)
|
||||
);
|
||||
}
|
||||
if($page == self::ABGEWIESEN_PAGE)
|
||||
{
|
||||
$this->navigationlib->setSessionElementMenu(
|
||||
'abgewiesen',
|
||||
$this->navigationlib->oneLevel(
|
||||
'Abgewiesene', // description
|
||||
$abgewiesenLink, // link
|
||||
null, // children
|
||||
'close', // icon
|
||||
null, // subscriptDescription
|
||||
false, // expand
|
||||
null, // subscriptLinkClass
|
||||
null, // subscriptLinkValue
|
||||
'', // target
|
||||
40 // sort
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -114,7 +114,7 @@ class VorlageLib
|
||||
if (!hasData($vorlage))
|
||||
{
|
||||
// Builds where clause
|
||||
$where = $this->_where($vorlage_kurzbz, $orgform_kurzbz, $sprache);
|
||||
$where = $this->_where($vorlage_kurzbz);
|
||||
|
||||
$vorlage = $this->ci->organisationseinheitlib->treeSearch(
|
||||
'public',
|
||||
@@ -134,20 +134,11 @@ class VorlageLib
|
||||
/**
|
||||
* _where
|
||||
*/
|
||||
private function _where($vorlage_kurzbz, $orgform_kurzbz, $sprache)
|
||||
private function _where($vorlage_kurzbz)
|
||||
{
|
||||
// Builds where clause
|
||||
$where = "vorlage_kurzbz = ".$this->ci->VorlageModel->escape($vorlage_kurzbz);
|
||||
|
||||
if (is_null($sprache))
|
||||
{
|
||||
$where .= " AND sprache IS NULL";
|
||||
}
|
||||
else
|
||||
{
|
||||
$where .= " AND sprache = ".$this->ci->VorlageModel->escape($sprache);
|
||||
}
|
||||
|
||||
$where .= " AND aktiv = true";
|
||||
|
||||
return $where;
|
||||
|
||||
@@ -665,4 +665,5 @@ class Prestudent_model extends DB_Model
|
||||
|
||||
return $this->execQuery($query, array($prestudent_id));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<a href="outputAkteContent/<?php echo $dokument->akte_id ?>"><?php echo isEmptyString($dokument->titel) ? $dokument->bezeichnung : $dokument->titel ?></a>
|
||||
</td>
|
||||
<td>
|
||||
<select class="aktenid" id="aktenid_<?php echo $dokument->akte_id?>" <?php echo (isset($formalReadonly) ? 'disabled' : '') ?>>
|
||||
<select class="aktenid" id="aktenid_<?php echo $dokument->akte_id?>" <?php echo (isset($formalReadonly) ? 'disabled' : '') ?> autocomplete="off">
|
||||
<?php
|
||||
foreach($dokumententypen as $dokumenttyp)
|
||||
echo "<option " . ($dokumenttyp->bezeichnung === $dokument->dokument_bezeichnung ? 'selected' : '') . " value = " . $dokumenttyp->dokument_kurzbz . ">" . $dokumenttyp->bezeichnung . "</option>"
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
$this->load->view(
|
||||
'templates/FHC-Header',
|
||||
array(
|
||||
'title' => 'Info Center',
|
||||
'jquery' => true,
|
||||
'jqueryui' => true,
|
||||
'jquerycheckboxes' => true,
|
||||
'bootstrap' => true,
|
||||
'fontawesome' => true,
|
||||
'sbadmintemplate' => true,
|
||||
'tablesorter' => true,
|
||||
'ajaxlib' => true,
|
||||
'filterwidget' => true,
|
||||
'navigationwidget' => true,
|
||||
'dialoglib' => true,
|
||||
'phrases' => array(
|
||||
'person' => array('vorname', 'nachname'),
|
||||
'global' => array('mailAnXversandt'),
|
||||
'ui' => array('bitteEintragWaehlen')
|
||||
),
|
||||
'customCSSs' => array('public/css/sbadmin2/tablesort_bootstrap.css', 'public/css/infocenter/infocenterPersonDataset.css'),
|
||||
'customJSs' => array('public/js/bootstrapper.js', 'public/js/infocenter/infocenterPersonDataset.js')
|
||||
)
|
||||
);
|
||||
?>
|
||||
|
||||
<body>
|
||||
<div id="wrapper">
|
||||
|
||||
<?php echo $this->widgetlib->widget('NavigationWidget'); ?>
|
||||
|
||||
<div id="page-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h3 class="page-header">
|
||||
Abgewiesene
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<?php $this->load->view('system/infocenter/infocenterAbgewiesenData.php'); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<?php $this->load->view('templates/FHC-Footer'); ?>
|
||||
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
|
||||
$this->config->load('infocenter');
|
||||
$ABGEWIESENEN_STATUS = '\'Abgewiesener\'';
|
||||
$STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\'';
|
||||
$ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz');
|
||||
$STUDIENSEMESTER = '\''.$this->variablelib->getVar('infocenter_studiensemester').'\'';
|
||||
$LOGDATA_NAME = '\'Message sent\'';
|
||||
$LOGDATA_VON = '\'online\'';
|
||||
|
||||
$query = '
|
||||
SELECT
|
||||
p.person_id AS "PersonID",
|
||||
ps.prestudent_id AS "PreStudentID",
|
||||
p.vorname AS "Vorname",
|
||||
p.nachname AS "Nachname",
|
||||
sg.kurzbzlang as "Studiengang",
|
||||
pss.insertamum AS "AbgewiesenAm",
|
||||
(
|
||||
SELECT l.zeitpunkt
|
||||
FROM system.tbl_log l
|
||||
WHERE l.person_id = p.person_id
|
||||
AND '. $LOGDATA_NAME .' = (
|
||||
SELECT l.logdata->>\'name\'
|
||||
FROM system.tbl_log l
|
||||
WHERE l.person_id = p.person_id
|
||||
ORDER BY l.log_id DESC
|
||||
LIMIT 1
|
||||
)
|
||||
AND '. $LOGDATA_VON .' = (
|
||||
SELECT l.insertvon
|
||||
FROM system.tbl_log l
|
||||
WHERE l.person_id = p.person_id
|
||||
ORDER BY l.log_id DESC
|
||||
LIMIT 1
|
||||
)
|
||||
AND l.zeitpunkt >= pss.insertamum
|
||||
ORDER BY l.log_id DESC
|
||||
LIMIT 1
|
||||
) AS "Nachricht"
|
||||
FROM
|
||||
public.tbl_prestudentstatus pss
|
||||
JOIN public.tbl_prestudent ps USING(prestudent_id)
|
||||
JOIN public.tbl_person p USING(person_id)
|
||||
JOIN public.tbl_studiengang sg USING(studiengang_kz)
|
||||
WHERE pss.status_kurzbz = '. $ABGEWIESENEN_STATUS .'
|
||||
AND pss.studiensemester_kurzbz = '. $STUDIENSEMESTER .'
|
||||
AND (sg.typ IN ('. $STUDIENGANG_TYP .')
|
||||
OR
|
||||
sg.studiengang_kz IN ('. $ADDITIONAL_STG .')
|
||||
)
|
||||
ORDER BY "AbgewiesenAm" DESC';
|
||||
|
||||
$filterWidgetArray = array(
|
||||
'query' => $query,
|
||||
'app' => InfoCenter::APP,
|
||||
'datasetName' => 'abgewiesen',
|
||||
'filter_id' => $this->input->get('filter_id'),
|
||||
'requiredPermissions' => 'infocenter',
|
||||
'datasetRepresentation' => 'tablesorter',
|
||||
'columnsAliases' => array(
|
||||
'PersonID',
|
||||
'PreStudentID',
|
||||
'Vorname',
|
||||
'Nachname',
|
||||
'Studiengang',
|
||||
'Abgewiesen am',
|
||||
'Nachricht'
|
||||
),
|
||||
|
||||
'formatRow' => function($datasetRaw) {
|
||||
if ($datasetRaw->{'Nachricht'} === null)
|
||||
{
|
||||
$datasetRaw->{'Nachricht'} = 'Nein';
|
||||
}
|
||||
else
|
||||
{
|
||||
$datasetRaw->{'Nachricht'} = 'Ja';
|
||||
}
|
||||
|
||||
$datasetRaw->{'AbgewiesenAm'} = date_format(date_create($datasetRaw->{'AbgewiesenAm'}),'Y-m-d H:i');
|
||||
return $datasetRaw;
|
||||
}
|
||||
);
|
||||
|
||||
echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray);
|
||||
?>
|
||||
@@ -6,7 +6,7 @@
|
||||
$INTERESSENT_STATUS = '\'Interessent\'';
|
||||
$STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\'';
|
||||
$TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\'';
|
||||
$LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Interessent rejected\'';
|
||||
$LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Interessent rejected\', \'Attempt to register with existing mailadress\'';
|
||||
$LOGDATA_NAME_PARKED = '\'Parked\'';
|
||||
$LOGDATA_NAME_ONHOLD = '\'Onhold\'';
|
||||
$LOGTYPE_KURZBZ = '\'Processstate\'';
|
||||
@@ -55,8 +55,10 @@
|
||||
a.dokument_kurzbz in ('.$AKTE_TYP.')
|
||||
) AS "AnzahlAkte",
|
||||
(
|
||||
SELECT l.insertvon
|
||||
SELECT CASE WHEN sp.nachname IS NULL THEN l.insertvon ELSE sp.nachname END
|
||||
FROM system.tbl_log l
|
||||
LEFT JOIN public.tbl_benutzer on l.insertvon = tbl_benutzer.uid
|
||||
LEFT JOIN public.tbl_person sp on tbl_benutzer.person_id = sp.person_id
|
||||
WHERE l.taetigkeit_kurzbz IN ('.$TAETIGKEIT_KURZBZ.')
|
||||
AND l.logdata->>\'name\' NOT IN ('.$LOGDATA_NAME.')
|
||||
AND l.person_id = p.person_id
|
||||
@@ -271,8 +273,10 @@
|
||||
LEFT JOIN (
|
||||
SELECT tpl.person_id,
|
||||
tpl.zeitpunkt,
|
||||
tpl.uid AS lockuser
|
||||
sp.nachname AS lockuser
|
||||
FROM system.tbl_person_lock tpl
|
||||
JOIN public.tbl_benutzer sb USING (uid)
|
||||
JOIN public.tbl_person sp ON sb.person_id = sp.person_id
|
||||
WHERE tpl.app = '.$APP.'
|
||||
) pl USING(person_id)
|
||||
LEFT JOIN (
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
$INTERESSENT_STATUS = '\'Interessent\'';
|
||||
$STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\'';
|
||||
$TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\'';
|
||||
$LOGDATA_NAME = '\'Login with code\', \'Login with user\'';
|
||||
$LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Attempt to register with existing mailadress\'';
|
||||
$REJECTED_STATUS = '\'Abgewiesener\'';
|
||||
$ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz');
|
||||
$STATUS_KURZBZ = '\'Wartender\', \'Bewerber\', \'Aufgenommener\', \'Student\'';
|
||||
@@ -41,8 +41,10 @@ $query = '
|
||||
LIMIT 1
|
||||
) AS "LastActionType",
|
||||
(
|
||||
SELECT l.insertvon
|
||||
SELECT CASE WHEN sp.nachname IS NULL THEN l.insertvon ELSE sp.nachname END
|
||||
FROM system.tbl_log l
|
||||
LEFT JOIN public.tbl_benutzer on l.insertvon = tbl_benutzer.uid
|
||||
LEFT JOIN public.tbl_person sp on tbl_benutzer.person_id = sp.person_id
|
||||
WHERE l.taetigkeit_kurzbz IN('.$TAETIGKEIT_KURZBZ.')
|
||||
AND l.logdata->>\'name\' NOT IN ('.$LOGDATA_NAME.')
|
||||
AND l.person_id = p.person_id
|
||||
@@ -248,8 +250,10 @@ $query = '
|
||||
LEFT JOIN (
|
||||
SELECT tpl.person_id,
|
||||
tpl.zeitpunkt,
|
||||
tpl.uid AS lockuser
|
||||
sp.nachname AS lockuser
|
||||
FROM system.tbl_person_lock tpl
|
||||
JOIN public.tbl_benutzer sb USING (uid)
|
||||
JOIN public.tbl_person sp ON sb.person_id = sp.person_id
|
||||
WHERE tpl.app = '.$APP.'
|
||||
) pl USING(person_id)
|
||||
WHERE
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
$INTERESSENT_STATUS = '\'Interessent\'';
|
||||
$STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\'';
|
||||
$TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\'';
|
||||
$LOGDATA_NAME = '\'Login with code\', \'Login with user\'';
|
||||
$LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Attempt to register with existing mailadress\'';
|
||||
$ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz');
|
||||
$STUDIENSEMESTER = '\''.$this->variablelib->getVar('infocenter_studiensemester').'\'';
|
||||
$ORG_NAME = '\'InfoCenter\'';
|
||||
|
||||
@@ -736,6 +736,7 @@ else
|
||||
die($p->t('global/fehleraufgetreten'));
|
||||
|
||||
// Kopfzeile
|
||||
|
||||
echo '
|
||||
<table width="100%">
|
||||
<tr>
|
||||
@@ -1144,7 +1145,7 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
|
||||
$eintrag = '';
|
||||
foreach ($output as $k)
|
||||
{
|
||||
if($k->mobilitaetstyp_kurzbz == 'GS')
|
||||
if(($k->mobilitaetstyp_kurzbz == 'GS') && ($k->studiensemester_kurzbz == $stsem))
|
||||
$eintrag = ' (d.d.)';
|
||||
}
|
||||
$grades[$row_stud->uid]['mobility'] = $eintrag;
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
* Manuela Thamer <manuela.thamer@technikum-wien.at>
|
||||
*/
|
||||
/*
|
||||
* Erstellt Notenliste im Excel Format
|
||||
@@ -207,9 +208,9 @@ else
|
||||
WHERE prestudent_id=tbl_student.prestudent_id
|
||||
ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
|
||||
tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von,
|
||||
tbl_zeugnisnote.note,tbl_mobilitaet.mobilitaetstyp_kurzbz
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
|
||||
tbl_zeugnisnote.note,tbl_mobilitaet.mobilitaetstyp_kurzbz,
|
||||
(CASE WHEN bis.tbl_mobilitaet.studiensemester_kurzbz = vw_student_lehrveranstaltung.studiensemester_kurzbz THEN '1' ELSE '' END) as doubledegree
|
||||
FROM campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
|
||||
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
|
||||
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
@@ -224,7 +225,7 @@ else
|
||||
if($lehreinheit_id!='')
|
||||
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
|
||||
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis, doubledegree DESC';
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
@@ -232,6 +233,7 @@ else
|
||||
$lines++;
|
||||
while($elem = $db->db_fetch_object($result))
|
||||
{
|
||||
$note='';
|
||||
if(!preg_match('*dummy*',$elem->uid) && $elem->semester!=10)
|
||||
{
|
||||
if($elem->status!='Abbrecher' && $elem->status!='Unterbrecher')
|
||||
@@ -249,12 +251,12 @@ else
|
||||
$inc.=' (ar)';
|
||||
$note='ar';
|
||||
}
|
||||
if($elem->mobilitaetstyp_kurzbz !='') //dd-Program
|
||||
|
||||
if ($elem->mobilitaetstyp_kurzbz !='' && $elem->doubledegree == 1) //dd-Program
|
||||
{
|
||||
$inc.=' (dd)';
|
||||
$inc.=' (d.d.)';
|
||||
}
|
||||
else
|
||||
$note='';
|
||||
|
||||
$worksheet->write($lines,1,$elem->uid);
|
||||
$worksheet->write($lines,2,$elem->nachname.$inc);
|
||||
$worksheet->write($lines,3,$elem->vorname);
|
||||
@@ -305,7 +307,8 @@ else
|
||||
$worksheet->write(++$lines,0,'(i) ... Incoming');
|
||||
$worksheet->write(++$lines,0,'(o) ... Outgoing');
|
||||
$worksheet->write(++$lines,0,'(ar) ... '.$p->t('anwesenheitsliste/angerechnet'));
|
||||
$worksheet->write(++$lines,0,'(dd) ... Double Degree Program');
|
||||
$worksheet->write(++$lines,0,'(iar) ... '.$p->t('anwesenheitsliste/internangerechnet'));
|
||||
$worksheet->write(++$lines,0,'(d.d.) ... Double Degree Program');
|
||||
|
||||
$worksheet->setColumn(0, 0, 5);
|
||||
$worksheet->setColumn(0, 1, 16);
|
||||
|
||||
@@ -293,36 +293,9 @@ if (!$ansicht)
|
||||
$adresse = new adresse();
|
||||
$adresse->load_pers($user->person_id);
|
||||
|
||||
function sortAdresse($a , $b)
|
||||
{
|
||||
if ($a->typ === $b->typ)
|
||||
return 0;
|
||||
|
||||
return ($a->typ < $b->typ) ? -1 : 1;
|
||||
}
|
||||
usort($adresse->result, "sortAdresse");
|
||||
foreach($adresse->result as $a)
|
||||
{
|
||||
if ($a->zustelladresse)
|
||||
{
|
||||
switch ($a->typ)
|
||||
{
|
||||
case "h":
|
||||
$typ = $p->t("global/hauptwohnsitz");
|
||||
break;
|
||||
case "n":
|
||||
$typ = $p->t("global/nebenwohnsitz");
|
||||
break;
|
||||
default:
|
||||
$typ = NULL;
|
||||
break;
|
||||
}
|
||||
if ($typ !== NULL)
|
||||
{
|
||||
echo "<b>".$typ.": </b><br>";
|
||||
echo $a->strasse."<br>".$a->plz." ".$a->ort."<br><br>";
|
||||
}
|
||||
}
|
||||
echo $a->strasse . "<b> (" . $a->bezeichnung_mehrsprachig[$sprache] .") </b>" . "<br>".$a->plz." ".$a->ort."<br><br>";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -660,7 +660,7 @@ echo '
|
||||
function checkPausenblock()
|
||||
{
|
||||
var sel = $("#aktivitaet").val();
|
||||
var activities = ["Admin", "Lehre", "FuE", "Operativ", "Betrieb", "Design"];
|
||||
var activities = ["Admin", "Lehre", "FuE", "Operativ", "Betrieb", "Design", "LVEntwicklung", "Weiterbildung", "FuEallg"];
|
||||
if (activities.includes(sel))
|
||||
showPausenblock();
|
||||
else
|
||||
|
||||
@@ -194,6 +194,9 @@ define('REIHUNGSTEST_CHECK', true);
|
||||
// Bei Statuswechsel auf Bewerber bzw. Student -> soll ZGV brücksichtigt werden
|
||||
define('ZGV_CHECK', true);
|
||||
|
||||
define ('ZGV_DOKTOR_ANZEIGEN', false);
|
||||
define ('ZGV_ERFUELLT_ANZEIGEN', false);
|
||||
|
||||
// Bei Statuswechsel auf Bewerber -> bei true wird email (INFOMAIL_BEWERBER) an den Bewerber geschickt
|
||||
define('SEND_BEWERBER_INFOMAIL', false);
|
||||
|
||||
|
||||
@@ -70,13 +70,15 @@ else
|
||||
<row>
|
||||
<label value="Typ" control="adresse-menulist-typ"/>
|
||||
<menulist id="adresse-menulist-typ"
|
||||
flex="1">
|
||||
datasources="<?php echo APP_ROOT ?>rdf/adressentyp.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/adressentyp/liste">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="h" label="Hauptwohnsitz"/>
|
||||
<menuitem value="n" label="Nebenwohnsitz"/>
|
||||
<menuitem value="f" label="Firma"/>
|
||||
<menuitem value="r" label="Rechnungsadresse"/>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/adressentyp/rdf#adressentyp"
|
||||
label="rdf:http://www.technikum-wien.at/adressentyp/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
|
||||
@@ -204,7 +204,7 @@ else
|
||||
<row id="betriebsmittel-row-nummer2">
|
||||
<label value="Nummer 2" control="betriebsmittel-textbox-nummer2"/>
|
||||
<hbox>
|
||||
<textbox id="betriebsmittel-textbox-nummer2" disabled="true" maxlength="12"/>
|
||||
<textbox id="betriebsmittel-textbox-nummer2" disabled="true" maxlength="32"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
|
||||
@@ -383,6 +383,7 @@ if(!$error)
|
||||
$error = true;
|
||||
$errormsg = 'Sie haben keine Schreibrechte fuer diesen Studiengang';
|
||||
}
|
||||
|
||||
//Studentendaten speichern
|
||||
if(!$error)
|
||||
{
|
||||
@@ -402,7 +403,8 @@ if(!$error)
|
||||
$return = false;
|
||||
$errormsg = 'Geburtsdatum ist nicht korrekt.';
|
||||
$error = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$student->uid = $_POST['uid'];
|
||||
@@ -646,10 +648,17 @@ if(!$error)
|
||||
$prestudent->zgvort = $_POST['zgvort'];
|
||||
$prestudent->zgvdatum = $_POST['zgvdatum'];
|
||||
$prestudent->zgvnation = $_POST['zgvnation'];
|
||||
$prestudent->zgv_erfuellt = $_POST['zgv_erfuellt'];
|
||||
$prestudent->zgvmas_code = $_POST['zgvmas_code'];
|
||||
$prestudent->zgvmaort = $_POST['zgvmaort'];
|
||||
$prestudent->zgvmadatum = $_POST['zgvmadatum'];
|
||||
$prestudent->zgvmanation = $_POST['zgvmanation'];
|
||||
$prestudent->zgvmas_erfuellt = $_POST['zgvmas_erfuellt'];
|
||||
$prestudent->zgvdoktor_code = $_POST['zgvdoktor_code'];
|
||||
$prestudent->zgvdoktorort = $_POST['zgvdoktorort'];
|
||||
$prestudent->zgvdoktordatum = $_POST['zgvdoktordatum'];
|
||||
$prestudent->zgvdoktornation = $_POST['zgvdoktornation'];
|
||||
$prestudent->zgvdoktor_erfuellt = $_POST['zgvdoktor_erfuellt'];
|
||||
$prestudent->aufnahmeschluessel = $_POST['aufnahmeschluessel'];
|
||||
$prestudent->facheinschlberuf = ($_POST['facheinschlberuf']=='true'?true:false);
|
||||
$prestudent->bismelden = ($_POST['bismelden']=='true'?true:false);
|
||||
@@ -2337,7 +2346,7 @@ if(!$error)
|
||||
{
|
||||
if ($dokument_kurzbz === 'Sonst' && $sonst !== 0)
|
||||
continue;
|
||||
|
||||
|
||||
if($dokument_kurzbz!='')
|
||||
{
|
||||
$dok = new dokument();
|
||||
@@ -2350,6 +2359,7 @@ if(!$error)
|
||||
$dok->new = true;
|
||||
if ($dokument_kurzbz === 'Sonst')
|
||||
$sonst++;
|
||||
|
||||
|
||||
if(!$dok->save())
|
||||
{
|
||||
@@ -2544,7 +2554,6 @@ if(!$error)
|
||||
$dokumente = explode(';',$_POST['dokumente']);
|
||||
$errormsg = '';
|
||||
$sonst = 0;
|
||||
|
||||
foreach ($dokumente as $dokument_kurzbz)
|
||||
{
|
||||
if ($dokument_kurzbz === 'Sonst' && $sonst !== 0)
|
||||
|
||||
@@ -104,13 +104,26 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<label value="Geburtsnation" control="student-detail-menulist-geburtsnation"/>
|
||||
<menulist id="student-detail-menulist-geburtsnation" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
|
||||
xmlns:NATION="http://www.technikum-wien.at/nation/rdf#"
|
||||
ref="http://www.technikum-wien.at/nation/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"/>
|
||||
<rule NATION:sperre='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*" style="text-decoration:line-through;"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
|
||||
</template>
|
||||
</menulist>
|
||||
|
||||
@@ -127,15 +140,29 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<label value="Staatsbuergerschaft" control="student-detail-menulist-staatsbuergerschaft"/>
|
||||
<menulist id="student-detail-menulist-staatsbuergerschaft" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
|
||||
xmlns:NATION="http://www.technikum-wien.at/nation/rdf#"
|
||||
ref="http://www.technikum-wien.at/nation/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"/>
|
||||
<rule NATION:sperre='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*" style="text-decoration:line-through;"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
|
||||
|
||||
<label value="Matrikelnummer" control="student-detail-textbox-matr_nr"/>
|
||||
<hbox><textbox id="student-detail-textbox-matr_nr" disabled="true" maxlength="32" size="15"/></hbox>
|
||||
<label value="Sprache" control="student-detail-menulist-sprache" />
|
||||
@@ -298,6 +325,8 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<column flex="5"/>
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
<column flex="1"/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
@@ -326,16 +355,36 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<menulist id="student-prestudent-menulist-zgvnation" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/nation/liste"
|
||||
xmlns:NATION="http://www.technikum-wien.at/nation/rdf#"
|
||||
style="min-width: 100px">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
<rule NATION:sperre='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*" style="text-decoration:line-through;"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<!-- ZGV erfuellt -->
|
||||
<?php
|
||||
$is_hidden = (defined('ZGV_ERFUELLT_ANZEIGEN') && ZGV_ERFUELLT_ANZEIGEN) ? 'false' : 'true';
|
||||
?>
|
||||
<label value="ZGV erfüllt" control="student-prestudent-checkbox-zgverfuellt" hidden="<?php echo $is_hidden?>"/>
|
||||
<hbox>
|
||||
<checkbox id="student-prestudent-checkbox-zgverfuellt" checked="true" disabled="true" hidden="<?php echo $is_hidden?>"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="ZGV Master" control="student-prestudent-menulist-zgvmastercode"/>
|
||||
@@ -347,7 +396,8 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/zgvmaster/rdf#code"
|
||||
label="rdf:http://www.technikum-wien.at/zgvmaster/rdf#kurzbz"
|
||||
uri="rdf:*"/>
|
||||
uri="rdf:*"
|
||||
/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
@@ -362,15 +412,93 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<menulist id="student-prestudent-menulist-zgvmasternation" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/nation/liste"
|
||||
xmlns:NATION="http://www.technikum-wien.at/nation/rdf#"
|
||||
style="min-width: 100px">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
<rule NATION:sperre='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*" style="text-decoration:line-through;"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<!-- ZGV Master erfuellt -->
|
||||
<?php
|
||||
$is_hidden = (defined('ZGV_ERFUELLT_ANZEIGEN') && ZGV_ERFUELLT_ANZEIGEN) ? 'false' : 'true';
|
||||
?>
|
||||
<label value="ZGV Master erfüllt" control="student-prestudent-checkbox-zgvmaserfuellt" hidden="<?php echo $is_hidden?>"/>
|
||||
<hbox>
|
||||
<checkbox id="student-prestudent-checkbox-zgvmaserfuellt" checked="true" disabled="true" hidden="<?php echo $is_hidden?>"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<!-- ZGV Doktor -->
|
||||
<?php
|
||||
$is_hidden = (defined('ZGV_DOKTOR_ANZEIGEN') && ZGV_DOKTOR_ANZEIGEN) ? 'false' : 'true';
|
||||
?>
|
||||
<row hidden="<?php echo $is_hidden?>">
|
||||
<label value="ZGV Doktor" control="student-prestudent-menulist-zgvdoktorcode"/>
|
||||
<menulist id="student-prestudent-menulist-zgvdoktorcode" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/zgvdoktor.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/zgvdoktor/alle" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/zgvdoktor/rdf#code"
|
||||
label="rdf:http://www.technikum-wien.at/zgvdoktor/rdf#kurzbz"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<label value="ZGV Doktor Ort" control="student-prestudent-textbox-zgvdoktorort"/>
|
||||
<textbox id="student-prestudent-textbox-zgvdoktorort" disabled="true" maxlength="64"/>
|
||||
<label value="ZGV Doktor Datum" control="student-prestudent-textbox-zgvdoktordatum"/>
|
||||
<hbox>
|
||||
<box class='Datum' id="student-prestudent-textbox-zgvdoktordatum" disabled="true"/>
|
||||
</hbox>
|
||||
<label value="ZGV Doktor Nation" control="student-prestudent-menulist-zgvdoktornation"/>
|
||||
<hbox>
|
||||
<menulist id="student-prestudent-menulist-zgvdoktornation" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php?optional=true" flex="1"
|
||||
xmlns:NATION="http://www.technikum-wien.at/nation/rdf#"
|
||||
ref="http://www.technikum-wien.at/nation/liste" >
|
||||
<template>
|
||||
<rule NATION:sperre='false'>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
<rule>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
|
||||
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
|
||||
uri="rdf:*" style="text-decoration:line-through;"
|
||||
/>
|
||||
</menupopup>
|
||||
</rule>
|
||||
</template>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<!-- ZGV Doktor erfuellt -->
|
||||
<?php
|
||||
$is_hidden = (defined('ZGV_ERFUELLT_ANZEIGEN') && ZGV_ERFUELLT_ANZEIGEN) ? 'false' : 'true';
|
||||
?>
|
||||
<label value="ZGV Doktor erfüllt" control="student-prestudent-checkbox-zgvdoktorerfuellt" hidden="<?php echo $is_hidden?>"/>
|
||||
<hbox>
|
||||
<checkbox id="student-prestudent-checkbox-zgvdoktorerfuellt" checked="true" disabled="true" hidden="<?php echo $is_hidden?>"/>
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
|
||||
@@ -1147,10 +1147,18 @@ function StudentAuswahl()
|
||||
zgvort = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvort" ));
|
||||
zgvnation = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvnation" ));
|
||||
zgvdatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvdatum" ));
|
||||
zgv_erfuellt = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgv_erfuellt" ));
|
||||
zgvmaster_code = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvmas_code" ));
|
||||
zgvmasterort = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvmaort" ));
|
||||
zgvmasternation = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvmanation" ));
|
||||
zgvmasterdatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvmadatum" ));
|
||||
zgvmasterdatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvmadatum" ));
|
||||
zgvmas_erfuellt = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvmas_erfuellt" ));
|
||||
zgvdoktor_code = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvdoktor_code" ));
|
||||
zgvdoktorort = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvdoktorort" ));
|
||||
zgvdoktornation = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvdoktornation" ));
|
||||
zgvdoktordatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvdoktordatum" ));
|
||||
zgvdoktor_erfuellt = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zgvdoktor_erfuellt" ));
|
||||
|
||||
aufnahmeschluessel = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#aufnahmeschluessel" ));
|
||||
facheinschlberuf = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#facheinschlberuf" ));
|
||||
bismelden = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bismelden" ));
|
||||
@@ -1169,10 +1177,26 @@ function StudentAuswahl()
|
||||
document.getElementById('student-prestudent-textbox-zgvort').value=zgvort;
|
||||
MenulistSelectItemOnValue('student-prestudent-menulist-zgvnation', zgvnation);
|
||||
document.getElementById('student-prestudent-textbox-zgvdatum').value=zgvdatum;
|
||||
if(zgv_erfuellt=='t')
|
||||
document.getElementById('student-prestudent-checkbox-zgverfuellt').checked=true;
|
||||
else
|
||||
document.getElementById('student-prestudent-checkbox-zgverfuellt').checked=false;
|
||||
document.getElementById('student-prestudent-menulist-zgvmastercode').value=zgvmaster_code;
|
||||
document.getElementById('student-prestudent-textbox-zgvmasterort').value=zgvmasterort;
|
||||
MenulistSelectItemOnValue('student-prestudent-menulist-zgvmasternation', zgvmasternation);
|
||||
document.getElementById('student-prestudent-textbox-zgvmasterdatum').value=zgvmasterdatum;
|
||||
if(zgvmas_erfuellt=='t')
|
||||
document.getElementById('student-prestudent-checkbox-zgvmaserfuellt').checked=true;
|
||||
else
|
||||
document.getElementById('student-prestudent-checkbox-zgvmaserfuellt').checked=false;
|
||||
document.getElementById('student-prestudent-menulist-zgvdoktorcode').value=zgvdoktor_code;
|
||||
document.getElementById('student-prestudent-textbox-zgvdoktorort').value=zgvdoktorort;
|
||||
MenulistSelectItemOnValue('student-prestudent-menulist-zgvdoktornation', zgvdoktornation);
|
||||
document.getElementById('student-prestudent-textbox-zgvdoktordatum').value=zgvdoktordatum;
|
||||
if(zgvdoktor_erfuellt=='t')
|
||||
document.getElementById('student-prestudent-checkbox-zgvdoktorerfuellt').checked=true;
|
||||
else
|
||||
document.getElementById('student-prestudent-checkbox-zgvdoktorerfuellt').checked=false;
|
||||
document.getElementById('student-prestudent-menulist-aufnahmeschluessel').value=aufnahmeschluessel;
|
||||
if(facheinschlberuf=='true')
|
||||
document.getElementById('student-prestudent-checkbox-facheinschlberuf').checked=true;
|
||||
@@ -1708,10 +1732,18 @@ function StudentPrestudentDisableFields(val)
|
||||
document.getElementById('student-prestudent-textbox-zgvort').disabled=val;
|
||||
document.getElementById('student-prestudent-menulist-zgvnation').disabled=val;
|
||||
document.getElementById('student-prestudent-textbox-zgvdatum').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-zgverfuellt').disabled=val;
|
||||
document.getElementById('student-prestudent-menulist-zgvmastercode').disabled=val;
|
||||
document.getElementById('student-prestudent-textbox-zgvmasterort').disabled=val;
|
||||
document.getElementById('student-prestudent-menulist-zgvmasternation').disabled=val;
|
||||
document.getElementById('student-prestudent-textbox-zgvmasterdatum').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-zgvmaserfuellt').disabled=val;
|
||||
document.getElementById('student-prestudent-menulist-zgvdoktorcode').disabled=val;
|
||||
document.getElementById('student-prestudent-textbox-zgvdoktorort').disabled=val;
|
||||
document.getElementById('student-prestudent-menulist-zgvdoktornation').disabled=val;
|
||||
document.getElementById('student-prestudent-textbox-zgvdoktordatum').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-zgvdoktorerfuellt').disabled=val;
|
||||
|
||||
document.getElementById('student-prestudent-menulist-aufnahmeschluessel').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-facheinschlberuf').disabled=val;
|
||||
document.getElementById('student-prestudent-checkbox-bismelden').disabled=val;
|
||||
@@ -1779,10 +1811,18 @@ function StudentPrestudentSave()
|
||||
zgvort = document.getElementById('student-prestudent-textbox-zgvort').value;
|
||||
zgvnation = document.getElementById('student-prestudent-menulist-zgvnation').value;
|
||||
zgvdatum = document.getElementById('student-prestudent-textbox-zgvdatum').value;
|
||||
zgv_erfuellt = document.getElementById('student-prestudent-checkbox-zgverfuellt').checked;
|
||||
zgvmaster_code = document.getElementById('student-prestudent-menulist-zgvmastercode').value;
|
||||
zgvmasterort = document.getElementById('student-prestudent-textbox-zgvmasterort').value;
|
||||
zgvmasternation = document.getElementById('student-prestudent-menulist-zgvmasternation').value;
|
||||
zgvmasterdatum = document.getElementById('student-prestudent-textbox-zgvmasterdatum').value;
|
||||
zgvmas_erfuellt = document.getElementById('student-prestudent-checkbox-zgvmaserfuellt').checked;
|
||||
zgvdoktor_code = document.getElementById('student-prestudent-menulist-zgvdoktorcode').value;
|
||||
zgvdoktorort = document.getElementById('student-prestudent-textbox-zgvdoktorort').value;
|
||||
zgvdoktornation = document.getElementById('student-prestudent-menulist-zgvdoktornation').value;
|
||||
zgvdoktordatum = document.getElementById('student-prestudent-textbox-zgvdoktordatum').value;
|
||||
zgvdoktor_erfuellt = document.getElementById('student-prestudent-checkbox-zgvdoktorerfuellt').checked;
|
||||
|
||||
aufnahmeschluessel = document.getElementById('student-prestudent-menulist-aufnahmeschluessel').value;
|
||||
facheinschlberuf = document.getElementById('student-prestudent-checkbox-facheinschlberuf').checked;
|
||||
bismelden = document.getElementById('student-prestudent-checkbox-bismelden').checked;
|
||||
@@ -1808,7 +1848,11 @@ function StudentPrestudentSave()
|
||||
alert('ZGVMaster Datum ist ungueltig');
|
||||
return false;
|
||||
}
|
||||
|
||||
if(zgvdoktordatum!='' && !CheckDatum(zgvdoktordatum))
|
||||
{
|
||||
alert('ZGVDoktor Datum ist ungueltig');
|
||||
return false;
|
||||
}
|
||||
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
@@ -1827,10 +1871,18 @@ function StudentPrestudentSave()
|
||||
req.add('zgvort', zgvort);
|
||||
req.add('zgvnation', zgvnation);
|
||||
req.add('zgvdatum', ConvertDateToISO(zgvdatum));
|
||||
req.add('zgv_erfuellt', zgv_erfuellt);
|
||||
req.add('zgvmas_code', zgvmaster_code);
|
||||
req.add('zgvmaort', zgvmasterort);
|
||||
req.add('zgvmanation', zgvmasternation);
|
||||
req.add('zgvmadatum', ConvertDateToISO(zgvmasterdatum));
|
||||
req.add('zgvmas_erfuellt', zgvmas_erfuellt);
|
||||
req.add('zgvdoktor_code', zgvdoktor_code);
|
||||
req.add('zgvdoktorort', zgvdoktorort);
|
||||
req.add('zgvdoktornation', zgvdoktornation);
|
||||
req.add('zgvdoktordatum', ConvertDateToISO(zgvdoktordatum));
|
||||
req.add('zgvdoktor_erfuellt', zgvdoktor_erfuellt);
|
||||
|
||||
req.add('aufnahmeschluessel', aufnahmeschluessel);
|
||||
req.add('facheinschlberuf', facheinschlberuf);
|
||||
req.add('bismelden', bismelden);
|
||||
|
||||
@@ -652,11 +652,12 @@ function StudentProjektarbeitNeu()
|
||||
StudentProjektarbeitResetFields();
|
||||
StudentProjektarbeitDetailDisableFields(false);
|
||||
StudentProjektbetreuerDisableFields(true);
|
||||
var stg_kz = document.getElementById('student-detail-menulist-studiengang_kz').value;
|
||||
var student_uid = document.getElementById('student-detail-textbox-uid').value;
|
||||
|
||||
//Lehrveranstaltung DropDown laden
|
||||
var LvDropDown = document.getElementById('student-projektarbeit-menulist-lehrveranstaltung');
|
||||
url='<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?uid='+student_uid+"&projektarbeit=true&"+gettimestamp();
|
||||
url='<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?uid='+student_uid+'&stg_kz='+stg_kz+"&projektarbeit=true&"+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = LvDropDown.database.GetDataSources();
|
||||
|
||||
@@ -53,6 +53,9 @@ class adresse extends basis_db
|
||||
public $rechnungsadresse=false; // boolean
|
||||
public $anmerkung; // string
|
||||
public $co_name;
|
||||
public $adressentyp;
|
||||
public $bezeichnung;
|
||||
public $bezeichnung_mehrsprachig;
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
@@ -133,10 +136,10 @@ class adresse extends basis_db
|
||||
$this->errormsg = 'person_id muss eine gültige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
$sprache = new sprache();
|
||||
//Lesen der Daten aus der Datenbank
|
||||
$qry = "SELECT * FROM public.tbl_adresse WHERE person_id=".$this->db_add_param($pers_id, FHC_INTEGER, false);
|
||||
$qry.=" ORDER BY zustelladresse DESC";
|
||||
$qry = "SELECT *, ". $sprache->getSprachQuery('bezeichnung_mehrsprachig') ." FROM public.tbl_adresse JOIN public.tbl_adressentyp ON typ = adressentyp_kurzbz WHERE person_id=".$this->db_add_param($pers_id, FHC_INTEGER, false);
|
||||
$qry.=" ORDER BY zustelladresse DESC, sort";
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
@@ -167,6 +170,7 @@ class adresse extends basis_db
|
||||
$adr_obj->co_name = $row->co_name;
|
||||
$adr_obj->rechnungsadresse = $this->db_parse_bool($row->rechnungsadresse);
|
||||
$adr_obj->anmerkung = $row->anmerkung;
|
||||
$adr_obj->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig',$row);
|
||||
|
||||
$this->result[] = $adr_obj;
|
||||
}
|
||||
@@ -519,5 +523,29 @@ class adresse extends basis_db
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getAdressentyp()
|
||||
{
|
||||
$qry = "SELECT * FROM public.tbl_adressentyp ORDER BY sort";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new adresse();
|
||||
|
||||
$obj->adressentyp = $row->adressentyp_kurzbz;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -1186,7 +1186,22 @@ class betriebsmittel extends basis_db
|
||||
//Kartennummern die im Hex-Format sind werden umgewandelt
|
||||
if (!is_numeric($kartennummer))
|
||||
{
|
||||
$kartennummer=substr($kartennummer,strlen($kartennummer)-2,2).substr($kartennummer,strlen($kartennummer)-4,2). substr($kartennummer,strlen($kartennummer)-6,2).substr($kartennummer,0,2);
|
||||
$tmp_kn_str = null;
|
||||
for ($i=0; strlen($kartennummer) > $i; $i+=2) {
|
||||
|
||||
#wenn die strlen($kartennummer) gerade ist (TW hat 8 Stellen, FHB 14 Stellen)
|
||||
$tmp_kn_str .= substr($kartennummer,strlen($kartennummer)-($i+2),2);
|
||||
|
||||
//#wenn ich ungerade und der letzte Durchgang ist dann nur mehr die eine Nummer nach vorne
|
||||
//if ((strlen($kartennummer)%2 != 0) && ($i+2 > strlen($kartennummer))) {
|
||||
// $tmp_kn_str .= substr($kartennummer,strlen($kartennummer)-($i+1),1);
|
||||
//#sonst normal immer 2 stellen nach vorne ruecken
|
||||
//} else {
|
||||
// $tmp_kn_str .= substr($kartennummer,strlen($kartennummer)-($i+2),2);
|
||||
//}
|
||||
}
|
||||
$kartennummer = $tmp_kn_str;
|
||||
|
||||
$kartennummer=hexdec( $kartennummer);
|
||||
}
|
||||
|
||||
|
||||
@@ -41,16 +41,16 @@ class LehreListHelper
|
||||
protected $lv;
|
||||
protected $lehreinheit;
|
||||
protected $stg;
|
||||
|
||||
|
||||
protected $arr_lehrende;
|
||||
protected $studentuids;
|
||||
protected $data;
|
||||
|
||||
|
||||
protected $gruppen_string;
|
||||
protected $lehrende_string;
|
||||
protected $raum_string;
|
||||
|
||||
public function __construct(basis_db $db, $studiensemester, $lvid,
|
||||
public function __construct(basis_db $db, $studiensemester, $lvid,
|
||||
lehrveranstaltung $lv, studiengang $stg, $lehreinheit='')
|
||||
{
|
||||
$this->db = $db;
|
||||
@@ -63,39 +63,39 @@ class LehreListHelper
|
||||
$this->arr_lehrende = array();
|
||||
$this->studentuids = array();
|
||||
$this->data = array();
|
||||
|
||||
|
||||
$this->gruppen_string = '';
|
||||
$this->lehrende_string = '';
|
||||
$this->raum_string = '';
|
||||
|
||||
|
||||
$this->loadMemberGroups();
|
||||
$this->loadPlannedRooms();
|
||||
$this->initData();
|
||||
$this->loadLehrende();
|
||||
$this->loadStudierende();
|
||||
}
|
||||
|
||||
public function getData()
|
||||
|
||||
public function getData()
|
||||
{
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
public function getStudentUids()
|
||||
|
||||
public function getStudentUids()
|
||||
{
|
||||
return $this->studentuids;
|
||||
}
|
||||
|
||||
public function getArr_Lehrende()
|
||||
|
||||
public function getArr_Lehrende()
|
||||
{
|
||||
return $this->arr_lehrende;
|
||||
}
|
||||
|
||||
|
||||
public function getLehrende_String()
|
||||
{
|
||||
return $this->lehrende_string;
|
||||
}
|
||||
|
||||
protected function loadMemberGroups()
|
||||
|
||||
protected function loadMemberGroups()
|
||||
{
|
||||
// Teilnehmende Gruppen laden
|
||||
$qry = "SELECT DISTINCT ON(kuerzel, semester, verband, gruppe, gruppe_kurzbz)
|
||||
@@ -124,7 +124,7 @@ class LehreListHelper
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected function loadPlannedRooms()
|
||||
{
|
||||
// Verplante Räume laden
|
||||
@@ -153,7 +153,7 @@ class LehreListHelper
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected function initData()
|
||||
{
|
||||
$studiengang_bezeichnung=$this->stg->bezeichnung;
|
||||
@@ -175,8 +175,8 @@ class LehreListHelper
|
||||
'raum'=>$this->raum_string,
|
||||
);
|
||||
}
|
||||
|
||||
protected function loadLehrende()
|
||||
|
||||
protected function loadLehrende()
|
||||
{
|
||||
//Lehrende der LV laden und in ein Array schreiben
|
||||
$lehrende = new lehreinheitmitarbeiter();
|
||||
@@ -187,24 +187,25 @@ class LehreListHelper
|
||||
foreach($lehrende->result AS $row)
|
||||
{
|
||||
$this->data[]=array('lehrende'=>array('uid'=>$row->uid,'name'=>$row->vorname.' '.$row->nachname));
|
||||
$this->arr_lehrende[]=mb_strtoupper($row->uid);
|
||||
$this->lehrende_string .= (strlen($this->lehrende_string) > 0)
|
||||
? ', ' . $row->vorname . ' ' . $row->nachname
|
||||
$this->arr_lehrende[]=mb_strtoupper($row->uid);
|
||||
$this->lehrende_string .= (strlen($this->lehrende_string) > 0)
|
||||
? ', ' . $row->vorname . ' ' . $row->nachname
|
||||
: $row->vorname . ' ' . $row->nachname;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected function loadStudierende()
|
||||
|
||||
protected function loadStudierende()
|
||||
{
|
||||
//Studierende der LV laden und in ein Array schreiben
|
||||
|
||||
$qry = 'SELECT
|
||||
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, public.tbl_student.student_uid,
|
||||
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, public.tbl_student.student_uid,
|
||||
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
|
||||
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
|
||||
tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student,
|
||||
tbl_note.lkt_ueberschreibbar, tbl_note.anmerkung, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang, tbl_mobilitaet.mobilitaetstyp_kurzbz
|
||||
tbl_note.lkt_ueberschreibbar, tbl_note.anmerkung, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang, tbl_mobilitaet.mobilitaetstyp_kurzbz,
|
||||
(CASE WHEN bis.tbl_mobilitaet.studiensemester_kurzbz = vw_student_lehrveranstaltung.studiensemester_kurzbz THEN 1 ELSE 0 END) as doubledegree
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
@@ -224,7 +225,7 @@ class LehreListHelper
|
||||
if($this->lehreinheit!='')
|
||||
$qry.=' AND vw_student_lehrveranstaltung.lehreinheit_id='.$this->db->db_add_param($this->lehreinheit, FHC_INTEGER);
|
||||
|
||||
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
|
||||
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis, doubledegree DESC';
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_obj->load($this->studiensemester);
|
||||
@@ -265,14 +266,12 @@ class LehreListHelper
|
||||
if($row->stg_kz_student==$a_o_kz) //Außerordentliche Studierende
|
||||
$zusatz.='(a.o.)';
|
||||
|
||||
if($row->mobilitaetstyp_kurzbz !='') //Double Degree Student
|
||||
$zusatz.='(d.d.)';
|
||||
if(($row->mobilitaetstyp_kurzbz != '') && ($row->doubledegree == 1)) //Double Degree Student
|
||||
$zusatz .= '(d.d.)';
|
||||
|
||||
//$zusatz.='test';
|
||||
|
||||
$this->studentuids[] = $row->student_uid;
|
||||
$this->data[]=array('student'=>array(
|
||||
'uid' => $row->student_uid,
|
||||
'uid' => $row->student_uid,
|
||||
'vorname'=>$row->vorname,
|
||||
'nachname'=>$row->nachname,
|
||||
'personenkennzeichen'=>trim($row->matrikelnr),
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
require_once(dirname(__FILE__).'/datum.class.php');
|
||||
require_once(dirname(__FILE__).'/udf.class.php');
|
||||
|
||||
class person extends basis_db
|
||||
{
|
||||
@@ -64,6 +65,7 @@ class person extends basis_db
|
||||
public $foto_sperre = false; // boolean
|
||||
public $matr_nr; //varchar(32)
|
||||
public $bpk; //varchar(255)
|
||||
public $udf_values; //json
|
||||
|
||||
/**
|
||||
* Konstruktor - Uebergibt die Connection und laedt optional eine Person
|
||||
@@ -84,6 +86,8 @@ class person extends basis_db
|
||||
**/
|
||||
public function load($personId)
|
||||
{
|
||||
$udf = new UDF();
|
||||
|
||||
//person_id auf gueltigkeit pruefen
|
||||
if (is_numeric($personId) && $personId != '')
|
||||
{
|
||||
@@ -91,8 +95,11 @@ class person extends basis_db
|
||||
gebdatum, gebort, gebzeit, foto, anmerkung, homepage, svnr, ersatzkennzeichen,
|
||||
familienstand, anzahlkinder, aktiv, insertamum, insertvon, updateamum, updatevon, ext_id,
|
||||
geschlecht, staatsbuergerschaft, geburtsnation, kurzbeschreibung, zugangscode, foto_sperre,
|
||||
matr_nr, bpk
|
||||
FROM public.tbl_person
|
||||
matr_nr, bpk";
|
||||
if ($hasUDF = $udf->personHasUDF())
|
||||
$qry .= ", udf_values ";
|
||||
|
||||
$qry .= "FROM public.tbl_person
|
||||
WHERE person_id = " . $this->db_add_param($personId, FHC_INTEGER);
|
||||
|
||||
if (!$this->db_query($qry))
|
||||
@@ -135,6 +142,10 @@ class person extends basis_db
|
||||
$this->foto_sperre = $this->db_parse_bool($row->foto_sperre);
|
||||
$this->matr_nr = $row->matr_nr;
|
||||
$this->bpk = $row->bpk;
|
||||
if ($hasUDF)
|
||||
{
|
||||
$this->udf_values = $row->udf_values;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -26,6 +26,7 @@ require_once(dirname(__FILE__).'/log.class.php');
|
||||
require_once(dirname(__FILE__).'/phrasen.class.php');
|
||||
require_once(dirname(__FILE__).'/globals.inc.php');
|
||||
require_once(dirname(__FILE__).'/sprache.class.php');
|
||||
require_once(dirname(__FILE__).'/udf.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$lang = new sprache();
|
||||
@@ -44,10 +45,12 @@ class prestudent extends person
|
||||
public $zgvort;
|
||||
public $zgvdatum;
|
||||
public $zgvnation;
|
||||
public $zgv_erfuellt;
|
||||
public $zgvmas_code;
|
||||
public $zgvmaort;
|
||||
public $zgvmadatum;
|
||||
public $zgvmanation;
|
||||
public $zgvmas_erfuellt;
|
||||
public $ausstellungsstaat;
|
||||
public $aufnahmeschluessel;
|
||||
public $facheinschlberuf;
|
||||
@@ -68,11 +71,13 @@ class prestudent extends person
|
||||
public $zgvdoktorort;
|
||||
public $zgvdoktordatum;
|
||||
public $zgvdoktornation;
|
||||
public $zgvdoktor_erfuellt;
|
||||
public $gsstudientyp_kurzbz='Intern';
|
||||
public $aufnahmegruppe_kurzbz;
|
||||
public $priorisierung = null;
|
||||
public $foerderrelevant = null;
|
||||
public $standort_code = null;
|
||||
public $udf_values = null;
|
||||
|
||||
public $status_kurzbz;
|
||||
public $studiensemester_kurzbz;
|
||||
@@ -139,10 +144,12 @@ class prestudent extends person
|
||||
$this->zgvort = $row->zgvort;
|
||||
$this->zgvdatum = $row->zgvdatum;
|
||||
$this->zgvnation = $row->zgvnation;
|
||||
$this->zgv_erfuellt = $row->zgv_erfuellt;
|
||||
$this->zgvmas_code = $row->zgvmas_code;
|
||||
$this->zgvmaort = $row->zgvmaort;
|
||||
$this->zgvmadatum = $row->zgvmadatum;
|
||||
$this->zgvmanation = $row->zgvmanation;
|
||||
$this->zgvmas_erfuellt = $row->zgvmas_erfuellt;
|
||||
$this->aufnahmeschluessel = $row->aufnahmeschluessel;
|
||||
$this->facheinschlberuf = $this->db_parse_bool($row->facheinschlberuf);
|
||||
$this->anmeldungreihungstest = $row->anmeldungreihungstest;
|
||||
@@ -163,6 +170,7 @@ class prestudent extends person
|
||||
$this->zgvdoktorort = $row->zgvdoktorort;
|
||||
$this->zgvdoktordatum = $row->zgvdoktordatum;
|
||||
$this->zgvdoktornation = $row->zgvdoktornation;
|
||||
$this->zgvdoktor_erfuellt = $row->zgvdoktor_erfuellt;
|
||||
$this->gsstudientyp_kurzbz = $row->gsstudientyp_kurzbz;
|
||||
$this->aufnahmegruppe_kurzbz = $row->aufnahmegruppe_kurzbz;
|
||||
$this->priorisierung = $row->priorisierung;
|
||||
@@ -224,6 +232,11 @@ class prestudent extends person
|
||||
$this->errormsg = 'ZGV Master Ort darf nicht länger als 64 Zeichen sein.';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->zgvdoktorort)>64)
|
||||
{
|
||||
$this->errormsg = 'ZGV Doktor Ort darf nicht länger als 64 Zeichen sein.';
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -249,12 +262,14 @@ class prestudent extends person
|
||||
if($this->new) //Wenn new true ist dann ein INSERT absetzen ansonsten ein UPDATE
|
||||
{
|
||||
$qry = 'BEGIN;INSERT INTO public.tbl_prestudent (aufmerksamdurch_kurzbz, person_id,
|
||||
studiengang_kz, berufstaetigkeit_code, ausbildungcode, zgv_code, zgvort, zgvdatum, zgvnation,
|
||||
zgvmas_code, zgvmaort, zgvmadatum, zgvmanation, aufnahmeschluessel, facheinschlberuf,
|
||||
studiengang_kz, berufstaetigkeit_code, ausbildungcode, zgv_code, zgvort, zgvdatum, zgvnation, zgv_erfuellt,
|
||||
zgvmas_code, zgvmaort, zgvmadatum, zgvmanation, zgvmas_erfuellt, zgvdoktor_code, zgvdoktorort, zgvdoktordatum,
|
||||
zgvdoktornation,aufnahmeschluessel, facheinschlberuf,
|
||||
reihungstest_id, anmeldungreihungstest, reihungstestangetreten, rt_gesamtpunkte,
|
||||
rt_punkte1, rt_punkte2, rt_punkte3, bismelden, insertamum, insertvon,
|
||||
updateamum, updatevon, anmerkung, dual, ausstellungsstaat, mentor,
|
||||
gsstudientyp_kurzbz, aufnahmegruppe_kurzbz, priorisierung, foerderrelevant, standort_code) VALUES('.
|
||||
gsstudientyp_kurzbz, aufnahmegruppe_kurzbz, priorisierung, zgvdoktor_erfuellt, foerderrelevant, standort_code) VALUES('.
|
||||
|
||||
$this->db_add_param($this->aufmerksamdurch_kurzbz).",".
|
||||
$this->db_add_param($this->person_id).",".
|
||||
$this->db_add_param($this->studiengang_kz).",".
|
||||
@@ -264,10 +279,16 @@ class prestudent extends person
|
||||
$this->db_add_param($this->zgvort).",".
|
||||
$this->db_add_param($this->zgvdatum).",".
|
||||
$this->db_add_param($this->zgvnation).",".
|
||||
$this->db_add_param($this->zgv_erfuellt).",".
|
||||
$this->db_add_param($this->zgvmas_code).",".
|
||||
$this->db_add_param($this->zgvmaort).",".
|
||||
$this->db_add_param($this->zgvmadatum).",".
|
||||
$this->db_add_param($this->zgvmanation).",".
|
||||
$this->db_add_param($this->zgvmas_erfuellt).",".
|
||||
$this->db_add_param($this->zgvdoktor_code).",".
|
||||
$this->db_add_param($this->zgvdoktorort).",".
|
||||
$this->db_add_param($this->zgvdoktordatum).",".
|
||||
$this->db_add_param($this->zgvdoktornation).",".
|
||||
$this->db_add_param($this->aufnahmeschluessel).",".
|
||||
$this->db_add_param($this->facheinschlberuf, FHC_BOOLEAN).",".
|
||||
$this->db_add_param($this->reihungstest_id).",".
|
||||
@@ -289,6 +310,7 @@ class prestudent extends person
|
||||
$this->db_add_param($this->gsstudientyp_kurzbz).",".
|
||||
$this->db_add_param($this->aufnahmegruppe_kurzbz).",".
|
||||
$this->db_add_param($this->priorisierung).",".
|
||||
$this->db_add_param($this->zgvdoktor_erfuellt).",".
|
||||
$this->db_add_param($this->foerderrelevant, FHC_BOOLEAN).",".
|
||||
$this->db_add_param($this->standort_code).");";
|
||||
}
|
||||
@@ -304,10 +326,16 @@ class prestudent extends person
|
||||
' zgvort='.$this->db_add_param($this->zgvort).",".
|
||||
' zgvdatum='.$this->db_add_param($this->zgvdatum).",".
|
||||
' zgvnation='.$this->db_add_param($this->zgvnation).",".
|
||||
' zgv_erfuellt='.$this->db_add_param($this->zgv_erfuellt).",".
|
||||
' zgvmas_code='.$this->db_add_param($this->zgvmas_code).",".
|
||||
' zgvmaort='.$this->db_add_param($this->zgvmaort).",".
|
||||
' zgvmadatum='.$this->db_add_param($this->zgvmadatum).",".
|
||||
' zgvmanation='.$this->db_add_param($this->zgvmanation).",".
|
||||
' zgvmas_erfuellt='.$this->db_add_param($this->zgvmas_erfuellt).",".
|
||||
' zgvdoktor_code='.$this->db_add_param($this->zgvdoktor_code).",".
|
||||
' zgvdoktorort='.$this->db_add_param($this->zgvdoktorort).",".
|
||||
' zgvdoktordatum='.$this->db_add_param($this->zgvdoktordatum).",".
|
||||
' zgvdoktornation='.$this->db_add_param($this->zgvdoktornation).",".
|
||||
' aufnahmeschluessel='.$this->db_add_param($this->aufnahmeschluessel).",".
|
||||
' facheinschlberuf='.$this->db_add_param($this->facheinschlberuf, FHC_BOOLEAN).",".
|
||||
' reihungstest_id='.$this->db_add_param($this->reihungstest_id).",".
|
||||
@@ -327,6 +355,7 @@ class prestudent extends person
|
||||
' ausstellungsstaat='.$this->db_add_param($this->ausstellungsstaat).",".
|
||||
' aufnahmegruppe_kurzbz='.$this->db_add_param($this->aufnahmegruppe_kurzbz).",".
|
||||
' priorisierung='.$this->db_add_param($this->priorisierung).",".
|
||||
' zgvdoktor_erfuellt='.$this->db_add_param($this->zgvdoktor_erfuellt).', '.
|
||||
' foerderrelevant='.$this->db_add_param($this->foerderrelevant, FHC_BOOLEAN).",".
|
||||
' standort_code='.$this->db_add_param($this->standort_code)." ".
|
||||
" WHERE prestudent_id=".$this->db_add_param($this->prestudent_id).";";
|
||||
@@ -804,10 +833,12 @@ class prestudent extends person
|
||||
case "zgv":
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->load($studiengang_kz);
|
||||
if($stg_obj->typ=='m')
|
||||
$qry.=" AND a.rolle='Interessent' AND a.zgvmas_code is not null";
|
||||
if($stg_obj->typ=='m')
|
||||
$qry.=" AND a.rolle='Interessent' AND a.zgvmas_code is not null AND a.zgvmas_erfuellt = 't'";
|
||||
elseif($stg_obj->typ=='p')
|
||||
$qry.=" AND a.rolle='Interessent' AND a.zgvdoktor_code is not null AND a.zgvdoktor_erfuellt = 't'";
|
||||
else
|
||||
$qry.=" AND a.rolle='Interessent' AND a.zgv_code is not null";
|
||||
$qry.=" AND a.rolle='Interessent' AND a.zgv_code is not null AND a.zgv_erfuellt = 't'";
|
||||
break;
|
||||
case "reihungstestangemeldet":
|
||||
$qry.="
|
||||
@@ -904,10 +935,17 @@ class prestudent extends person
|
||||
$ps->zgvort = $row->zgvort;
|
||||
$ps->zgvdatum = $row->zgvdatum;
|
||||
$ps->zgvnation = $row->zgvnation;
|
||||
$ps->zgv_erfuellt = $row->zgv_erfuellt;
|
||||
$ps->zgvmas_code = $row->zgvmas_code;
|
||||
$ps->zgvmaort = $row->zgvmaort;
|
||||
$ps->zgvmadatum = $row->zgvmadatum;
|
||||
$ps->zgvmanation = $row->zgvmanation;
|
||||
$ps->zgvmas_erfuellt = $row->zgvmas_erfuellt;
|
||||
$ps->zgvdoktor_code = $row->zgvdoktor_code;
|
||||
$ps->zgvdoktorort = $row->zgvdoktorort;
|
||||
$ps->zgvdoktordatum = $row->zgvdoktordatum;
|
||||
$ps->zgvdoktornation = $row->zgvdoktornation;
|
||||
$ps->zgvdoktor_erfuellt = $row->zgvdoktor_erfuellt;
|
||||
$ps->ausstellungsstaat = $row->ausstellungsstaat;
|
||||
$ps->aufnahmeschluessel = $row->aufnahmeschluessel;
|
||||
$ps->facheinschlberuf = $this->db_parse_bool($row->facheinschlberuf);
|
||||
@@ -1413,6 +1451,9 @@ class prestudent extends person
|
||||
person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
|
||||
ORDER BY prestudent_id";
|
||||
|
||||
$udf = new UDF();
|
||||
$hasUDF = $udf->prestudentHasUDF();
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
@@ -1428,10 +1469,12 @@ class prestudent extends person
|
||||
$obj->zgvort = $row->zgvort;
|
||||
$obj->zgvdatum = $row->zgvdatum;
|
||||
$obj->zgvnation = $row->zgvnation;
|
||||
$obj->zgv_erfuellt = $row->zgv_erfuellt;
|
||||
$obj->zgvmas_code = $row->zgvmas_code;
|
||||
$obj->zgvmaort = $row->zgvmaort;
|
||||
$obj->zgvmadatum = $row->zgvmadatum;
|
||||
$obj->zgvmanation = $row->zgvmanation;
|
||||
$obj->zgvmas_erfuellt = $row->zgvmas_erfuellt;
|
||||
$obj->aufnahmeschluessel = $row->aufnahmeschluessel;
|
||||
$obj->facheinschlberuf = $this->db_parse_bool($row->facheinschlberuf);
|
||||
$obj->anmeldungreihungstest = $row->anmeldungreihungstest;
|
||||
@@ -1455,6 +1498,13 @@ class prestudent extends person
|
||||
$obj->gsstudientyp_kurzbz = $row->gsstudientyp_kurzbz;
|
||||
$obj->aufnahmegruppe_kurzbz = $row->aufnahmegruppe_kurzbz;
|
||||
$obj->priorisierung = $row->priorisierung;
|
||||
$obj->zgvdoktor_erfuellt = $row->zgvdoktor_erfuellt;
|
||||
|
||||
if ($hasUDF)
|
||||
{
|
||||
$obj->udf_values = $row->udf_values;
|
||||
}
|
||||
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
@@ -1478,7 +1528,7 @@ class prestudent extends person
|
||||
(
|
||||
'bachelor' => array(),
|
||||
'master' => array(),
|
||||
//'doktor' => array(),
|
||||
'doktor' => array(),
|
||||
);
|
||||
$attribute = array
|
||||
(
|
||||
@@ -2075,11 +2125,11 @@ class prestudent extends person
|
||||
$log->sql = $qry;
|
||||
$log->sqlundo = 'INSERT INTO public.tbl_prestudent(
|
||||
prestudent_id, aufmerksamdurch_kurzbz, studiengang_kz, berufstaetigkeit_code, ausbildungcode,
|
||||
zgv_code, zgvort, zgvdatum, zgvnation, zgvmas_code, zgvmaort, zgvmadatum, zgvmanation,
|
||||
zgv_code, zgvort, zgvdatum, zgvnation,zgv_erfuellt, zgvmas_code, zgvmaort, zgvmadatum, zgvmanation,zgvmas_erfuellt,
|
||||
aufnahmeschluessel, facheinschlberuf, anmeldungreihungstest, reihungstestangetreten, reihungstest_id,
|
||||
punkte, rt_punkte1, rt_punkte2, rt_punkte3, bismelden, person_id, anmerkung, mentor, ext_id_prestudent,
|
||||
dual, ausstellungsstaat, zgvdoktor_code, zgvdoktorort, zgvdoktordatum, zgvdoktornation,
|
||||
gsstudientyp_kurzbz, aufnahmegruppe_kurzbz, priorisierung) VALUES('.
|
||||
gsstudientyp_kurzbz, aufnahmegruppe_kurzbz, priorisierung,zgvdoktor_erfuellt) VALUES('.
|
||||
$this->db_add_param($this->prestudent_id).','.
|
||||
$this->db_add_param($this->aufmerksamdurch_kurzbz).','.
|
||||
$this->db_add_param($this->studiengang_kz).','.
|
||||
@@ -2089,10 +2139,12 @@ class prestudent extends person
|
||||
$this->db_add_param($this->zgvort).','.
|
||||
$this->db_add_param($this->zgvdatum).','.
|
||||
$this->db_add_param($this->zgvnation).','.
|
||||
$this->db_add_param($this->zgv_erfuellt).','.
|
||||
$this->db_add_param($this->zgvmas_code).','.
|
||||
$this->db_add_param($this->zgvmaort).','.
|
||||
$this->db_add_param($this->zgvmadatum).','.
|
||||
$this->db_add_param($this->zgvmanation).','.
|
||||
$this->db_add_param($this->zgvmas_erfuellt).','.
|
||||
$this->db_add_param($this->aufnahmeschluessel).','.
|
||||
$this->db_add_param($this->facheinschlberuf, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->anmeldungreihungstest).','.
|
||||
@@ -2115,7 +2167,8 @@ class prestudent extends person
|
||||
$this->db_add_param($this->zgvdoktornation).','.
|
||||
$this->db_add_param($this->gsstudientyp_kurzbz).','.
|
||||
$this->db_add_param($this->aufnahmegruppe_kurzbz).','.
|
||||
$this->db_add_param($this->priorisierung).');';
|
||||
$this->db_add_param($this->priorisierung).','.
|
||||
$this->db_add_param($this->zgvdoktor_erfuellt).');';
|
||||
|
||||
if($log->save(true))
|
||||
{
|
||||
@@ -2226,9 +2279,9 @@ class prestudent extends person
|
||||
WHERE laststatus NOT IN ('Abbrecher', 'Abgewiesener', 'Absolvent')
|
||||
AND priorisierung <= ".$this->db_add_param($priorisierungAbsolut, FHC_INTEGER);
|
||||
|
||||
if ($result = $this->db_query($qry))
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if ($row = $this->db_fetch_object($result))
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
return $row->prio_relativ;
|
||||
}
|
||||
@@ -2243,8 +2296,9 @@ class prestudent extends person
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
/**
|
||||
* Prueft, ob eine Person einen aktuellen PreStudentstatus-Eintrag besitzt, der die ZGV Master ersetzt
|
||||
* @param int $person_id ID der zu überprüfenden Person.
|
||||
|
||||
+22
-19
@@ -361,13 +361,13 @@ class pruefling extends basis_db
|
||||
|
||||
$qry = "
|
||||
SELECT DISTINCT ON (vw_auswertung_ablauf.gebiet_id) gebiet_id,
|
||||
vw_auswertung_ablauf.*,
|
||||
vw_auswertung_ablauf.*,
|
||||
tbl_studiengang.typ
|
||||
FROM
|
||||
FROM
|
||||
testtool.vw_auswertung_ablauf
|
||||
JOIN
|
||||
JOIN
|
||||
public.tbl_studiengang USING (studiengang_kz)
|
||||
WHERE
|
||||
WHERE
|
||||
reihungstest_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER);
|
||||
|
||||
// Ggf. die Basis-Fragengebiete ermitteln (ohne Quereinsteigergebiete)
|
||||
@@ -387,8 +387,8 @@ class pruefling extends basis_db
|
||||
if (!empty($basis_gebiet_id_toString))
|
||||
{
|
||||
$qry .= "
|
||||
AND
|
||||
gebiet_id IN (". $basis_gebiet_id_toString. ")
|
||||
AND
|
||||
gebiet_id IN (". $basis_gebiet_id_toString. ")
|
||||
";
|
||||
}
|
||||
}
|
||||
@@ -400,13 +400,16 @@ class pruefling extends basis_db
|
||||
{
|
||||
$excluded_gebiete = unserialize(FAS_REIHUNGSTEST_EXCLUDE_GEBIETE);
|
||||
$exclude_gebiet_id_arr = $excluded_gebiete;
|
||||
$exclude_gebiet_id_toString = implode(', ', $exclude_gebiet_id_arr);
|
||||
$qry .= "
|
||||
AND
|
||||
gebiet_id NOT IN (". $exclude_gebiet_id_toString. ")
|
||||
AND
|
||||
typ = 'b'
|
||||
";
|
||||
if (is_array($exclude_gebiet_id_arr) && count($exclude_gebiet_id_arr) > 0)
|
||||
{
|
||||
$exclude_gebiet_id_toString = implode(', ', $exclude_gebiet_id_arr);
|
||||
$qry .= "
|
||||
AND
|
||||
gebiet_id NOT IN (". $exclude_gebiet_id_toString. ")
|
||||
AND
|
||||
typ = 'b'
|
||||
";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -421,21 +424,21 @@ class pruefling extends basis_db
|
||||
prestudent_id
|
||||
FROM
|
||||
public.tbl_rt_person
|
||||
JOIN
|
||||
JOIN
|
||||
public.tbl_prestudent USING(person_id)
|
||||
JOIN
|
||||
public.tbl_prestudentstatus USING (prestudent_id, studienplan_id)
|
||||
JOIN
|
||||
JOIN
|
||||
tbl_reihungstest ON (
|
||||
tbl_rt_person.rt_id = tbl_reihungstest.reihungstest_id
|
||||
tbl_rt_person.rt_id = tbl_reihungstest.reihungstest_id
|
||||
)
|
||||
WHERE
|
||||
tbl_rt_person.person_id = ".$this->db_add_param($person_id, FHC_INTEGER)."
|
||||
AND
|
||||
AND
|
||||
tbl_rt_person.rt_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER)."
|
||||
AND
|
||||
AND
|
||||
tbl_prestudentstatus.status_kurzbz='Interessent'
|
||||
AND
|
||||
AND
|
||||
tbl_prestudentstatus.studiensemester_kurzbz = tbl_reihungstest.studiensemester_kurzbz
|
||||
ORDER BY tbl_reihungstest.datum DESC, tbl_prestudent.priorisierung ASC LIMIT 1
|
||||
)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='Studiensemester ist ungueltig';
|
||||
$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='Studiensemester ist ungueltig';
|
||||
$this->phrasen['anwesenheitsliste/anwesenheitslisten']='Anwesenheitslisten';
|
||||
$this->phrasen['anwesenheitsliste/covidstatuslisten']='Nachweislisten';
|
||||
$this->phrasen['anwesenheitsliste/notenlisten']='Notenlisten';
|
||||
@@ -19,4 +19,5 @@ $this->phrasen['anwesenheitsliste/keineStundenvorhanden']='Derzeit sind keine St
|
||||
$this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='Es wurden keine Einträge gefunden';
|
||||
$this->phrasen['anwesenheitsliste/anleitungImportFunktion']='Kopieren Sie diese Zellen in die Zwischenablage, um damit die Import-Spalte des Gesamtnotenformulars zu befüllen';
|
||||
$this->phrasen['anwesenheitsliste/angerechnet']='Angerechnet';
|
||||
$this->phrasen['anwesenheitsliste/internangerechnet']='Intern angerechnet';
|
||||
?>
|
||||
|
||||
+81
-86
@@ -1,86 +1,81 @@
|
||||
<?php
|
||||
$this->phrasen['testtool/titel']='';
|
||||
$this->phrasen['testtool/login']='Login';
|
||||
$this->phrasen['testtool/tag']='Tag';
|
||||
$this->phrasen['testtool/monat']='Monat';
|
||||
$this->phrasen['testtool/jahr']='Jahr';
|
||||
$this->phrasen['testtool/willkommenstextTitel']='Herzlich Willkommen zum Reihungstest';
|
||||
$this->phrasen['testtool/willkommenstext']='Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.<br /><br />
|
||||
Wir wünschen Ihnen einen erfolgreichen Start ins Studium.';
|
||||
$this->phrasen['testtool/nameAuswaehlen']='Name auswählen...';
|
||||
$this->phrasen['testtool/reihungstest']= 'Reihungstest';
|
||||
$this->phrasen['testtool/regulaererEinstieg']='Regulärer Einstieg';
|
||||
$this->phrasen['testtool/quereinstieg']='Quereinstieg';
|
||||
$this->phrasen['testtool/quereinstiegsgebiete']='Quereinstiegsgebiete';
|
||||
$this->phrasen['testtool/quereinsteiger']='Quereinsteiger';
|
||||
$this->phrasen['testtool/basic']='Basic';
|
||||
$this->phrasen['testtool/basisgebiete']='Basisgebiete';
|
||||
$this->phrasen['testtool/semester']='Semester';
|
||||
$this->phrasen['testtool/reihungstestNichtFreigeschalten']='Der zuteilte Reihungstest ist noch nicht freigeschaltet';
|
||||
$this->phrasen['testtool/reihungstestKannNichtGeladenWerden']='Der Reihungstest dem Sie zugeteilt sind, kann nicht geladen werden';
|
||||
$this->phrasen['testtool/geburtsdatumStimmtNichtUeberein']='Ihr Geburtsdatum stimmt nicht mit unseren Daten überein. Bitte wenden Sie sich an die Aufsichtsperson';
|
||||
$this->phrasen['testtool/home']='Home';
|
||||
$this->phrasen['testtool/teilnehmerIn']='TeilnehmerIn';
|
||||
$this->phrasen['testtool/klickenSieAufEinTeilgebiet']='Zum Starten klicken Sie bitte links auf ein Teilgebiet.<br>Wir wünschen Ihnen viel Erfolg!';
|
||||
$this->phrasen['testtool/gebietStarten']='Gebiet starten';
|
||||
$this->phrasen['testtool/startseite']='Startseite';
|
||||
$this->phrasen['testtool/zurueckZurStartseite']='Zurück zur Startseite';
|
||||
$this->phrasen['testtool/begruessungstext']="Willkommen zum Reihungstest der Fachhochschule Technikum Wien!";
|
||||
$this->phrasen['testtool/anmeldedaten']= "Sie sind mit folgenden Daten angemeldet:";
|
||||
$this->phrasen['testtool/keineAntwort']='Keine Antwort';
|
||||
$this->phrasen['testtool/speichernUndWeiter']='Speichern und weiter';
|
||||
$this->phrasen['testtool/alleFragenBeantwortet']='GLÜCKWUNSCH! \n\nSie haben alle Fragen in der zur Verfügung stehenden Zeit beantwortet. \nNutzen Sie die verbleibende Zeit, um Ihre Antworten zu kontrollieren oder fahren Sie mit dem nächsten Teilgebiet fort';
|
||||
$this->phrasen['testtool/zeitAbgelaufen']='Die Maximalzeit für dieses Gebiet ist abgelaufen, oder alle Fragen wurden beantwortet';
|
||||
$this->phrasen['testtool/spracheDerTestfragen']='Gewünschte Sprache der Testfragen';
|
||||
$this->phrasen['testtool/einleitung']='Einleitung';
|
||||
$this->phrasen['testtool/blaettern']='Blättern';
|
||||
$this->phrasen['testtool/demo']='Demobeispiel ansehen';
|
||||
$this->phrasen['testtool/okKlickenUmZuStarten']='Klicken Sie OK um dieses Gebiet zu starten. \nSie haben für die Bearbeitung ein Zeitlimit von';
|
||||
$this->phrasen['testtool/bitteZuerstAnmelden']='Bitte zuerst anmelden!';
|
||||
$this->phrasen['testtool/fehlerBeimGenerierenDesFragenpools']='Fehler beim generieren des Fragenpools';
|
||||
$this->phrasen['testtool/esWurdeKeineFrageGefunden']='Es wurde keine Frage gefunden';
|
||||
$this->phrasen['testtool/fehler']='Fehler';
|
||||
$this->phrasen['testtool/fehlerBeimStartvorgang']='Fehler beim Startvorgang';
|
||||
$this->phrasen['testtool/beiDiesemGebietMuessenSieJedeFrageBeantworten']='Bei diesem Gebiet müssen Sie jede Frage beantworten';
|
||||
$this->phrasen['testtool/bearbeitungszeit']='Bearbeitungszeit';
|
||||
$this->phrasen['testtool/dieZeitIstAbgelaufen']='Die Zeit ist abgelaufen!<br /> Bitte aktivieren Sie Javascript in Ihrem Browser!';
|
||||
$this->phrasen['testtool/dieseFrageIstNichtFuerSieBestimmt']='Diese Frage ist nicht für Sie bestimmt';
|
||||
$this->phrasen['testtool/fehlerBeimSpeichernDerErstansicht']='Fehler beim Speichern der Erstansicht';
|
||||
$this->phrasen['testtool/startDrueckenUmZuBeginnen']='Um dieses Teilgebiet zu starten, drücken Sie bitte links oben auf <b>Gebiet starten</b>.';
|
||||
$this->phrasen['testtool/keinPrueflingseintragVorhanden']='Kein Prüflingseintrag vorhanden';
|
||||
$this->phrasen['testtool/fuerFolgendeStgAngemeldet']='Für folgende Studiengänge haben Sie sich angemeldet:';
|
||||
$this->phrasen['testtool/invalideGebiete']='Ein oder mehrere Fragengebiet/e inkorrekt!<br>Bitte melden Sie dies der Betreuungsperson.';
|
||||
$this->phrasen['testtool/confirmationText']='Ich bestätige, den Online-Reihungstest persönlich, selbständig, ohne Hilfe einer zusätzlichen Person und ohne Hilfsmittel zu absolvieren.';
|
||||
$this->phrasen['testtool/loginNoetig']='Bitte beachten Sie, dass der Reihungstest erst <b>unmittelbar</b> vor Testbeginn von uns aktiviert wird.<br>
|
||||
Please note, that the test will be enabled straight before the beginning';
|
||||
$this->phrasen['testtool/start']='Reihungstest jetzt starten';
|
||||
$this->phrasen['testtool/einfuehrungsText']='
|
||||
<div class="row" style="margin-bottom: 20px; margin-top: 3%%;">
|
||||
<div class="col-xs-6 text-center" style="border-right: 1px solid lightgrey;">
|
||||
<h1 style="white-space: normal">Herzlich Willkommen zum Reihungstest</h1>
|
||||
<a href="'.APP_ROOT.'dms.php?id=142964" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=142976" alt="Einfuehrungsvideo" style="border: 1px solid lightgray; border-radius: 10px; width:350px;"></a>
|
||||
<!--<video controls poster="'.APP_ROOT.'cms/dms.php?id=2786&version=2" style="border: 1px solid lightgray; border-radius: 10px; width:350px; max-width:100%%;">
|
||||
<source src="'.APP_ROOT.'cms/dms.php?id=142964" type="video/mp4">
|
||||
<p>Ihr Browser unterstützt dieses Videoelement leider nicht.</p>
|
||||
</video>-->
|
||||
<br><br>
|
||||
<a href="#" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=46&version=1"> Leitfaden zum Ablauf des Reihungstests (folgt in Kürze)</a>
|
||||
<br><br>
|
||||
Unter dem folgenden Link können Sie die korrekte Darstellung des Reihungstests testen:<br><br>
|
||||
<a href="../public/testtool_test/testseite.php" target="_blank" class="btn btn-default">Zum Darstellungstest</a>
|
||||
</div>
|
||||
<div class="col-xs-6 text-center">
|
||||
<h1 style="white-space: normal">Welcome to the placement test</h1>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=142964" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=142977" alt="Einfuehrungsvideo" style="border: 1px solid lightgray; border-radius: 10px; width:350px;"></a>
|
||||
<!--<video width="320" controls poster="'.APP_ROOT.'cms/dms.php?id=2786&version=2" style="border: 1px solid lightgray; border-radius: 10px;">
|
||||
<source src="'.APP_ROOT.'cms/dms.php?id=142964" type="video/mp4">
|
||||
<p>Ihr Browser unterstützt dieses Videoelement leider nicht.</p>
|
||||
</video>-->
|
||||
<br><br>
|
||||
<a href="#" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=46&version=1"> Guideline for placement test (coming soon)</a>
|
||||
<br><br>
|
||||
Under the following link you can test the correct display of the placement test:<br><br>
|
||||
<a href="../public/testtool_test/testseite.php" target="_blank" class="btn btn-default">Display testpage</a>
|
||||
</div>
|
||||
</div>';
|
||||
?>
|
||||
<?php
|
||||
$this->phrasen['testtool/titel']='';
|
||||
$this->phrasen['testtool/login']='Login';
|
||||
$this->phrasen['testtool/tag']='Tag';
|
||||
$this->phrasen['testtool/monat']='Monat';
|
||||
$this->phrasen['testtool/jahr']='Jahr';
|
||||
$this->phrasen['testtool/willkommenstextTitel']='Herzlich Willkommen zum Reihungstest';
|
||||
$this->phrasen['testtool/willkommenstext']='Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.<br /><br />
|
||||
Wir wünschen Ihnen einen erfolgreichen Start ins Studium.';
|
||||
$this->phrasen['testtool/nameAuswaehlen']='Name auswählen...';
|
||||
$this->phrasen['testtool/reihungstest']= 'Reihungstest';
|
||||
$this->phrasen['testtool/regulaererEinstieg']='Regulärer Einstieg';
|
||||
$this->phrasen['testtool/quereinstieg']='Quereinstieg';
|
||||
$this->phrasen['testtool/quereinstiegsgebiete']='Quereinstiegsgebiete';
|
||||
$this->phrasen['testtool/quereinsteiger']='Quereinsteiger';
|
||||
$this->phrasen['testtool/basic']='Basic';
|
||||
$this->phrasen['testtool/basisgebiete']='Basisgebiete';
|
||||
$this->phrasen['testtool/semester']='Semester';
|
||||
$this->phrasen['testtool/reihungstestNichtFreigeschalten']='Der zuteilte Reihungstest ist noch nicht freigeschaltet';
|
||||
$this->phrasen['testtool/reihungstestKannNichtGeladenWerden']='Der Reihungstest dem Sie zugeteilt sind, kann nicht geladen werden';
|
||||
$this->phrasen['testtool/geburtsdatumStimmtNichtUeberein']='Ihr Geburtsdatum stimmt nicht mit unseren Daten überein. Bitte wenden Sie sich an die Aufsichtsperson';
|
||||
$this->phrasen['testtool/home']='Home';
|
||||
$this->phrasen['testtool/teilnehmerIn']='TeilnehmerIn';
|
||||
$this->phrasen['testtool/klickenSieAufEinTeilgebiet']='Zum Starten klicken Sie bitte links auf ein Teilgebiet.<br>Wir wünschen Ihnen viel Erfolg!';
|
||||
$this->phrasen['testtool/gebietStarten']='Gebiet starten';
|
||||
$this->phrasen['testtool/startseite']='Startseite';
|
||||
$this->phrasen['testtool/zurueckZurStartseite']='Zurück zur Startseite';
|
||||
$this->phrasen['testtool/begruessungstext']="Willkommen zum Reihungstest der Fachhochschule Technikum Wien!";
|
||||
$this->phrasen['testtool/anmeldedaten']= "Sie sind mit folgenden Daten angemeldet:";
|
||||
$this->phrasen['testtool/keineAntwort']='Keine Antwort';
|
||||
$this->phrasen['testtool/speichernUndWeiter']='Speichern und weiter';
|
||||
$this->phrasen['testtool/alleFragenBeantwortet']='GLÜCKWUNSCH! \n\nSie haben alle Fragen in der zur Verfügung stehenden Zeit beantwortet. \nNutzen Sie die verbleibende Zeit, um Ihre Antworten zu kontrollieren oder fahren Sie mit dem nächsten Teilgebiet fort';
|
||||
$this->phrasen['testtool/zeitAbgelaufen']='Die Maximalzeit für dieses Gebiet ist abgelaufen, oder alle Fragen wurden beantwortet';
|
||||
$this->phrasen['testtool/spracheDerTestfragen']='Gewünschte Sprache der Testfragen';
|
||||
$this->phrasen['testtool/einleitung']='Einleitung';
|
||||
$this->phrasen['testtool/blaettern']='Blättern';
|
||||
$this->phrasen['testtool/demo']='Demobeispiel ansehen';
|
||||
$this->phrasen['testtool/okKlickenUmZuStarten']='Klicken Sie OK um dieses Gebiet zu starten. \nSie haben für die Bearbeitung ein Zeitlimit von';
|
||||
$this->phrasen['testtool/bitteZuerstAnmelden']='Bitte zuerst anmelden!';
|
||||
$this->phrasen['testtool/fehlerBeimGenerierenDesFragenpools']='Fehler beim generieren des Fragenpools';
|
||||
$this->phrasen['testtool/esWurdeKeineFrageGefunden']='Es wurde keine Frage gefunden';
|
||||
$this->phrasen['testtool/fehler']='Fehler';
|
||||
$this->phrasen['testtool/fehlerBeimStartvorgang']='Fehler beim Startvorgang';
|
||||
$this->phrasen['testtool/beiDiesemGebietMuessenSieJedeFrageBeantworten']='Bei diesem Gebiet müssen Sie jede Frage beantworten';
|
||||
$this->phrasen['testtool/bearbeitungszeit']='Bearbeitungszeit';
|
||||
$this->phrasen['testtool/dieZeitIstAbgelaufen']='Die Zeit ist abgelaufen!<br /> Bitte aktivieren Sie Javascript in Ihrem Browser!';
|
||||
$this->phrasen['testtool/dieseFrageIstNichtFuerSieBestimmt']='Diese Frage ist nicht für Sie bestimmt';
|
||||
$this->phrasen['testtool/fehlerBeimSpeichernDerErstansicht']='Fehler beim Speichern der Erstansicht';
|
||||
$this->phrasen['testtool/startDrueckenUmZuBeginnen']='Um dieses Teilgebiet zu starten, drücken Sie bitte links oben auf <b>Gebiet starten</b>.';
|
||||
$this->phrasen['testtool/keinPrueflingseintragVorhanden']='Kein Prüflingseintrag vorhanden';
|
||||
$this->phrasen['testtool/fuerFolgendeStgAngemeldet']='Für folgende Studiengänge haben Sie sich angemeldet:';
|
||||
$this->phrasen['testtool/invalideGebiete']='Ein oder mehrere Fragengebiet/e inkorrekt!<br>Bitte melden Sie dies der Betreuungsperson.';
|
||||
$this->phrasen['testtool/confirmationText']='<b>Ich bestätige, den Online-Reihungstest persönlich, selbständig, ohne Hilfe einer zusätzlichen Person und ohne Hilfsmittel zu absolvieren.<br>
|
||||
I confirm that I will complete the online placement test personally, independently, without the help of an additional person and without any aids.</b>';
|
||||
$this->phrasen['testtool/loginNoetig']='Bitte beachten Sie, dass der Reihungstest erst <b>unmittelbar</b> vor Testbeginn von uns aktiviert wird.<br>
|
||||
Please note, that the test will be enabled straight before the beginning';
|
||||
$this->phrasen['testtool/start']='Reihungstest jetzt starten';
|
||||
$this->phrasen['testtool/einfuehrungsText']='
|
||||
<div class="row" style="margin-bottom: 20px; margin-top: 3%%;">
|
||||
<div class="col-xs-6 text-center" style="border-right: 1px solid lightgrey;">
|
||||
<h1 style="white-space: normal">Herzlich Willkommen zum Reihungstest</h1>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=142964" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=142976" alt="Einfuehrungsvideo" style="border: 1px solid lightgray; border-radius: 10px; width:350px;"></a>
|
||||
<br><br>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=143926" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=46&version=1"> <b>Bachelor</b>-Leitfaden zum Ablauf des Reihungstests</a><br>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=143928" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=46&version=1"> <b>Master</b>-Leitfaden zum Ablauf des Reihungstests</a>
|
||||
<br><br>
|
||||
Unter dem folgenden Link können Sie die korrekte Darstellung des Reihungstests testen:<br><br>
|
||||
<a href="../public/testtool_test/testseite.php" target="_blank" class="btn btn-default">Zum Darstellungstest</a>
|
||||
</div>
|
||||
<div class="col-xs-6 text-center">
|
||||
<h1 style="white-space: normal">Welcome to the placement test</h1>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=145596" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=142977" alt="Einfuehrungsvideo" style="border: 1px solid lightgray; border-radius: 10px; width:350px;"></a>
|
||||
<br><br>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=143927" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=46&version=1"> <b>Bachelor</b>-Guideline for placement test</a><br>
|
||||
<a href="'.APP_ROOT.'cms/dms.php?id=143930" target="_blank"><img src="'.APP_ROOT.'cms/dms.php?id=46&version=1"> <b>Master</b>-Guideline for placement test</a>
|
||||
<br><br>
|
||||
Under the following link you can test the correct display of the placement test:<br><br>
|
||||
<a href="../public/testtool_test/testseite.php" target="_blank" class="btn btn-default">Display testpage</a>
|
||||
</div>
|
||||
</div>';
|
||||
?>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='No valid semester';
|
||||
$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='No valid semester';
|
||||
$this->phrasen['anwesenheitsliste/anwesenheitslisten']='Attendance lists';
|
||||
$this->phrasen['anwesenheitsliste/covidstatuslisten']='verification lists';
|
||||
$this->phrasen['anwesenheitsliste/notenlisten']='Grade lists';
|
||||
@@ -19,4 +19,5 @@ $this->phrasen['anwesenheitsliste/keineStundenvorhanden']='Currently no lessons
|
||||
$this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='No entries have been found';
|
||||
$this->phrasen['anwesenheitsliste/anleitungImportFunktion']='Copy these cells to the clipboard to fill the subject grade import of the final grade form';
|
||||
$this->phrasen['anwesenheitsliste/angerechnet']='Accredited';
|
||||
$this->phrasen['anwesenheitsliste/internangerechnet']='Internally accredited';
|
||||
?>
|
||||
|
||||
@@ -378,6 +378,11 @@ var InfocenterDetails = {
|
||||
if (FHC_AjaxClient.hasData(data))
|
||||
{
|
||||
var engdate = $.datepicker.parseDate("yy-mm-dd", FHC_AjaxClient.getData(data)[0]);
|
||||
|
||||
if (engdate.getDate() === 31)
|
||||
engdate.setDate(engdate.getDate() - 1);
|
||||
engdate.setMonth(engdate.getMonth() + 3);
|
||||
|
||||
var gerdate = $.datepicker.formatDate("dd.mm.yy", engdate);
|
||||
$("#postponedate").val(gerdate);
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ var InfocenterPersonDataset = {
|
||||
'<i class="fa fa-chevron-left"></i>' +
|
||||
'</button> ' +
|
||||
infocenter_studiensemester +
|
||||
' <button class="btn btn-default btn-sm incStudiensemester">' +
|
||||
' <button class="btn btn-default btn-xs incStudiensemester">' +
|
||||
'<i class="fa fa-chevron-right"></i>' +
|
||||
'</button>';
|
||||
|
||||
|
||||
+1
-10
@@ -76,15 +76,6 @@ function draw_rdf($row)
|
||||
global $rdf_url;
|
||||
$db = new basis_db();
|
||||
|
||||
$typ='';
|
||||
switch ($row->typ)
|
||||
{
|
||||
case 'h': $typ='Hauptwohnsitz'; break;
|
||||
case 'n': $typ='Nebenwohnsitz'; break;
|
||||
case 'f': $typ='Firma'; break;
|
||||
case 'r': $typ='Rechnungsadresse'; break;
|
||||
}
|
||||
|
||||
$firma_name='';
|
||||
if($row->firma_id!='')
|
||||
{
|
||||
@@ -109,7 +100,7 @@ function draw_rdf($row)
|
||||
<ADRESSE:gemeinde><![CDATA['.$row->gemeinde.']]></ADRESSE:gemeinde>
|
||||
<ADRESSE:nation><![CDATA['.$row->nation.']]></ADRESSE:nation>
|
||||
<ADRESSE:typ><![CDATA['.$row->typ.']]></ADRESSE:typ>
|
||||
<ADRESSE:typ_name><![CDATA['.$typ.']]></ADRESSE:typ_name>
|
||||
<ADRESSE:typ_name><![CDATA['.$row->bezeichnung_mehrsprachig[DEFAULT_LANGUAGE].']]></ADRESSE:typ_name>
|
||||
<ADRESSE:heimatadresse><![CDATA['.($row->heimatadresse?'Ja':'Nein').']]></ADRESSE:heimatadresse>
|
||||
<ADRESSE:zustelladresse><![CDATA['.($row->zustelladresse?'Ja':'Nein').']]></ADRESSE:zustelladresse>
|
||||
<ADRESSE:co_name><![CDATA['. $row->co_name.']]></ADRESSE:co_name>
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
// header für no cache
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
// content type setzen
|
||||
header("Content-type: application/xhtml+xml");
|
||||
// xml
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
// DAO
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/adresse.class.php');
|
||||
|
||||
$adresse = new adresse();
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/adressentyp';
|
||||
echo '
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:ADRESSENTYP="'.$rdf_url.'/rdf#"
|
||||
>
|
||||
|
||||
<RDF:Seq about="'.$rdf_url.'/liste">
|
||||
';
|
||||
|
||||
if ($adresse->getAdressentyp())
|
||||
{
|
||||
foreach ($adresse->result as $row)
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description id="'.$row->adressentyp.'" about="'.$rdf_url.'/'.$row->adressentyp.'" >
|
||||
<ADRESSENTYP:adressentyp><![CDATA['.$row->adressentyp.']]></ADRESSENTYP:adressentyp>
|
||||
<ADRESSENTYP:bezeichnung><![CDATA['.$row->bezeichnung.']]></ADRESSENTYP:bezeichnung>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $adresse->errormsg;
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
@@ -73,7 +73,11 @@ else
|
||||
$lehrveranstaltung=new lehrveranstaltung();
|
||||
|
||||
if($student_uid!='')
|
||||
{
|
||||
$lehrveranstaltung->load_lva_student($student_uid);
|
||||
if ($stg_kz !== '')
|
||||
$lehrveranstaltung->load_lva($stg_kz);
|
||||
}
|
||||
elseif($lehrveranstaltung_kompatibel_id!='')
|
||||
{
|
||||
// Laedt die Lehrveranstaltung und alle die dazu kompatibel sind
|
||||
|
||||
@@ -68,11 +68,19 @@ if(isset($_GET['prestudent_id']) && is_numeric($_GET['prestudent_id']))
|
||||
<PRESTD:zgvdatum_iso><![CDATA[<?php echo $prestd->zgvdatum; ?>]]></PRESTD:zgvdatum_iso>
|
||||
<PRESTD:zgvdatum><![CDATA[<?php echo $datum->convertISODate($prestd->zgvdatum); ?>]]></PRESTD:zgvdatum>
|
||||
<PRESTD:zgvnation><![CDATA[<?php echo $prestd->zgvnation; ?>]]></PRESTD:zgvnation>
|
||||
<PRESTD:zgv_erfuellt><![CDATA[<?php echo $prestd->zgv_erfuellt; ?>]]></PRESTD:zgv_erfuellt>
|
||||
<PRESTD:zgvmas_code><![CDATA[<?php echo $prestd->zgvmas_code; ?>]]></PRESTD:zgvmas_code>
|
||||
<PRESTD:zgvmaort><![CDATA[<?php echo $prestd->zgvmaort; ?>]]></PRESTD:zgvmaort>
|
||||
<PRESTD:zgvmadatum_iso><![CDATA[<?php echo $prestd->zgvmadatum; ?>]]></PRESTD:zgvmadatum_iso>
|
||||
<PRESTD:zgvmadatum><![CDATA[<?php echo $datum->convertISODate($prestd->zgvmadatum); ?>]]></PRESTD:zgvmadatum>
|
||||
<PRESTD:zgvmanation><![CDATA[<?php echo $prestd->zgvmanation; ?>]]></PRESTD:zgvmanation>
|
||||
<PRESTD:zgvmas_erfuellt><![CDATA[<?php echo $prestd->zgvmas_erfuellt; ?>]]></PRESTD:zgvmas_erfuellt>
|
||||
<PRESTD:zgvdoktor_code><![CDATA[<?php echo $prestd->zgvdoktor_code; ?>]]></PRESTD:zgvdoktor_code>
|
||||
<PRESTD:zgvdoktorort><![CDATA[<?php echo $prestd->zgvdoktorort; ?>]]></PRESTD:zgvdoktorort>
|
||||
<PRESTD:zgvdoktordatum_iso><![CDATA[<?php echo $prestd->zgvdoktordatum; ?>]]></PRESTD:zgvdoktordatum_iso>
|
||||
<PRESTD:zgvdoktordatum><![CDATA[<?php echo $datum->convertISODate($prestd->zgvdoktordatum); ?>]]></PRESTD:zgvdoktordatum>
|
||||
<PRESTD:zgvdoktornation><![CDATA[<?php echo $prestd->zgvdoktornation; ?>]]></PRESTD:zgvdoktornation>
|
||||
<PRESTD:zgvdoktor_erfuellt><![CDATA[<?php echo $prestd->zgvdoktor_erfuellt; ?>]]></PRESTD:zgvdoktor_erfuellt>
|
||||
<PRESTD:aufnahmeschluessel><![CDATA[<?php echo $prestd->aufnahmeschluessel; ?>]]></PRESTD:aufnahmeschluessel>
|
||||
<PRESTD:facheinschlberuf><![CDATA[<?php echo ($prestd->facheinschlberuf?'true':'false'); ?>]]></PRESTD:facheinschlberuf>
|
||||
<PRESTD:reihungstest_id><![CDATA[<?php echo $prestd->reihungstest_id; ?>]]></PRESTD:reihungstest_id>
|
||||
|
||||
+18
-8
@@ -127,14 +127,16 @@ function checkfilter($row, $filter2, $buchungstyp = null)
|
||||
elseif($filter2=='zgvohnedatum')
|
||||
{
|
||||
//Alle Personen die den ZGV Typ eingetragen haben aber noch kein Datum
|
||||
$qry = "SELECT zgv_code, zgvdatum, zgvmas_code, zgvmadatum
|
||||
$qry = "SELECT zgv_code, zgvdatum, zgvmas_code, zgvmadatum,zgvdoktor_code, zgvdoktordatum
|
||||
FROM public.tbl_prestudent WHERE prestudent_id=".$db->db_add_param($row->prestudent_id);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($row_filter = $db->db_fetch_object())
|
||||
{
|
||||
if(($row_filter->zgv_code!='' && $row_filter->zgvdatum=='')
|
||||
|| ($row_filter->zgvmas_code!='' && $row_filter->zgvmadatum==''))
|
||||
|| ($row_filter->zgvmas_code!='' && $row_filter->zgvmadatum=='')
|
||||
|| ($row_filter->zgvdoktor_code!='' && $row_filter->zgvdoktordatum=='')
|
||||
)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
@@ -161,15 +163,15 @@ function checkfilter($row, $filter2, $buchungstyp = null)
|
||||
elseif ( preg_match('/^stud-statusgrund-([0-9]+)$/', $filter2, $studstatusgrund) )
|
||||
{
|
||||
// Alle Studenten mit Statusgrund in tbl_prestudentstatus
|
||||
$qry = "SELECT count(*) AS anzahl FROM public.tbl_prestudentstatus ps JOIN
|
||||
public.tbl_prestudent p ON p.prestudent_id = ps.prestudent_id AND
|
||||
$qry = "SELECT count(*) AS anzahl FROM public.tbl_prestudentstatus ps JOIN
|
||||
public.tbl_prestudent p ON p.prestudent_id = ps.prestudent_id AND
|
||||
ps. studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
|
||||
p. person_id=".$db->db_add_param($row->person_id, FHC_INTEGER)." AND
|
||||
p.studiengang_kz=" . $db->db_add_param($studiengang_kz, FHC_INTEGER) . " AND
|
||||
p.studiengang_kz=" . $db->db_add_param($studiengang_kz, FHC_INTEGER) . " AND
|
||||
ps.statusgrund_id = " . $db->db_add_param($studstatusgrund[1], FHC_INTEGER);
|
||||
//echo $qry . "\n";
|
||||
$filtered = ( $db->db_query($qry) && ($row_filter = $db->db_fetch_object()) && ($row_filter->anzahl > 0) )
|
||||
? true
|
||||
$filtered = ( $db->db_query($qry) && ($row_filter = $db->db_fetch_object()) && ($row_filter->anzahl > 0) )
|
||||
? true
|
||||
: false;
|
||||
return $filtered;
|
||||
}
|
||||
@@ -377,11 +379,19 @@ function draw_prestudent($row)
|
||||
<STUDENT:zgvdatum><![CDATA['.$datum_obj->convertISODate($row->zgvdatum).']]></STUDENT:zgvdatum>
|
||||
<STUDENT:zgvdatum_iso><![CDATA['.$row->zgvdatum.']]></STUDENT:zgvdatum_iso>
|
||||
<STUDENT:zgvnation><![CDATA['.$row->zgvnation.']]></STUDENT:zgvnation>
|
||||
<STUDENT:zgv_erfuellt><![CDATA['.$row->zgv_erfuellt.']]></STUDENT:zgv_erfuellt>
|
||||
<STUDENT:zgvmas_code><![CDATA['.$row->zgvmas_code.']]></STUDENT:zgvmas_code>
|
||||
<STUDENT:zgvmaort><![CDATA['.$row->zgvmaort.']]></STUDENT:zgvmaort>
|
||||
<STUDENT:zgvmadatum><![CDATA['.$datum_obj->convertISODate($row->zgvmadatum).']]></STUDENT:zgvmadatum>
|
||||
<STUDENT:zgvmadatum_iso><![CDATA['.$row->zgvmadatum.']]></STUDENT:zgvmadatum_iso>
|
||||
<STUDENT:zgvmanation><![CDATA['.$row->zgvmanation.']]></STUDENT:zgvmanation>
|
||||
<STUDENT:zgvmas_erfuellt><![CDATA['.$row->zgvmas_erfuellt.']]></STUDENT:zgvmas_erfuellt>
|
||||
<STUDENT:zgvdoktor_code><![CDATA['.$row->zgvdoktor_code.']]></STUDENT:zgvdoktor_code>
|
||||
<STUDENT:zgvdoktorort><![CDATA['.$row->zgvdoktorort.']]></STUDENT:zgvdoktorort>
|
||||
<STUDENT:zgvdoktordatum><![CDATA['.$datum_obj->convertISODate($row->zgvdoktordatum).']]></STUDENT:zgvdoktordatum>
|
||||
<STUDENT:zgvdoktordatum_iso><![CDATA['.$row->zgvdoktordatum.']]></STUDENT:zgvdoktordatum_iso>
|
||||
<STUDENT:zgvdoktornation><![CDATA['.$row->zgvdoktornation.']]></STUDENT:zgvdoktornation>
|
||||
<STUDENT:zgvdoktor_erfuellt><![CDATA['.$row->zgvdoktor_erfuellt.']]></STUDENT:zgvdoktor_erfuellt>
|
||||
<STUDENT:ausstellungsstaat><![CDATA['.$row->ausstellungsstaat.']]></STUDENT:ausstellungsstaat>
|
||||
<STUDENT:aufnahmeschluessel><![CDATA['.$row->aufnahmeschluessel.']]></STUDENT:aufnahmeschluessel>
|
||||
<STUDENT:facheinschlberuf><![CDATA['.($row->facheinschlberuf?'true':'false').']]></STUDENT:facheinschlberuf>
|
||||
@@ -456,7 +466,7 @@ function draw_empty_content()
|
||||
<STUDENT:matr_nr><![CDATA[]]></STUDENT:matr_nr>
|
||||
<STUDENT:studiengang_studiengangsleitung><![CDATA[]]></STUDENT:studiengang_studiengangsleitung>
|
||||
<STUDENT:anzahl_notizen><![CDATA[]]></STUDENT:anzahl_notizen>
|
||||
|
||||
|
||||
<STUDENT:prestudent_id><![CDATA[]]></STUDENT:prestudent_id>
|
||||
<STUDENT:studiengang_kz_prestudent><![CDATA[]]></STUDENT:studiengang_kz_prestudent>
|
||||
<STUDENT:studiengang_kz><![CDATA[]]></STUDENT:studiengang_kz>
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
// header für no cache
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
// content type setzen
|
||||
header("Content-type: application/xhtml+xml");
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/zgvdoktor';
|
||||
|
||||
?>
|
||||
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:ZGVDOKTOR="<?php echo $rdf_url; ?>/rdf#"
|
||||
>
|
||||
|
||||
|
||||
<RDF:Seq about="<?php echo $rdf_url ?>/alle">
|
||||
|
||||
<?php
|
||||
if(isset($_GET['optional']) && $_GET['optional']=='true')
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description id="" about="'.$rdf_url.'/" >
|
||||
<ZGVDOKTOR:code></ZGVDOKTOR:code>
|
||||
<ZGVDOKTOR:bezeichnung>-- keine Auswahl --</ZGVDOKTOR:bezeichnung>
|
||||
<ZGVDOKTOR:kurzbz>-- keine Auswahl --</ZGVDOKTOR:kurzbz>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
';
|
||||
}
|
||||
$qry = 'SELECT * FROM bis.tbl_zgvdoktor ORDER BY zgvdoktor_code';
|
||||
$db = new basis_db();
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object())
|
||||
{
|
||||
?>
|
||||
<RDF:li>
|
||||
<RDF:Description id="<?php echo $row->zgvdoktor_code; ?>" about="<?php echo $rdf_url.'/'.$row->zgvdoktor_code; ?>" >
|
||||
<ZGVDOKTOR:code><![CDATA[<?php echo $row->zgvdoktor_code; ?>]]></ZGVDOKTOR:code>
|
||||
<ZGVDOKTOR:bezeichnung><![CDATA[<?php echo $row->zgvdoktor_bez; ?>]]></ZGVDOKTOR:bezeichnung>
|
||||
<ZGVDOKTOR:kurzbz><![CDATA[<?php echo $row->zgvdoktor_kurzbz; ?>]]></ZGVDOKTOR:kurzbz>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
@@ -1,288 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Dieses Script versendet automatisch Mails an Accounts die Deaktiviert wurden.
|
||||
* und informiert die Benutzer ueber die Folgen der Deaktivierung
|
||||
*/
|
||||
|
||||
require_once(dirname(__FILE__).'/../config/vilesci.config.inc.php');
|
||||
require_once(dirname(__FILE__).'/../include/basis_db.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/mail.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
$text = '';
|
||||
$wochen_zum_entfernen = 1;
|
||||
|
||||
// Alle die vor einer Woche inaktiv gesetzt wurden darueber informieren
|
||||
$qry = "SELECT uid,
|
||||
(SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid = uid) as mitarbeiter
|
||||
FROM public.tbl_benutzer
|
||||
WHERE aktiv = false
|
||||
AND updateaktivam = CURRENT_DATE - interval '".$wochen_zum_entfernen." week'";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if ($row->mitarbeiter != '')
|
||||
{
|
||||
// Mitarbeiter
|
||||
$message = "Dies ist eine automatische Nachricht!\n";
|
||||
$message .= "\n";
|
||||
$message .= "Wir möchten Sie darauf aufmerksam machen, dass Ihr Benutzerdatensatz deaktiviert wurde.
|
||||
Durch diese Deaktivierung wurden Sie auch aus allen Email-Verteilern gelöscht. \n\n";
|
||||
$message .= "Sollte innerhalb von 12 Monaten nach der Deaktivierung keine neuerliche Aktivierung Ihres
|
||||
Benutzerdatensatzes erfolgen, dann werden automatisch auch\n";
|
||||
$message .= " - Ihr Account, \n";
|
||||
$message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n";
|
||||
$message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten,
|
||||
sich umgehend mit den KollegInnen in der Personalabteilung in Verbindung zu setzen: ";
|
||||
$message .= "Frau Natalie König, natalie.koenig@technikum-wien.at\n";
|
||||
$message .= "\n";
|
||||
$message .= "Mit freundlichen Grüßen\n";
|
||||
$message .= "\n";
|
||||
$message .= "Fachhochschule Technikum Wien\n";
|
||||
$message .= "Höchstädtplatz 6\n";
|
||||
$message .= "1200 Wien \n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen,
|
||||
können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.";
|
||||
}
|
||||
else
|
||||
{
|
||||
// Student
|
||||
$message = "Dies ist eine automatische Nachricht!\n";
|
||||
$message .= "\n";
|
||||
$message .= "Wir möchten Sie darauf aufmerksam machen, dass Ihr Benutzerdatensatz deaktiviert wurde.
|
||||
Durch diese Deaktivierung wurden Sie auch aus allen Email-Verteilern gelöscht.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Sollte innerhalb von 6 Monaten (für Studierende) bzw. 3 Wochen (für AbbrecherInnen) nach der
|
||||
Deaktivierung keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen, dann werden automatisch auch\n";
|
||||
$message .= " - Ihr Account,\n";
|
||||
$message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n";
|
||||
$message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten,
|
||||
sich umgehend mit Ihrer Studiengangsassistenz in Verbindung zu setzen.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Mit freundlichen Grüßen\n";
|
||||
$message .= "\n";
|
||||
$message .= "Fachhochschule Technikum Wien\n";
|
||||
$message .= "Höchstädtplatz 6\n";
|
||||
$message .= "1200 Wien\n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen,
|
||||
können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n";
|
||||
}
|
||||
|
||||
$to = $row->uid.'@'.DOMAIN;
|
||||
|
||||
$mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! '.$row->uid, $message);
|
||||
if ($mail->send())
|
||||
$text .= "Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
|
||||
else
|
||||
$text .= "Fehler beim Senden des Mails an $to: ".$message;
|
||||
}
|
||||
}
|
||||
|
||||
// Letzte Warnung vor Accountloeschung verschicken
|
||||
|
||||
// Abbrecher
|
||||
$qry = "SELECT uid
|
||||
FROM public.tbl_benutzer
|
||||
JOIN public.tbl_student ON(uid=student_uid)
|
||||
WHERE aktiv = false
|
||||
AND updateaktivam = CURRENT_DATE - interval '".DEL_ABBRECHER_WEEKS." week'
|
||||
AND get_rolle_prestudent (prestudent_id, NULL) = 'Abbrecher'";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$message = "Dies ist eine automatische Nachricht!\n";
|
||||
$message .= "\n";
|
||||
$message .= "ACHTUNG: Ihr Benutzerdatensatz wurde vor ".(DEL_ABBRECHER_WEEKS > 1?DEL_ABBRECHER_WEEKS." Wochen ":"einer Woche ")."deaktiviert!
|
||||
Sollte innerhalb der nächsten Tage keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen, dann werden automatisch auch\n";
|
||||
$message .= " - Ihr Account,\n";
|
||||
$message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n";
|
||||
$message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, sich umgehend mit Ihrer
|
||||
Studiengangsassistenz in Verbindung zu setzen.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Mit freundlichen Grüßen\n";
|
||||
$message .= "\n";
|
||||
$message .= "Fachhochschule Technikum Wien\n";
|
||||
$message .= "Höchstädtplatz 6\n";
|
||||
$message .= "1200 Wien \n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen,
|
||||
können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n";
|
||||
|
||||
$to = $row->uid.'@'.DOMAIN;
|
||||
|
||||
$mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message);
|
||||
if ($mail->send())
|
||||
$text .= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
|
||||
else
|
||||
$text .= "Fehler beim Senden des Mails an $to: ".$message;
|
||||
}
|
||||
}
|
||||
|
||||
// Abbrecher an Bibliothek melden wenn diese inaktiv gesetzt wurden
|
||||
|
||||
$qry = "SELECT uid,
|
||||
vorname,
|
||||
nachname,
|
||||
titelpre,
|
||||
titelpost
|
||||
FROM public.tbl_benutzer
|
||||
JOIN public.tbl_student ON (uid = student_uid)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
WHERE tbl_benutzer.aktiv = false
|
||||
AND tbl_benutzer.updateaktivam = (CURRENT_DATE - '1 day'::interval)::date
|
||||
AND get_rolle_prestudent (prestudent_id, NULL) = 'Abbrecher'";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
if ($db->db_num_rows($result) > 0)
|
||||
{
|
||||
$message = "Dies ist eine automatische Nachricht!\n\n";
|
||||
$message .= "Die folgenden Studierenden wurden als Abbrecher eingetragen:\n\n";
|
||||
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$message .= trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost).' ( '.$row->uid.'@'.DOMAIN." )\n";
|
||||
}
|
||||
|
||||
$message .= "\nMit freundlichen Grüßen\n";
|
||||
$message .= "\n";
|
||||
$message .= "Fachhochschule Technikum Wien\n";
|
||||
$message .= "Höchstädtplatz 6\n";
|
||||
$message .= "1200 Wien \n";
|
||||
$to = 'wienerro@technikum-wien.at, astfaell@technikum-wien.at, olensky@technikum-wien.at';
|
||||
|
||||
$mail = new mail($to, 'no-reply@'.DOMAIN, 'Abbrecher Information', $message);
|
||||
if ($mail->send())
|
||||
$text .= "Abbrecher Infomail an $to verschickt\n";
|
||||
else
|
||||
$text .= "Fehler beim Senden des Mails an $to: ".$message;
|
||||
}
|
||||
}
|
||||
|
||||
// Studenten
|
||||
|
||||
$qry = "SELECT uid
|
||||
FROM public.tbl_benutzer
|
||||
JOIN public.tbl_student ON (uid=student_uid)
|
||||
WHERE aktiv = false
|
||||
AND updateaktivam = CURRENT_DATE - interval '".DEL_STUDENT_WEEKS." week'
|
||||
AND get_rolle_prestudent (prestudent_id, NULL) <> 'Abbrecher'";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$message = "Dies ist eine automatische Nachricht!\n";
|
||||
$message .= "\n";
|
||||
$message .= "ACHTUNG: Ihr Benutzerdatensatz wurde vor ".(DEL_STUDENT_WEEKS > 1?DEL_STUDENT_WEEKS." Wochen ":"einer Woche ").
|
||||
"deaktiviert! Sollte innerhalb der nächsten Tage keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen,
|
||||
dann werden automatisch auch\n";
|
||||
$message .= " - Ihr Account,\n";
|
||||
$message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n";
|
||||
$message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden\n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten,
|
||||
sich umgehend mit Ihrer Studiengangsassistenz in Verbindung zu setzen.\n";
|
||||
$message .= "\n";
|
||||
$message .= "Mit freundlichen Grüßen\n";
|
||||
$message .= "\n";
|
||||
$message .= "Fachhochschule Technikum Wien\n";
|
||||
$message .= "Höchstädtplatz 6\n";
|
||||
$message .= "1200 Wien \n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen,
|
||||
können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n";
|
||||
|
||||
$to = $row->uid.'@'.DOMAIN;
|
||||
|
||||
$mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message);
|
||||
if ($mail->send())
|
||||
$text .= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
|
||||
else
|
||||
$text .= "Fehler beim Versenden des Abbrecher Infomails an $to !\n";
|
||||
}
|
||||
}
|
||||
|
||||
// Mitarbeiter
|
||||
|
||||
$qry = "SELECT uid
|
||||
FROM public.tbl_benutzer
|
||||
JOIN public.tbl_mitarbeiter ON (uid = mitarbeiter_uid)
|
||||
WHERE aktiv = false
|
||||
AND updateaktivam = CURRENT_DATE - interval '".DEL_MITARBEITER_WEEKS." week' ";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$message = "Dies ist eine automatische Nachricht!\n";
|
||||
$message .= "\n";
|
||||
$message .= "ACHTUNG: Ihr Benutzerdatensatz wurde vor ".(DEL_MITARBEITER_WEEKS > 1?DEL_MITARBEITER_WEEKS." Wochen ":"einer Woche ").
|
||||
"deaktiviert! Sollte innerhalb der nächsten Tage keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen,
|
||||
dann werden automatisch auch\n";
|
||||
$message .= " - Ihr Account,\n";
|
||||
$message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n";
|
||||
$message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden\n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten,
|
||||
sich umgehend mit den KollegInnen in der Personalabteilung in Verbindung zu setzen: ";
|
||||
$message .= "Frau Natalie König, natalie.koenig@technikum-wien.at\n";
|
||||
$message .= "\n";
|
||||
$message .= "Mit freundlichen Grüßen\n";
|
||||
$message .= "\n";
|
||||
$message .= "Fachhochschule Technikum Wien\n";
|
||||
$message .= "Höchstädtplatz 6\n";
|
||||
$message .= "1200 Wien \n";
|
||||
$message .= "\n";
|
||||
$message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen,
|
||||
können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n";
|
||||
|
||||
$to = $row->uid.'@'.DOMAIN;
|
||||
|
||||
$mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message);
|
||||
if ($mail->send())
|
||||
$text .= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
|
||||
else
|
||||
$text .= "Fehler beim Versenden des Abbrecher Infomails an $to !\n";
|
||||
}
|
||||
}
|
||||
|
||||
echo $text;
|
||||
|
||||
?>
|
||||
|
||||
+125
-19
@@ -51,7 +51,7 @@ if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants
|
||||
}
|
||||
}
|
||||
|
||||
if(!$result = @$db->db_query("SELECT 1 FROM public.vw_msg_vars LIMIT 1"))
|
||||
if(!$result = @$db->db_query("SELECT 1 FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1"))
|
||||
{
|
||||
// CREATE OR REPLACE VIEW public.vw_msg_vars and grants privileges
|
||||
$qry = '
|
||||
@@ -504,6 +504,22 @@ if($result = @$db->db_query("SELECT 1 FROM lehre.tbl_pruefungstyp WHERE pruefung
|
||||
}
|
||||
}
|
||||
|
||||
// change Datatype of lehre.tbl_note.bezeichnung from varchar(32) to varchar(64)
|
||||
if($result = $db->db_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='lehre' AND TABLE_NAME='tbl_note' AND COLUMN_NAME = 'bezeichnung' AND character_maximum_length < 64"))
|
||||
{
|
||||
if($db->db_num_rows($result)>0)
|
||||
{
|
||||
$qry = "
|
||||
ALTER TABLE lehre.tbl_note ALTER COLUMN bezeichnung TYPE varchar(64);
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>lehre.tbl_note '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Spalte bezeichnung in lehre.tbl_note von kleiner varchar(64) auf varchar(64) geändert<br>';
|
||||
}
|
||||
}
|
||||
|
||||
// Note "entschuldigt" hinzufügen
|
||||
if($result = @$db->db_query("SELECT 1 FROM lehre.tbl_note WHERE anmerkung = 'en' AND (bezeichnung = 'entschuldigt' OR bezeichnung = 'Entschuldigt');"))
|
||||
{
|
||||
@@ -2657,7 +2673,6 @@ if(!@$db->db_query("SELECT zeitaufzeichnungspflichtig FROM bis.tbl_bisverwendung
|
||||
. "<br>Fix angestellte Mitarbeiter auf true gesetzt, alle anderen auf false";
|
||||
}
|
||||
|
||||
|
||||
// Spalte Priorisierung für tbl_prestudent
|
||||
if(!$result = @$db->db_query("SELECT priorisierung FROM public.tbl_prestudent LIMIT 1"))
|
||||
{
|
||||
@@ -2669,6 +2684,40 @@ if(!$result = @$db->db_query("SELECT priorisierung FROM public.tbl_prestudent LI
|
||||
echo '<br>public.tbl_prestudent: Spalte priorisierung hinzugefuegt';
|
||||
}
|
||||
|
||||
// Spalte zgv_erfuellt für tbl_prestudent
|
||||
if(!$result = @$db->db_query("SELECT zgv_erfuellt FROM public.tbl_prestudent LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_prestudent ADD COLUMN zgv_erfuellt boolean default false;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_prestudent: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_prestudent: Spalte zgv_erfuellt hinzugefuegt';
|
||||
}
|
||||
|
||||
// Spalte zgvmas_erfuellt für tbl_prestudent
|
||||
if(!$result = @$db->db_query("SELECT zgvmas_erfuellt FROM public.tbl_prestudent LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_prestudent ADD COLUMN zgvmas_erfuellt boolean default false;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_prestudent: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_prestudent: Spalte zgvmas_erfuellt hinzugefuegt';
|
||||
}
|
||||
|
||||
// Spalte zgvdoktor_erfuellt für tbl_prestudent
|
||||
if(!$result = @$db->db_query("SELECT zgvdoktor_erfuellt FROM public.tbl_prestudent LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_prestudent ADD COLUMN zgvdoktor_erfuellt boolean default false;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_prestudent: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_prestudent: Spalte zgvdoktor_erfuellt hinzugefuegt';
|
||||
}
|
||||
|
||||
|
||||
// Spalte lieferant in tbl_firma
|
||||
if(!$result = @$db->db_query("SELECT lieferant FROM public.tbl_firma LIMIT 1"))
|
||||
{
|
||||
@@ -2760,7 +2809,7 @@ if($result = @$db->db_query("SELECT is_nullable FROM INFORMATION_SCHEMA.COLUMNS
|
||||
}
|
||||
|
||||
// Spalte Zugangscode zu vw_msg_vars hinzufügen
|
||||
if(!$result = @$db->db_query('SELECT "Zugangscode" FROM public.vw_msg_vars LIMIT 1'))
|
||||
if(!$result = @$db->db_query('SELECT "Zugangscode" FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1'))
|
||||
{
|
||||
$qry = '
|
||||
CREATE OR REPLACE VIEW public.vw_msg_vars AS (
|
||||
@@ -3827,7 +3876,7 @@ if(!$result = @$db->db_query("SELECT orgform_kurzbz FROM public.tbl_bankverbindu
|
||||
}
|
||||
|
||||
// iban, bic und weitere Variablen zu vw_msg_vars hinzufügen
|
||||
if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Studiengangskennzahl", "Einstiegssemester", "Einstiegsstudiensemester", "Vorname Studiengangsassistenz", "Nachname Studiengangsassistenz", "Durchwahl Studiengangsassistenz", "Alias Studiengangsassistenz", "Relative Prio" FROM public.vw_msg_vars LIMIT 1'))
|
||||
if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Studiengangskennzahl", "Einstiegssemester", "Einstiegsstudiensemester", "Vorname Studiengangsassistenz", "Nachname Studiengangsassistenz", "Durchwahl Studiengangsassistenz", "Alias Studiengangsassistenz", "Relative Prio" FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1'))
|
||||
{
|
||||
$qry = '
|
||||
CREATE OR REPLACE VIEW public.vw_msg_vars AS (
|
||||
@@ -4356,7 +4405,7 @@ if (!$result = @$db->db_query("SELECT ba1code_bis FROM bis.tbl_beschaeftigungsar
|
||||
}
|
||||
|
||||
// Orgform DE und Orform EN zu vw_msg_vars hinzufügen
|
||||
if(!$result = @$db->db_query('SELECT "Orgform DE", "Orgform EN" FROM public.vw_msg_vars LIMIT 1'))
|
||||
if(!$result = @$db->db_query('SELECT "Orgform DE", "Orgform EN" FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1'))
|
||||
{
|
||||
$qry = '
|
||||
CREATE OR REPLACE VIEW public.vw_msg_vars AS (
|
||||
@@ -4709,21 +4758,24 @@ if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants
|
||||
|
||||
// Add column dms_id, studiensemester_kurzbz, anmerkung_student und empfehlung_anrechnung
|
||||
// Change genehmigt_von and begruendung_id to be NULLABLE
|
||||
if(!$result = @$db->db_query("SELECT dms_id FROM lehre.tbl_anrechnung"))
|
||||
if(!$result = @$db->db_query("SELECT dms_id FROM lehre.tbl_anrechnung LIMIT 1"))
|
||||
{
|
||||
$qry = "
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN dms_id bigint;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN studiensemester_kurzbz varchar(6);
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN anmerkung_student text;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN empfehlung_anrechnung boolean;
|
||||
if($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN dms_id bigint;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN studiensemester_kurzbz varchar(6);
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN anmerkung_student text;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD COLUMN empfehlung_anrechnung boolean;
|
||||
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_studiensemester FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_dms FOREIGN KEY (dms_id) REFERENCES campus.tbl_dms(dms_id) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_studiensemester FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_dms FOREIGN KEY (dms_id) REFERENCES campus.tbl_dms(dms_id) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN genehmigt_von DROP NOT NULL;
|
||||
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN begruendung_id DROP NOT NULL;
|
||||
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN insertamum SET DEFAULT NOW();
|
||||
";
|
||||
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN genehmigt_von DROP NOT NULL;
|
||||
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN begruendung_id DROP NOT NULL;
|
||||
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN insertamum SET DEFAULT NOW();
|
||||
";
|
||||
}
|
||||
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
@@ -5022,6 +5074,43 @@ if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_zgvpruefungstatus_status
|
||||
echo ' public.tbl_zgvpruefungstatus_status: Tabelle hinzugefuegt<br>';
|
||||
}
|
||||
|
||||
// Add table adressentyp
|
||||
if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_adressentyp LIMIT 1;"))
|
||||
{
|
||||
$qry = "
|
||||
CREATE TABLE public.tbl_adressentyp
|
||||
(
|
||||
adressentyp_kurzbz varchar(32),
|
||||
bezeichnung varchar(256),
|
||||
bezeichnung_mehrsprachig varchar(256)[],
|
||||
sort smallint
|
||||
);
|
||||
|
||||
COMMENT ON TABLE public.tbl_adressentyp IS 'Types of Addresses';
|
||||
ALTER TABLE public.tbl_adressentyp ADD CONSTRAINT pk_tbl_adressentyp PRIMARY KEY (adressentyp_kurzbz);
|
||||
|
||||
INSERT INTO public.tbl_adressentyp(adressentyp_kurzbz, bezeichnung, bezeichnung_mehrsprachig, sort) VALUES ('h', 'Hauptwohnsitz', '{\"Hauptwohnsitz\", \"Principal residence\"}', 1);
|
||||
INSERT INTO public.tbl_adressentyp(adressentyp_kurzbz, bezeichnung, bezeichnung_mehrsprachig, sort) VALUES ('n', 'Nebenwohnsitz', '{\"Nebenwohnsitz\", \"Secondary residence\"}', 2);
|
||||
INSERT INTO public.tbl_adressentyp(adressentyp_kurzbz, bezeichnung, bezeichnung_mehrsprachig, sort) VALUES ('ho', 'Homeoffice', '{\"Homeoffice\", \"Homeoffice\"}', 3);
|
||||
INSERT INTO public.tbl_adressentyp(adressentyp_kurzbz, bezeichnung, bezeichnung_mehrsprachig, sort) VALUES ('r', 'Rechnungsadresse', '{\"Rechnungsadresse\", \"Billing address\"}', 4);
|
||||
INSERT INTO public.tbl_adressentyp(adressentyp_kurzbz, bezeichnung, bezeichnung_mehrsprachig, sort) VALUES ('f', 'Firma', '{\"Firma\", \"Company\"}', 5);
|
||||
|
||||
UPDATE public.tbl_adresse SET typ = 'f' WHERE person_id IS NULL AND (typ IS NULL OR typ = '');
|
||||
UPDATE public.tbl_adresse SET typ = 'h' WHERE person_id IS NOT NULL AND typ IS NULL;
|
||||
|
||||
ALTER TABLE public.tbl_adresse ADD CONSTRAINT fk_tbl_adresse_adressentyp FOREIGN KEY (typ) REFERENCES public.tbl_adressentyp (adressentyp_kurzbz) ON UPDATE CASCADE ON DELETE RESTRICT;
|
||||
ALTER TABLE public.tbl_adresse ALTER COLUMN typ TYPE varchar(32);
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE ON public.tbl_adressentyp TO vilesci;
|
||||
GRANT SELECT ON public.tbl_adressentyp TO web;
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_adressentyp: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo ' public.tbl_adressentyp: Tabelle hinzugefuegt<br>';
|
||||
}
|
||||
|
||||
// Add index to lehre.tbl_pruefung
|
||||
if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_tbl_pruefung_student_uid'"))
|
||||
{
|
||||
@@ -5613,6 +5702,20 @@ if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berecht
|
||||
}
|
||||
}
|
||||
|
||||
// Add index to campus.tbl_zeitaufzeichnung.uid
|
||||
if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_tbl_zeitaufzeichnung_uid'"))
|
||||
{
|
||||
if ($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "CREATE INDEX idx_tbl_zeitaufzeichnung_uid ON campus.tbl_zeitaufzeichnung USING btree (uid)";
|
||||
|
||||
if (! $db->db_query($qry))
|
||||
echo '<strong>Indizes: ' . $db->db_last_error() . '</strong><br>';
|
||||
else
|
||||
echo 'Index fuer campus.tbl_zeitaufzeichnung.uid hinzugefuegt<br>';
|
||||
}
|
||||
}
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
@@ -5721,7 +5824,9 @@ $tabellen=array(
|
||||
"lehre.tbl_abschlusspruefung" => array("abschlusspruefung_id","student_uid","vorsitz","pruefer1","pruefer2","pruefer3","abschlussbeurteilung_kurzbz","akadgrad_id","pruefungstyp_kurzbz","datum","uhrzeit","sponsion","anmerkung","updateamum","updatevon","insertamum","insertvon","ext_id","note","protokoll","endezeit","pruefungsantritt_kurzbz","freigabedatum"),
|
||||
"lehre.tbl_abschlusspruefung_antritt" => array("pruefungsantritt_kurzbz","bezeichnung","bezeichnung_english","sort"),
|
||||
"lehre.tbl_akadgrad" => array("akadgrad_id","akadgrad_kurzbz","studiengang_kz","titel","geschlecht"),
|
||||
"lehre.tbl_anrechnung" => array("anrechnung_id","prestudent_id","lehrveranstaltung_id","begruendung_id","lehrveranstaltung_id_kompatibel","genehmigt_von","insertamum","insertvon","updateamum","updatevon","ext_id"),
|
||||
"lehre.tbl_anrechnung" => array("anrechnung_id","prestudent_id","lehrveranstaltung_id","begruendung_id","lehrveranstaltung_id_kompatibel","genehmigt_von","insertamum","insertvon","updateamum","updatevon","ext_id", "dms_id", "studiensemester_kurzbz", "anmerkung_student", "empfehlung_anrechnung"),
|
||||
"lehre.tbl_anrechnungstatus" => array("status_kurzbz", "bezeichnung_mehrsprachig"),
|
||||
"lehre.tbl_anrechnung_anrechnungstatus" => array("anrechnungstatus_id", "anrechnung_id", "status_kurzbz", "datum", "insertamum", "insertvon"),
|
||||
"lehre.tbl_anrechnung_begruendung" => array("begruendung_id","bezeichnung"),
|
||||
"lehre.tbl_betreuerart" => array("betreuerart_kurzbz","beschreibung","aktiv"),
|
||||
"lehre.tbl_ferien" => array("bezeichnung","studiengang_kz","vondatum","bisdatum"),
|
||||
@@ -5768,6 +5873,7 @@ $tabellen=array(
|
||||
"lehre.tbl_zeugnisnote" => array("lehrveranstaltung_id","student_uid","studiensemester_kurzbz","note","uebernahmedatum","benotungsdatum","bemerkung","updateamum","updatevon","insertamum","insertvon","ext_id","punkte"),
|
||||
"public.ci_apikey" => array("apikey_id","key","level","ignore_limits","date_created"),
|
||||
"public.tbl_adresse" => array("adresse_id","person_id","name","strasse","plz","ort","gemeinde","nation","typ","heimatadresse","zustelladresse","firma_id","updateamum","updatevon","insertamum","insertvon","ext_id","rechnungsadresse","anmerkung", "co_name"),
|
||||
"public.tbl_adressentyp" => array("adressentyp_kurzbz", "bezeichnung", "bezeichnung_mehrsprachig", "sort"),
|
||||
"public.tbl_akte" => array("akte_id","person_id","dokument_kurzbz","uid","inhalt","mimetype","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id","dms_id","nachgereicht","anmerkung","titel_intern","anmerkung_intern","nachgereicht_am","ausstellungsnation","formal_geprueft_amum","archiv","signiert","stud_selfservice","akzeptiertamum"),
|
||||
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon","email","verpflichtend","buttontext"),
|
||||
"public.tbl_ampel_benutzer_bestaetigt" => array("ampel_benutzer_bestaetigt_id","ampel_id","uid","insertamum","insertvon"),
|
||||
@@ -5827,7 +5933,7 @@ $tabellen=array(
|
||||
"public.tbl_preoutgoing_lehrveranstaltung" => array("preoutgoing_lehrveranstaltung_id","preoutgoing_id","bezeichnung","ects","endversion","insertamum","insertvon","updateamum","updatevon","wochenstunden","unitcode"),
|
||||
"public.tbl_preoutgoing_preoutgoing_status" => array("status_id","preoutgoing_status_kurzbz","preoutgoing_id","datum","insertamum","insertvon","updateamum","updatevon"),
|
||||
"public.tbl_preoutgoing_status" => array("preoutgoing_status_kurzbz","bezeichnung"),
|
||||
"public.tbl_prestudent" => array("prestudent_id","aufmerksamdurch_kurzbz","person_id","studiengang_kz","berufstaetigkeit_code","ausbildungcode","zgv_code","zgvort","zgvdatum","zgvmas_code","zgvmaort","zgvmadatum","aufnahmeschluessel","facheinschlberuf","reihungstest_id","anmeldungreihungstest","reihungstestangetreten","rt_gesamtpunkte","rt_punkte1","rt_punkte2","bismelden","anmerkung","dual","insertamum","insertvon","updateamum","updatevon","ext_id","ausstellungsstaat","rt_punkte3", "zgvdoktor_code", "zgvdoktorort", "zgvdoktordatum","mentor","zgvnation","zgvmanation","zgvdoktornation","gsstudientyp_kurzbz","aufnahmegruppe_kurzbz","udf_values","priorisierung","foerderrelevant","standort_code"),
|
||||
"public.tbl_prestudent" => array("prestudent_id","aufmerksamdurch_kurzbz","person_id","studiengang_kz","berufstaetigkeit_code","ausbildungcode","zgv_code","zgvort","zgvdatum","zgvmas_code","zgvmaort","zgvmadatum","aufnahmeschluessel","facheinschlberuf","reihungstest_id","anmeldungreihungstest","reihungstestangetreten","rt_gesamtpunkte","rt_punkte1","rt_punkte2","bismelden","anmerkung","dual","insertamum","insertvon","updateamum","updatevon","ext_id","ausstellungsstaat","rt_punkte3", "zgvdoktor_code", "zgvdoktorort", "zgvdoktordatum","mentor","zgvnation","zgvmanation","zgvdoktornation","gsstudientyp_kurzbz","aufnahmegruppe_kurzbz","udf_values","priorisierung","foerderrelevant","standort_code","zgv_erfuellt","zgvmas_erfuellt","zgvdoktor_erfuellt"),
|
||||
"public.tbl_prestudentstatus" => array("prestudent_id","status_kurzbz","studiensemester_kurzbz","ausbildungssemester","datum","orgform_kurzbz","insertamum","insertvon","updateamum","updatevon","ext_id","studienplan_id","bestaetigtam","bestaetigtvon","fgm","faktiv", "anmerkung","bewerbung_abgeschicktamum","rt_stufe","statusgrund_id"),
|
||||
"public.tbl_raumtyp" => array("raumtyp_kurzbz","beschreibung","kosten"),
|
||||
"public.tbl_reihungstest" => array("reihungstest_id","studiengang_kz","ort_kurzbz","anmerkung","datum","uhrzeit","updateamum","updatevon","insertamum","insertvon","ext_id","freigeschaltet","max_teilnehmer","oeffentlich","studiensemester_kurzbz","aufnahmegruppe_kurzbz","stufe","anmeldefrist"),
|
||||
|
||||
@@ -347,7 +347,8 @@ $filters = array(
|
||||
{"name": "vorname"},
|
||||
{"name": "nachname"},
|
||||
{"name": "svnr"},
|
||||
{"name": "ersatzkennzeichen"}
|
||||
{"name": "ersatzkennzeichen"},
|
||||
{"name": "mitarbeiter"}
|
||||
],
|
||||
"filters": []
|
||||
}
|
||||
@@ -471,6 +472,30 @@ $filters = array(
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'infocenter',
|
||||
'dataset_name' => 'abgewiesen',
|
||||
'filter_kurzbz' => 'InfoCenterAbgewiesenAlle',
|
||||
'description' => '{Alle}',
|
||||
'sort' => 1,
|
||||
'default_filter' => true,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "Abgewiesen - Alle",
|
||||
"columns": [
|
||||
{"name": "PersonID"},
|
||||
{"name": "PreStudentID"},
|
||||
{"name": "Vorname"},
|
||||
{"name": "Nachname"},
|
||||
{"name": "Studiengang"},
|
||||
{"name": "AbgewiesenAm"},
|
||||
{"name": "Nachricht"}
|
||||
],
|
||||
"filters": []
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'budget',
|
||||
'dataset_name' => 'budgetoverview',
|
||||
|
||||
@@ -1562,13 +1562,13 @@ $phrases = array(
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Benotung der Lehrveranstaltung',
|
||||
'text' => ' Lehrveranstaltung bereits benotet',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'Grading of the course',
|
||||
'text' => 'Course already graded',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
|
||||
@@ -311,7 +311,7 @@ if($result = $db->db_query($qry))
|
||||
//Vergleich der letzten 6 Stellen der SVNR mit Geburtsdatum - ausser bei 01.01. und 01.07.
|
||||
if($row->svnr!='' && $row->svnr!=null && substr($row->svnr,4,6)!=$row->vdat && substr($row->vdat,0,4)!='0101' && substr($row->vdat,0,4)!='0107')
|
||||
{
|
||||
$error_log_hinweis.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$row->gebdatum.") nicht";
|
||||
$error_log_hinweis.=(!empty($error_log_hinweis)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$row->gebdatum.") nicht";
|
||||
}
|
||||
//Vergleich der letzten 6 Stellen des Ersatzkennzeichen mit Geburtsdatum
|
||||
if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && substr($row->ersatzkennzeichen,4,6)!=$row->vdat)
|
||||
@@ -390,7 +390,7 @@ if($result = $db->db_query($qry))
|
||||
}
|
||||
if($row->bpk == '' || $row->bpk == null)
|
||||
{
|
||||
$error_log .= (!empty($error_log) ? ', ' : '') . "bPK fehlt";
|
||||
$error_log_hinweis .= (!empty($error_log_hinweis) ? ', ' : '') . "bPK fehlt";
|
||||
}
|
||||
|
||||
if($row->bpk != '' && $row->bpk != null)
|
||||
@@ -606,7 +606,7 @@ if($result = $db->db_query($qry))
|
||||
{
|
||||
if($error_log_hinweis != '')
|
||||
{
|
||||
$v.="<u>Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($laststatus->status_kurzbz): </u>\n";
|
||||
$v.="<u>Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($row->status_kurzbz): </u>\n";
|
||||
$v.=" <span style='color: grey'>".$error_log_hinweis." (Nicht BIS-Relevant)</span>\n";
|
||||
$error_log_hinweis = '';
|
||||
}
|
||||
@@ -649,10 +649,13 @@ if($result = $db->db_query($qry))
|
||||
$datei.="
|
||||
<ErsKz>".$row->ersatzkennzeichen."</ErsKz>";
|
||||
}
|
||||
|
||||
$datei.="
|
||||
<bPK>".$row->bpk."</bPK>
|
||||
";
|
||||
|
||||
if($row->bpk != '' && $row->bpk != null)
|
||||
{
|
||||
$datei.="
|
||||
<bPK>".$row->bpk."</bPK>
|
||||
";
|
||||
}
|
||||
|
||||
$datei.="
|
||||
<StaatsangehoerigkeitCode>".$row->staatsbuergerschaft."</StaatsangehoerigkeitCode>
|
||||
|
||||
+171
-110
@@ -54,7 +54,6 @@ $error_log_hinweis='';
|
||||
$error_log1='';
|
||||
$error_log_all="";
|
||||
$error_log_io = ''; // error log fuer plausichecks von incomings/outgoings
|
||||
$stgart='';
|
||||
$fehler='';
|
||||
$maxsemester=0;
|
||||
$v='';
|
||||
@@ -106,6 +105,8 @@ $student_data=array();
|
||||
$datum_obj = new datum();
|
||||
|
||||
//Beginn- und Endedatum des aktuellen Semesters
|
||||
// Update 07.12.2021 kindlm: scheint nicht verwendet zu werden
|
||||
/*
|
||||
$qry="SELECT * FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=".$db->db_add_param($ssem).";";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
@@ -114,7 +115,8 @@ if($result = $db->db_query($qry))
|
||||
$beginn=$row->start;
|
||||
$ende=$row->ende;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
//Ermittlung aktuelles und letztes BIS-Meldedatum
|
||||
if(mb_strstr($ssem,"WS"))
|
||||
{
|
||||
@@ -130,6 +132,13 @@ else
|
||||
{
|
||||
die('Ungültiges Studiensemester!');
|
||||
}
|
||||
|
||||
//Wenn bisdatum als GET-Parameter übergeben wird, dieses Datum nehmen
|
||||
if (isset($_GET['bisdatum']))
|
||||
{
|
||||
$bisdatum = $_GET['bisdatum'];
|
||||
}
|
||||
|
||||
//ausgewaehlter Studiengang
|
||||
if(isset($_GET['stg_kz']))
|
||||
{
|
||||
@@ -178,75 +187,46 @@ $kodex_studstatuscode_array['Unterbrecher']=2;
|
||||
$kodex_studstatuscode_array['Absolvent'] =3;
|
||||
$kodex_studstatuscode_array['Abbrecher'] =4;
|
||||
|
||||
//Studiengangsdaten auslesen
|
||||
$stg_obj = new studiengang();
|
||||
if($stg_obj->load($stg_kz))
|
||||
{
|
||||
$maxsemester=$stg_obj->max_semester;
|
||||
if($maxsemester==0)
|
||||
{
|
||||
echo "Die maximale Semesteranzahl des Studienganges ist nicht angegeben!";
|
||||
exit;
|
||||
}
|
||||
|
||||
$erhalter = sprintf('%03s',$stg_obj->erhalter_kz);
|
||||
|
||||
switch($stg_obj->typ)
|
||||
{
|
||||
case 'b': $stgart=1; break;
|
||||
case 'm': $stgart=2; break;
|
||||
case 'd': $stgart=3; break;
|
||||
case 'e': $stgart=4; break;
|
||||
default: die('<h2>Dieser Studiengangstyp kann nicht gemeldet werden. Typ muss (b, m, d oder e) sein</h2>'); break;
|
||||
}
|
||||
|
||||
// DoubleDegree Studierende werden per Default aus BB gemeldet.
|
||||
// Wenn es ein reiner VZ Studiengang ist, dann sollen diese aber als VZ gemeldet werden.
|
||||
if($stg_obj->orgform_kurzbz=='VZ')
|
||||
$orgform_code_array['DDP']=$orgform_code_array['VZ'];
|
||||
|
||||
$orgform_code = $orgform_code_array[$stg_obj->orgform_kurzbz];
|
||||
$orgform_kurzbz=$stg_obj->orgform_kurzbz;
|
||||
}
|
||||
else
|
||||
die('Fehler:'.$stg_obj->errormsg);
|
||||
|
||||
|
||||
//Ausgabe aktiver Studenten, die nicht gemeldet werden
|
||||
$qry_akt="
|
||||
SELECT
|
||||
DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id
|
||||
FROM
|
||||
public.tbl_student
|
||||
JOIN public.tbl_benutzer ON(student_uid=uid)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN public.tbl_prestudent USING (prestudent_id)
|
||||
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
|
||||
WHERE
|
||||
bismelden=FALSE
|
||||
AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
|
||||
AND (tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." AND status_kurzbz IN ('Student','Diplomand','Unterbrecher','Praktikant','Outgoing'))
|
||||
AND tbl_prestudent.prestudent_id NOT IN
|
||||
(
|
||||
SELECT prestudent_id
|
||||
FROM public.tbl_prestudentstatus
|
||||
WHERE
|
||||
tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)."
|
||||
AND (status_kurzbz='Abbrecher' OR status_kurzbz='Absolvent')
|
||||
)
|
||||
ORDER BY student_uid, nachname, vorname
|
||||
";
|
||||
if($result_akt = $db->db_query($qry_akt))
|
||||
if ($stg_kz != 'alleBaMa')
|
||||
{
|
||||
while($row_akt = $db->db_fetch_object($result_akt))
|
||||
$qry_akt = "
|
||||
SELECT
|
||||
DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id
|
||||
FROM
|
||||
public.tbl_student
|
||||
JOIN public.tbl_benutzer ON(student_uid=uid)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN public.tbl_prestudent USING (prestudent_id)
|
||||
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
|
||||
WHERE
|
||||
bismelden=FALSE
|
||||
AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
|
||||
AND (tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." AND status_kurzbz IN ('Student','Diplomand','Unterbrecher','Praktikant','Outgoing'))
|
||||
AND tbl_prestudent.prestudent_id NOT IN
|
||||
(
|
||||
SELECT prestudent_id
|
||||
FROM public.tbl_prestudentstatus
|
||||
WHERE
|
||||
tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)."
|
||||
AND (status_kurzbz='Abbrecher' OR status_kurzbz='Absolvent')
|
||||
)
|
||||
ORDER BY student_uid, nachname, vorname
|
||||
";
|
||||
if ($result_akt = $db->db_query($qry_akt))
|
||||
{
|
||||
$v.="<u><b>Person (UID, Vorname, Nachname) '".$row_akt->student_uid."', '".$row_akt->nachname."', '".$row_akt->vorname."'</u></b> hat Status $row_akt->status_kurzbz, wird aber nicht BIS gemeldet!!! <br>\n";
|
||||
$anzahl_fehler++;
|
||||
while ($row_akt = $db->db_fetch_object($result_akt))
|
||||
{
|
||||
$v .= "<u><b>Person (UID, Vorname, Nachname) '".$row_akt->student_uid."', '".$row_akt->nachname."', '".$row_akt->vorname."'</u></b> hat Status $row_akt->status_kurzbz, wird aber nicht BIS gemeldet!!! <br>\n";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($stg_kz != 'alleBaMa')
|
||||
{
|
||||
//Incoming ohne I/O Datensatz anzeigen
|
||||
$qry_in="
|
||||
$qry_in = "
|
||||
SELECT
|
||||
DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id
|
||||
FROM
|
||||
@@ -261,16 +241,16 @@ $qry_in="
|
||||
AND (status_kurzbz='Incoming' AND NOT EXISTS (SELECT 1 FROM bis.tbl_bisio WHERE student_uid=tbl_student.student_uid))
|
||||
ORDER BY student_uid, nachname, vorname
|
||||
";
|
||||
if($result_in = $db->db_query($qry_in))
|
||||
{
|
||||
while($row_in = $db->db_fetch_object($result_in))
|
||||
if ($result_in = $db->db_query($qry_in))
|
||||
{
|
||||
$v.="<u>Bei Student (UID, Vorname, Nachname) '".$row_in->student_uid."', '".$row_in->nachname."', '".$row_in->vorname."' ($row_in->status_kurzbz): </u>\n";
|
||||
$v.=" Es fehlt der I/O-Datensatz\n\n";
|
||||
$anzahl_fehler++;
|
||||
while ($row_in = $db->db_fetch_object($result_in))
|
||||
{
|
||||
$v .= "<u>Bei Student (UID, Vorname, Nachname) '".$row_in->student_uid."', '".$row_in->nachname."', '".$row_in->vorname."' ($row_in->status_kurzbz): </u>\n";
|
||||
$v .= " Es fehlt der I/O-Datensatz\n\n";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Hauptselect
|
||||
// An der FHTW können nur die Incomings ausgelesen werden, wenn die stg_kz 10006 übergeben wird
|
||||
if (CAMPUS_NAME == 'FH Technikum Wien' && $stg_kz==10006)
|
||||
@@ -292,6 +272,34 @@ if (CAMPUS_NAME == 'FH Technikum Wien' && $stg_kz==10006)
|
||||
ORDER BY student_uid, nachname, vorname
|
||||
";
|
||||
}
|
||||
// Wenn "alleBaMa" als $stg_kz übergeben wird, wird ein großes XML mit allen Studiengängen geladen
|
||||
elseif ($stg_kz == 'alleBaMa')
|
||||
{
|
||||
$qry="
|
||||
SELECT
|
||||
DISTINCT ON(tbl_student.studiengang_kz, matrikelnr, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat
|
||||
FROM
|
||||
public.tbl_student
|
||||
JOIN public.tbl_benutzer ON(student_uid=uid)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN public.tbl_prestudent USING (prestudent_id)
|
||||
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
|
||||
JOIN public.tbl_studiengang ON (tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz)
|
||||
WHERE
|
||||
bismelden=TRUE
|
||||
AND tbl_studiengang.typ IN ('b','m')
|
||||
AND (((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem).") AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
|
||||
AND (status_kurzbz='Student' OR status_kurzbz='Outgoing'
|
||||
OR status_kurzbz='Praktikant' OR status_kurzbz='Diplomand' OR status_kurzbz='Absolvent'
|
||||
OR status_kurzbz='Abbrecher' OR status_kurzbz='Unterbrecher'))
|
||||
OR ((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($psem).") AND (status_kurzbz='Absolvent'
|
||||
OR status_kurzbz='Abbrecher') AND tbl_prestudentstatus.datum>".$db->db_add_param($bisprevious).")
|
||||
OR (status_kurzbz='Incoming' AND student_uid IN (SELECT student_uid FROM bis.tbl_bisio WHERE (tbl_bisio.bis>=".$db->db_add_param($bisprevious).")
|
||||
OR (tbl_bisio.von<=".$db->db_add_param($bisdatum)." AND (tbl_bisio.bis>=".$db->db_add_param($bisdatum)." OR tbl_bisio.bis IS NULL))
|
||||
)))
|
||||
ORDER BY tbl_student.studiengang_kz, matrikelnr, nachname, vorname
|
||||
";
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry="
|
||||
@@ -321,25 +329,72 @@ else
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
$header ="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
||||
<Erhalter>
|
||||
<ErhKz>".$erhalter."</ErhKz>
|
||||
<MeldeDatum>".date("dmY", $datumobj->mktime_fromdate($bisdatum))."</MeldeDatum>
|
||||
<StudierendenBewerberMeldung>
|
||||
<Studiengang>
|
||||
<StgKz>".$stg_kz."</StgKz>";
|
||||
|
||||
|
||||
$datei .= $header;
|
||||
$dateiNurBewerber .= $header;
|
||||
$stg_kz_index = '';
|
||||
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$datei.= GenerateXMLStudentBlock($row);
|
||||
if ($row->studiengang_kz != $stg_kz_index)
|
||||
{
|
||||
//Studiengangsdaten auslesen
|
||||
$stg_obj = new studiengang();
|
||||
if($stg_obj->load($row->studiengang_kz))
|
||||
{
|
||||
$maxsemester = $stg_obj->max_semester;
|
||||
if($maxsemester == 0)
|
||||
{
|
||||
echo "Die maximale Semesteranzahl des Studienganges ist nicht angegeben!";
|
||||
exit;
|
||||
}
|
||||
|
||||
$erhalter = sprintf('%03s',$stg_obj->erhalter_kz);
|
||||
|
||||
switch($stg_obj->typ)
|
||||
{
|
||||
case 'b': $stgart = 1; break;
|
||||
case 'm': $stgart = 2; break;
|
||||
case 'd': $stgart = 3; break;
|
||||
case 'e': $stgart = 4; break;
|
||||
default: die('<h2>Dieser Studiengangstyp kann nicht gemeldet werden. Typ muss (b, m, d oder e) sein</h2>'); break;
|
||||
}
|
||||
|
||||
// DoubleDegree Studierende werden per Default aus BB gemeldet.
|
||||
// Wenn es ein reiner VZ Studiengang ist, dann sollen diese aber als VZ gemeldet werden.
|
||||
if($stg_obj->orgform_kurzbz == 'VZ')
|
||||
$orgform_code_array['DDP'] = $orgform_code_array['VZ'];
|
||||
|
||||
$orgform_code = $orgform_code_array[$stg_obj->orgform_kurzbz];
|
||||
$orgform_kurzbz = $stg_obj->orgform_kurzbz;
|
||||
}
|
||||
else
|
||||
die('Fehler:'.$stg_obj->errormsg);
|
||||
|
||||
// Header am Beginn rausschreiben
|
||||
if ($stg_kz_index == '')
|
||||
{
|
||||
$header = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
||||
<Erhalter>
|
||||
<ErhKz>".$erhalter."</ErhKz>
|
||||
<MeldeDatum>".date("dmY", $datumobj->mktime_fromdate($bisdatum))."</MeldeDatum>
|
||||
<StudierendenBewerberMeldung>";
|
||||
|
||||
$datei .= $header;
|
||||
$dateiNurBewerber .= $header;
|
||||
}
|
||||
if ($stg_kz_index != '' && $row->studiengang_kz != $stg_kz_index)
|
||||
{
|
||||
$datei .= "
|
||||
</Studiengang>";
|
||||
}
|
||||
$stg_kz_index = $row->studiengang_kz;
|
||||
$datei .= "
|
||||
<Studiengang>
|
||||
<StgKz>".$row->studiengang_kz."</StgKz>";
|
||||
}
|
||||
$datei .= GenerateXMLStudentBlock($row);
|
||||
}
|
||||
|
||||
//Bewerberblock bei Ausserordentlichen nicht anzeigen
|
||||
if($stg_kz!=('9'.$erhalter))
|
||||
/*if($stg_kz!=('9'.$erhalter))
|
||||
{
|
||||
$stg_obj = new studiengang();
|
||||
|
||||
@@ -360,7 +415,7 @@ if($result = $db->db_query($qry))
|
||||
$datei.=$bewerberBlock;
|
||||
$dateiNurBewerber.=$bewerberBlock;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
$footer="
|
||||
@@ -393,26 +448,26 @@ echo ' </head>
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[6,1],[5,1],[4,1],[2,0],[3,0]],
|
||||
sortList: [[6,1],[5,1],[4,1],[2,0],[3,0]],
|
||||
widgets: ["zebra", "filter", "stickyHeaders"],
|
||||
widgetOptions : { filter_functions:
|
||||
{
|
||||
// Add select menu to this column
|
||||
widgetOptions : { filter_functions:
|
||||
{
|
||||
// Add select menu to this column
|
||||
4 : {
|
||||
"Abbrecher" : function(e, n, f, i, $r, c, data) { return /Abbrecher/.test(e); },
|
||||
"Abbrecher" : function(e, n, f, i, $r, c, data) { return /Abbrecher/.test(e); },
|
||||
"Absolvent" : function(e, n, f, i, $r, c, data) { return /Absolvent/.test(e); },
|
||||
"Diplomand" : function(e, n, f, i, $r, c, data) { return /Diplomand/.test(e); },
|
||||
"Incoming" : function(e, n, f, i, $r, c, data) { return /Incoming/.test(e); },
|
||||
"Student" : function(e, n, f, i, $r, c, data) { return /Student/.test(e); },
|
||||
"Unterbrecher" : function(e, n, f, i, $r, c, data) { return /Unterbrecher/.test(e); },
|
||||
"Unterbrecher" : function(e, n, f, i, $r, c, data) { return /Unterbrecher/.test(e); },
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#t2").tablesorter(
|
||||
{
|
||||
sortList: [[0,0],[1,0]],
|
||||
widgets: ["zebra", "filter", "stickyHeaders"]
|
||||
sortList: [[0,0],[1,0]],
|
||||
widgets: ["zebra", "filter", "stickyHeaders"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -421,6 +476,7 @@ if ($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
echo '<form name="frm_studiengang" action='.$_SERVER['PHP_SELF'].' method="GET">';
|
||||
echo 'Studiengang: <SELECT name="stg_kz" onchange="document.frm_studiengang.submit()">';
|
||||
echo '<OPTION value="alleBaMa" '.($stg_kz == 'alleBaMa' ? 'selected' : '').'>Alle Bachelor und Master</OPTION>';
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll('typ, kurzbz', true);
|
||||
$types = new studiengang();
|
||||
@@ -457,10 +513,17 @@ if ($rechte->isBerechtigt('admin'))
|
||||
echo '</select>';
|
||||
echo '</form>';
|
||||
}
|
||||
$studiengang = new studiengang($stg_kz);
|
||||
$typ = new studiengang($stg_kz);
|
||||
$typ->getStudiengangTyp($studiengang->typ);
|
||||
echo "<H1>BIS - Studentendaten werden überprüft! Studiengang: ".$db->convert_html_chars($stg_kz)." - ".$typ->bezeichnung." ".$studiengang->bezeichnung."</H1>\n";
|
||||
if ($stg_kz != 'alleBaMa')
|
||||
{
|
||||
$studiengang = new studiengang($stg_kz);
|
||||
$typ = new studiengang($stg_kz);
|
||||
$typ->getStudiengangTyp($studiengang->typ);
|
||||
echo "<H1>BIS - Studentendaten werden überprüft. Studiengang: ".$db->convert_html_chars($stg_kz)." - ".$typ->bezeichnung." ".$studiengang->bezeichnung."</H1>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<H1>BIS - Studentendaten aller Bachelor- und Master-Studiengänge werden überprüft.</H1>\n";
|
||||
}
|
||||
echo "<H2>Nicht plausible BIS-Daten (für Meldung ".$db->convert_html_chars($ssem)."): </H2><br>";
|
||||
echo nl2br($v."\n\n");
|
||||
|
||||
@@ -821,7 +884,7 @@ function GenerateXMLStudentBlock($row)
|
||||
}
|
||||
if($row->svnr!='' && $row->svnr!=null && substr($row->svnr,4,6)!=$row->vdat && substr($row->vdat,0,4)!='0101' && substr($row->vdat,0,4)!='0107')
|
||||
{
|
||||
$error_log_hinweis.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$datum_obj->formatDatum($row->gebdatum,'d.m.Y').") nicht";
|
||||
$error_log_hinweis.=(!empty($error_log_hinweis)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$datum_obj->formatDatum($row->gebdatum,'d.m.Y').") nicht";
|
||||
}
|
||||
if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && substr($row->ersatzkennzeichen,4,6)!=$row->vdat)
|
||||
{
|
||||
@@ -853,7 +916,7 @@ function GenerateXMLStudentBlock($row)
|
||||
}
|
||||
if($row->bpk == '' || $row->bpk == null)
|
||||
{
|
||||
$error_log .= (!empty($error_log) ? ', ' : '') . "bPK fehlt";
|
||||
$error_log_hinweis .= (!empty($error_log_hinweis) ? ', ' : '') . "bPK fehlt";
|
||||
}
|
||||
if($row->bpk != '' && $row->bpk != null)
|
||||
{
|
||||
@@ -996,8 +1059,7 @@ function GenerateXMLStudentBlock($row)
|
||||
{
|
||||
if ($db->db_num_rows($resultAbbrecher) == 0)
|
||||
{
|
||||
$error_log .= (!empty($error_log) ? ', ' : '')."Der Student ist Abbrecher vor der ersten BIS-Meldung. Bitte im FAS das Hakerl bei \"Bismelden\" im Reiter \"Prestudent\" entfernen";
|
||||
|
||||
//$error_log .= (!empty($error_log) ? ', ' : '')."Der Student ist Abbrecher vor der ersten BIS-Meldung. Bitte im FAS das Hakerl bei \"Bismelden\" im Reiter \"Prestudent\" entfernen";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1322,9 +1384,11 @@ function GenerateXMLStudentBlock($row)
|
||||
<ErsKz>" . $row->ersatzkennzeichen . "</ErsKz>";
|
||||
}
|
||||
|
||||
$datei .= "
|
||||
<bPK>" . $row->bpk . "</bPK>
|
||||
";
|
||||
if($row->bpk != '' && $row->bpk != null)
|
||||
{
|
||||
$datei.="
|
||||
<bPK>".$row->bpk."</bPK>";
|
||||
}
|
||||
|
||||
$datei .= "
|
||||
<StaatsangehoerigkeitCode>" . $row->staatsbuergerschaft . "</StaatsangehoerigkeitCode>
|
||||
@@ -1333,14 +1397,11 @@ function GenerateXMLStudentBlock($row)
|
||||
<HeimatStrasse><![CDATA[" . $strasse . "]]></HeimatStrasse>
|
||||
<HeimatNation>" . $nation . "</HeimatNation>";
|
||||
|
||||
if (!$ausserordentlich && !$incoming)
|
||||
{
|
||||
$datei .= "
|
||||
$datei .= "
|
||||
<ZustellPLZ>" . $zustell_plz . "</ZustellPLZ>
|
||||
<ZustellGemeinde>" . $zustell_gemeinde . "</ZustellGemeinde>
|
||||
<ZustellStrasse>" . $zustell_strasse . "</ZustellStrasse>
|
||||
<ZustellNation>" . $zustell_nation . "</ZustellNation>";
|
||||
}
|
||||
|
||||
if ($co_name != '')
|
||||
{
|
||||
|
||||
@@ -42,6 +42,7 @@ require_once ('../../include/kontakt.class.php');
|
||||
require_once ('../../include/dokument.class.php');
|
||||
require_once ('../../include/reihungstest.class.php');
|
||||
require_once ('../../include/pruefling.class.php');
|
||||
require_once ('../../include/udf.class.php');
|
||||
|
||||
|
||||
if (! $db = new basis_db())
|
||||
@@ -54,6 +55,7 @@ $rechte->getBerechtigungen($uid);
|
||||
if (! $rechte->isBerechtigt('basis/person', null, 'suid'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$udf = new UDF();
|
||||
$msg_info = array();
|
||||
$msg_error = array();
|
||||
$msg_warning = array();
|
||||
@@ -283,6 +285,40 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
if ($doppelteReihungstestzuordnung === false)
|
||||
$sql_query_upd1 .= "UPDATE public.tbl_rt_person SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
|
||||
|
||||
$personUDF = $udf->personHasUDF();
|
||||
|
||||
if ($personUDF)
|
||||
{
|
||||
$udfToKeep = json_decode($personToKeep_obj->udf_values, true);
|
||||
$udfToDelete = json_decode($personToDelete_obj->udf_values, true);
|
||||
|
||||
$udfToKeep = is_null($udfToKeep) ? array() : $udfToKeep;
|
||||
$udfToDelete = is_null($udfToDelete) ? array() : $udfToDelete;
|
||||
|
||||
if ($udfToKeep != $udfToDelete)
|
||||
{
|
||||
foreach ($udfToDelete as $key => $udfValue)
|
||||
{
|
||||
if (!array_key_exists($key, $udfToKeep))
|
||||
{
|
||||
$udfToKeep[$key] = $udfValue;
|
||||
}
|
||||
elseif ($udfToKeep[$key] !== $udfValue && !is_null($udfValue))
|
||||
{
|
||||
if (is_null($udfToKeep[$key]))
|
||||
$udfToKeep[$key] = $udfValue;
|
||||
else
|
||||
{
|
||||
$msg_error[] = 'Beide Personen haben unterschiedliche Werte in den UDFs und können nicht zusammengelegt werden.<br>
|
||||
Sie müssen die Datensätze manuell bereinigen, bevor Sie die Personen zusammenlegen können.';
|
||||
$error = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($error == false)
|
||||
{
|
||||
// Wenn bei einer der Personen das Foto gesperrt ist, dann die Sperre uebernehmen
|
||||
@@ -437,6 +473,7 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
$sql_query_upd1 .= "UPDATE system.tbl_filters SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
$sql_query_upd1 .= "UPDATE system.tbl_log SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
$sql_query_upd1 .= "UPDATE system.tbl_person_lock SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
$sql_query_upd1 .= "UPDATE system.tbl_issue SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
$sql_query_upd1 .= "UPDATE wawi.tbl_betriebsmittelperson SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
$sql_query_upd1 .= "UPDATE wawi.tbl_konto SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";";
|
||||
$sql_query_upd1 .= $alma_query_upd;
|
||||
@@ -456,6 +493,9 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
// BPK erst setzen, wenn nur mehr eine Person vorhanden ist
|
||||
$sql_query_upd1 .= "UPDATE public.tbl_person SET bpk=" . $db->db_add_param($bpk, FHC_STRING) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";";
|
||||
|
||||
if ($personUDF)
|
||||
$sql_query_upd1 .= "UPDATE public.tbl_person SET udf_values=" . $db->db_add_param(json_encode($udfToKeep)) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";";
|
||||
|
||||
if ($db->db_query($sql_query_upd1))
|
||||
{
|
||||
$msg_info[] = "Update Query:";
|
||||
@@ -730,9 +770,10 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
|
||||
usort($prestudenten->result, "sortPrestudents");
|
||||
|
||||
$prestudentUDF = $udf->prestudentHasUDF();
|
||||
$prestudentenArray = array();
|
||||
$kontaktLoeschArray = array();
|
||||
foreach ($prestudenten->result AS $row)
|
||||
foreach ($prestudenten->result AS $key => $row)
|
||||
{
|
||||
$prestudentenArray[] = array(
|
||||
'prestudent_id' => $row->prestudent_id,
|
||||
@@ -753,6 +794,8 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
'zgvmanation' => $row->zgvmanation,
|
||||
'studiengang_typ' => $row->studiengang_typ
|
||||
);
|
||||
if ($prestudentUDF)
|
||||
$prestudentenArray[$key] = array_merge($prestudentenArray[$key], array('udf_values' => $row->udf_values));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -793,6 +836,48 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
$i++;
|
||||
continue;
|
||||
}
|
||||
|
||||
//Wenn die UDF values nicht zusammengeführt werden können, wird mit dem nächsten weitergemacht und eine Warnung ausgegeben
|
||||
if ($prestudentUDF)
|
||||
{
|
||||
$udfError = false;
|
||||
|
||||
$udfToKeep = json_decode($prestudentenArray[$previousKey]['udf_values'], true);;
|
||||
$udfToKeep = is_null($udfToKeep) ? array() : $udfToKeep;
|
||||
|
||||
$udfToDelete = json_decode($value['udf_values'], true);
|
||||
$udfToDelete = is_null($udfToDelete) ? array() : $udfToDelete;
|
||||
|
||||
if ($udfToKeep != $udfToDelete)
|
||||
{
|
||||
foreach ($udfToDelete as $udfKey => $udfValue)
|
||||
{
|
||||
if (!array_key_exists($udfKey, $udfToKeep))
|
||||
{
|
||||
$udfToKeep[$udfKey] = $udfValue;
|
||||
}
|
||||
elseif ($udfToKeep[$udfKey] !== $udfValue && !is_null($udfValue))
|
||||
{
|
||||
if (is_null($udfToKeep[$udfKey]))
|
||||
$udfToKeep[$udfKey] = $udfValue;
|
||||
else
|
||||
{
|
||||
|
||||
$warningList['udfUnklar'][$i][1] = $prestudentId;
|
||||
$warningList['udfUnklar'][$i][2] = $value['prestudent_id'];
|
||||
$i++;
|
||||
$udfError = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$prestudentenArray[$previousKey]['udf_values'] = json_encode($udfToKeep);
|
||||
if ($udfError)
|
||||
continue;
|
||||
|
||||
}
|
||||
// Wenn der Status gleich ist, wird auf bestätigt-datum geprüft
|
||||
if ($status_kurzbz == $value['status_kurzbz'])
|
||||
{
|
||||
@@ -894,6 +979,11 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
$zgvmadatum = $value['zgvmadatum'];
|
||||
$zgvmanation = $value['zgvmanation'];
|
||||
$previousKey = $key;
|
||||
if ($prestudentUDF)
|
||||
{
|
||||
$udfToKeep = json_decode($value['udf_values'], true);
|
||||
$udfToKeep = is_null($udfToKeep) ? array() : $udfToKeep;
|
||||
}
|
||||
}
|
||||
|
||||
// Messages in $msg_warning schreiben
|
||||
@@ -934,6 +1024,22 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p
|
||||
}
|
||||
}
|
||||
|
||||
$msg_warning[] = $messageOutput;
|
||||
$messageOutput = '';
|
||||
if(isset($warningList['udfUnklar']))
|
||||
{
|
||||
foreach ($warningList['udfUnklar'] as $key => $value) {
|
||||
|
||||
$messageOutput .= '<div>Bei folgenden PreStudenten sind die UDFs widersprüchlich oder unklar:<br>';
|
||||
|
||||
foreach ($value as $presstudentid)
|
||||
{
|
||||
$messageOutput .= ' '.$presstudentid.'<br>';
|
||||
}
|
||||
$messageOutput .= '</div>';
|
||||
}
|
||||
}
|
||||
|
||||
$msg_warning[] = $messageOutput;
|
||||
|
||||
//Wenn Prüfling auf zu löschenden Prestudenten zeigt und ggf auf bleibenden umhängen.
|
||||
|
||||
@@ -115,9 +115,15 @@
|
||||
$sg_update->gebteil = $gebteil;
|
||||
$sg_update->oe_kurzbz = $oe_kurzbz;
|
||||
$sg_update->arbeitsplaetze = $arbeitsplaetze;
|
||||
$sg_update->updateamum = date('Y-m-d H:i:s');
|
||||
$sg_update->updatevon = $user;
|
||||
|
||||
if ($_POST["neu"] == "true")
|
||||
{
|
||||
$sg_update->insertamum = date('Y-m-d H:i:s');
|
||||
$sg_update->insertvon = $user;
|
||||
$sg_update->new = 1;
|
||||
}
|
||||
|
||||
if(!$sg_update->save())
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user