mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-23 15:09:37 +00:00
Merge branch 'feature-32834/infocenter_zusammenfuehren'
This commit is contained in:
@@ -3,6 +3,9 @@ if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
class ReihungstestJob extends JOB_Controller
|
||||
{
|
||||
|
||||
const LAST_DAYS_PRESTUDENTSTATUS = 5;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
@@ -826,7 +829,7 @@ class ReihungstestJob extends JOB_Controller
|
||||
AND tbl_studiengang.typ IN ('b', 'm')
|
||||
)
|
||||
SELECT * FROM prst
|
||||
WHERE prestudenstatus_datum >= (SELECT CURRENT_DATE - 1)
|
||||
WHERE prestudenstatus_datum >= (SELECT CURRENT_DATE - ". self::LAST_DAYS_PRESTUDENTSTATUS .")
|
||||
AND (studiengang_typ = 'b' OR (studiengang_typ = 'm' AND EXISTS (SELECT 1 /* Master Studiengänge berücksichtigen wenn auch Bachelor im gleichen Semester */
|
||||
FROM prst prstb
|
||||
WHERE studiengang_typ = 'b'
|
||||
@@ -868,7 +871,8 @@ class ReihungstestJob extends JOB_Controller
|
||||
tbl_person.nachname,
|
||||
tbl_person.vorname,
|
||||
tbl_prestudent.*,
|
||||
tbl_studiengang.typ AS studiengang_typ
|
||||
tbl_studiengang.typ AS studiengang_typ,
|
||||
tbl_prestudentstatus.datum
|
||||
FROM PUBLIC.tbl_person
|
||||
JOIN PUBLIC.tbl_prestudent USING (person_id)
|
||||
JOIN PUBLIC.tbl_prestudentstatus USING (prestudent_id)
|
||||
@@ -901,7 +905,7 @@ class ReihungstestJob extends JOB_Controller
|
||||
$mailArray[$rowNiedrPrios->studiengang_kz][$rowNiedrPrios->orgform_kurzbz]['AufnahmeHoeherePrio'][]
|
||||
= $rowNiedrPrios->nachname.' '.$rowNiedrPrios->vorname.' ('.$rowNiedrPrios->prestudent_id.')';
|
||||
}
|
||||
elseif ($rowNiedrPrios->laststatus == 'Bewerber')
|
||||
elseif ($rowNiedrPrios->laststatus == 'Bewerber' && $row_ps->prestudenstatus_datum > $rowNiedrPrios->datum)
|
||||
{
|
||||
// Abgewiesenen-Status mit Statusgrund "Aufnahme anderer Studiengang" (ID 5) setzen
|
||||
$lastStatus = $this->PrestudentstatusModel->getLastStatus($rowNiedrPrios->prestudent_id);
|
||||
@@ -927,7 +931,7 @@ class ReihungstestJob extends JOB_Controller
|
||||
= $rowNiedrPrios->nachname.' '.$rowNiedrPrios->vorname.' ('.$rowNiedrPrios->prestudent_id.')';
|
||||
}
|
||||
}
|
||||
elseif ($rowNiedrPrios->laststatus == 'Wartender')
|
||||
elseif ($rowNiedrPrios->laststatus == 'Wartender' && $row_ps->prestudenstatus_datum > $rowNiedrPrios->datum)
|
||||
{
|
||||
// Abgewiesenen-Status mit Statusgrund "Aufnahme anderer Studiengang" (ID 5) setzen
|
||||
// Mail zur Info an Assistenz schicken
|
||||
|
||||
@@ -21,6 +21,7 @@ class InfoCenter extends Auth_Controller
|
||||
const FREIGEGEBEN_PAGE = 'freigegeben';
|
||||
const REIHUNGSTESTABSOLVIERT_PAGE = 'reihungstestAbsolviert';
|
||||
const ABGEWIESEN_PAGE = 'abgewiesen';
|
||||
const AUFGENOMMEN_PAGE = 'aufgenommen';
|
||||
const SHOW_DETAILS_PAGE = 'showDetails';
|
||||
const SHOW_ZGV_DETAILS_PAGE = 'showZGVDetails';
|
||||
const ZGV_UBERPRUEFUNG_PAGE = 'ZGVUeberpruefung';
|
||||
@@ -115,6 +116,7 @@ class InfoCenter extends Auth_Controller
|
||||
'index' => 'infocenter:r',
|
||||
'freigegeben' => 'infocenter:r',
|
||||
'abgewiesen' => 'infocenter:r',
|
||||
'aufgenommen' => 'infocenter:r',
|
||||
'reihungstestAbsolviert' => 'infocenter:r',
|
||||
'showDetails' => 'infocenter:r',
|
||||
'showZGVDetails' => 'lehre/zgvpruefung:r',
|
||||
@@ -228,6 +230,16 @@ class InfoCenter extends Auth_Controller
|
||||
|
||||
$this->load->view('system/infocenter/infocenterAbgewiesen.php');
|
||||
}
|
||||
|
||||
/**
|
||||
* Aufgenommene page of the InfoCenter tool
|
||||
*/
|
||||
public function aufgenommen()
|
||||
{
|
||||
$this->_setNavigationMenu(self::AUFGENOMMEN_PAGE); // define the navigation menu for this page
|
||||
|
||||
$this->load->view('system/infocenter/infocenterAufgenommen.php');
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -314,7 +326,7 @@ class InfoCenter extends Auth_Controller
|
||||
show_error('Person does not exist!');
|
||||
|
||||
$origin_page = $this->input->get(self::ORIGIN_PAGE);
|
||||
if ($origin_page == self::INDEX_PAGE)
|
||||
if (in_array($origin_page, array(self::INDEX_PAGE, self::ABGEWIESEN_PAGE)))
|
||||
{
|
||||
// mark person as locked for editing
|
||||
$result = $this->PersonLockModel->lockPerson($person_id, $this->_uid, self::APP);
|
||||
@@ -359,7 +371,14 @@ class InfoCenter extends Auth_Controller
|
||||
|
||||
if (isError($result)) show_error(getError($result));
|
||||
|
||||
$redirectLink = '/'.self::INFOCENTER_URI.'?'.self::FHC_CONTROLLER_ID.'='.$this->getControllerId();
|
||||
$origin_page = $this->input->get(self::ORIGIN_PAGE);
|
||||
|
||||
if ($origin_page === self::ABGEWIESEN_PAGE)
|
||||
$redirectLink = self::INFOCENTER_URI. '/' .self::ABGEWIESEN_PAGE;
|
||||
else
|
||||
$redirectLink = '/'.self::INFOCENTER_URI;
|
||||
|
||||
$redirectLink .= '?'.self::FHC_CONTROLLER_ID.'='.$this->getControllerId();
|
||||
|
||||
// Force reload of Dataset after Unlock
|
||||
$redirectLink .= '&'.self::KEEP_TABLESORTER_FILTER.'=true';
|
||||
@@ -1526,6 +1545,7 @@ 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);
|
||||
$aufgenommenLink = site_url(self::INFOCENTER_URI.'/'.self::AUFGENOMMEN_PAGE);
|
||||
|
||||
$currentFilterId = $this->input->get(self::FILTER_ID);
|
||||
if (isset($currentFilterId))
|
||||
@@ -1533,6 +1553,7 @@ class InfoCenter extends Auth_Controller
|
||||
$freigegebenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
$reihungstestAbsolviertLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
$abgewiesenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
$aufgenommenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId;
|
||||
}
|
||||
|
||||
$this->navigationlib->setSessionMenu(
|
||||
@@ -1583,7 +1604,19 @@ class InfoCenter extends Auth_Controller
|
||||
null, // subscriptLinkValue
|
||||
'', // target
|
||||
30 // sort
|
||||
)
|
||||
),
|
||||
'aufgenommen' => $this->navigationlib->oneLevel(
|
||||
'Aufgenommene', // description
|
||||
$aufgenommenLink, // link
|
||||
null, // children
|
||||
'check', // icon
|
||||
null, // subscriptDescription
|
||||
false, // expand
|
||||
null, // subscriptLinkClass
|
||||
null, // subscriptLinkValue
|
||||
'', // target
|
||||
40 // sort
|
||||
),
|
||||
)
|
||||
);
|
||||
}
|
||||
@@ -1611,6 +1644,9 @@ class InfoCenter extends Auth_Controller
|
||||
if ($origin_page === self::ABGEWIESEN_PAGE)
|
||||
$link = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE);
|
||||
|
||||
if ($origin_page === self::AUFGENOMMEN_PAGE)
|
||||
$link = site_url(self::INFOCENTER_URI.'/'.self::AUFGENOMMEN_PAGE);
|
||||
|
||||
$prevFilterId = $this->input->get(self::PREV_FILTER_ID);
|
||||
if (isset($prevFilterId))
|
||||
{
|
||||
|
||||
@@ -204,4 +204,14 @@ class Studiensemester_model extends DB_Model
|
||||
|
||||
return $this->execQuery($query, array($studiensemester_kurzbz));
|
||||
}
|
||||
|
||||
public function getAktAndFutureSemester()
|
||||
{
|
||||
$query = 'SELECT studiensemester_kurzbz
|
||||
FROM public.tbl_studiensemester
|
||||
WHERE start >= NOW() OR (start <= NOW() AND ende >= NOW())
|
||||
ORDER BY start';
|
||||
|
||||
return $this->execQuery($query);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -326,10 +326,12 @@ class Person_model extends DB_Model
|
||||
|
||||
SELECT p2.person_id
|
||||
FROM tbl_person p1
|
||||
JOIN tbl_prestudent ps ON p1.person_id = ps.person_id
|
||||
INNER JOIN (
|
||||
SELECT vorname, nachname, gebdatum, person_id
|
||||
FROM tbl_person
|
||||
) p2
|
||||
SELECT vorname, nachname, gebdatum, person.person_id
|
||||
FROM tbl_person person
|
||||
JOIN tbl_prestudent sps ON person.person_id = sps.person_id
|
||||
) p2
|
||||
ON (lower(p1.vorname) = lower(p2.vorname) AND lower(p1.nachname) = lower(p2.nachname) AND p1.gebdatum = p2.gebdatum)
|
||||
WHERE p1.person_id != p2.person_id AND (p1.person_id = ?)";
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
$this->config->load('infocenter');
|
||||
$APP = '\'infocenter\'';
|
||||
$ABGEWIESENEN_STATUS = '\'Abgewiesener\'';
|
||||
$STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\'';
|
||||
$ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz');
|
||||
@@ -17,6 +18,8 @@ $query = '
|
||||
p.nachname AS "Nachname",
|
||||
so.studiengangkurzbzlang as "Studiengang",
|
||||
pss.insertamum AS "AbgewiesenAm",
|
||||
pl.zeitpunkt AS "LockDate",
|
||||
pl.lockuser AS "LockUser",
|
||||
(
|
||||
SELECT l.zeitpunkt
|
||||
FROM system.tbl_log l
|
||||
@@ -54,6 +57,15 @@ $query = '
|
||||
JOIN public.tbl_studiengang sg USING(studiengang_kz)
|
||||
JOIN lehre.tbl_studienplan sp USING(studienplan_id)
|
||||
JOIN lehre.tbl_studienordnung so USING(studienordnung_id)
|
||||
LEFT JOIN (
|
||||
SELECT tpl.person_id,
|
||||
tpl.zeitpunkt,
|
||||
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 pss.status_kurzbz = '. $ABGEWIESENEN_STATUS .'
|
||||
AND pss.studiensemester_kurzbz = '. $STUDIENSEMESTER .'
|
||||
AND (sg.typ IN ('. $STUDIENGANG_TYP .')
|
||||
@@ -70,6 +82,7 @@ $query = '
|
||||
'requiredPermissions' => 'infocenter',
|
||||
'datasetRepresentation' => 'tablesorter',
|
||||
'checkboxes' => 'PersonId',
|
||||
'additionalColumns' => array('Details'),
|
||||
'columnsAliases' => array(
|
||||
'PersonId',
|
||||
'PreStudentID',
|
||||
@@ -77,11 +90,23 @@ $query = '
|
||||
ucfirst($this->p->t('person', 'nachname')),
|
||||
ucfirst($this->p->t('lehre', 'studiengang')),
|
||||
ucfirst($this->p->t('infocenter', 'abgewiesenam')),
|
||||
ucfirst($this->p->t('global', 'sperrdatum')),
|
||||
ucfirst($this->p->t('global', 'gesperrtVon')),
|
||||
ucfirst($this->p->t('global', 'nachricht')),
|
||||
ucfirst($this->p->t('infocenter', 'kaution'))
|
||||
),
|
||||
|
||||
'formatRow' => function($datasetRaw) {
|
||||
/* NOTE: Dont use $this here for PHP Version compatibility */
|
||||
$datasetRaw->{'Details'} = sprintf(
|
||||
'<a href="%s?person_id=%s&origin_page=%s&fhc_controller_id=%s&prev_filter_id=%s">Details</a>',
|
||||
site_url('system/infocenter/InfoCenter/showDetails'),
|
||||
$datasetRaw->{'PersonId'},
|
||||
'abgewiesen',
|
||||
(isset($_GET['fhc_controller_id']) ? $_GET['fhc_controller_id'] : ''),
|
||||
(isset($_GET['filter_id']) ? $_GET['filter_id'] : '')
|
||||
);
|
||||
|
||||
if ($datasetRaw->{'Nachricht'} === null)
|
||||
{
|
||||
$datasetRaw->{'Nachricht'} = 'Nein';
|
||||
@@ -103,10 +128,29 @@ $query = '
|
||||
{
|
||||
$datasetRaw->{'Kaution'} = 'Offen';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'LockDate'} == null)
|
||||
{
|
||||
$datasetRaw->{'LockDate'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'LockUser'} == null)
|
||||
{
|
||||
$datasetRaw->{'LockUser'} = '-';
|
||||
}
|
||||
|
||||
$datasetRaw->{'AbgewiesenAm'} = date_format(date_create($datasetRaw->{'AbgewiesenAm'}),'Y-m-d H:i');
|
||||
return $datasetRaw;
|
||||
},
|
||||
|
||||
'markRow' => function($datasetRaw) {
|
||||
|
||||
if ($datasetRaw->LockDate != null)
|
||||
{
|
||||
return FilterWidget::DEFAULT_MARK_ROW_CLASS;
|
||||
}
|
||||
}
|
||||
|
||||
);
|
||||
|
||||
echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray);
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
$this->load->view(
|
||||
'templates/FHC-Header',
|
||||
array(
|
||||
'title' => 'Info Center',
|
||||
'jquery3' => true,
|
||||
'jqueryui1' => true,
|
||||
'jquerycheckboxes1' => true,
|
||||
'bootstrap3' => true,
|
||||
'fontawesome4' => true,
|
||||
'sbadmintemplate3' => true,
|
||||
'tablesorter2' => 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">
|
||||
Aufgenommen
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<?php $this->load->view('system/infocenter/infocenterAufgenommenData.php'); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<?php $this->load->view('templates/FHC-Footer'); ?>
|
||||
@@ -0,0 +1,95 @@
|
||||
<?php
|
||||
|
||||
$this->config->load('infocenter');
|
||||
$AUFGENOMMENER_STATUS = '\'Aufgenommener\'';
|
||||
$REJECTED_STATUS = '\'Abgewiesener\'';
|
||||
$STUDIENGANG_TYP = '\'l\'';
|
||||
$STUDIENSEMESTER = '\''.$this->variablelib->getVar('infocenter_studiensemester').'\'';
|
||||
$LOGDATA_NAME = '\'Message sent\'';
|
||||
$LOGDATA_VON = '\'online\'';
|
||||
|
||||
$query = '
|
||||
SELECT
|
||||
p.person_id AS "PersonId",
|
||||
p.vorname AS "Vorname",
|
||||
p.nachname AS "Nachname",
|
||||
(
|
||||
SELECT ARRAY_TO_STRING(ARRAY_AGG(DISTINCT UPPER(sg.typ) || UPPER(sg.kurzbz)), \', \')
|
||||
FROM public.tbl_prestudentstatus pss
|
||||
JOIN public.tbl_prestudent ps USING(prestudent_id)
|
||||
JOIN public.tbl_studiengang sg USING(studiengang_kz)
|
||||
WHERE
|
||||
pss.status_kurzbz = '. $AUFGENOMMENER_STATUS .'
|
||||
AND ps.person_id = p.person_id
|
||||
AND sg.typ IN ('.$STUDIENGANG_TYP.')
|
||||
AND pss.studiensemester_kurzbz = '.$STUDIENSEMESTER.'
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM tbl_prestudentstatus spss
|
||||
WHERE spss.prestudent_id = pss.prestudent_id
|
||||
AND spss.status_kurzbz = '. $REJECTED_STATUS .'
|
||||
AND spss.studiensemester_kurzbz IN (
|
||||
SELECT ss.studiensemester_kurzbz FROM public.tbl_studiensemester ss WHERE ss.ende >
|
||||
(SELECT start FROM public.tbl_studiensemester sss WHERE studiensemester_kurzbz = '. $STUDIENSEMESTER .'))
|
||||
)
|
||||
LIMIT 1
|
||||
) AS "Studiengang"
|
||||
FROM
|
||||
public.tbl_person p
|
||||
WHERE
|
||||
EXISTS (
|
||||
SELECT 1
|
||||
FROM public.tbl_prestudent sps
|
||||
JOIN public.tbl_studiengang ssg USING(studiengang_kz)
|
||||
WHERE sps.person_id = p.person_id
|
||||
AND ssg.typ IN (' . $STUDIENGANG_TYP . ')
|
||||
AND ' . $AUFGENOMMENER_STATUS . ' = (
|
||||
SELECT spss.status_kurzbz
|
||||
FROM public.tbl_prestudentstatus spss
|
||||
WHERE spss.prestudent_id = sps.prestudent_id
|
||||
ORDER BY spss.datum DESC, spss.insertamum DESC, spss.ext_id DESC
|
||||
LIMIT 1
|
||||
)
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM tbl_prestudentstatus spss
|
||||
WHERE spss.prestudent_id = sps.prestudent_id
|
||||
AND spss.status_kurzbz = ' . $AUFGENOMMENER_STATUS . '
|
||||
AND spss.studiensemester_kurzbz = ' . $STUDIENSEMESTER . '
|
||||
)
|
||||
)
|
||||
|
||||
';
|
||||
|
||||
$filterWidgetArray = array(
|
||||
'query' => $query,
|
||||
'app' => InfoCenter::APP,
|
||||
'datasetName' => 'aufgenommen',
|
||||
'filter_id' => $this->input->get('filter_id'),
|
||||
'requiredPermissions' => 'infocenter',
|
||||
'datasetRepresentation' => 'tablesorter',
|
||||
'checkboxes' => 'PersonId',
|
||||
'additionalColumns' => array('Details'),
|
||||
'columnsAliases' => array(
|
||||
'PersonId',
|
||||
ucfirst($this->p->t('person', 'vorname')) ,
|
||||
ucfirst($this->p->t('person', 'nachname')),
|
||||
ucfirst($this->p->t('lehre', 'studiengang'))
|
||||
),
|
||||
|
||||
'formatRow' => function($datasetRaw)
|
||||
{
|
||||
$datasetRaw->{'Details'} = sprintf(
|
||||
'<a href="%s?person_id=%s&origin_page=%s&fhc_controller_id=%s&prev_filter_id=%s">Details</a>',
|
||||
site_url('system/infocenter/InfoCenter/showDetails'),
|
||||
$datasetRaw->{'PersonId'},
|
||||
'aufgenommen',
|
||||
(isset($_GET['fhc_controller_id']) ? $_GET['fhc_controller_id'] : ''),
|
||||
(isset($_GET['filter_id']) ? $_GET['filter_id'] : '')
|
||||
);
|
||||
return $datasetRaw;
|
||||
}
|
||||
);
|
||||
|
||||
echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray);
|
||||
?>
|
||||
@@ -57,10 +57,11 @@
|
||||
if (isset($lockedby)):
|
||||
echo $this->p->t('global', 'wirdBearbeitetVon').': ';
|
||||
echo $lockedby;
|
||||
if ($origin_page == 'index'):
|
||||
if (in_array($origin_page, array('index', 'abgewiesen'))):
|
||||
$unlockpath = 'unlockPerson/'.$stammdaten->person_id;
|
||||
$unlockpath .= '?fhc_controller_id='.$fhc_controller_id;
|
||||
$unlockpath .= '&filter_id='.$prev_filter_id;
|
||||
$unlockpath .= '&origin_page='.$origin_page;
|
||||
?>
|
||||
|
||||
<a href="<?php echo $unlockpath; ?>">
|
||||
|
||||
@@ -161,7 +161,7 @@ if(!isset($_SESSION['pruefling_id']))
|
||||
$pruefling = new pruefling();
|
||||
$pruefling->load($_SESSION['pruefling_id']);
|
||||
|
||||
if ($pruefling->gesperrt === 't')
|
||||
if ($pruefling->isGesperrt($_SESSION['pruefling_id']))
|
||||
die("<script>document.location.href='prueflinggesperrt.php';</script>");
|
||||
|
||||
if (!in_array($gebiet_id, $_SESSION['alleGebiete']))
|
||||
|
||||
@@ -362,6 +362,8 @@ if ((isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id']) &&
|
||||
$pruefling->idnachweis = '';
|
||||
$pruefling->registriert = date('Y-m-d H:i:s');
|
||||
$pruefling->prestudent_id = $_SESSION['prestudent_id'];
|
||||
$pruefling->gesperrt = $pruefling->isGesperrt(null, $_SESSION['prestudent_id']);
|
||||
|
||||
if ($pruefling->save())
|
||||
{
|
||||
$_SESSION['pruefling_id']=$pruefling->pruefling_id;
|
||||
@@ -385,6 +387,7 @@ if (isset($_POST['save']) && isset($_SESSION['prestudent_id']))
|
||||
$pruefling->registriert = date('Y-m-d H:i:s');
|
||||
$pruefling->prestudent_id = $_SESSION['prestudent_id'];
|
||||
$pruefling->semester = $_POST['semester'];
|
||||
$pruefling->gesperrt = $pruefling->isGesperrt(null, $_SESSION['prestudent_id']);
|
||||
if ($pruefling->save())
|
||||
{
|
||||
$_SESSION['pruefling_id']=$pruefling->pruefling_id;
|
||||
|
||||
@@ -870,6 +870,42 @@ class prestudent extends person
|
||||
AND tbl_reihungstest.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
)";
|
||||
break;
|
||||
case "bewerberrtnichtangemeldet":
|
||||
$qry.=" AND a.rolle='Bewerber'
|
||||
AND NOT EXISTS (
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
public.tbl_rt_person
|
||||
JOIN public.tbl_reihungstest ON (rt_id = reihungstest_id)
|
||||
WHERE
|
||||
person_id=a.person_id
|
||||
AND studienplan_id IN (
|
||||
SELECT studienplan_id FROM lehre.tbl_studienplan
|
||||
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
|
||||
WHERE tbl_studienordnung.studiengang_kz=a.studiengang_kz
|
||||
)
|
||||
AND tbl_reihungstest.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
)";
|
||||
break;
|
||||
case "bewerberrtangemeldet":
|
||||
$qry.=" AND a.rolle='Bewerber'
|
||||
AND EXISTS (
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
public.tbl_rt_person
|
||||
JOIN public.tbl_reihungstest ON (rt_id = reihungstest_id)
|
||||
WHERE
|
||||
person_id=a.person_id
|
||||
AND studienplan_id IN (
|
||||
SELECT studienplan_id FROM lehre.tbl_studienplan
|
||||
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
|
||||
WHERE tbl_studienordnung.studiengang_kz=a.studiengang_kz
|
||||
)
|
||||
AND tbl_reihungstest.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
)";
|
||||
break;
|
||||
case "zgv":
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->load($studiengang_kz);
|
||||
|
||||
@@ -108,12 +108,13 @@ class pruefling extends basis_db
|
||||
|
||||
if($this->new) //Wenn new true ist dann ein INSERT absetzen ansonsten ein UPDATE
|
||||
{
|
||||
$qry = 'BEGIN;INSERT INTO testtool.tbl_pruefling (studiengang_kz, idnachweis, registriert, prestudent_id, semester) VALUES('.
|
||||
$qry = 'BEGIN;INSERT INTO testtool.tbl_pruefling (studiengang_kz, idnachweis, registriert, prestudent_id, semester, gesperrt) VALUES('.
|
||||
$this->db_add_param($this->studiengang_kz).",".
|
||||
$this->db_add_param($this->idnachweis).",".
|
||||
$this->db_add_param($this->registriert).",".
|
||||
$this->db_add_param($this->prestudent_id).",".
|
||||
$this->db_add_param($this->semester).");";
|
||||
$this->db_add_param($this->semester).",".
|
||||
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).");";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -122,7 +123,8 @@ class pruefling extends basis_db
|
||||
' idnachweis='.$this->db_add_param($this->idnachweis).','.
|
||||
' registriert='.$this->db_add_param($this->registriert).','.
|
||||
' semester='.$this->db_add_param($this->semester).','.
|
||||
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).
|
||||
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).','.
|
||||
' gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).
|
||||
" WHERE pruefling_id=".$this->db_add_param($this->pruefling_id, FHC_INTEGER, false).";";
|
||||
}
|
||||
|
||||
@@ -557,5 +559,43 @@ class pruefling extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function isGesperrt($pruefling_id = null, $prestudent_id = null)
|
||||
{
|
||||
if (is_null($pruefling_id) && is_null($prestudent_id))
|
||||
{
|
||||
$this->errormsg = 'Falsche Parameterübergabe';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT spruefling.gesperrt
|
||||
FROM testtool.tbl_pruefling
|
||||
RIGHT JOIN public.tbl_prestudent USING(prestudent_id)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN public.tbl_prestudent pss ON pss.person_id = tbl_person.person_id
|
||||
JOIN testtool.tbl_pruefling spruefling ON pss.prestudent_id = spruefling.prestudent_id
|
||||
WHERE spruefling.gesperrt";
|
||||
|
||||
if (!is_null($pruefling_id))
|
||||
$qry .= " AND tbl_pruefling.pruefling_id = ".$this->db_add_param($pruefling_id, FHC_INTEGER);
|
||||
|
||||
if (!is_null($prestudent_id))
|
||||
$qry .= " AND tbl_prestudent.prestudent_id = ".$this->db_add_param($prestudent_id, FHC_INTEGER);
|
||||
|
||||
$qry .= " LIMIT 1";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if ($this->db_num_rows($result) == 0)
|
||||
return false;
|
||||
else
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei einer Abfrage';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -694,11 +694,17 @@ class reihungstest extends basis_db
|
||||
tbl_reihungstest.studiensemester_kurzbz,
|
||||
tbl_reihungstest.stufe,
|
||||
tbl_reihungstest.anmeldefrist,
|
||||
tbl_reihungstest.aufnahmegruppe_kurzbz
|
||||
tbl_reihungstest.aufnahmegruppe_kurzbz,
|
||||
tbl_studiengang.typ,
|
||||
UPPER(typ::varchar(1) || kurzbz) AS stg_kuerzel,
|
||||
so.studiengangbezeichnung,
|
||||
so.studiengangbezeichnung_englisch
|
||||
FROM
|
||||
public.tbl_rt_person
|
||||
JOIN
|
||||
public.tbl_reihungstest ON (rt_id=reihungstest_id)
|
||||
JOIN public.tbl_reihungstest ON (rt_id=reihungstest_id)
|
||||
JOIN public.tbl_studiengang ON tbl_reihungstest.studiengang_kz = tbl_studiengang.studiengang_kz
|
||||
JOIN lehre.tbl_studienplan sp USING(studienplan_id)
|
||||
JOIN lehre.tbl_studienordnung so USING(studienordnung_id)
|
||||
WHERE
|
||||
tbl_rt_person.person_id=".$this->db_add_param($person_id);
|
||||
|
||||
@@ -737,6 +743,10 @@ class reihungstest extends basis_db
|
||||
$obj->stufe = $row->stufe;
|
||||
$obj->anmeldefrist = $row->anmeldefrist;
|
||||
$obj->aufnahmegruppe_kurzbz = $row->aufnahmegruppe_kurzbz;
|
||||
$obj->typ = $row->typ;
|
||||
$obj->stg_kuerzel = $row->stg_kuerzel;
|
||||
$obj->studiengangbezeichnung = $row->studiengangbezeichnung;
|
||||
$obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
|
||||
@@ -290,6 +290,24 @@ function draw_orgformsubmenu($stg_kz, $orgform)
|
||||
<VERBAND:typ>bewerber</VERBAND:typ>
|
||||
<VERBAND:orgform><![CDATA['.$orgform.']]></VERBAND:orgform>
|
||||
</RDF:Description>
|
||||
|
||||
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/bewerber/reihungstestnichtangemeldet" >
|
||||
<VERBAND:name>Nicht zum Reihungstest angemeldet</VERBAND:name>
|
||||
<VERBAND:stg><![CDATA['.$stg_kurzbz.']]></VERBAND:stg>
|
||||
<VERBAND:stg_kz><![CDATA['.$stg_kz.']]></VERBAND:stg_kz>
|
||||
<VERBAND:stsem><![CDATA['.$stsem->studiensemester_kurzbz.']]></VERBAND:stsem>
|
||||
<VERBAND:typ>bewerberrtnichtangemeldet</VERBAND:typ>
|
||||
<VERBAND:orgform><![CDATA['.$orgform.']]></VERBAND:orgform>
|
||||
</RDF:Description>
|
||||
|
||||
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/bewerber/reihungstestangemeldet" >
|
||||
<VERBAND:name>Reihungstest angemeldet</VERBAND:name>
|
||||
<VERBAND:stg><![CDATA['.$stg_kurzbz.']]></VERBAND:stg>
|
||||
<VERBAND:stg_kz><![CDATA['.$stg_kz.']]></VERBAND:stg_kz>
|
||||
<VERBAND:stsem><![CDATA['.$stsem->studiensemester_kurzbz.']]></VERBAND:stsem>
|
||||
<VERBAND:typ>bewerberrtangemeldet</VERBAND:typ>
|
||||
<VERBAND:orgform><![CDATA['.$orgform.']]></VERBAND:orgform>
|
||||
</RDF:Description>
|
||||
|
||||
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/aufgenommen" >
|
||||
<VERBAND:name>Aufgenommen</VERBAND:name>
|
||||
@@ -344,8 +362,14 @@ function draw_orgformsubmenu($stg_kz, $orgform)
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/interessenten/reihungstestangemeldet\" />\n";
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t\t</RDF:Seq>";
|
||||
$orgform_sequence[$stg_kz].= "\n\t\t\t</RDF:li>\n";
|
||||
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/bewerber\" />\n";
|
||||
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li>";
|
||||
$orgform_sequence[$stg_kz].= "\n\t\t\t\t<RDF:Seq RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/bewerber\">\n";
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/bewerber/reihungstestnichtangemeldet\" />\n";
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/bewerber/reihungstestangemeldet\" />\n";
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t\t</RDF:Seq>";
|
||||
$orgform_sequence[$stg_kz].= "\n\t\t\t</RDF:li>\n";
|
||||
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/aufgenommen\" />\n";
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/warteliste\" />\n";
|
||||
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/absage\" />\n";
|
||||
@@ -624,6 +648,22 @@ while ($row=$dbo->db_fetch_object())
|
||||
<VERBAND:typ><![CDATA[bewerber]]></VERBAND:typ>
|
||||
</RDF:Description>
|
||||
|
||||
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/bewerber/reihungstestnichtangemeldet'; ?>" >
|
||||
<VERBAND:name><![CDATA[Nicht zum Reihungstest angemeldet]]></VERBAND:name>
|
||||
<VERBAND:stg><![CDATA[<?php echo $stg_kurzbz; ?>]]></VERBAND:stg>
|
||||
<VERBAND:stg_kz><![CDATA[<?php echo $row->studiengang_kz; ?>]]></VERBAND:stg_kz>
|
||||
<VERBAND:stsem><![CDATA[<?php echo $stsem->studiensemester_kurzbz; ?>]]></VERBAND:stsem>
|
||||
<VERBAND:typ><![CDATA[bewerberrtnichtangemeldet]]></VERBAND:typ>
|
||||
</RDF:Description>
|
||||
|
||||
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/bewerber/reihungstestangemeldet'; ?>" >
|
||||
<VERBAND:name><![CDATA[Reihungstest angemeldet]]></VERBAND:name>
|
||||
<VERBAND:stg><![CDATA[<?php echo $stg_kurzbz; ?>]]></VERBAND:stg>
|
||||
<VERBAND:stg_kz><![CDATA[<?php echo $row->studiengang_kz; ?>]]></VERBAND:stg_kz>
|
||||
<VERBAND:stsem><![CDATA[<?php echo $stsem->studiensemester_kurzbz; ?>]]></VERBAND:stsem>
|
||||
<VERBAND:typ><![CDATA[bewerberrtangemeldet]]></VERBAND:typ>
|
||||
</RDF:Description>
|
||||
|
||||
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/aufgenommen'; ?>" >
|
||||
<VERBAND:name><![CDATA[Aufgenommen]]></VERBAND:name>
|
||||
<VERBAND:stg><![CDATA[<?php echo $stg_kurzbz; ?>]]></VERBAND:stg>
|
||||
@@ -832,8 +872,14 @@ draw_orgformpart($stg_kz);
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/interessenten/reihungstestangemeldet\" />\n";
|
||||
echo "\t\t\t\t</RDF:Seq>";
|
||||
echo "\n\t\t\t</RDF:li>\n";
|
||||
|
||||
echo "\t\t\t<RDF:li>";
|
||||
echo "\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/bewerber\">\n";
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/bewerber/reihungstestnichtangemeldet\" />\n";
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/bewerber/reihungstestangemeldet\" />\n";
|
||||
echo "\t\t\t\t</RDF:Seq>";
|
||||
echo "\n\t\t\t</RDF:li>\n";
|
||||
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/bewerber\" />\n";
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/aufgenommen\" />\n";
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/warteliste\" />\n";
|
||||
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/absage\" />\n";
|
||||
|
||||
+1
-1
@@ -737,7 +737,7 @@ if($xmlformat=='rdf')
|
||||
}
|
||||
elseif(in_array($typ, array('prestudent', 'interessenten', 'bewerber', 'aufgenommen',
|
||||
'warteliste', 'absage', 'zgv', 'reihungstestangemeldet', 'reihungstestnichtangemeldet', 'absolvent',
|
||||
'diplomand', 'bewerbungnichtabgeschickt', 'bewerbungabgeschickt', 'statusbestaetigt', 'statusbestaetigtrtnichtangemeldet', 'statusbestaetigtrtangemeldet')))
|
||||
'diplomand', 'bewerbungnichtabgeschickt', 'bewerbungabgeschickt', 'statusbestaetigt', 'statusbestaetigtrtnichtangemeldet', 'statusbestaetigtrtangemeldet', 'bewerberrtangemeldet', 'bewerberrtnichtangemeldet')))
|
||||
{
|
||||
$prestd = new prestudent();
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ require_once('dbupdate_3.4/28089_plausichecks_in_extension_hinzufuegen.php');
|
||||
require_once('dbupdate_3.4/29133_einzelne_studiengaenge_aus_issuechecks_ausnehmen.php');
|
||||
require_once('dbupdate_3.4/30537_anmerkung_in_tbl_rolleberechtigung.php');
|
||||
require_once('dbupdate_3.4/30181_tabelle_anrechnung_neue_attribute_fuer_begruendung.php');
|
||||
require_once('dbupdate_3.4/29529_infocenter_anpassungen.php');
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
if (! defined('DB_NAME')) exit('No direct script access allowed');
|
||||
|
||||
// Update Berechtigungen fuer web User erteilen fuer tbl_pruefling_pruefling_id_seq
|
||||
if($result = @$db->db_query("SELECT has_sequence_privilege('web', 'testtool.tbl_pruefling_pruefling_id_seq', 'UPDATE')"))
|
||||
{
|
||||
|
||||
if($db->db_fetch_object($result)->has_sequence_privilege === "f")
|
||||
{
|
||||
$qry = "GRANT SELECT, UPDATE ON SEQUENCE testtool.tbl_pruefling_pruefling_id_seq to web;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>testtool.tbl_pruefling Berechtigungen: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Web User fuer testtool.tbl_pruefling berechtigt';
|
||||
}
|
||||
}
|
||||
|
||||
// Update Berechtigungen fuer vilesci User erteilen fuer tbl_pruefling_pruefling_id_seq
|
||||
if($result = @$db->db_query("SELECT has_sequence_privilege('vilesci', 'testtool.tbl_pruefling_pruefling_id_seq', 'UPDATE')"))
|
||||
{
|
||||
if($db->db_fetch_object($result)->has_sequence_privilege === "f")
|
||||
{
|
||||
$qry = "GRANT SELECT, UPDATE ON SEQUENCE testtool.tbl_pruefling_pruefling_id_seq to vilesci;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>testtool.tbl_pruefling Berechtigungen: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>vilesci User fuer testtool.tbl_pruefling berechtigt';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -520,7 +520,29 @@ $filters = array(
|
||||
{"name": "Studiengang"},
|
||||
{"name": "AbgewiesenAm"},
|
||||
{"name": "Nachricht"},
|
||||
{"name": "Kaution"}
|
||||
{"name": "Kaution"},
|
||||
{"name": "LockUser"}
|
||||
],
|
||||
"filters": []
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'infocenter',
|
||||
'dataset_name' => 'aufgenommen',
|
||||
'filter_kurzbz' => 'InfoCenterAufgenommenAlle',
|
||||
'description' => '{Alle}',
|
||||
'sort' => 1,
|
||||
'default_filter' => true,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "Aufgenommen - Lehrgänge",
|
||||
"columns": [
|
||||
{"name": "PersonId"},
|
||||
{"name": "Vorname"},
|
||||
{"name": "Nachname"},
|
||||
{"name": "Studiengang"}
|
||||
],
|
||||
"filters": []
|
||||
}
|
||||
|
||||
@@ -490,22 +490,67 @@ if ($rtprueflingEntSperren)
|
||||
exit();
|
||||
}
|
||||
|
||||
if (isset($_POST['prestudent_id']) && is_numeric($_POST['prestudent_id'])
|
||||
if (isset($_POST['person_id']) && is_numeric($_POST['person_id'])
|
||||
&& isset($_POST['art']))
|
||||
{
|
||||
$qry = "UPDATE testtool.tbl_pruefling SET gesperrt =" . $db->db_add_param($_POST['art'], 'BOOLEAN') . "
|
||||
WHERE prestudent_id IN
|
||||
(SELECT prestudent_id FROM public.tbl_prestudent ps
|
||||
JOIN public.tbl_person tp ON tp.person_id = ps.person_id
|
||||
WHERE tp.person_id = (SELECT person_id FROM public.tbl_prestudent sps WHERE sps.prestudent_id = " . $db->db_add_param($_POST['prestudent_id']) . "));";
|
||||
$qry = "SELECT pruefling_id
|
||||
FROM testtool.tbl_pruefling
|
||||
WHERE prestudent_id IN (
|
||||
SELECT prestudent_id
|
||||
FROM public.tbl_prestudent
|
||||
WHERE person_id = ". $db->db_add_param($_POST['person_id']) . "
|
||||
)";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
$msg = $_POST['art'] === 'false' ? 'Pruefling wurde gesperrt' : 'Pruefling wurde freigeschaltet';
|
||||
echo json_encode(array(
|
||||
'status' => 'ok',
|
||||
'msg' => $msg));
|
||||
exit();
|
||||
if ($db->db_num_rows($result) === 0)
|
||||
{
|
||||
$ps = new prestudent();
|
||||
$ps->getPrestudenten($_POST['person_id']);
|
||||
|
||||
$prestudent = new prestudent($ps->result[0]->prestudent_id);
|
||||
$prestudent->getLastStatus($prestudent->prestudent_id);
|
||||
|
||||
$pruefling = new pruefling();
|
||||
$pruefling->new = true;
|
||||
$pruefling->studiengang_kz = $prestudent->studiengang_kz;
|
||||
$pruefling->registriert = date('Y-m-d H:i:s');
|
||||
$pruefling->semester = $prestudent->ausbildungssemester;
|
||||
$pruefling->prestudent_id = $prestudent->prestudent_id;
|
||||
$pruefling->gesperrt = true;
|
||||
|
||||
$resultSperre = $pruefling->save();
|
||||
}
|
||||
else
|
||||
{
|
||||
$pruefling_ids = array();
|
||||
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
$pruefling_ids[] = $row->pruefling_id;
|
||||
|
||||
$qry = "UPDATE testtool.tbl_pruefling
|
||||
SET gesperrt =" . $db->db_add_param($_POST['art'], 'BOOLEAN') . "
|
||||
WHERE pruefling_id IN (" . $db->db_implode4SQL($pruefling_ids) . ")";
|
||||
|
||||
$resultSperre = $db->db_query($qry);
|
||||
}
|
||||
|
||||
if ($resultSperre)
|
||||
{
|
||||
$msg = $_POST['art'] === 'false' ? 'Pruefling wurde gesperrt' : 'Pruefling wurde freigeschaltet';
|
||||
echo json_encode(array(
|
||||
'status' => 'ok',
|
||||
'msg' => $msg));
|
||||
exit();
|
||||
}
|
||||
else
|
||||
{
|
||||
echo json_encode(array(
|
||||
'status' => 'fehler',
|
||||
'msg' => 'Fehler beim speichern der Daten'
|
||||
));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1248,6 +1293,7 @@ $semester = isset($_REQUEST['semester']) ? $_REQUEST['semester'] : '';
|
||||
$prestudent_id = isset($_REQUEST['prestudent_id']) ? $_REQUEST['prestudent_id'] : '';
|
||||
$orgform_kurzbz = isset($_REQUEST['orgform_kurzbz']) ? $_REQUEST['orgform_kurzbz'] : '';
|
||||
$format = (isset($_REQUEST['format']) ? $_REQUEST['format'] : '');
|
||||
$stgtyp = (isset($_REQUEST['stgtyp']) ? $_REQUEST['stgtyp'] : '');
|
||||
$rtStudiensemester = '';
|
||||
|
||||
if ($reihungstest != '' && (is_array($reihungstest) || is_numeric($reihungstest)))
|
||||
@@ -1418,7 +1464,12 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
|
||||
ORDER BY studienplan_id DESC LIMIT 1)
|
||||
OR tbl_ablauf.studienplan_id IS NULL)";
|
||||
}
|
||||
//$query .= " AND nachname='Al-Mafrachi'";
|
||||
|
||||
if ($stgtyp !== '')
|
||||
{
|
||||
$query .= " AND tbl_studiengang.typ = " .$db->db_add_param($stgtyp);
|
||||
}
|
||||
|
||||
$query .= " ORDER BY tbl_ablauf.studiengang_kz, tbl_ablauf.semester, reihung";
|
||||
|
||||
if (!($result = $db->db_query($query)))
|
||||
@@ -1638,18 +1689,23 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
|
||||
//$query .= " AND tbl_ablauf.studienplan_id = 5";
|
||||
$query .= " AND tbl_studienplan.orgform_kurzbz=" . $db->db_add_param($orgform_kurzbz);
|
||||
}
|
||||
|
||||
if ($stgtyp !== '')
|
||||
{
|
||||
$query .= " AND tbl_studiengang.typ = " . $db->db_add_param($stgtyp);
|
||||
}
|
||||
|
||||
//$query .= " AND nachname='Al-Mafrachi'";
|
||||
$query .= " ORDER BY nachname,
|
||||
vorname,
|
||||
person_id
|
||||
";/*print_r($query);*/
|
||||
//echo '<pre>', var_dump($query), '</pre>';
|
||||
person_id";
|
||||
if (!($result = $db->db_query($query)))
|
||||
{
|
||||
die($db->db_last_error());
|
||||
}
|
||||
|
||||
$gebiete_arr = array();
|
||||
$gesperrt_arr = array();
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
// Hack für BEW-BB, wenn auch BEW-DL-Ergebnisse vorliegen
|
||||
@@ -1666,7 +1722,10 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
|
||||
$ergebnis[$row->prestudent_id] = new stdClass();
|
||||
$gebiete_arr[$row->prestudent_id] = array();
|
||||
}
|
||||
|
||||
|
||||
if (!isset($gesperrt_arr[$row->person_id]))
|
||||
$gesperrt_arr[$row->person_id] = new stdClass();
|
||||
|
||||
$ergebnis[$row->prestudent_id]->prestudent_id = $row->prestudent_id;
|
||||
$ergebnis[$row->prestudent_id]->person_id = $row->person_id;
|
||||
$ergebnis[$row->prestudent_id]->reihungstest_id = $row->reihungstest_id;
|
||||
@@ -1678,7 +1737,6 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
|
||||
$ergebnis[$row->prestudent_id]->geschlecht = $row->geschlecht;
|
||||
$ergebnis[$row->prestudent_id]->idnachweis = $row->idnachweis;
|
||||
$ergebnis[$row->prestudent_id]->registriert = $row->registriert;
|
||||
$ergebnis[$row->prestudent_id]->gesperrt = $row->gesperrt;
|
||||
$ergebnis[$row->prestudent_id]->stg_kurzbz = $row->stg_kurzbz;
|
||||
$ergebnis[$row->prestudent_id]->stg_bez = $row->stg_bez;
|
||||
$ergebnis[$row->prestudent_id]->ausbildungssemester = $row->ausbildungssemester;
|
||||
@@ -1690,6 +1748,13 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
|
||||
$ergebnis[$row->prestudent_id]->teilgenommen = $db->db_parse_bool($row->teilgenommen);
|
||||
$ergebnis[$row->prestudent_id]->qualifikationskurs = $db->db_parse_bool($row->qualifikationskurs);
|
||||
$ergebnis[$row->prestudent_id]->letzter_status = $row->letzter_status;
|
||||
$ergebnis[$row->prestudent_id]->gesperrt = $row->gesperrt;
|
||||
|
||||
$gesperrt = $db->db_parse_bool($row->gesperrt);
|
||||
if (!isset($gesperrt_arr[$row->person_id]->gesperrt) || ($gesperrt_arr[$row->person_id]->gesperrt !== true && $gesperrt === true))
|
||||
{
|
||||
$gesperrt_arr[$row->person_id]->gesperrt = $gesperrt;
|
||||
}
|
||||
|
||||
if (!isset($ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]))
|
||||
{
|
||||
@@ -2440,7 +2505,7 @@ else
|
||||
});
|
||||
}
|
||||
}
|
||||
function prueflingEntSperren(prestudent_id, name, art)
|
||||
function prueflingEntSperren(person_id, name, art)
|
||||
{
|
||||
if (art === true)
|
||||
var text = "sperren";
|
||||
@@ -2450,7 +2515,7 @@ else
|
||||
if (confirm("Wollen Sie den Studenten "+ name + " wirklich " + text + "?"))
|
||||
{
|
||||
data = {
|
||||
prestudent_id: prestudent_id,
|
||||
person_id: person_id,
|
||||
art: art,
|
||||
rtprueflingEntSperren: true
|
||||
};
|
||||
@@ -2464,21 +2529,31 @@ else
|
||||
{
|
||||
if(data.status !== "ok")
|
||||
{
|
||||
$("#msgbox").attr("class","alert alert-danger");
|
||||
$("#msgbox").show();
|
||||
$("#msgbox").html(data["msg"]);
|
||||
if (data.status === "warning")
|
||||
{
|
||||
$("#msgbox").attr("class","alert alert-warning");
|
||||
$("#msgbox").show();
|
||||
$("#msgbox").html(data["msg"]);
|
||||
$("#msgbox").html(data["msg"]).delay(2000).fadeOut();
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#msgbox").attr("class","alert alert-danger");
|
||||
$("#msgbox").show();
|
||||
$("#msgbox").html(data["msg"]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (art === true)
|
||||
{
|
||||
$("#prueflingentsperren_" + prestudent_id).removeClass("hidden");
|
||||
$("#prueflingsperren_" + prestudent_id).addClass("hidden");
|
||||
$(".prueflingentsperren_" + person_id).removeClass("hidden");
|
||||
$(".prueflingsperren_" + person_id).addClass("hidden");
|
||||
}
|
||||
else if (art === false)
|
||||
{
|
||||
$("#prueflingsperren_" + prestudent_id).removeClass("hidden");
|
||||
$("#prueflingentsperren_" + prestudent_id).addClass("hidden");
|
||||
$(".prueflingsperren_" + person_id).removeClass("hidden");
|
||||
$(".prueflingentsperren_" + person_id).addClass("hidden");
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -3019,6 +3094,20 @@ else
|
||||
|
||||
echo ' <label>von Datum: <INPUT class="datepicker_datum" type="text" name="datum_von" maxlength="10" size="10" value="' . $datum_obj->formatDatum($datum_von, 'd.m.Y') . '" /></label> ';
|
||||
echo '<label>bis Datum: <INPUT class="datepicker_datum" type="text" name="datum_bis" maxlength="10" size="10" value="' . $datum_obj->formatDatum($datum_bis, 'd.m.Y') . '" /></label>';
|
||||
|
||||
$studiengangtyp = ['b' => 'Bachelor', 'm' => 'Master'];
|
||||
echo ' <label>Studiengang Typ:
|
||||
<SELECT name="stgtyp">
|
||||
<OPTION value="">Alle</OPTION>';
|
||||
foreach ($studiengangtyp as $key => $typ)
|
||||
{
|
||||
$selected = "";
|
||||
if (isset($_REQUEST['stgtyp']) && $_REQUEST['stgtyp'] !== '' && $_REQUEST['stgtyp'] === $key)
|
||||
$selected = 'selected';
|
||||
|
||||
echo '<option value='. $key .' '. $selected .'>'. $typ . '</option>';
|
||||
}
|
||||
echo '</SELECT></label>';
|
||||
echo '</td></tr>';
|
||||
echo '<tr><td>';
|
||||
echo 'PrestudentIn: <INPUT id="prestudent" type="text" name="prestudent_id" size="50" value="' . $prestudent_id . '" placeholder="Name, UID oder Prestudent_id eingeben"/><input type="hidden" id="prestudent_id" name="prestudent_id" value="' . $prestudent_id . '" />';
|
||||
@@ -3032,6 +3121,7 @@ else
|
||||
&prestudent_id=' . $prestudent_id . '
|
||||
&' . http_build_query(array('reihungstest' => $reihungstest)) . '
|
||||
&orgform_kurzbz=' . $orgform_kurzbz . '
|
||||
&stgtyp=' . $stgtyp . '
|
||||
&format=xls"
|
||||
class="btn btn-primary"
|
||||
role="button">
|
||||
@@ -3293,10 +3383,10 @@ else
|
||||
|
||||
|
||||
echo "<td class='textcentered ".$inaktiv ."'>
|
||||
<a href='#' id='prueflingsperren_".$erg->prestudent_id ."' class='" . ($erg->gesperrt === 't' ? "hidden" : "") ."' onclick='prueflingEntSperren(" . $erg->prestudent_id . ", \"" . $erg->vorname . " " . $erg->nachname ."\"" .", true)'>
|
||||
<a href='#' class='prueflingsperren_".$erg->person_id . ((isset($gesperrt_arr[$erg->person_id]) && $gesperrt_arr[$erg->person_id]->gesperrt === true) ? " hidden" : "") ."' onclick='prueflingEntSperren(" . $erg->person_id . ", \"" . $erg->vorname . " " . $erg->nachname ."\"" .", true)'>
|
||||
<span class='glyphicon glyphicon-remove'></span>
|
||||
</a>
|
||||
<a href='#' id='prueflingentsperren_".$erg->prestudent_id ."' class='" . ($erg->gesperrt !== 't' ? "hidden" : "") ."' onclick='prueflingEntSperren(" . $erg->prestudent_id . ", \"" . $erg->vorname . " " . $erg->nachname ."\"" .", false);'>
|
||||
<a href='#' class='prueflingentsperren_".$erg->person_id . ((isset($gesperrt_arr[$erg->person_id]) && $gesperrt_arr[$erg->person_id]->gesperrt !== true ? " hidden" : "")) . "' onclick='prueflingEntSperren(" . $erg->person_id . ", \"" . $erg->vorname . " " . $erg->nachname ."\"" .", false);'>
|
||||
<span class='glyphicon glyphicon-ok'></span>
|
||||
</a>
|
||||
</td>";
|
||||
|
||||
Reference in New Issue
Block a user