Created infocenter details page showing Person Stammdaten, Dokumente, Prestudent ZGVs, Logs and Notizen.

This commit is contained in:
alex
2017-12-18 14:01:42 +01:00
parent 024035e890
commit fa3daa7a57
10 changed files with 896 additions and 0 deletions
@@ -0,0 +1,456 @@
<?php
if (! defined("BASEPATH")) exit("No direct script access allowed");
class InfocenterDetails extends VileSci_Controller
{
/**
* constructor
*/
public function __construct()
{
parent::__construct();
// Load models
$this->load->model('person/person_model', 'PersonModel');
$this->load->model('person/kontakt_model', 'KontaktModel');
$this->load->model('person/adresse_model', 'AdresseModel');
$this->load->model('person/notiz_model', 'NotizModel');
$this->load->model('person/notizzuordnung_model', 'NotizzuordnungModel');
$this->load->model('crm/prestudent_model', 'PrestudentModel');
$this->load->model('crm/prestudentstatus_model', 'PrestudentstatusModel');
$this->load->model('crm/akte_model', 'AkteModel');
$this->load->model('crm/statusgrund_model', 'StatusgrundModel');
$this->load->model('codex/nation_model', 'NationModel');
$this->load->model('codex/zgv_model', 'ZgvModel');
$this->load->model('codex/zgvmaster_model', 'ZgvmasterModel');
$this->load->model('organisation/studiengang_model', 'StudiengangModel');
$this->load->library('DmsLib');
$this->load->library('WidgetLib');
$this->load->library('PersonLogLib');
$this->load->helper('fhcauth');
$this->load->helper('url');
$this->app = 'aufnahme';
$this->uid = getAuthUID();
if(!$this->uid)
show_error('user authentification failed');
}
public function index()
{
//TODO error page
}
private function __loadPersonData($person_id)
{
$person = $this->PersonModel->load($person_id);
if ($person->error)
{
show_error($person->retval);
}
$staatsbuergerschaft = $this->NationModel->load($person->retval[0]->staatsbuergerschaft);
if ($staatsbuergerschaft->error)
{
show_error($staatsbuergerschaft->retval);
}
$geburtsnation = $this->NationModel->load($person->retval[0]->geburtsnation);
if ($geburtsnation->error)
{
show_error($geburtsnation->retval);
}
$this->KontaktModel->addDistinct();
$this->KontaktModel->addSelect('kontakttyp, kontakt');
$kontakte = $this->KontaktModel->loadWhere(array('person_id' => $person_id));
if ($kontakte->error)
{
show_error($kontakte->retval);
}
$adresse = $this->AdresseModel->loadWhere(array('person_id' => $person_id));
if ($adresse->error)
{
show_error($adresse->retval);
}
$dokumente = $this->AkteModel->loadWhere(array('person_id' => $person_id));
if ($dokumente->error)
{
show_error($dokumente->retval);
}
$logs = $this->personloglib->getLogs($person_id, $this->app);
foreach($logs as $log)
$log->logdata = json_decode($log->logdata);
$this->NotizzuordnungModel->addSelect('notiz_id');
$notizzuordnung = $this->NotizzuordnungModel->loadWhere(array('person_id' => $person_id));
if ($notizzuordnung->error)
{
show_error($notizzuordnung->retval);
}
$notizen = array();
foreach ($notizzuordnung->retval as $notiz_id)
{
$notiz = $this->NotizModel->load($notiz_id->notiz_id);
$notizen[] = $notiz->retval[0];
}
$data = array (
'person' => $person->retval[0],
'staatsbuergerschaft' => $staatsbuergerschaft->retval[0],
'geburtsnation' => $geburtsnation->retval[0],
'kontakte' => $kontakte->retval,
'adresse' => isset($adresse->retval[0]) ? $adresse->retval[0] : null,
'dokumente' => $dokumente->retval,
'logs' => $logs,
'notizen' => $notizen
);
return $data;
}
private function __loadPrestudentData($person_id)
{
$zgvpruefungen = [];
$prestudenten = $this->PrestudentModel->loadWhere(array('person_id' => $person_id));
if ($prestudenten->error)
{
show_error($prestudenten->retval);
}
foreach ($prestudenten->retval as $prestudent)
{
$zgvpruefung = new stdClass();
$zgvpruefung->prestudent_id = $prestudent->prestudent_id;
//Prestudentstatus
$lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent->prestudent_id);
if ($lastStatus->error)
{
show_error($lastStatus->retval);
}
$zgvpruefung->prestudentstatus = $lastStatus->retval[0];
// Studiengang
$this->StudiengangModel->addSelect('kurzbzlang, bezeichnung, typ');//TODO need bezeichnung?
$studiengang = $this->StudiengangModel->load($prestudent->studiengang_kz);
if ($studiengang->error)
{
show_error($studiengang->retval);
}
$zgvpruefung->studiengang = $studiengang->retval[0]->kurzbzlang;
$zgvpruefung->studiengangtyp = $studiengang->retval[0]->typ;
// Zgv
if (isset($prestudent->zgv_code))
{
$this->ZgvModel->addSelect('zgv_code, zgv_bez');
$zgv = $this->ZgvModel->load($prestudent->zgv_code);
if ($zgv->error)
{
show_error($zgv->retval);
}
$zgvpruefung->zgv_code = $zgv->retval[0]->zgv_code;
$zgvpruefung->zgv_bez = $zgv->retval[0]->zgv_bez;
}
else
{
$zgvpruefung->zgv_code = null;
$zgvpruefung->zgv_bez = null;
}
$zgvpruefung->zgvort = $prestudent->zgvort;
$zgvpruefung->zgvdatum = $prestudent->zgvdatum;
// Zgv Nation
if (isset($prestudent->zgvnation))
{
$this->NationModel->addSelect('nation_code, kurztext');
$zgvnation = $this->NationModel->load($prestudent->zgvnation);
if ($zgvnation->error)
{
show_error($zgvnation->retval);
}
$zgvpruefung->zgvnation_code = $zgvnation->retval[0]->nation_code;
$zgvpruefung->zgvnation_bez = $zgvnation->retval[0]->kurztext;
}
else
{
$zgvnation = null;
$zgvpruefung->zgvnation_code = null;
$zgvpruefung->zgvnation_bez = null;
}
// Zgv Master
if (isset($prestudent->zgvmas_code))
{
$this->ZgvmasterModel->addSelect('zgvmas_code, zgvmas_bez');
$zgvmas = $this->ZgvmasterModel->load($prestudent->zgvmas_code);
if ($zgvmas->error)
{
show_error($zgvmas->retval);
}
$zgvpruefung->zgvmas_code = $zgvmas->retval[0]->zgvmas_code;
$zgvpruefung->zgvmas_bez = $zgvmas->retval[0]->zgvmas_bez;
}
else
{
$zgvpruefung->zgvmas_code = null;
$zgvpruefung->zgvmas_bez = null;
}
$zgvpruefung->zgvmaort = $prestudent->zgvmaort;
$zgvpruefung->zgvmadatum = $prestudent->zgvmadatum;
// Zgv Master Nation
if (isset($prestudent->zgvmanation))
{
$this->NationModel->addSelect('nation_code, kurztext');
$zgvmanation = $this->NationModel->load($prestudent->zgvmanation);
if ($zgvmanation->error)
{
show_error($zgvmanation->retval);
}
$zgvpruefung->zgvmanation_code = $zgvmanation->retval[0]->nation_code;
$zgvpruefung->zgvmanation_bez = $zgvmanation->retval[0]->kurztext;
}
else
{
$zgvmanation = null;
$zgvpruefung->zgvmanation_code = null;
$zgvpruefung->zgvmanation_bez = null;
}
$zgvpruefungen[] = $zgvpruefung;
}
//TODO replace with widget
$statusgruende = $this->StatusgrundModel->load()->retval;
$data = array (
'zgvpruefungen' => $zgvpruefungen,
'statusgruende' => $statusgruende
);
return $data;
}
public function showDetails($person_id)
{
$persondata = $this->__loadPersonData($person_id);
$prestudentdata = $this->__loadPrestudentData($person_id);
$this->load->view('system/infocenter/infocenterDetails.php', array_merge($persondata, $prestudentdata));
}
public function saveFormalGeprueft()
{
$akte_id = $this->input->get('akte_id');
$formalgeprueft = $this->input->get('formal_geprueft');
$person_id = $this->input->get('person_id');
$akte = $this->AkteModel->load($akte_id);
if ($akte->error)
{
show_error($akte->retval);
}
$timestamp = (isset($formalgeprueft) && $formalgeprueft === 'true')? date('Y-m-d H:i:s') : null;
$this->AkteModel->update($akte_id, array('formal_geprueft_amum' => $timestamp));
//write person log
$this->personloglib->log($person_id, 'Action', array('name' => 'Dokument formal geprüft', 'message' => 'Dokument'.$akte->titel.' formal geprüft, gesetzt auf '.(is_null($timestamp) ? 'NULL' : $timestamp), 'success' => 'true'), $this->app, null, $this->uid);
redirect('/system/infocenter/InfocenterDetails/showDetails/'.$person_id);
}
public function saveZgvPruefung($prestudent_id)
{
// prestudentdata
$studiensemester = $this->input->post('studiensemester') === 'null' ? null : $this->input->post('studiensemester');
$ausbildungssemester = $this->input->post('ausbildungssemester');
// zgvdata
$zgv_code = $this->input->post('zgv') === 'null' ? null : $this->input->post('zgv');
$zgvort = $this->input->post('zgvort');
$zgvdatum = $this->input->post('zgvdatum');
$zgvdatum = empty($zgvdatum) ? null : date_format(date_create($zgvdatum), 'Y-m-d');
$zgvnation_code = $this->input->post('zgvnation') === 'null' ? null : $this->input->post('zgvnation');
//zgvmasterdata
$zgvmas_code = $this->input->post('zgvmas') === 'null' ? null : $this->input->post('zgvmas');
$zgvmaort = $this->input->post('zgvmaort');
$zgvmadatum = $this->input->post('zgvmadatum');
$zgvmadatum = empty($zgvmadatum) ? null : date_format(date_create($zgvmadatum), 'Y-m-d');
$zgvmanation_code = $this->input->post('zgvmanation') === 'null' ? null : $this->input->post('zgvmanation');
$lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent_id);
if ($lastStatus->error)
{
show_error($lastStatus->retval);
}
$result = $this->PrestudentstatusModel->update(array('prestudent_id' => $prestudent_id, 'studiensemester_kurzbz' => $lastStatus->retval[0]->studiensemester_kurzbz, 'ausbildungssemester' => $lastStatus->retval[0]->ausbildungssemester), array('studiensemester_kurzbz' => $studiensemester, 'ausbildungssemester' => $ausbildungssemester));
if ($result->error)
{
show_error($result->retval);
}
$result = $this->PrestudentModel->update($prestudent_id, array('zgv_code' => $zgv_code, 'zgvort' => $zgvort, 'zgvdatum' => $zgvdatum, 'zgvnation' => $zgvnation_code,
'zgvmas_code' => $zgvmas_code, 'zgvmaort' => $zgvmaort, 'zgvmadatum' => $zgvmadatum, 'zgvmanation' => $zgvmanation_code));
if ($result->error)
{
show_error($result->retval);
}
$logdata = $this->__getPersonAndStudiengangFromPrestudent($prestudent_id);
$this->personloglib->log($logdata['person_id'], 'Action', array('name' => 'Zgv gespeichert', 'message' => 'Zgv für Studiengang '.$logdata['studiengang_kurzbz'].' wurde gespeichert ', 'success' => 'true'), $this->app, null, $this->uid);
$this->__redirectToStart($prestudent_id);
}
public function saveAbsage($prestudent_id)
{
$statusgrund = $this->input->post('statusgrund');
$lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent_id);
if ($lastStatus->error)
{
show_error($lastStatus->retval);
}
$result = $this->PrestudentstatusModel->insert(array('prestudent_id' => $prestudent_id, 'studiensemester_kurzbz' => $lastStatus->retval[0]->studiensemester_kurzbz, 'ausbildungssemester' => $lastStatus->retval[0]->ausbildungssemester, 'datum' => date('Y-m-d'), 'orgform_kurzbz' => $lastStatus->retval[0]->orgform_kurzbz, 'studienplan_id' => $lastStatus->retval[0]->studienplan_id, 'status_kurzbz' => 'Abgewiesener', 'statusgrund_id' => $statusgrund, 'insertvon' => $this->uid, 'insertamum' => date('Y-m-d H:i:s')));
if ($result->error)
{
show_error($result->retval);
}
$logdata = $this->__getPersonAndStudiengangFromPrestudent($prestudent_id);
$this->personloglib->log($logdata['person_id'], 'Processstate', array('name' => 'Interessent abgewiesen', 'message' => 'Interessent wurde für Studiengang '.$logdata['studiengang_kurzbz'].' abgewiesen', 'success' => 'true'), $this->app, null, $this->uid);
$this->__redirectToStart($prestudent_id);
}
public function saveFreigabe($prestudent_id)
{
$lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent_id);
if (count($lastStatus->retval) > 0)
{
$lastStatus = $lastStatus->retval[0];
$result = $this->PrestudentstatusModel->update(array('prestudent_id' => $prestudent_id, 'status_kurzbz' => $lastStatus->status_kurzbz, 'studiensemester_kurzbz' => $lastStatus->studiensemester_kurzbz, 'ausbildungssemester' => $lastStatus->ausbildungssemester),
array('bestaetigtvon' => $this->uid, 'bestaetigtam' => date('Y-m-d'), 'updatevon' => $this->uid, 'updateamum' => date('Y-m-d H:i:s')));
if ($result->error)
{
show_error($result->retval);
}
}
$logdata = $this->__getPersonAndStudiengangFromPrestudent($prestudent_id);
$this->personloglib->log($logdata['person_id'], 'Processstate', array('name' => 'Interessent freigegeben', 'message' => 'Interessent wurde für Studiengang '.$logdata['studiengang_kurzbz'].' freigegeben', 'success' => 'true'), $this->app, null, $this->uid);
$this->__redirectToStart($prestudent_id);
}
public function saveNotiz($person_id)
{
$titel = $this->input->post('notiztitel');
$text = $this->input->post('notiz');
$erledigt = false;
$this->NotizModel->addNotizForPerson($person_id, $titel, $text, $erledigt, $this->uid);
$this->personloglib->log($person_id, 'Action', array('name' => 'Notiz hinzugefügt', 'message' => 'Notiz mit Titel '.$titel.' wurde hinzugefügt', 'success' => 'true'), $this->app, null, $this->uid);
redirect('/system/infocenter/InfocenterDetails/showDetails/'.$person_id);
}
public function outputAkteContent($akte_id)
{
$akte = $this->AkteModel->load($akte_id);
if ($akte->error)
{
show_error($akte->retval);
}
$aktecontent = $this->dmslib->getAkteContent($akte_id);
if($aktecontent->error)
{
show_error($aktecontent->retval);
}
header("Content-type: ".$akte->retval[0]->mimetype);
header('Content-Disposition: attachment; filename="'.$akte->retval[0]->titel.'"');
echo $aktecontent->retval;
}
private function __redirectToStart($prestudent_id)
{
$this->PrestudentModel->addSelect('person_id');
$person_id = $this->PrestudentModel->load($prestudent_id)->retval[0]->person_id;
redirect('/system/infocenter/InfocenterDetails/showDetails/'.$person_id);
}
private function __getPersonAndStudiengangFromPrestudent($prestudent_id)
{
$this->PrestudentModel->addSelect('person_id, studiengang_kz');
$prestudent = $this->PrestudentModel->load($prestudent_id);
if ($prestudent->error)
{
show_error($prestudent->retval);
}
$person_id = $prestudent->retval[0]->person_id;
$this->StudiengangModel->addSelect('kurzbzlang');//TODO need bezeichnung?
$studiengang = $this->StudiengangModel->load($prestudent->retval[0]->studiengang_kz);
if ($studiengang->error)
{
show_error($studiengang->retval);
}
$studiengang_kurzbz = $studiengang->retval[0]->kurzbzlang;
return array('person_id' => $person_id, 'studiengang_kurzbz' => $studiengang_kurzbz);
}
}
+4
View File
@@ -250,6 +250,10 @@ class DmsLib
{
return success(base64_decode($dmscontent->retval[0]->file_content));
}
else
{
return error($dmscontent->retval);
}
}
else
{
+16
View File
@@ -44,4 +44,20 @@ class PersonLogLib
else
show_error($result->retval);
}
/**
* Gets Logs for a Person, filtered by Parameters
* @param int $person_id ID of the Person.
* @param string $app Name of the App.
* @param string $oe_kurzbz Organisations Unit.
* @return object $result
*/
public function getLogs($person_id, $app = null, $oe_kurzbz = null)
{
$result = $this->ci->PersonLogModel->filterLog($person_id, $app, $oe_kurzbz);
if (isSuccess($result))
return $result->retval;
else
show_error($result->retval);
}
}
+37
View File
@@ -94,5 +94,42 @@ class Notiz_model extends DB_Model
return $result;
}
/**
* Add a Notiz for a given person
*/
public function addNotizForPerson($person_id, $titel, $text, $erledigt, $verfasser_uid)
{
// Loads model Notizzuordnung_model
$this->load->model('person/Notizzuordnung_model', 'NotizzuordnungModel');
// Start DB transaction
$this->db->trans_start(false);
$result = $this->insert(array('titel' => $titel, 'text' => $text, 'erledigt' => $erledigt, 'verfasser_uid' => $verfasser_uid,
"insertvon" => $verfasser_uid));
$notiz_id = $result->retval;
if (isSuccess($result))
{
$result = $this->NotizzuordnungModel->insert(array('notiz_id' => $notiz_id, 'person_id' => $person_id));
}
// Transaction complete!
$this->db->trans_complete();
// Check if everything went ok during the transaction
if ($this->db->trans_status() === false || isError($result))
{
$this->db->trans_rollback();
$result = error($result->msg, EXIT_ERROR);
}
else
{
$this->db->trans_commit();
$result = success($notiz_id);
}
return $result;
}
// ------------------------------------------------------------------------------------------------------
}
@@ -58,4 +58,30 @@ class PersonLog_model extends CI_Model
return success($result->result());
}
/**
* Load logs for a person, filtered by parameters
* @param int $person_id ID of the Person.
* @param string $app Name of the App.
* @param string $oe_kurzbz Organisations Unit.
* @return object $result
*/
public function filterLog($person_id, $app = null, $oe_kurzbz = null)
{
// Check Permissions
$this->load->library('PermissionLib');
if(!$this->permissionlib->isEntitled('system.tbl_log',PermissionLib::SELECT_RIGHT))
show_error('Permission denied - You need Access to system.tbl_log');
$this->db->order_by('zeitpunkt', 'DESC');
$this->db->order_by('log_id', 'DESC');
if (!is_null($app))
$this->db->where('app='.$this->db->escape($app));
if (!is_null($oe_kurzbz))
$this->db->where('oe_kurzbz='.$this->db->escape($oe_kurzbz));
$result = $this->db->get_where($this->dbTable, "person_id=".$this->db->escape($person_id));
return success($result->result());
}
}
@@ -0,0 +1,269 @@
<?php
$this->load->view('templates/header', array('title' => 'InfocenterDetails', 'datepicker' => true, 'datepickerclass' => 'dateinput'/*, 'tablesort' => true, 'tableid' => 't1'*/));
?>
<body>
<h2>Infocenter - Person Details</h2>
<fieldset>
<legend>Stammdaten</legend>
<table>
<tr>
<td>Vorname: <?php echo $person->vorname ?></td>
</tr>
<tr>
<td>Nachname: <?php echo $person->nachname ?></td>
</tr>
<tr>
<td>Geburtsdatum: <?php echo date_format(date_create($person->gebdatum), 'd.m.Y') ?></td>
</tr>
<tr>
<td>Sozialversicherungsnr: <?php echo $person->svnr ?></td>
</tr>
<tr>
<td>Staatsb&uuml;rgerschaft: <?php echo $staatsbuergerschaft->kurztext ?></td>
</tr>
<tr>
<td>Geschlecht: <?php echo $person->geschlecht ?></td>
</tr>
<tr>
<td>Geburtsnation: <?php echo $geburtsnation->kurztext ?></td>
</tr>
<tr>
<td>Geburtsort: <?php echo $person->gebort ?></td>
</tr>
<tr>
<td align="center">Kontaktdaten</td>
</tr>
<?php
foreach ($kontakte as $kontakt):
?>
<tr>
<td><?php
echo ucfirst($kontakt->kontakttyp).': ';
if ($kontakt->kontakttyp == 'email'):
?>
<a href="mailto:<?php echo $kontakt->kontakt; ?>" target="_top">
<?php
endif;
echo $kontakt->kontakt;
if ($kontakt->kontakttyp == 'email'):
?>
</a>
<?php endif; ?>
</td>
</tr>
<?php
endforeach
?>
<tr>
<td>
Adresse: <?php echo isset($adresse) ? $adresse->strasse.", ".$adresse->plz." ".$adresse->ort : "" ?>
</td>
</tr>
</table>
</fieldset>
<fieldset>
<legend>Dokumentenprüfung</legend>
<table border="1"><!-- id="t1" class = "tablesorter"-->
<thead>
<th>Name</th>
<th>Typ</th>
<th>Uploaddatum</th>
<th>formal geprüft</th>
</thead>
<tbody>
<?php
foreach ($dokumente as $dokument):
$geprueft = (isset($dokument->formal_geprueft_amum)) ? "checked" : "";
?>
<tr>
<td><a href="../outputAkteContent/<?php echo $dokument->akte_id ?>"><?php echo $dokument->titel ?></a>
</td>
<td><?php echo $dokument->dokument_kurzbz ?></td>
<td><?php echo date_format(date_create($dokument->erstelltam), 'd.m.Y') ?></td>
<td>
<input type="checkbox" <?php echo $geprueft ?>
onclick="onFormalGeprueftChange(this.checked, <?php echo $dokument->akte_id ?>, <?php echo $person->person_id ?>)"/>
<?php
echo $dokument->formal_geprueft_amum;
?>
</td>
</tr>
<?php endforeach ?>
</tbody>
</table>
</fieldset>
<?php foreach ($zgvpruefungen as $zgvpruefung): ?>
<form method="post" action="../saveZgvPruefung/<?php echo $zgvpruefung->prestudent_id ?>">
<fieldset>
<legend>ZGV Prüfung - Studiengang <?php echo $zgvpruefung->studiengang ?></legend>
<table>
<tr>
<td>
<label>Letzter Status: </label>
<?php echo $zgvpruefung->prestudentstatus->status_kurzbz?>
</td>
<td>
<label>Freigegeben an Studiengang: </label>
<?php echo isset($zgvpruefung->prestudentstatus->bestaetigtam) ? "ja" : "nein" ?>
</td>
<td>
<label>Studiensemester: </label>
<?php echo $this->widgetlib->widget(
'Studiensemester_widget',
array(DropdownWidget::SELECTED_ELEMENT => $zgvpruefung->prestudentstatus->studiensemester_kurzbz),
array('name' => 'studiensemester', 'id' => 'studiensemester')
); ?>
</td>
<td>
<label>Ausbildungssemester: </label>
<input type="text" name="ausbildungssemester" value="<?php echo $zgvpruefung->prestudentstatus->ausbildungssemester ?>"
<?php echo $zgvpruefung->prestudentstatus->ausbildungssemester ?>
</td>
</tr>
<tr>
<td>
<label>ZGV: </label>
<?php echo $this->widgetlib->widget(
'Zgv_widget',
array(DropdownWidget::SELECTED_ELEMENT => $zgvpruefung->zgv_code),
array('name' => 'zgv', 'id' => 'zgv')
); ?>
</td>
<td>
<label>ZGV Ort: </label>
<input type="text" value="<?php echo $zgvpruefung->zgvort ?>" name="zgvort">
</td>
<td>
<label>ZGV Datum: </label>
<input type="text" class="dateinput"
value="<?php echo empty($zgvpruefung->zgvdatum) ? "" : date_format(date_create($zgvpruefung->zgvdatum), 'd.m.Y') ?>"
name="zgvdatum">
</td>
<td>
<label>ZGV Nation: </label>
<?php echo $this->widgetlib->widget(
'Nation_widget',
array(DropdownWidget::SELECTED_ELEMENT => $zgvpruefung->zgvnation_code),
array('name' => 'zgvnation', 'id' => 'zgvnation')
); ?>
</td>
</tr>
<?php if($zgvpruefung->studiengangtyp === 'm') :?>
<tr>
<td>
<label>ZGV Master: </label>
<?php echo $this->widgetlib->widget(
'Zgvmaster_widget',
array(DropdownWidget::SELECTED_ELEMENT => $zgvpruefung->zgvmas_code),
array('name' => 'zgvmas', 'id' => 'zgvmas')
); ?>
</td>
<td>
<label>ZGV Master Ort: </label>
<input type="text" value="<?php echo $zgvpruefung->zgvmaort ?>" name="zgvmaort">
</td>
<td>
<label>ZGV Master Datum: </label>
<input type="text" class="dateinput"
value="<?php echo empty($zgvpruefung->zgvmadatum) ? "" : date_format(date_create($zgvpruefung->zgvmadatum), 'd.m.Y') ?>"
name="zgvmadatum">
</td>
<td>
<label>ZGV Master Nation: </label>
<?php echo $this->widgetlib->widget(
'Nation_widget',
array(DropdownWidget::SELECTED_ELEMENT => $zgvpruefung->zgvmanation_code),
array('name' => 'zgvmanation', 'id' => 'zgvmanation')
); ?>
</td>
</tr>
<?php endif; ?>
<tr>
<td>
<input type="submit" value="Speichern"/>
</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
</tr>
</table>
</fieldset>
</form>
<?php /*echo $this->widgetlib->widget(
'Statusgrund_widget',
array(),
array('name' => 'absage', 'id' => 'absage')
); */
//Prestudenten cannot be abgewiesen or freigegeben if already done
if(!isset($zgvpruefung->prestudentstatus->bestaetigtam) && $zgvpruefung->prestudentstatus->status_kurzbz != 'Abgewiesener') :
?>
<form method="post" action="../saveAbsage/<?php echo $zgvpruefung->prestudent_id ?>">
<label>Absagegrund:</label>
<select name="statusgrund">
<?php foreach ($statusgruende as $statusgrund): ?>
<option value="<?php echo $statusgrund->statusgrund_id ?>"><?php echo $statusgrund->bezeichnung_mehrsprachig[0] ?></option>
<?php endforeach ?>
</select>
<button type="submit">Absage</button>
</form>
<a href="../saveFreigabe/<?php echo $zgvpruefung->prestudent_id ?>">
<button>Freigabe an Studiengang</button>
</a>
<?php endif; ?>
<?php endforeach ?>
<table border="1">
<thead>
<th>Datum</th>
<th>Aktivität</th>
<th>User</th>
</thead>
<tbody>
<?php foreach ($logs as $log): ?>
<tr>
<td><?php echo date_format(date_create($log->zeitpunkt), 'd.m.Y H:i:s') ?></td>
<td><?php echo $log->logdata->name ?></td>
<td><?php echo $log->insertvon ?></td>
</tr>
<?php endforeach ?>
</tbody>
</table>
<table border="1">
<thead>
<th>Datum</th>
<th>Notiz</th>
<th>User</th>
</thead>
<tbody>
<?php foreach ($notizen as $notiz): ?>
<tr>
<td><?php echo date_format(date_create($notiz->insertamum), 'd.m.Y H:i:s') ?></td>
<td><?php echo $notiz->titel ?></td>
<td><?php echo $notiz->verfasser_uid ?></td>
</tr>
<?php endforeach ?>
</tbody>
</table>
<form method="post" action="../saveNotiz/<?php echo $person->person_id ?>">
<label>Notiz:</label>
<br />
Titel: <input type="text" name="notiztitel" />
<br />
Text: <textarea name="notiz" rows="10" cols="32"></textarea>
<button type="submit">Speichern</button>
</form>
</body>
<script>
function onFormalGeprueftChange(formal_geprueft, akte_id, person_id)
{
window.location = "../saveFormalGeprueft?akte_id=" + akte_id + "&formal_geprueft=" + formal_geprueft + "&person_id=" + person_id;
}
</script>
+22
View File
@@ -0,0 +1,22 @@
<?php
class Nation_widget extends DropdownWidget
{
public function display($widgetData)
{
// Nation
$this->load->model('codex/nation_model', 'NationModel');
$this->NationModel->addOrder('nation_code');
$this->addSelectToModel($this->NationModel, 'nation_code', 'kurztext');
$this->setElementsArray(
$this->NationModel->load(),
true,
'Select a nation...',
'No nation found'
);
$this->loadDropDownView($widgetData);
}
}
@@ -0,0 +1,22 @@
<?php
class Statusgrund_widget extends DropdownWidget
{
public function display($widgetData)
{
// Zgv
$this->load->model('crm/statusgrund_model', 'StatusgrundModel');
$this->StatusgrundModel->addOrder('statusgrund_id');
$this->addSelectToModel($this->StatusgrundModel, 'statusgrund_id', 'bezeichnung_mehrsprachig[1]');
$this->setElementsArray(
$this->StatusgrundModel->load(),
true,
'Select a Statusgrund...',
'No Statusgrund found'
);
$this->loadDropDownView($widgetData);
}
}
+22
View File
@@ -0,0 +1,22 @@
<?php
class Zgv_widget extends DropdownWidget
{
public function display($widgetData)
{
// Zgv
$this->load->model('codex/zgv_model', 'ZgvModel');
$this->ZgvModel->addOrder('zgv_bez');
$this->addSelectToModel($this->ZgvModel, 'zgv_code', 'zgv_bez');
$this->setElementsArray(
$this->ZgvModel->load(),
true,
'Select a zgv...',
'No zgv found'
);
$this->loadDropDownView($widgetData);
}
}
+22
View File
@@ -0,0 +1,22 @@
<?php
class Zgvmaster_widget extends DropdownWidget
{
public function display($widgetData)
{
// Zgv master
$this->load->model('codex/zgvmaster_model', 'ZgvmasterModel');
$this->ZgvmasterModel->addOrder('zgvmas_bez');
$this->addSelectToModel($this->ZgvmasterModel, 'zgvmas_code', 'zgvmas_bez');
$this->setElementsArray(
$this->ZgvmasterModel->load(),
true,
'Select a zgv...',
'No zgv found'
);
$this->loadDropDownView($widgetData);
}
}