diff --git a/application/config/infocenter.php b/application/config/infocenter.php index 555c30996..15889ef78 100644 --- a/application/config/infocenter.php +++ b/application/config/infocenter.php @@ -3,3 +3,4 @@ if (! defined('BASEPATH')) exit('No direct script access allowed'); $config['infocenter_studiengang_kz'] = '10021, 10027, 10002'; +$config['infocenter_qualifikationskurs_kz'] = '10002'; diff --git a/application/controllers/api/frontend/v1/CisMenu.php b/application/controllers/api/frontend/v1/CisMenu.php index 5324f348b..debab48a4 100644 --- a/application/controllers/api/frontend/v1/CisMenu.php +++ b/application/controllers/api/frontend/v1/CisMenu.php @@ -67,8 +67,11 @@ class CisMenu extends FHCAPI_Controller private function generateUrlForMenuItem($menuItem) { - $menuItem->url = $this->menuItemUrlHelper($menuItem); - unset($menuItem->content); + if(!isset($menuItem->url)) + { + $menuItem->url = $this->menuItemUrlHelper($menuItem); + unset($menuItem->content); + } if ($menuItem->childs && count($menuItem->childs)) { $menuItem->childs = $this->generateUrlsForMenuItems($menuItem->childs); diff --git a/application/controllers/api/frontend/v1/stv/LvTermine.php b/application/controllers/api/frontend/v1/stv/LvTermine.php index b9e23e77d..0d070ffd3 100644 --- a/application/controllers/api/frontend/v1/stv/LvTermine.php +++ b/application/controllers/api/frontend/v1/stv/LvTermine.php @@ -370,6 +370,7 @@ class LvTermine extends FHCAPI_Controller $result->semester = $item->semester; $result->verband = $item->verband; $result->gruppe = $item->gruppe; + $result->studiensemester_kurzbz = $item->studiensemester_kurzbz; return $result; }, $lehrverband_query_result)); diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php index eaa207ff1..f10d94a8a 100644 --- a/application/controllers/system/infocenter/InfoCenter.php +++ b/application/controllers/system/infocenter/InfoCenter.php @@ -34,6 +34,9 @@ class InfoCenter extends Auth_Controller const PREV_FILTER_ID = 'prev_filter_id'; const KEEP_TABLESORTER_FILTER = 'keepTsFilter'; + const ONBOARDING_INSERTVON = 'onboarding'; + const ONBOARDING_KENNZEICHENTYP = 'eobRegistrierungsId'; + private $_uid; // contains the UID of the logged user // Used to log with PersonLogLib @@ -175,6 +178,7 @@ class InfoCenter extends Auth_Controller $this->load->model('person/Kontakt_model', 'KontaktModel'); $this->load->model('person/Geschlecht_model', 'GeschlechtModel'); $this->load->model('person/adresse_model', 'AdresseModel'); + $this->load->model('person/Kennzeichen_model', 'KennzeichenModel'); // Loads libraries $this->load->library('PersonLogLib'); @@ -1452,6 +1456,100 @@ class InfoCenter extends Auth_Controller $this->outputJsonSuccess("Done!"); } + + public function getAbsageData() + { + $stg_typ = $this->getStudienArtBerechtigung(['b', 'm']); + + if (!is_null($stg_typ)) + { + $statusgruende = $this->StatusgrundModel->getStatus(self::ABGEWIESENERSTATUS, true)->retval; + $studienSemester = $this->variablelib->getVar('infocenter_studiensemester'); + $studiengaenge = $this->StudiengangModel->getStudiengaengeWithOrgForm(array_column($stg_typ, 'typ'), $studienSemester); + + $data = array ( + 'statusgruende' => $statusgruende, + 'studiengaenge' => $studiengaenge->retval + ); + + $this->outputJsonSuccess($data); + } + else + $this->outputJsonSuccess(null); + } + + public function getStudienArtBerechtigung($typ = null) + { + $studiengang_kz_all = $this->permissionlib->getSTG_isEntitledFor('infocenter'); + $stg_typ = $this->StudiengangModel->getStudiengangTyp($studiengang_kz_all, $typ); + return getData($stg_typ); + } + + public function getStudienartData() + { + $this->outputJsonSuccess($this->getStudienArtBerechtigung(['b', 'm', 'l'])); + } + + public function saveAbsageForAll() + { + $statusgrund = $this->input->post('statusgrund'); + $studiengang = $this->input->post('studiengang'); + $abgeschickt = $this->input->post('abgeschickt'); + $personen = $this->input->post('personen'); + $studienSemester = $this->variablelib->getVar('infocenter_studiensemester'); + + if ($statusgrund === 'null' || $studiengang === 'null' || $abgeschickt === 'null' || empty($personen)) + $this->terminateWithJsonError("Bitte füllen Sie alle Felder aus"); + + if ($studiengang === 'all' && $abgeschickt === 'all') + { + foreach($personen as $person) + { + $prestudenten = $this->PrestudentModel->getByPersonWithoutLehrgang($person, $studienSemester); + + if (!hasData($prestudenten)) + continue; + + $prestudentenData = getData($prestudenten); + + foreach ($prestudentenData as $prestudent) + { + $this->saveAbsage($prestudent->prestudent_id, $statusgrund); + } + } + } + else + { + $this->load->model('organisation/Studienplan_model', 'StudienplanModel'); + + $this->StudienplanModel->addSelect('1'); + $this->StudienplanModel->addJoin('lehre.tbl_studienordnung so', 'studienordnung_id'); + $escaped = $this->StudienplanModel->db->escape(strtoupper($studiengang)); + $this->StudienplanModel->db->where("UPPER(so.studiengangkurzbzlang || ':' || tbl_studienplan.orgform_kurzbz) = $escaped"); + $this->StudienplanModel->addLimit(1); + $studiengangResult = $this->StudienplanModel->load(); + + if (hasData($studiengangResult)) + { + foreach($personen as $person) + { + $prestudent = $this->PrestudentModel->getPrestudentByStudiengangAndPerson($studiengang, $person, $studienSemester, $abgeschickt, $abgeschickt === 'all'); + + if (!hasData($prestudent)) + continue; + + $prestudentData = getData($prestudent); + $this->saveAbsage($prestudentData[0]->prestudent_id, $statusgrund); + } + } + else + $this->terminateWithJsonError("Falschen Studiengang übergeben!"); + + } + + $this->outputJsonSuccess("Success"); + } + // ----------------------------------------------------------------------------------------------------------------- // Private methods @@ -1946,6 +2044,17 @@ class InfoCenter extends Auth_Controller show_error(getError($user_person)); } + // add info about first electronig onboarding login + $this->KennzeichenModel->addSelect('insertamum'); + $onboarding_first_login = $this->KennzeichenModel->loadWhere( + array('person_id' => $person_id, 'kennzeichentyp_kurzbz' => self::ONBOARDING_KENNZEICHENTYP) + ); + + if (isError($onboarding_first_login)) + { + show_error(getError($onboarding_first_login)); + } + $data = array ( 'lockedby' => $lockedby, 'lockedbyother' => $lockedbyother, @@ -1955,7 +2064,9 @@ class InfoCenter extends Auth_Controller 'messages' => $messages->retval, 'logs' => $logs, 'notizen' => $notizen->retval, - 'notizenbewerbung' => $notizen_bewerbung->retval + 'notizenbewerbung' => $notizen_bewerbung->retval, + 'created_by_onboarding' => $stammdaten->retval->insertvon == self::ONBOARDING_INSERTVON, + 'onboarding_first_login' => hasData($onboarding_first_login) ? getData($onboarding_first_login)[0]->insertamum : null ); return $data; @@ -2375,97 +2486,4 @@ class InfoCenter extends Auth_Controller $this->loglib->logError('Studiengang has no mail for sending Freigabe mail'); } } - - public function getAbsageData() - { - $stg_typ = $this->getStudienArtBerechtigung(['b', 'm']); - - if (!is_null($stg_typ)) - { - $statusgruende = $this->StatusgrundModel->getStatus(self::ABGEWIESENERSTATUS, true)->retval; - $studienSemester = $this->variablelib->getVar('infocenter_studiensemester'); - $studiengaenge = $this->StudiengangModel->getStudiengaengeWithOrgForm(array_column($stg_typ, 'typ'), $studienSemester); - - $data = array ( - 'statusgruende' => $statusgruende, - 'studiengaenge' => $studiengaenge->retval - ); - - $this->outputJsonSuccess($data); - } - else - $this->outputJsonSuccess(null); - } - - public function getStudienArtBerechtigung($typ = null) - { - $studiengang_kz_all = $this->permissionlib->getSTG_isEntitledFor('infocenter'); - $stg_typ = $this->StudiengangModel->getStudiengangTyp($studiengang_kz_all, $typ); - return getData($stg_typ); - } - - public function getStudienartData() - { - $this->outputJsonSuccess($this->getStudienArtBerechtigung(['b', 'm', 'l'])); - } - - public function saveAbsageForAll() - { - $statusgrund = $this->input->post('statusgrund'); - $studiengang = $this->input->post('studiengang'); - $abgeschickt = $this->input->post('abgeschickt'); - $personen = $this->input->post('personen'); - $studienSemester = $this->variablelib->getVar('infocenter_studiensemester'); - - if ($statusgrund === 'null' || $studiengang === 'null' || $abgeschickt === 'null' || empty($personen)) - $this->terminateWithJsonError("Bitte füllen Sie alle Felder aus"); - - if ($studiengang === 'all' && $abgeschickt === 'all') - { - foreach($personen as $person) - { - $prestudenten = $this->PrestudentModel->getByPersonWithoutLehrgang($person, $studienSemester); - - if (!hasData($prestudenten)) - continue; - - $prestudentenData = getData($prestudenten); - - foreach ($prestudentenData as $prestudent) - { - $this->saveAbsage($prestudent->prestudent_id, $statusgrund); - } - } - } - else - { - $this->load->model('organisation/Studienplan_model', 'StudienplanModel'); - - $this->StudienplanModel->addSelect('1'); - $this->StudienplanModel->addJoin('lehre.tbl_studienordnung so', 'studienordnung_id'); - $escaped = $this->StudienplanModel->db->escape(strtoupper($studiengang)); - $this->StudienplanModel->db->where("UPPER(so.studiengangkurzbzlang || ':' || tbl_studienplan.orgform_kurzbz) = $escaped"); - $this->StudienplanModel->addLimit(1); - $studiengangResult = $this->StudienplanModel->load(); - - if (hasData($studiengangResult)) - { - foreach($personen as $person) - { - $prestudent = $this->PrestudentModel->getPrestudentByStudiengangAndPerson($studiengang, $person, $studienSemester, $abgeschickt, $abgeschickt === 'all'); - - if (!hasData($prestudent)) - continue; - - $prestudentData = getData($prestudent); - $this->saveAbsage($prestudentData[0]->prestudent_id, $statusgrund); - } - } - else - $this->terminateWithJsonError("Falschen Studiengang übergeben!"); - - } - - $this->outputJsonSuccess("Success"); - } } \ No newline at end of file diff --git a/application/controllers/system/infocenter/Rueckstellung.php b/application/controllers/system/infocenter/Rueckstellung.php index b1f2b60b7..2a122348f 100644 --- a/application/controllers/system/infocenter/Rueckstellung.php +++ b/application/controllers/system/infocenter/Rueckstellung.php @@ -7,6 +7,8 @@ class Rueckstellung extends Auth_Controller private $_ci; // Code igniter instance private $_uid; + const ZGV_UEBERPRUEFUNG_MAIL_VORLAGE = 'ZGVUEP'; + public function __construct() { parent::__construct( @@ -23,6 +25,7 @@ class Rueckstellung extends Auth_Controller $this->load->model('crm/RueckstellungStatus_model', 'RueckstellungStatusModel'); $this->load->model('person/Person_model', 'PersonModel'); $this->load->library('PersonLogLib'); + $this->load->library('MessageLib'); $this->_setAuthUID(); // sets property uid @@ -78,6 +81,8 @@ class Rueckstellung extends Auth_Controller $this->_log($person_id, $status_kurzbz); + if ($status_kurzbz === 'onhold_zgv') + $this->sendRueckstellungMessage($person_id); $this->outputJson($result); } @@ -104,6 +109,10 @@ class Rueckstellung extends Auth_Controller if (isError($result)) $this->terminateWithJsonError(getError($result)); $this->_log($person, $status_kurzbz); + + if ($status_kurzbz === 'onhold_zgv') + $this->sendRueckstellungMessage($person); + } $this->outputJsonSuccess("Erfolgreich gespeichert!"); } @@ -160,4 +169,26 @@ class Rueckstellung extends Auth_Controller $this->_uid ); } + + private function sendRueckstellungMessage($person_id) + { + $person = $this->_ci->PersonModel->load($person_id); + + if (hasData($person)) + { + $person = getData($person)[0]; + + return $this->messagelib->sendMessageUserTemplate( + $person_id, + self::ZGV_UEBERPRUEFUNG_MAIL_VORLAGE, + array( + 'anrede' => $person->anrede, + 'nachname' => $person->nachname + ), + null, + getAuthPersonId(), + 'infocenter' + ); + } + } } \ No newline at end of file diff --git a/application/models/person/Notiz_model.php b/application/models/person/Notiz_model.php index 1dc09caaf..de3900d2b 100644 --- a/application/models/person/Notiz_model.php +++ b/application/models/person/Notiz_model.php @@ -98,7 +98,7 @@ class Notiz_model extends DB_Model /** * Add a Notiz for a given person */ - public function addNotizForPerson($person_id, $titel, $text, $erledigt, $verfasser_uid) + public function addNotizForPerson($person_id, $titel, $text, $erledigt, $verfasser_uid, $insertvon = null) { // Loads model Notizzuordnung_model $this->load->model('person/Notizzuordnung_model', 'NotizzuordnungModel'); @@ -106,8 +106,15 @@ class Notiz_model extends DB_Model // 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)); + $result = $this->insert( + array( + 'titel' => $titel, + 'text' => $text, + 'erledigt' => $erledigt, + 'verfasser_uid' => $verfasser_uid, + 'insertvon' => $insertvon ?? $verfasser_uid + ) + ); if (isSuccess($result)) { diff --git a/application/views/system/infocenter/infocenterFreigegebenData.php b/application/views/system/infocenter/infocenterFreigegebenData.php index 38285b6ae..55d8f403e 100644 --- a/application/views/system/infocenter/infocenterFreigegebenData.php +++ b/application/views/system/infocenter/infocenterFreigegebenData.php @@ -8,6 +8,7 @@ $LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Attempt to register with existing mailadress\', \'Access code sent\', \'Personal data saved\''; $REJECTED_STATUS = '\'Abgewiesener\''; $ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz'); + $QUALIFIKATIONSKURS = $this->config->item('infocenter_qualifikationskurs_kz'); $STATUS_KURZBZ = '\'Wartender\', \'Bewerber\', \'Aufgenommener\', \'Student\''; $STUDIENSEMESTER = '\''.$this->variablelib->getVar('infocenter_studiensemester').'\''; $ORG_NAME = '\'InfoCenter\''; @@ -277,7 +278,26 @@ $query = ' WHERE konto.person_id = p.person_id AND konto.studiensemester_kurzbz = '. $STUDIENSEMESTER .' AND konto.buchungstyp_kurzbz = '. $KAUTION_DRITT_STAAT .' - ) AS "Kaution" + ) AS "Kaution", + ( + SELECT 1 + FROM public.tbl_prestudentstatus pss + JOIN public.tbl_prestudent ps USING(prestudent_id) + JOIN public.tbl_studiengang sg USING(studiengang_kz) + JOIN lehre.tbl_studienplan sp USING(studienplan_id) + JOIN lehre.tbl_studienordnung so USING(studienordnung_id) + WHERE pss.status_kurzbz = '.$INTERESSENT_STATUS.' + AND pss.bewerbung_abgeschicktamum IS NOT NULL + AND ps.person_id = p.person_id + AND sg.studiengang_kz in('.$QUALIFIKATIONSKURS.') + AND NOT EXISTS ( + SELECT 1 + FROM tbl_prestudentstatus spss + WHERE spss.prestudent_id = ps.prestudent_id + AND spss.status_kurzbz = '.$REJECTED_STATUS.' + ) + LIMIT 1 + ) AS "Qualikurs" FROM public.tbl_person p LEFT JOIN ( SELECT tpl.person_id, @@ -351,7 +371,8 @@ $query = ' 'ZGV Nation MA', 'InfoCenter Mitarbeiter', 'Identitätsnachweis', - ucfirst($this->p->t('infocenter', 'kaution')) + ucfirst($this->p->t('infocenter', 'kaution')), + 'Qualikurs' ), 'formatRow' => function($datasetRaw) { @@ -480,6 +501,14 @@ $query = ' $datasetRaw->{'Kaution'} = 'Offen'; } + if ($datasetRaw->{'Qualikurs'} === null) + { + $datasetRaw->{'Qualikurs'} = 'Nein'; + } + else + { + $datasetRaw->{'Qualikurs'} = 'Ja'; + } return $datasetRaw; }, 'markRow' => function($datasetRaw) { diff --git a/application/views/system/infocenter/stammdaten.php b/application/views/system/infocenter/stammdaten.php index c632b079f..73ea300ab 100644 --- a/application/views/system/infocenter/stammdaten.php +++ b/application/views/system/infocenter/stammdaten.php @@ -92,6 +92,14 @@
+ +
+ +
p->t('infocenter','onboardingRegistriert') ?>
+ +
p->t('infocenter','ersterOnboardingLogin').': '.date_format(date_create($onboarding_first_login), 'd.m.Y') ?>
+
+ @@ -191,12 +199,12 @@
- +  p->t('ui','bearbeiten'); ?>
diff --git a/cis/testtool/login.php b/cis/testtool/login.php index 60447ee52..4b8acb228 100644 --- a/cis/testtool/login.php +++ b/cis/testtool/login.php @@ -632,6 +632,7 @@ elseif (isset($prestudent_id)) $ps_obj->lastStatus = $ps_tmp->status_kurzbz; // letzten Status dem result array hinzufügen $ps_obj->status_mehrsprachig = $ps_tmp->status_mehrsprachig; + $ps_obj->ausbildungssemester = $ps_tmp->ausbildungssemester; } // Falls Status 'Abgewiesene' vorhanden, nach hinten reihen diff --git a/cis/testtool/menu.php b/cis/testtool/menu.php index fb28825de..ca85daf45 100644 --- a/cis/testtool/menu.php +++ b/cis/testtool/menu.php @@ -29,6 +29,7 @@ require_once('../../include/sprache.class.php'); require_once '../../include/phrasen.class.php'; require_once '../../include/studiengang.class.php'; require_once('../../include/gebiet.class.php'); +require_once('../../include/gebiet_pruefling.class.php'); if (!$db = new basis_db()) die('Fehler beim Oeffnen der Datenbankverbindung'); @@ -198,8 +199,8 @@ else if (isset($_SESSION['pruefling_id'])) ) - SELECT DISTINCT ON - (gebiet_id, semester, reihung) + SELECT * FROM (SELECT DISTINCT ON + (gebiet_id) semester, gebiet_id, STRING_AGG(studiengang_kz::TEXT, ', ' ORDER BY studiengang_kz) AS studiengang_kz_list, @@ -226,13 +227,7 @@ else if (isset($_SESSION['pruefling_id'])) JOIN testtool.tbl_gebiet USING (gebiet_id) WHERE - ( - (prestudent_data.semester= 1 AND tbl_ablauf.semester = 1) - OR - (prestudent_data.semester= 2 AND tbl_ablauf.semester = 2) - OR - (prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3)) - ) + tbl_ablauf.semester <= prestudent_data.semester AND ( prestudent_data.studienplan_id = tbl_ablauf.studienplan_id OR @@ -259,9 +254,7 @@ else if (isset($_SESSION['pruefling_id'])) JOIN testtool.tbl_gebiet USING (gebiet_id) WHERE - (prestudent_data.semester= 1 AND tbl_ablauf.semester = 1) - OR - (prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3)) + tbl_ablauf.semester <= prestudent_data.semester ) ) temp ) temp2 @@ -270,7 +263,7 @@ else if (isset($_SESSION['pruefling_id'])) semester, gebiet_id, bezeichnung, - ". $bezeichnung_mehrsprachig_sel ." + ". $bezeichnung_mehrsprachig_sel ." ) temp3 ORDER BY semester, @@ -283,6 +276,8 @@ else if (isset($_SESSION['pruefling_id'])) $lastsemester = ''; $quereinsteiger_stg = ''; $_SESSION['alleGebiete']= []; + $gebiet_pruefling = new gebiet_pruefling(); + $quereinsteiger_menu = false; while($row = $db->db_fetch_object($result)) { //Jedes Semester in einer eigenen Tabelle anzeigen @@ -294,8 +289,25 @@ else if (isset($_SESSION['pruefling_id'])) } $lastsemester = $row->semester; - echo '
'; - echo ''; + if ($row->semester == '1') + { + // Basisgebiete anzeigen + echo '
'. ($row->semester == '1' ? $p->t('testtool/basisgebiete') : $p->t('testtool/quereinstiegsgebiete')).'
'; + echo ''; + } + else + { + if (!$quereinsteiger_menu) + { + echo '
' . $p->t('testtool/basisgebiete') . '
'; + echo ''; + $quereinsteiger_menu = true; + } + else + { + echo '
' . $p->t('testtool/quereinstiegsgebiete') . '
'; + } + } } // Bei Quereinstiegsgebieten nach STG clustern und die STG anzeigen @@ -394,6 +406,12 @@ else if (isset($_SESSION['pruefling_id'])) '; + if (!$gebiet_pruefling->checkIfExists($_SESSION['pruefling_id'], $row->gebiet_id)) + { + $gebiet_pruefling->pruefling_id = $_SESSION['pruefling_id']; + $gebiet_pruefling->gebiet_id = $row->gebiet_id; + $gebiet_pruefling->saveGebietForPruefling(); + } $_SESSION['alleGebiete'][] = $row->gebiet_id; } else diff --git a/include/adresse.class.php b/include/adresse.class.php index 3426d358d..94d364f6a 100644 --- a/include/adresse.class.php +++ b/include/adresse.class.php @@ -521,5 +521,63 @@ class adresse extends basis_db } return true; } + + /** + * Laedt die österreichische Zustell Adresse einer Person + * @param $person_id ID der Person + * @return true wenn ok, false im Fehlerfall + */ + public function loadOesterreichischeZustellAdresse($person_id, $typ = null) + { + //Pruefen ob person_id eine gueltige Zahl ist + if(!is_numeric($person_id) || $person_id == '') + { + $this->errormsg = 'PersonID muss eine Zahl sein'; + return false; + } + $typ_clause = ''; + if (isset($typ)) $typ_clause = "AND typ=".$this->db_add_param($typ); + + //Daten aus der Datenbank lesen + $qry = "SELECT * FROM public.tbl_adresse WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER, false)." + AND nation = 'A' + {$typ_clause} + ORDER BY zustelladresse DESC, adresse_id DESC LIMIT 1"; + + if(!$this->db_query($qry)) + { + $this->errormsg = 'Fehler bei einer Datenbankabfrage'; + return false; + } + + if($row = $this->db_fetch_object()) + { + $this->adresse_id = $row->adresse_id; + $this->heimatadresse = $this->db_parse_bool($row->heimatadresse); + $this->zustelladresse = $this->db_parse_bool($row->zustelladresse); + $this->gemeinde = $row->gemeinde; + $this->name = $row->name; + $this->nation = $row->nation; + $this->ort = $row->ort; + $this->person_id = $row->person_id; + $this->plz = $row->plz; + $this->strasse = $row->strasse; + $this->typ = $row->typ; + $this->updateamum = $row->updateamum; + $this->updatevon = $row->updatevon; + $this->insertamum = $row->insertamum; + $this->insertvon = $row->insertvon; + $this->firma_id = $row->firma_id; + $this->rechnungsadresse = $this->db_parse_bool($row->rechnungsadresse); + $this->anmerkung = $row->anmerkung; + $this->co_name = $row->co_name; + } + else + { + $this->errormsg = 'Es ist kein Datensatz mit dieser ID vorhanden'; + return false; + } + return true; + } } ?> diff --git a/include/gebiet_pruefling.class.php b/include/gebiet_pruefling.class.php new file mode 100644 index 000000000..9578bb546 --- /dev/null +++ b/include/gebiet_pruefling.class.php @@ -0,0 +1,97 @@ +db_add_param($pruefling_id, FHC_INTEGER); + + if($this->db_query($qry)) + { + if($row = $this->db_fetch_object()) + { + $this->prueflinggebiet_id = $row->prueflinggebiet_id; + $this->pruefling_id = $row->pruefling_id; + $this->gebiet_id = $row->gebiet_id; + return true; + } + else + { + $this->errormsg = "Pruefling nicht gefunden"; + return false; + } + } + else + { + $this->errormsg = "Fehler beim Laden der Gebiete für den Pruefling"; + return false; + } + } + + public function checkIfExists($pruefling_id, $gebiet_id) + { + $qry = "SELECT 1 + FROM testtool.tbl_pruefling_gebiet + WHERE pruefling_id =".$this->db_add_param($pruefling_id, FHC_INTEGER) ." AND gebiet_id =".$this->db_add_param($gebiet_id, FHC_INTEGER); + + if ($result = $this->db_query($qry)) + { + if ($this->db_num_rows($result) > 0) + return true; + else + return false; + } + } + + public function saveGebietForPruefling() + { + $qry = "INSERT INTO testtool.tbl_pruefling_gebiet + (pruefling_id, gebiet_id) + VALUES(". + $this->db_add_param($this->pruefling_id, FHC_INTEGER).','. + $this->db_add_param($this->gebiet_id, FHC_INTEGER).');'; + + if ($this->db_query($qry)) + { + return true; + } + else + { + $this->errormsg = 'Fehler beim Speichern der Daten'; + return true; + } + } + +} +?> diff --git a/public/css/infocenter/infocenterDetails.css b/public/css/infocenter/infocenterDetails.css index cf81d073b..10e8840c0 100644 --- a/public/css/infocenter/infocenterDetails.css +++ b/public/css/infocenter/infocenterDetails.css @@ -107,4 +107,9 @@ .gesperrtoption { color: gray; +} + +#onboardingRow +{ + margin-bottom: 15px; } \ No newline at end of file diff --git a/public/js/components/DetailHeader/DetailHeader.js b/public/js/components/DetailHeader/DetailHeader.js index f57b679db..e1810fc78 100644 --- a/public/js/components/DetailHeader/DetailHeader.js +++ b/public/js/components/DetailHeader/DetailHeader.js @@ -542,10 +542,10 @@ export default {