mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-21 00:42:15 +00:00
Infocenter details changes: popup for ZGV info, show Bewerbungsfriste(n), optimized mobile responsiveness, set dokumente to "akzeptiert" when freigegeben
This commit is contained in:
@@ -111,10 +111,11 @@ class InfoCenter extends VileSci_Controller
|
||||
show_error('person id is not numeric!');
|
||||
|
||||
$personexists = $this->PersonModel->load($person_id);
|
||||
|
||||
if(isError($personexists))
|
||||
show_error($personexists->retval);
|
||||
|
||||
if (empty($personexists->retval[0]))
|
||||
if (empty($personexists->retval))
|
||||
show_error('person does not exist!');
|
||||
|
||||
//mark person as locked for editing
|
||||
@@ -211,6 +212,29 @@ class InfoCenter extends VileSci_Controller
|
||||
->set_output(json_encode($jsonoutput));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Zugangsvoraussetzungen for a prestudents as a description text
|
||||
* @param $prestudent_id
|
||||
*/
|
||||
public function getZgvInfoForPrestudent($prestudent_id)
|
||||
{
|
||||
$studienordnung = $this->PrestudentstatusModel->getStudienordnungWithZgvText($prestudent_id);
|
||||
|
||||
$prestudentdata = $this->_getPersonAndStudiengangFromPrestudent($prestudent_id);
|
||||
$studiengangbezeichnung = $prestudentdata['studiengang_bezeichnung'];
|
||||
|
||||
$data = array('studiengang_bezeichnung' => $studiengangbezeichnung, 'data' => null);
|
||||
|
||||
if (hasData($studienordnung))
|
||||
{
|
||||
$data['data'] = $studienordnung->retval[0]->data;
|
||||
}
|
||||
|
||||
$this->load->view('system/infocenter/studiengangZgvInfo.php',
|
||||
$data
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Saves a zgv for a prestudent. includes Ort, Datum, Nation for bachelor and master.
|
||||
* @param $prestudent_id
|
||||
@@ -279,7 +303,7 @@ class InfoCenter extends VileSci_Controller
|
||||
}
|
||||
|
||||
//check if still Interessent and not freigegeben yet
|
||||
if ($lastStatus->retval[0]->status_kurzbz === 'Interessent' && !isset($lastStatus->retval[0]->bestaetigtam))
|
||||
if (count($lastStatus->retval) > 0 && $lastStatus->retval[0]->status_kurzbz === 'Interessent' && !isset($lastStatus->retval[0]->bestaetigtam))
|
||||
{
|
||||
$result = $this->PrestudentstatusModel->insert(
|
||||
array(
|
||||
@@ -327,6 +351,11 @@ class InfoCenter extends VileSci_Controller
|
||||
{
|
||||
$lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent_id);
|
||||
|
||||
if (isError($lastStatus))
|
||||
{
|
||||
show_error($lastStatus->retval);
|
||||
}
|
||||
|
||||
if (count($lastStatus->retval) > 0)
|
||||
{
|
||||
$lastStatus = $lastStatus->retval[0];
|
||||
@@ -354,10 +383,34 @@ class InfoCenter extends VileSci_Controller
|
||||
show_error($result->retval);
|
||||
}
|
||||
|
||||
$this->_sendFreigabeMail($prestudent_id);
|
||||
$this->load->model('crm/dokumentprestudent_model', 'DokumentprestudentModel');
|
||||
|
||||
$logdata = $this->_getPersonAndStudiengangFromPrestudent($prestudent_id);
|
||||
|
||||
//set documents which have been formal geprüft to accepted
|
||||
$result = $this->AkteModel->loadWhere(array('person_id' => $logdata['person_id'], 'formal_geprueft_amum !=' => NULL));
|
||||
|
||||
if (isError($result))
|
||||
{
|
||||
show_error($result->retval);
|
||||
}
|
||||
|
||||
$dokument_kurzbzs = array();
|
||||
|
||||
foreach ($result->retval as $akte)
|
||||
{
|
||||
$dokument_kurzbzs[] = $akte->dokument_kurzbz;
|
||||
}
|
||||
|
||||
$result = $this->DokumentprestudentModel->setAcceptedDocuments($prestudent_id, $dokument_kurzbzs);
|
||||
|
||||
if (isError($result))
|
||||
{
|
||||
show_error($result->retval);
|
||||
}
|
||||
|
||||
$this->_sendFreigabeMail($prestudent_id);
|
||||
|
||||
$this->_log($logdata['person_id'], 'freigegeben', array($prestudent_id, $logdata['studiengang_kurzbz']));
|
||||
}
|
||||
}
|
||||
@@ -821,8 +874,9 @@ class InfoCenter extends VileSci_Controller
|
||||
|
||||
$person_id = $prestudent->retval[0]->person_id;
|
||||
$studiengang_kurzbz = $prestudent->retval[0]->studiengang;
|
||||
$studiengang_bezeichnung = $prestudent->retval[0]->studiengangbezeichnung;
|
||||
|
||||
return array('person_id' => $person_id, 'studiengang_kurzbz' => $studiengang_kurzbz);
|
||||
return array('person_id' => $person_id, 'studiengang_kurzbz' => $studiengang_kurzbz, 'studiengang_bezeichnung' => $studiengang_bezeichnung);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -229,10 +229,34 @@ class Prestudent_model extends DB_Model
|
||||
{
|
||||
$this->load->model('system/sprache_model', 'SpracheModel');
|
||||
$language = $this->SpracheModel->load($lastStatus->retval[0]->sprache);
|
||||
|
||||
if ($language->error)
|
||||
return error($language->retval);
|
||||
|
||||
if (count($language->retval) > 0)
|
||||
$lastStatus->retval[0]->sprachedetails = $language->retval[0];
|
||||
|
||||
//get Bewerbungsfrist
|
||||
$this->load->model('crm/bewerbungstermine_model', 'BewerbungstermineModel');
|
||||
$this->BewerbungstermineModel->addSelect('ende, nachfrist_ende');
|
||||
$this->BewerbungstermineModel->addOrder('ende', 'DESC');
|
||||
$this->BewerbungstermineModel->addLimit(1);
|
||||
$bewerbungstermin = $this->BewerbungstermineModel->loadWhere(
|
||||
array(
|
||||
'studienplan_id' => $lastStatus->retval[0]->studienplan_id,
|
||||
'studiensemester_kurzbz' => $lastStatus->retval[0]->studiensemester_kurzbz,
|
||||
'studiengang_kz' => $prestudent->retval[0]->studiengang_kz
|
||||
)
|
||||
);
|
||||
if ($bewerbungstermin->error)
|
||||
return error($bewerbungstermin->retval);
|
||||
|
||||
if (count($bewerbungstermin->retval) > 0)
|
||||
{
|
||||
$lastStatus->retval[0]->bewerbungstermin = $bewerbungstermin->retval[0]->ende;
|
||||
$lastStatus->retval[0]->bewerbungsnachfrist = $bewerbungstermin->retval[0]->nachfrist_ende;
|
||||
}
|
||||
|
||||
$prestudent->retval[0]->prestudentstatus = $lastStatus->retval[0];
|
||||
}
|
||||
|
||||
|
||||
@@ -119,4 +119,40 @@ class Prestudentstatus_model extends DB_Model
|
||||
|
||||
return $this->execQuery($query, $parametersArray);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Studienordnung for last status of Prestudent
|
||||
* @param $prestudent_id
|
||||
* @return array
|
||||
*/
|
||||
public function getStudienordnungWithZgvText($prestudent_id)
|
||||
{
|
||||
$lastStatus = $this->getLastStatus($prestudent_id);
|
||||
|
||||
if ($lastStatus->error)
|
||||
{
|
||||
return error($lastStatus->retval);
|
||||
}
|
||||
|
||||
if (count($lastStatus->retval) > 0)
|
||||
{
|
||||
$lastStatus = $lastStatus->retval[0];
|
||||
|
||||
$this->addJoin('lehre.tbl_studienplan', 'studienplan_id');
|
||||
$this->addJoin('lehre.tbl_studienordnung', 'studienordnung_id');
|
||||
$this->addJoin('addon.tbl_stgv_zugangsvoraussetzung', 'studienordnung_id');
|
||||
return $this->loadWhere(
|
||||
array(
|
||||
'public.tbl_prestudentstatus.prestudent_id' => $lastStatus->prestudent_id,
|
||||
'public.tbl_prestudentstatus.status_kurzbz' => $lastStatus->status_kurzbz,
|
||||
'public.tbl_prestudentstatus.studiensemester_kurzbz' => $lastStatus->studiensemester_kurzbz,
|
||||
'public.tbl_prestudentstatus.ausbildungssemester' => $lastStatus->ausbildungssemester
|
||||
)
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
return sucess(array());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<div class="col-xs-6">
|
||||
<form id="sendmsgform" method="post" action="<?php echo $messagelink ?>"
|
||||
target="_blank">
|
||||
<input type="hidden" name="person_id"
|
||||
@@ -101,7 +101,7 @@
|
||||
</form>
|
||||
</div>
|
||||
<?php if (isset($stammdaten->zugangscode)): ?>
|
||||
<div class="col-lg-6 text-right">
|
||||
<div class="col-xs-6 text-right">
|
||||
<a href="<?php echo CIS_ROOT.'addons/bewerbung/cis/registration.php?code='.html_escape($stammdaten->zugangscode) ?>"
|
||||
target='_blank'><i class="glyphicon glyphicon-new-window"></i> Zugang Bewerbung</a>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
$this->load->view(
|
||||
'templates/FHC-Header',
|
||||
array(
|
||||
'title' => 'ZGV Info',
|
||||
'jquery' => true,
|
||||
'bootstrap' => true,
|
||||
'fontawesome' => true,
|
||||
'sbadmintemplate' => true,
|
||||
'customCSSs' => 'public/css/sbadmin2/admintemplate_contentonly.css'
|
||||
)
|
||||
);
|
||||
?>
|
||||
<body>
|
||||
<div id="wrapper">
|
||||
<div id="page-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h3 class="page-header">Zugangsvoraussetzungen <?php echo $studiengang_bezeichnung; ?></h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="data">
|
||||
<?php if (empty($data)): ?>
|
||||
Keine Zugangsvoraussetzungen für den Studiengang definiert
|
||||
<?php
|
||||
else:
|
||||
echo json_decode($data);
|
||||
endif;
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<?php $this->load->view('templates/FHC-Footer'); ?>
|
||||
@@ -9,18 +9,29 @@
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<div class="row">
|
||||
<div class="col-lg-8">
|
||||
<div class="col-xs-7">
|
||||
<h4 class="panel-title">
|
||||
<a data-toggle="collapse"
|
||||
href="#collapse<?php echo $zgvpruefung->prestudent_id ?>"><?php echo $zgvpruefung->studiengang.' - '.$zgvpruefung->studiengangbezeichnung.' | '.(isset($zgvpruefung->prestudentstatus->status_kurzbz) ? $zgvpruefung->prestudentstatus->status_kurzbz : '');
|
||||
?></a>
|
||||
</h4>
|
||||
</div>
|
||||
<?php if (isset($zgvpruefung->prestudentstatus->status_kurzbz) && $zgvpruefung->prestudentstatus->status_kurzbz === 'Interessent' && !$infoonly): ?>
|
||||
<div class="col-lg-4 text-right">
|
||||
<?php if (isset($zgvpruefung->prestudentstatus->status_kurzbz) && $zgvpruefung->prestudentstatus->status_kurzbz === 'Interessent'/* && !$infoonly*/): ?>
|
||||
<?php if ($infoonly): ?>
|
||||
<?php if (isset($zgvpruefung->prestudentstatus->bestaetigtam)): ?>
|
||||
<div class="col-xs-5 text-right">
|
||||
<i class="fa fa-check" style="color: green"></i>
|
||||
An Studiengang freigegeben
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php else: ?>
|
||||
<div class="col-xs-5 text-right">
|
||||
<?php echo 'Bewerbung abgeschickt: '.(isset($zgvpruefung->prestudentstatus->bewerbung_abgeschicktamum) ? '<i class="fa fa-check" style="color:green"></i>' : '<i class="fa fa-times" style="color:red"></i>'); ?>
|
||||
<?php echo (isset($zgvpruefung->prestudentstatus->bewerbungsnachfrist) ? ' | Nachfrist: '. date_format(date_create($zgvpruefung->prestudentstatus->bewerbungsnachfrist), 'd.m.Y') : ''); ?>
|
||||
<?php echo (isset($zgvpruefung->prestudentstatus->bewerbungstermin) ? ' | Bewerbungsfrist: '. date_format(date_create($zgvpruefung->prestudentstatus->bewerbungstermin), 'd.m.Y') : ''); ?>
|
||||
</div>
|
||||
<?php endif ?>
|
||||
<?php endif; ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
<div id="collapse<?php echo $zgvpruefung->prestudent_id ?>"
|
||||
@@ -70,10 +81,24 @@
|
||||
<div class="row">
|
||||
<div class="col-lg-<?php echo $columns[0] ?>">
|
||||
<div class="form-group">
|
||||
<label>ZGV: </label>
|
||||
<?php if ($infoonly)
|
||||
echo $zgvpruefung->zgv_bez;
|
||||
else
|
||||
<div class="row">
|
||||
<?php if ($infoonly): ?>
|
||||
<div class="col-xs-8">
|
||||
<label>ZGV:</label>
|
||||
<?php echo $zgvpruefung->zgv_bez; ?>
|
||||
</div>
|
||||
<?php else: ?>
|
||||
<div class="col-xs-3">
|
||||
<label>ZGV:</label>
|
||||
</div>
|
||||
<?php endif;
|
||||
$zgvinfocolumns = $infoonly ? 4 : 9;
|
||||
?>
|
||||
<div class="col-xs-<?php echo $zgvinfocolumns; ?> text-right zgvinfo" id="zgvinfo_<?php echo $zgvpruefung->prestudent_id ?>">
|
||||
<a href="javascript:void(0)"><i class="fa fa-info-circle"></i> ZGV <?php echo $zgvpruefung->studiengang; ?></a>
|
||||
</div>
|
||||
</div>
|
||||
<?php if (!$infoonly)
|
||||
echo $this->widgetlib->widget(
|
||||
'Zgv_widget',
|
||||
array(DropdownWidget::SELECTED_ELEMENT => $zgvpruefung->zgv_code),
|
||||
@@ -188,12 +213,12 @@
|
||||
<?php endif; ?>
|
||||
<?php if (!$infoonly): ?>
|
||||
<div class="row">
|
||||
<div class="col-lg-6 text-left">
|
||||
<div class="col-xs-6 text-left">
|
||||
<button type="button" class="btn btn-default zgvUebernehmen" id="zgvUebernehmen_<?php echo $zgvpruefung->prestudent_id ?>">
|
||||
Letzte ZGV übernehmen
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-lg-6 text-right">
|
||||
<div class="col-xs-6 text-right">
|
||||
<button type="submit" class="btn btn-default saveZgv" id="zgvSpeichern_<?php echo $zgvpruefung->prestudent_id ?>">
|
||||
Speichern
|
||||
</button>
|
||||
@@ -331,8 +356,7 @@
|
||||
Interessentenstatus bestätigt und<br/>deren
|
||||
Zgvdaten
|
||||
können im
|
||||
Infocenter nicht mehr bearbeitet oder
|
||||
freigegeben
|
||||
Infocenter nicht mehr bearbeitet
|
||||
werden.
|
||||
<br/>Alle nicht gespeicherten Zgvdaten gehen
|
||||
verloren.
|
||||
|
||||
@@ -79,6 +79,14 @@ $(document).ready(
|
||||
}
|
||||
);
|
||||
|
||||
//show popup with zgvinfo
|
||||
$(".zgvinfo").click(function ()
|
||||
{
|
||||
var prestudentid = this.id.substr(this.id.indexOf("_") + 1);
|
||||
openZgvInfoForPrestudent(prestudentid);
|
||||
}
|
||||
);
|
||||
|
||||
//prevent opening modal when Statusgrund not chosen
|
||||
$(".absageModal").on('show.bs.modal', function (e)
|
||||
{
|
||||
@@ -119,7 +127,6 @@ $(document).ready(
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
//update notiz - autofill notizform
|
||||
$(document).on("click", "#notiztable tbody tr", function ()
|
||||
{
|
||||
@@ -145,6 +152,15 @@ $(document).ready(
|
||||
|
||||
});
|
||||
|
||||
function openZgvInfoForPrestudent(prestudent_id)
|
||||
{
|
||||
var screenwidth = screen.width;
|
||||
var popupwidth = 760;
|
||||
var marginleft = screenwidth - popupwidth;
|
||||
console.log(marginleft);
|
||||
window.open("../getZgvInfoForPrestudent/" + prestudent_id, "_blank","resizable=yes,scrollbars=yes,width="+popupwidth+",height="+screen.height+",left="+marginleft);
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------------------------------------------------
|
||||
// ajax calls
|
||||
|
||||
|
||||
Reference in New Issue
Block a user