mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-18 15:32:17 +00:00
Merge branch 'ci' of https://github.com/FH-Complete/FHC-Core into ci
This commit is contained in:
Regular → Executable
+4
-2
@@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
if (! defined('BASEPATH'))
|
||||
exit('No direct script access allowed');
|
||||
|
||||
@@ -167,6 +167,8 @@ $config['fhc_acl'] = array
|
||||
'public.tbl_ortraumtyp' => 'basis/ortraumtyp',
|
||||
'public.tbl_person' => 'basis/person',
|
||||
'public.tbl_personfunktionstandort' => 'basis/personfunktionstandort',
|
||||
'public.tbl_phrase' => 'basis/phrase',
|
||||
'public.tbl_phrase_inhalt' => 'basis/phrase',
|
||||
'public.tbl_preincoming' => 'basis/preincoming',
|
||||
'public.tbl_preinteressent' => 'basis/preinteressent',
|
||||
'public.tbl_preinteressentstudiengang' => 'basis/preinteressentstudiengang',
|
||||
@@ -229,6 +231,6 @@ $config['fhc_acl'] = array
|
||||
'wawi.tbl_rechnungsbetrag' => 'basis/rechnungsbetrag',
|
||||
'wawi.tbl_rechnungstyp' => 'basis/rechnungstyp',
|
||||
'wawi.tbl_zahlungstyp' => 'basis/zahlungstyp',
|
||||
|
||||
|
||||
'public.tbl_sprache' => 'admin'
|
||||
);
|
||||
|
||||
@@ -70,7 +70,7 @@ class Person extends APIv1_Controller
|
||||
public function postPerson()
|
||||
{
|
||||
$person = $this->_parseData($this->post());
|
||||
$validation = $this->PersonModel->_validate($this->post());
|
||||
$validation = $this->_validate($this->post());
|
||||
|
||||
if (is_object($validation) && $validation->error == EXIT_SUCCESS)
|
||||
{
|
||||
@@ -110,4 +110,200 @@ class Person extends APIv1_Controller
|
||||
$this->response();
|
||||
}
|
||||
}
|
||||
|
||||
private function _validate($person = NULL)
|
||||
{
|
||||
if (!isset($person))
|
||||
{
|
||||
return $this->_error('Parameter is null');
|
||||
}
|
||||
|
||||
$person['nachname'] = trim($person['nachname']);
|
||||
$person['vorname'] = trim($person['vorname']);
|
||||
$person['vornamen'] = trim($person['vornamen']);
|
||||
$person['anrede'] = trim($person['anrede']);
|
||||
$person['titelpost'] = trim($person['titelpost']);
|
||||
$person['titelpre'] = trim($person['titelpre']);
|
||||
|
||||
if (mb_strlen($person['sprache']) > 16)
|
||||
{
|
||||
return $this->_error('Sprache darf nicht laenger als 16 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['anrede']) > 16)
|
||||
{
|
||||
return $this->_error('Anrede darf nicht laenger als 16 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['titelpost']) > 32)
|
||||
{
|
||||
return $this->_error('Titelpost darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['titelpre']) > 64)
|
||||
{
|
||||
return $this->_error('Titelpre darf nicht laenger als 64 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['nachname']) > 64)
|
||||
{
|
||||
return $this->_error('Nachname darf nicht laenger als 64 Zeichen sein');
|
||||
}
|
||||
if ($person['nachname'] == '' || is_null($person['nachname']))
|
||||
{
|
||||
return $this->_error('Nachname muss eingegeben werden');
|
||||
}
|
||||
|
||||
if (mb_strlen($person['vorname']) > 32)
|
||||
{
|
||||
return $this->_error('Vorname darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['vornamen']) > 128)
|
||||
{
|
||||
return $this->_error('Vornamen darf nicht laenger als 128 Zeichen sein');
|
||||
}
|
||||
//ToDo Gebdatum pruefen -> laut bis muss student aelter als 10 Jahre sein
|
||||
/* if (strlen($person['gebdatum) == 0 || is_null($person['gebdatum))
|
||||
{
|
||||
return $this->_error("Geburtsdatum muss eingegeben werden\n";
|
||||
return false;
|
||||
} */
|
||||
if (mb_strlen($person['gebort']) > 128)
|
||||
{
|
||||
return $this->_error('Geburtsort darf nicht laenger als 128 Zeichen sein');
|
||||
}
|
||||
|
||||
if (mb_strlen($person['homepage']) > 256)
|
||||
{
|
||||
return $this->_error('Homepage darf nicht laenger als 256 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['svnr']) > 16)
|
||||
{
|
||||
return $this->_error('SVNR darf nicht laenger als 16 Zeichen sein');
|
||||
}
|
||||
|
||||
if (mb_strlen($person['matr_nr']) > 32)
|
||||
{
|
||||
return $this->_error('Matrikelnummer darf nicht laenger als 32 Zeichen sein');
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($person['svnr'] != '' && mb_strlen($person['svnr']) != 16 && mb_strlen($person['svnr']) != 10)
|
||||
{
|
||||
return $this->_error('SVNR muss 10 oder 16 Zeichen lang sein');
|
||||
}
|
||||
|
||||
if ($person['svnr'] != '' && mb_strlen($person['svnr']) == 10)
|
||||
{
|
||||
//SVNR mit Pruefziffer pruefen
|
||||
//Die 4. Stelle in der SVNR ist die Pruefziffer
|
||||
//(Summe von (gewichtung[i]*svnr[i])) modulo 11 ergibt diese Pruefziffer
|
||||
//Falls nicht, ist die SVNR ungueltig
|
||||
$gewichtung = array(3, 7, 9, 0, 5, 8, 4, 2, 1, 6);
|
||||
$erg = 0;
|
||||
//Quersumme bilden
|
||||
for ($i = 0; $i < 10; $i++)
|
||||
{
|
||||
$erg += $gewichtung[$i] * $person['svnr']{$i};
|
||||
}
|
||||
|
||||
if ($person['svnr']{3} != ($erg % 11)) //Vergleichen der Pruefziffer mit Quersumme Modulo 11
|
||||
{
|
||||
return $this->_error('SVNR ist ungueltig');
|
||||
}
|
||||
}
|
||||
|
||||
/*if ($person['svnr'] != '')
|
||||
{
|
||||
//Pruefen ob bereits ein Eintrag mit dieser SVNR vorhanden ist
|
||||
$qry = "SELECT person_id FROM public.tbl_person WHERE svnr=" . $person['svnr'];
|
||||
if (db_query($qry))
|
||||
{
|
||||
if ($row = db_fetch_object())
|
||||
{
|
||||
if ($row->person_id != $person['person_id'])
|
||||
{
|
||||
return $this->_error('Es existiert bereits eine Person mit dieser SVNR! Daten wurden NICHT gespeichert.');
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
if (mb_strlen($person['ersatzkennzeichen']) > 10)
|
||||
{
|
||||
return $this->_error('Ersatzkennzeichen darf nicht laenger als 10 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['familienstand']) > 1)
|
||||
{
|
||||
return $this->_error('Familienstand ist ungueltig');
|
||||
}
|
||||
if ($person['anzahlkinder'] != '' && !is_numeric($person['anzahlkinder']))
|
||||
{
|
||||
return $this->_error('Anzahl der Kinder ist ungueltig');
|
||||
}
|
||||
if ($person['aktiv'] != "t" && $person['aktiv'] != "f")
|
||||
{
|
||||
return $this->_error('Aktiv ist ungueltig');
|
||||
}
|
||||
if (!isset($person['person_id']) && mb_strlen($person['insertvon']) > 32)
|
||||
{
|
||||
return $this->_error('Insertvon darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['updatevon']) > 32)
|
||||
{
|
||||
return $this->_error('Updatevon darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
/*if ($person['ext_id'] != '' && !is_numeric($person['ext_id']))
|
||||
{
|
||||
return $this->_error('Ext_ID ist keine gueltige Zahl';
|
||||
return false;
|
||||
}*/
|
||||
if (mb_strlen($person['geschlecht']) > 1)
|
||||
{
|
||||
return $this->_error('Geschlecht darf nicht laenger als 1 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['geburtsnation']) > 3)
|
||||
{
|
||||
return $this->_error('Geburtsnation darf nicht laenger als 3 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['staatsbuergerschaft']) > 3)
|
||||
{
|
||||
return $this->_error('Staatsbuergerschaft darf nicht laenger als 3 Zeichen sein');
|
||||
}
|
||||
if ($person['geschlecht'] != 'm' && $person['geschlecht'] != 'w' && $person['geschlecht'] != 'u')
|
||||
{
|
||||
return $this->_error('Geschlecht muss w, m oder u sein!');
|
||||
}
|
||||
|
||||
//Pruefen ob das Geburtsdatum mit der SVNR uebereinstimmt.
|
||||
if ($person['svnr'] != '' && $person['gebdatum'] != '')
|
||||
{
|
||||
if (mb_ereg("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})", $person['gebdatum'], $regs))
|
||||
{
|
||||
//$day = sprintf('%02s',$regs[1]);
|
||||
//$month = sprintf('%02s',$regs[2]);
|
||||
//$year = mb_substr($regs[3],2,2);
|
||||
}
|
||||
elseif (mb_ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})", $person['gebdatum'], $regs))
|
||||
{
|
||||
//$day = sprintf('%02s',$regs[3]);
|
||||
//$month = sprintf('%02s',$regs[2]);
|
||||
//$year = mb_substr($regs[1],2,2);
|
||||
}
|
||||
else
|
||||
{
|
||||
return $this->_error('Format des Geburtsdatums ist ungueltig');
|
||||
}
|
||||
|
||||
/* das muss nicht immer so sein
|
||||
$day_svnr = mb_substr($person['svnr, 4, 2);
|
||||
$month_svnr = mb_substr($person['svnr, 6, 2);
|
||||
$year_svnr = mb_substr($person['svnr, 8, 2);
|
||||
|
||||
if ($day_svnr!=$day || $month_svnr!=$month || $year_svnr!=$year)
|
||||
{
|
||||
return $this->_error('SVNR und Geburtsdatum passen nicht zusammen';
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
return $this->_success('Input data are valid');
|
||||
}
|
||||
}
|
||||
@@ -7,10 +7,30 @@ class APIv1_Controller extends REST_Controller
|
||||
function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
//$this->load->library('session'); // -> autoload
|
||||
//$this->load->library('database'); -> autoload
|
||||
$this->load->helper('Message');
|
||||
}
|
||||
|
||||
/** ---------------------------------------------------------------
|
||||
* Success
|
||||
*
|
||||
* @param mixed $retval
|
||||
* @return array
|
||||
*/
|
||||
protected function _success($retval, $message = null)
|
||||
{
|
||||
return success($retval, $message);
|
||||
}
|
||||
|
||||
/** ---------------------------------------------------------------
|
||||
* General Error
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function _error($retval, $message = null)
|
||||
{
|
||||
return error($retval, $message);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param type $data
|
||||
|
||||
@@ -10,6 +10,7 @@ class FHC_Model extends CI_Model
|
||||
$this->load->helper('language');
|
||||
$this->lang->load('fhc_model');
|
||||
$this->lang->load('fhcomplete');
|
||||
$this->load->helper('Message');
|
||||
|
||||
$uid = null;
|
||||
|
||||
@@ -46,14 +47,9 @@ class FHC_Model extends CI_Model
|
||||
* @param mixed $retval
|
||||
* @return array
|
||||
*/
|
||||
protected function _success($retval, $message = FHC_SUCCESS)
|
||||
protected function _success($retval, $message = null)
|
||||
{
|
||||
$return = new stdClass();
|
||||
$return->error = EXIT_SUCCESS;
|
||||
$return->fhcCode = $message;
|
||||
$return->msg = lang('fhc_' . $message);
|
||||
$return->retval = $retval;
|
||||
return $return;
|
||||
return success($retval, $message);
|
||||
}
|
||||
|
||||
/** ---------------------------------------------------------------
|
||||
@@ -61,13 +57,8 @@ class FHC_Model extends CI_Model
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function _error($retval = '', $message = FHC_MODEL_ERROR)
|
||||
protected function _error($retval, $message = null)
|
||||
{
|
||||
$return = new stdClass();
|
||||
$return->error = EXIT_MODEL;
|
||||
$return->fhcCode = $message;
|
||||
$return->msg = lang('fhc_' . $message);
|
||||
$return->retval = $retval;
|
||||
return $return;
|
||||
return error($retval, $message);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
/** ---------------------------------------------------------------
|
||||
* General Error
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function success($retval, $message = FHC_SUCCESS)
|
||||
{
|
||||
$return = new stdClass();
|
||||
$return->error = EXIT_SUCCESS;
|
||||
$return->fhcCode = $message;
|
||||
$return->msg = lang('fhc_' . $message);
|
||||
$return->retval = $retval;
|
||||
return $return;
|
||||
}
|
||||
|
||||
/** ---------------------------------------------------------------
|
||||
* General Error
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function error($retval = '', $message = FHC_MODEL_ERROR)
|
||||
{
|
||||
$return = new stdClass();
|
||||
$return->error = EXIT_MODEL;
|
||||
$return->fhcCode = $message;
|
||||
$return->msg = lang('fhc_' . $message);
|
||||
$return->retval = $retval;
|
||||
return $return;
|
||||
}
|
||||
Executable
+85
@@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
if (! defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
class Migration_Phrase extends CI_Migration {
|
||||
|
||||
public function up()
|
||||
{
|
||||
if (! $this->db->table_exists('public.tbl_phrase'))
|
||||
{
|
||||
$this->db->insert('system.tbl_berechtigung', array(
|
||||
'berechtigung_kurzbz' => 'basis/phrase',
|
||||
'beschreibung' => 'Phrase System'));
|
||||
$this->db->insert('system.tbl_rolleberechtigung', array(
|
||||
'berechtigung_kurzbz' => 'basis/phrase',
|
||||
'rolle_kurzbz' => 'admin',
|
||||
'art' => 'suid'));
|
||||
|
||||
$query= "
|
||||
CREATE TABLE public.tbl_app (
|
||||
app varchar(32),
|
||||
PRIMARY KEY (app)
|
||||
);
|
||||
GRANT SELECT ON TABLE public.tbl_app TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_app TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_app TO vilesci;
|
||||
|
||||
CREATE TABLE public.tbl_phrase (
|
||||
phrase_id serial,
|
||||
app varchar(32) NOT NULL,
|
||||
phrase varchar(64) NOT NULL,
|
||||
insertamum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
insertvon varchar(32),
|
||||
PRIMARY KEY (phrase_id)
|
||||
);
|
||||
GRANT SELECT ON TABLE public.tbl_phrase TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_phrase TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_phrase TO vilesci;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_phrase_phrase_id_seq TO web;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_phrase_phrase_id_seq TO admin;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_phrase_phrase_id_seq TO vilesci;
|
||||
|
||||
CREATE TABLE public.tbl_phrase_inhalt (
|
||||
phrase_inhalt_id serial,
|
||||
phrase_id bigint NOT NULL,
|
||||
sprache varchar(32) NOT NULL,
|
||||
orgeinheit_kurzbz varchar(32) NOT NULL,
|
||||
orgform_kurzbz varchar(32) NOT NULL,
|
||||
text text,
|
||||
insertamum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
insertvon varchar(32),
|
||||
PRIMARY KEY (phrase_inhalt_id)
|
||||
);
|
||||
GRANT SELECT ON TABLE public.tbl_phrase_inhalt TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_phrase_inhalt TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_phrase_inhalt TO vilesci;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_phrase_inhalt_phrase_inhalt_id_seq TO web;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_phrase_inhalt_phrase_inhalt_id_seq TO admin;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_phrase_inhalt_phrase_inhalt_id_seq TO vilesci;
|
||||
";
|
||||
if (!$this->db->simple_query($query))
|
||||
{
|
||||
echo "Error creating Basis DB-Schema!";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
try
|
||||
{
|
||||
$this->db->delete('system.tbl_rolleberechtigung', array('berechtigung_kurzbz' => 'basis/phrase'));
|
||||
$this->db->delete('system.tbl_berechtigung', array('berechtigung_kurzbz' => 'basis/phrase'));
|
||||
$this->dbforge->drop_table('public.tbl_phrase_inhalt');
|
||||
$this->dbforge->drop_table('public.tbl_phrase');
|
||||
$this->dbforge->drop_table('public.tbl_app');
|
||||
echo "Table public.tbl_phrase_inhalt, public.tbl_phrase and public.tbl_app dropped!";
|
||||
}
|
||||
catch(Exception $e)
|
||||
{
|
||||
echo 'Exception abgefangen: ', $e->getMessage(), "\n";
|
||||
echo $this->db->error();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -68,200 +68,4 @@ class Person_model extends DB_Model
|
||||
else
|
||||
return $this->_error($this->db->error(), FHC_DB_ERROR);
|
||||
}
|
||||
|
||||
public function _validate($person = NULL)
|
||||
{
|
||||
if (!isset($person))
|
||||
{
|
||||
return $this->_error('Parameter is null');
|
||||
}
|
||||
|
||||
$person['nachname'] = trim($person['nachname']);
|
||||
$person['vorname'] = trim($person['vorname']);
|
||||
$person['vornamen'] = trim($person['vornamen']);
|
||||
$person['anrede'] = trim($person['anrede']);
|
||||
$person['titelpost'] = trim($person['titelpost']);
|
||||
$person['titelpre'] = trim($person['titelpre']);
|
||||
|
||||
if (mb_strlen($person['sprache']) > 16)
|
||||
{
|
||||
return $this->_error('Sprache darf nicht laenger als 16 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['anrede']) > 16)
|
||||
{
|
||||
return $this->_error('Anrede darf nicht laenger als 16 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['titelpost']) > 32)
|
||||
{
|
||||
return $this->_error('Titelpost darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['titelpre']) > 64)
|
||||
{
|
||||
return $this->_error('Titelpre darf nicht laenger als 64 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['nachname']) > 64)
|
||||
{
|
||||
return $this->_error('Nachname darf nicht laenger als 64 Zeichen sein');
|
||||
}
|
||||
if ($person['nachname'] == '' || is_null($person['nachname']))
|
||||
{
|
||||
return $this->_error('Nachname muss eingegeben werden');
|
||||
}
|
||||
|
||||
if (mb_strlen($person['vorname']) > 32)
|
||||
{
|
||||
return $this->_error('Vorname darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['vornamen']) > 128)
|
||||
{
|
||||
return $this->_error('Vornamen darf nicht laenger als 128 Zeichen sein');
|
||||
}
|
||||
//ToDo Gebdatum pruefen -> laut bis muss student aelter als 10 Jahre sein
|
||||
/* if (strlen($person['gebdatum) == 0 || is_null($person['gebdatum))
|
||||
{
|
||||
return $this->_error("Geburtsdatum muss eingegeben werden\n";
|
||||
return false;
|
||||
} */
|
||||
if (mb_strlen($person['gebort']) > 128)
|
||||
{
|
||||
return $this->_error('Geburtsort darf nicht laenger als 128 Zeichen sein');
|
||||
}
|
||||
|
||||
if (mb_strlen($person['homepage']) > 256)
|
||||
{
|
||||
return $this->_error('Homepage darf nicht laenger als 256 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['svnr']) > 16)
|
||||
{
|
||||
return $this->_error('SVNR darf nicht laenger als 16 Zeichen sein');
|
||||
}
|
||||
|
||||
if (mb_strlen($person['matr_nr']) > 32)
|
||||
{
|
||||
return $this->_error('Matrikelnummer darf nicht laenger als 32 Zeichen sein');
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($person['svnr'] != '' && mb_strlen($person['svnr']) != 16 && mb_strlen($person['svnr']) != 10)
|
||||
{
|
||||
return $this->_error('SVNR muss 10 oder 16 Zeichen lang sein');
|
||||
}
|
||||
|
||||
if ($person['svnr'] != '' && mb_strlen($person['svnr']) == 10)
|
||||
{
|
||||
//SVNR mit Pruefziffer pruefen
|
||||
//Die 4. Stelle in der SVNR ist die Pruefziffer
|
||||
//(Summe von (gewichtung[i]*svnr[i])) modulo 11 ergibt diese Pruefziffer
|
||||
//Falls nicht, ist die SVNR ungueltig
|
||||
$gewichtung = array(3, 7, 9, 0, 5, 8, 4, 2, 1, 6);
|
||||
$erg = 0;
|
||||
//Quersumme bilden
|
||||
for ($i = 0; $i < 10; $i++)
|
||||
{
|
||||
$erg += $gewichtung[$i] * $person['svnr']{$i};
|
||||
}
|
||||
|
||||
if ($person['svnr']{3} != ($erg % 11)) //Vergleichen der Pruefziffer mit Quersumme Modulo 11
|
||||
{
|
||||
return $this->_error('SVNR ist ungueltig');
|
||||
}
|
||||
}
|
||||
|
||||
/*if ($person['svnr'] != '')
|
||||
{
|
||||
//Pruefen ob bereits ein Eintrag mit dieser SVNR vorhanden ist
|
||||
$qry = "SELECT person_id FROM public.tbl_person WHERE svnr=" . $person['svnr'];
|
||||
if (db_query($qry))
|
||||
{
|
||||
if ($row = db_fetch_object())
|
||||
{
|
||||
if ($row->person_id != $person['person_id'])
|
||||
{
|
||||
return $this->_error('Es existiert bereits eine Person mit dieser SVNR! Daten wurden NICHT gespeichert.');
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
if (mb_strlen($person['ersatzkennzeichen']) > 10)
|
||||
{
|
||||
return $this->_error('Ersatzkennzeichen darf nicht laenger als 10 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['familienstand']) > 1)
|
||||
{
|
||||
return $this->_error('Familienstand ist ungueltig');
|
||||
}
|
||||
if ($person['anzahlkinder'] != '' && !is_numeric($person['anzahlkinder']))
|
||||
{
|
||||
return $this->_error('Anzahl der Kinder ist ungueltig');
|
||||
}
|
||||
if ($person['aktiv'] != "t" && $person['aktiv'] != "f")
|
||||
{
|
||||
return $this->_error('Aktiv ist ungueltig');
|
||||
}
|
||||
if (!isset($person['person_id']) && mb_strlen($person['insertvon']) > 32)
|
||||
{
|
||||
return $this->_error('Insertvon darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['updatevon']) > 32)
|
||||
{
|
||||
return $this->_error('Updatevon darf nicht laenger als 32 Zeichen sein');
|
||||
}
|
||||
/*if ($person['ext_id'] != '' && !is_numeric($person['ext_id']))
|
||||
{
|
||||
return $this->_error('Ext_ID ist keine gueltige Zahl';
|
||||
return false;
|
||||
}*/
|
||||
if (mb_strlen($person['geschlecht']) > 1)
|
||||
{
|
||||
return $this->_error('Geschlecht darf nicht laenger als 1 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['geburtsnation']) > 3)
|
||||
{
|
||||
return $this->_error('Geburtsnation darf nicht laenger als 3 Zeichen sein');
|
||||
}
|
||||
if (mb_strlen($person['staatsbuergerschaft']) > 3)
|
||||
{
|
||||
return $this->_error('Staatsbuergerschaft darf nicht laenger als 3 Zeichen sein');
|
||||
}
|
||||
if ($person['geschlecht'] != 'm' && $person['geschlecht'] != 'w' && $person['geschlecht'] != 'u')
|
||||
{
|
||||
return $this->_error('Geschlecht muss w, m oder u sein!');
|
||||
}
|
||||
|
||||
//Pruefen ob das Geburtsdatum mit der SVNR uebereinstimmt.
|
||||
if ($person['svnr'] != '' && $person['gebdatum'] != '')
|
||||
{
|
||||
if (mb_ereg("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})", $person['gebdatum'], $regs))
|
||||
{
|
||||
//$day = sprintf('%02s',$regs[1]);
|
||||
//$month = sprintf('%02s',$regs[2]);
|
||||
//$year = mb_substr($regs[3],2,2);
|
||||
}
|
||||
elseif (mb_ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})", $person['gebdatum'], $regs))
|
||||
{
|
||||
//$day = sprintf('%02s',$regs[3]);
|
||||
//$month = sprintf('%02s',$regs[2]);
|
||||
//$year = mb_substr($regs[1],2,2);
|
||||
}
|
||||
else
|
||||
{
|
||||
return $this->_error('Format des Geburtsdatums ist ungueltig');
|
||||
}
|
||||
|
||||
/* das muss nicht immer so sein
|
||||
$day_svnr = mb_substr($person['svnr, 4, 2);
|
||||
$month_svnr = mb_substr($person['svnr, 6, 2);
|
||||
$year_svnr = mb_substr($person['svnr, 8, 2);
|
||||
|
||||
if ($day_svnr!=$day || $month_svnr!=$month || $year_svnr!=$year)
|
||||
{
|
||||
return $this->_error('SVNR und Geburtsdatum passen nicht zusammen';
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
return $this->_success('Input data are valid');
|
||||
}
|
||||
}
|
||||
@@ -41,6 +41,4 @@ if ($tablesort)
|
||||
</script>
|
||||
<?php endif ?>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
</head>
|
||||
@@ -145,4 +145,9 @@ trait db_extra
|
||||
else
|
||||
return pg_field_name($result, $i);
|
||||
}
|
||||
|
||||
public function db_last_error()
|
||||
{
|
||||
return pg_last_error();
|
||||
}
|
||||
}
|
||||
@@ -163,9 +163,9 @@ $sql_query="SELECT tbl_student.*,tbl_person.*, tbl_studentlehrverband.semester a
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
|
||||
if($semester<100)
|
||||
{
|
||||
$sql_query.="AND tbl_studentlehrverband.semester=".$db->db_add_param($semester, FHC_INTEGER); //semester = 100 wählt alle aus
|
||||
$sql_query.=" AND tbl_studentlehrverband.semester=".$db->db_add_param($semester, FHC_INTEGER); //semester = 100 wählt alle aus
|
||||
}
|
||||
$sql_query.="ORDER BY semester, nachname";
|
||||
$sql_query.=" ORDER BY semester, nachname";
|
||||
|
||||
//echo $sql_query;
|
||||
if (!$result_std=$db->db_query($sql_query))
|
||||
@@ -314,13 +314,17 @@ foreach ($studiengang as $stg)
|
||||
$outp.='</SELECT>';
|
||||
//Auswahl angezeigtes Studiensemester
|
||||
$outp.="<br>Angezeigtes Studiensemester: <select name='studiensemester_kurzbz'>\n";
|
||||
foreach ($ss_arr AS $sts)
|
||||
|
||||
if (isset($ss_arr) && is_array($ss_arr))
|
||||
{
|
||||
if ($studiensemester_kurzbz == $sts)
|
||||
$sel = " selected ";
|
||||
else
|
||||
$sel = '';
|
||||
$outp.=" <option value='".$sts."' ".$sel."onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&semesterv=$semesterv&studiensemester_kurzbz=$sts&studiensemester_kurzbz_akt=$studiensemester_kurzbz_akt&studiensemester_kurzbz_zk=$studiensemester_kurzbz_zk'\">".$sts."</option>";
|
||||
foreach ($ss_arr AS $sts)
|
||||
{
|
||||
if ($studiensemester_kurzbz == $sts)
|
||||
$sel = " selected ";
|
||||
else
|
||||
$sel = '';
|
||||
$outp.=" <option value='".$sts."' ".$sel."onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&semesterv=$semesterv&studiensemester_kurzbz=$sts&studiensemester_kurzbz_akt=$studiensemester_kurzbz_akt&studiensemester_kurzbz_zk=$studiensemester_kurzbz_zk'\">".$sts."</option>";
|
||||
}
|
||||
}
|
||||
$outp.=" </select>";
|
||||
$outp.= '<BR>Ausbildungssemester der Anzeige: -- ';
|
||||
@@ -333,13 +337,17 @@ $outp.= '<A href="'.$_SERVER['PHP_SELF'].'?stg_kz='.$stg_kz.'&semesterv='.$semes
|
||||
//Auswahl Studiensemester von dem weg vorgerückt werden soll
|
||||
$outp.="<br>-----Vorrückung Studiengang ".$s[$stg_kz]->kurzbz."----------------------------------------------------------------------------------------------------------";
|
||||
$outp.="<br>Ausgangs-Studiensemester: <select name='studiensemester_kurzbz_akt'>\n";
|
||||
foreach ($ss_arr AS $sts2)
|
||||
|
||||
if (isset($ss_arr) && is_array($ss_arr))
|
||||
{
|
||||
if ($studiensemester_kurzbz_akt == $sts2)
|
||||
$sel2 = " selected ";
|
||||
else
|
||||
$sel2 = '';
|
||||
$outp.=" <option value='".$sts2."' ".$sel2."onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&semesterv=$semesterv&studiensemester_kurzbz=$studiensemester_kurzbz&studiensemester_kurzbz_akt=$sts2&studiensemester_kurzb_zk=$studiensemester_kurzbz_zk'\">".$sts2."</option>";
|
||||
foreach ($ss_arr AS $sts2)
|
||||
{
|
||||
if ($studiensemester_kurzbz_akt == $sts2)
|
||||
$sel2 = " selected ";
|
||||
else
|
||||
$sel2 = '';
|
||||
$outp.=" <option value='".$sts2."' ".$sel2."onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&semesterv=$semesterv&studiensemester_kurzbz=$studiensemester_kurzbz&studiensemester_kurzbz_akt=$sts2&studiensemester_kurzb_zk=$studiensemester_kurzbz_zk'\">".$sts2."</option>";
|
||||
}
|
||||
}
|
||||
$outp.=" </select>\n";
|
||||
$outp.= '<BR>Ausgangs-Ausbildungssemester: -- ';
|
||||
@@ -350,13 +358,17 @@ for ($j=0;$j<=$s[$stg_kz]->max_sem;$j++)
|
||||
$outp.= '<A href="'.$_SERVER['PHP_SELF'].'?stg_kz='.$stg_kz.'&semester='.$semester.'&semesterv=100&studiensemester_kurzbz='.$studiensemester_kurzbz.'&studiensemester_kurzbz_akt='.$studiensemester_kurzbz_akt.'&studiensemester_kurzbz_zk='.$studiensemester_kurzbz_zk.'">alle</A> -- ';
|
||||
//Auswahl Studiensemester in das vorgerückt werden soll
|
||||
$outp.="<br>Ziel-Studiensemester: <select name='studiensemester_kurzbz_zk'>\n";
|
||||
foreach ($ss_arr AS $sts3)
|
||||
|
||||
if (isset($ss_arr) && is_array($ss_arr))
|
||||
{
|
||||
if ($studiensemester_kurzbz_zk == $sts3)
|
||||
$sel3 = " selected ";
|
||||
else
|
||||
$sel3 = '';
|
||||
$outp.=" <option value='".$sts3."' ".$sel3."onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&semesterv=$semesterv&studiensemester_kurzbz=$studiensemester_kurzbz&studiensemester_kurzbz_akt=$studiensemester_kurzbz_akt&studiensemester_kurzbz_zk=$sts3'\">".$sts3."</option>";
|
||||
foreach ($ss_arr AS $sts3)
|
||||
{
|
||||
if ($studiensemester_kurzbz_zk == $sts3)
|
||||
$sel3 = " selected ";
|
||||
else
|
||||
$sel3 = '';
|
||||
$outp.=" <option value='".$sts3."' ".$sel3."onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&semesterv=$semesterv&studiensemester_kurzbz=$studiensemester_kurzbz&studiensemester_kurzbz_akt=$studiensemester_kurzbz_akt&studiensemester_kurzbz_zk=$sts3'\">".$sts3."</option>";
|
||||
}
|
||||
}
|
||||
$outp.=" </select>\n";
|
||||
$outp.="<BR>Vorrückung von ".$studiensemester_kurzbz_akt." / ".($semesterv<100?$semesterv.".":'alle')." Semester -> ".$studiensemester_kurzbz_zk;
|
||||
|
||||
Reference in New Issue
Block a user