From 7ccffc24ee10ee57417d14d5e28e232eb83b9241 Mon Sep 17 00:00:00 2001 From: alex Date: Wed, 23 Oct 2019 13:16:24 +0200 Subject: [PATCH 1/8] - Added database column statistik_kurzbz in system.tbl_filters - Added row 'report' for app in system.tbl_app --- system/dbupdate_3.3.php | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index feb9a7ab4..276f4bd82 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -3250,6 +3250,32 @@ if(!$result = @$db->db_query("SELECT incoming FROM bis.tbl_zweck LIMIT 1")) echo '
bis.tbl_zweck Spalte incoming und outgoing hinzugefügt, neue Codexeinträge ergänzt.'; } +// Add column statistik_kurzbz to system.tbl_filters +if(!$result = @$db->db_query("SELECT statistik_kurzbz FROM system.tbl_filters LIMIT 1")) +{ + $qry = "ALTER TABLE system.tbl_filters ADD COLUMN statistik_kurzbz varchar(64); + ALTER TABLE system.tbl_filters ADD CONSTRAINT fk_filters_statistik FOREIGN KEY (statistik_kurzbz) REFERENCES public.tbl_statistik (statistik_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;"; + + if(!$db->db_query($qry)) + echo 'system.tbl_filters: '.$db->db_last_error().'
'; + else + echo '
system.tbl_filters: Spalte statistik_kurzbz hinzugefuegt'; +} + +// app reporting hinzufügen +if($result = @$db->db_query("SELECT 1 FROM system.tbl_app WHERE app= 'reporting';")) +{ + if($db->db_num_rows($result) == 0) + { + $qry = "INSERT INTO system.tbl_app(app) VALUES ('reporting');"; + + if(!$db->db_query($qry)) + echo 'system.tbl_app: '.$db->db_last_error().'
'; + else + echo '
system.tbl_app: Zeile reporting hinzugefuegt!
'; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; From 7d5dd646faf3d241db80c5bc963f25a8a63cd45f Mon Sep 17 00:00:00 2001 From: Manfred Kindl Date: Wed, 30 Oct 2019 20:13:22 +0100 Subject: [PATCH 2/8] Fehlermeldung wenn Sonderzeichen in UID --- vilesci/personen/import/mitarbeiterimport.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/vilesci/personen/import/mitarbeiterimport.php b/vilesci/personen/import/mitarbeiterimport.php index 7707c19f6..6b9d319f3 100644 --- a/vilesci/personen/import/mitarbeiterimport.php +++ b/vilesci/personen/import/mitarbeiterimport.php @@ -244,9 +244,16 @@ function checkWunschUid() uid = $("#wunschUid").val().toLowerCase(); uid = uid.replace(/\s+/g, ''); uid = uid.replace('-', ''); - $("#wunschUid").val(uid); + // Check ob uid Sonderzeichen (alles außer a-z und 0-9) enthält + if (/^[a-z0-9]+$/i.test(uid) === false) + { + $("#checkUID").css( "color", "red" ); + $("#checkUID").html('Die UID darf keine Sonderzeichen enthalten'); + return false; + } + if (uid != '') { data = { @@ -265,11 +272,13 @@ function checkWunschUid() { $("#checkUID").css( "color", "red" ); $("#checkUID").html('UID bereits vorhanden'); + return false; } else { $("#checkUID").css( "color", "green" ); $("#checkUID").html('UID verfügbar'); + return true; } }, error: function(data) @@ -930,7 +939,7 @@ if(($geburtsdatum=='' && $vorname=='' && $nachname=='') || $geburtsdatum_error) else { echo ''; - echo ''; + echo ''; } echo ' From 996e9147bc51e1eb3dbbb0c2a0ee92c097ecd06a Mon Sep 17 00:00:00 2001 From: alex Date: Mon, 18 Nov 2019 18:47:54 +0100 Subject: [PATCH 3/8] views/system/infocenter/infocenterFreigegebenData.php: Interessenten with reihungstestangetreten = TRUE from prestudent table are removed from resultset --- .../views/system/infocenter/infocenterFreigegebenData.php | 1 + 1 file changed, 1 insertion(+) diff --git a/application/views/system/infocenter/infocenterFreigegebenData.php b/application/views/system/infocenter/infocenterFreigegebenData.php index 13a2c0563..87a9f78d6 100644 --- a/application/views/system/infocenter/infocenterFreigegebenData.php +++ b/application/views/system/infocenter/infocenterFreigegebenData.php @@ -206,6 +206,7 @@ FROM public.tbl_prestudent ps JOIN public.tbl_studiengang sg USING(studiengang_kz) WHERE ps.person_id = p.person_id + AND ps.reihungstestangetreten = FALSE AND (sg.typ IN ('.$STUDIENGANG_TYP.') OR sg.studiengang_kz in('.$ADDITIONAL_STG.') From e4f1215d50d3218623c46139cc18c836367454ea Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 19 Nov 2019 14:27:29 +0100 Subject: [PATCH 4/8] - added database table fue.tbl_projekttyp - foreign key projekttyp_kurzbz in fue.tbl_projekt table --- system/dbupdate_3.3.php | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index 963dab852..c6a816ddc 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -3394,6 +3394,34 @@ if(!$result = @$db->db_query("SELECT incoming FROM bis.tbl_zweck LIMIT 1")) echo '
bis.tbl_zweck Spalte incoming und outgoing hinzugefügt, neue Codexeinträge ergänzt.'; } +// Add table fue.tbl_projekttyp +if(!$result = @$db->db_query("SELECT 1 FROM fue.tbl_projekttyp LIMIT 1")) +{ + $qry = " + CREATE TABLE fue.tbl_projekttyp + ( + projekttyp_kurzbz varchar(32) NOT NULL, + bezeichnung varchar(255) + ); + COMMENT ON TABLE fue.tbl_projekttyp IS 'Project Type'; + ALTER TABLE fue.tbl_projekttyp ADD CONSTRAINT pk_tbl_projekttyp PRIMARY KEY (projekttyp_kurzbz); + ALTER TABLE fue.tbl_projekt ADD COLUMN projekttyp_kurzbz varchar(32); + ALTER TABLE fue.tbl_projekt ADD CONSTRAINT fk_tbl_projekt_projekttyp FOREIGN KEY (projekttyp_kurzbz) REFERENCES fue.tbl_projekttyp (projekttyp_kurzbz) ON DELETE CASCADE ON UPDATE CASCADE; + + INSERT INTO fue.tbl_projekttyp(projekttyp_kurzbz, bezeichnung) VALUES ('fue', 'Forschung und Entwicklung'); + INSERT INTO fue.tbl_projekttyp(projekttyp_kurzbz, bezeichnung) VALUES ('intern', 'Intern'); + INSERT INTO fue.tbl_projekttyp(projekttyp_kurzbz, bezeichnung) VALUES ('internoe', 'Intern Organisationseinheit'); + + GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE fue.tbl_projekttyp TO web; + GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE fue.tbl_projekttyp TO vilesci; + "; + + if(!$db->db_query($qry)) + echo 'fue.tbl_projekttyp: '.$db->db_last_error().'
'; + else + echo '
fue.tbl_projekttyp hinzugefuegt.'; +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; @@ -3487,9 +3515,10 @@ $tabellen=array( "campus.tbl_zeitwunsch" => array("stunde","mitarbeiter_uid","tag","gewicht","updateamum","updatevon","insertamum","insertvon"), "fue.tbl_aktivitaet" => array("aktivitaet_kurzbz","beschreibung","sort"), "fue.tbl_aufwandstyp" => array("aufwandstyp_kurzbz","bezeichnung"), - "fue.tbl_projekt" => array("projekt_kurzbz","nummer","titel","beschreibung","beginn","ende","oe_kurzbz","budget","farbe","aufwandstyp_kurzbz","ressource_id","anzahl_ma","aufwand_pt","projekt_id"), + "fue.tbl_projekt" => array("projekt_kurzbz","nummer","titel","beschreibung","beginn","ende","oe_kurzbz","budget","farbe","aufwandstyp_kurzbz","ressource_id","anzahl_ma","aufwand_pt","projekt_id","projekttyp_kurzbz"), "fue.tbl_projektphase" => array("projektphase_id","projekt_kurzbz","projektphase_fk","bezeichnung","typ","beschreibung","start","ende","budget","insertamum","insertvon","updateamum","updatevon","personentage","farbe","ressource_id"), "fue.tbl_projekttask" => array("projekttask_id","projektphase_id","bezeichnung","beschreibung","aufwand","mantis_id","insertamum","insertvon","updateamum","updatevon","projekttask_fk","erledigt","ende","ressource_id","scrumsprint_id"), + "fue.tbl_projekttyp" => array("projekttyp_kurzbz","bezeichnung"), "fue.tbl_projekt_dokument" => array("projekt_dokument_id","projektphase_id","projekt_kurzbz","dms_id"), "fue.tbl_projekt_ressource" => array("projekt_ressource_id","projekt_kurzbz","projektphase_id","ressource_id","funktion_kurzbz","beschreibung","aufwand"), "fue.tbl_ressource" => array("ressource_id","student_uid","mitarbeiter_uid","betriebsmittel_id","firma_id","bezeichnung","beschreibung","insertamum","insertvon","updateamum","updatevon"), From 107a8ea9a9ece3037ff53336c8dbbaf7bbfbe472 Mon Sep 17 00:00:00 2001 From: alex Date: Fri, 22 Nov 2019 18:06:20 +0100 Subject: [PATCH 5/8] vilesci/personen/import/mitarbeiterimport.php: - uid special characters check performed, form submitted if passed, submisson prevented otherwise - uid length check >= 4 >= 32 - correct line breaking of left block when "Vorschlag laden" table is displayed --- vilesci/personen/import/mitarbeiterimport.php | 123 ++++++++++++------ 1 file changed, 86 insertions(+), 37 deletions(-) diff --git a/vilesci/personen/import/mitarbeiterimport.php b/vilesci/personen/import/mitarbeiterimport.php index 6b9d319f3..180e3fde9 100644 --- a/vilesci/personen/import/mitarbeiterimport.php +++ b/vilesci/personen/import/mitarbeiterimport.php @@ -163,6 +163,28 @@ $(document).ready(function() widgets: ['zebra'], headers: {0: {sorter: false},8: {sorter: false},9: {sorter: false}} }); + + $("#vorschlladen").click( + function(evt) + { + var input = $("") + .attr("type", "hidden") + .attr("name", "showagain").val("showagain"); + $('#mitarbeiterimportform').append(input); + checkInput1(evt); + } + ); + + $("#savemitarbeiter").click( + function(evt) + { + var input = $("") + .attr("type", "hidden") + .attr("name", "save").val("save"); + $('#mitarbeiterimportform').append(input); + checkInput1(evt); + } + ); }); function disablefields(obj) @@ -223,38 +245,47 @@ function GeburtsdatumEintragen() } } -function checkInput1() +function checkInput1(evt) { + evt.preventDefault(); if(document.getElementById('nachname').value=='') { alert('Nachname muss eingetragen werden'); - return false; } - if(document.getElementById('geburtsdatum').value=='') + else if(document.getElementById('geburtsdatum').value=='') { alert('Geburtsdatum muss eingetragen werden'); - return false; } - return true; + else + checkWunschUid(true); } -function checkWunschUid() +function checkWunschUid(submit) { // Set UID lower case and remove whitespaces and - uid = $("#wunschUid").val().toLowerCase(); uid = uid.replace(/\s+/g, ''); - uid = uid.replace('-', ''); + uid = uid.replace(/-/g, ''); + $("#checkUID").html(''); $("#wunschUid").val(uid); + if (uid === '') + { + if (submit === true) + $("#mitarbeiterimportform").submit(); + } + else if(uid.length < 4 || uid.length > 32) + { + $("#checkUID").css( "color", "red" ); + $("#checkUID").html('UID Länge muss mind. 4, max. 32 Zeichen sein'); + } // Check ob uid Sonderzeichen (alles außer a-z und 0-9) enthält - if (/^[a-z0-9]+$/i.test(uid) === false) + else if (/^[a-z0-9]*$/i.test(uid) === false) { $("#checkUID").css( "color", "red" ); $("#checkUID").html('Die UID darf keine Sonderzeichen enthalten'); - return false; } - - if (uid != '') + else { data = { uid: uid, @@ -266,23 +297,25 @@ function checkWunschUid() data: data, type: 'POST', dataType: "json", - success: function(data) - { - if(data.status != 'ok') + success: function (data) { + if (data.status != 'ok') { - $("#checkUID").css( "color", "red" ); + $("#checkUID").css("color", "red"); $("#checkUID").html('UID bereits vorhanden'); - return false; - } - else + } else { - $("#checkUID").css( "color", "green" ); - $("#checkUID").html('UID verfügbar'); - return true; + if (submit) + { + $("#mitarbeiterimportform").submit(); + } + else + { + $("#checkUID").css("color", "green"); + $("#checkUID").html('UID verfügbar'); + } } }, - error: function(data) - { + error: function (data) { alert(data.msg) } }); @@ -833,10 +866,10 @@ if($geburtsdatum!='') if($geburtsdatum_error) echo "Format des Geburtsdatums ist ungueltig!"; } -if(($vorname=='' && $nachname=='') || $geburtsdatum_error || $geburtsdatum=='') - echo "
"; -else - echo ""; +/*if(($vorname=='' && $nachname=='') || $geburtsdatum_error || $geburtsdatum=='') + echo "";// onsubmit='return checkInput1();' +else*/ + echo ""; ?> @@ -846,14 +879,25 @@ else
'; +echo ''; echo ''; echo ''; -echo ''; +echo ''; //echo ''; echo ''; echo ''; @@ -865,7 +909,12 @@ echo ''; echo ''; echo ''; echo ''; -echo ''; +echo ''; echo ''; echo '
Wunsch-UID - - (optional, max. 32) -
Wunsch-UID'; +echo ''; +if (isset($_POST['showagain'])) + echo '
'; +echo ' (optional, max. 32) +
Anrede
Titel(Pre)
Vorname -   Weitere Vornamen 
Vorname'; +if (isset($_POST['showagain'])) + echo '
'; +else + echo '  '; +echo 'Weitere Vornamen'; +if (isset($_POST['showagain'])) + echo ''; +else + echo ' '; +echo '
Nachname *
Titel(Post)
SVNR
Ersatzkennzeichen
Geburtsdatum * (Format: TT.MM.JJJJ)
Geburtsdatum *'; +if (isset($_POST['showagain'])) + echo '
'; +else + echo ' '; +echo '(Format: TT.MM.JJJJ)
 
Nation
Anmerkungen