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.')
diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php
index 963dab852..f73517090 100644
--- a/system/dbupdate_3.3.php
+++ b/system/dbupdate_3.3.php
@@ -3394,6 +3394,61 @@ 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!
';
+ }
+}
+
+// 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 RESTRICT 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 ON TABLE fue.tbl_projekttyp TO web;
+ GRANT SELECT ON TABLE fue.tbl_projekttyp TO wawi;
+ 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 +3542,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"),
@@ -3649,7 +3705,7 @@ $tabellen=array(
"system.tbl_extensions" => array("extension_id","name","version","description","license","url","core_version","dependencies","enabled"),
"system.tbl_log" => array("log_id","person_id","zeitpunkt","app","oe_kurzbz","logtype_kurzbz","logdata","insertvon","taetigkeit_kurzbz"),
"system.tbl_logtype" => array("logtype_kurzbz", "data_schema"),
- "system.tbl_filters" => array("filter_id","app","dataset_name","filter_kurzbz","person_id","description","sort","default_filter","filter","oe_kurzbz"),
+ "system.tbl_filters" => array("filter_id","app","dataset_name","filter_kurzbz","person_id","description","sort","default_filter","filter","oe_kurzbz","statistik_kurzbz"),
"system.tbl_phrase" => array("phrase_id","app","phrase","insertamum","insertvon","category"),
"system.tbl_phrasentext" => array("phrasentext_id","phrase_id","sprache","orgeinheit_kurzbz","orgform_kurzbz","text","description","insertamum","insertvon"),
"system.tbl_rolle" => array("rolle_kurzbz","beschreibung"),
diff --git a/vilesci/personen/import/mitarbeiterimport.php b/vilesci/personen/import/mitarbeiterimport.php
index 7707c19f6..410820528 100644
--- a/vilesci/personen/import/mitarbeiterimport.php
+++ b/vilesci/personen/import/mitarbeiterimport.php
@@ -157,12 +157,37 @@ if(isset($_POST['checkUID']))
$(document).ready(function()
{
- $('#t1').tablesorter(
+ if ($('#t1 tbody td').length > 0)
{
- sortList: [[1,0],[2,0],[4,0]],
- widgets: ['zebra'],
- headers: {0: {sorter: false},8: {sorter: false},9: {sorter: false}}
- });
+ $('#t1').tablesorter(
+ {
+ sortList: [[1,0],[2,0],[4,0]],
+ 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)
@@ -199,6 +224,26 @@ function disablefields(obj)
document.getElementById('ueb3').style.display = 'none';
document.getElementById('ueberschreiben1').checked = true;
}
+ disablefields2(val);
+}
+
+function disablefields2(val)
+{
+ document.getElementById('adresse_nation').disabled=val;
+ document.getElementById('adresse').disabled=val;
+ document.getElementById('plz').disabled=val;
+ var ortel = document.getElementById('ort');
+ if (typeof(ortel) != 'undefined' && ortel != null)
+ ortel.disabled=val;
+ var gemeindeel = document.getElementById('gemeinde');
+ if (typeof(gemeindeel) != 'undefined' && gemeindeel != null)
+ gemeindeel.disabled=val;
+ var orttextel = document.getElementById('adresse-ort-textfeld');
+ if (typeof(orttextel) != 'undefined' && orttextel != null)
+ orttextel.disabled=val;
+ var gemeindetextel = document.getElementById('adresse-gemeinde-textfeld');
+ if (typeof(gemeindetextel) != 'undefined' && gemeindetextel != null)
+ gemeindetextel.disabled=val;
}
function GeburtsdatumEintragen()
@@ -223,31 +268,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 (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
+ else if (/^[a-z0-9]*$/i.test(uid) === false)
+ {
+ $("#checkUID").css( "color", "red" );
+ $("#checkUID").html('Die UID darf keine Sonderzeichen enthalten');
+ }
+ else
{
data = {
uid: uid,
@@ -259,21 +320,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');
- }
- else
+ } else
{
- $("#checkUID").css( "color", "green" );
- $("#checkUID").html('UID verfügbar');
+ if (submit)
+ {
+ $("#mitarbeiterimportform").submit();
+ }
+ else
+ {
+ $("#checkUID").css("color", "green");
+ $("#checkUID").html('UID verfügbar');
+ }
}
},
- error: function(data)
- {
+ error: function (data) {
alert(data.msg)
}
});
@@ -559,7 +624,13 @@ if(isset($_POST['save']))
if ($wunschUid != '')
{
- $uid = $wunschUid;
+ if (preg_match('/^[a-z0-9]{4,32}$/i', $wunschUid))
+ $uid = $wunschUid;
+ else
+ {
+ $error = true;
+ $errormsg = 'Die Wunsch-UID '.$wunschUid.' ist ungültig!';
+ }
}
$bn = new benutzer();
@@ -824,27 +895,39 @@ if($geburtsdatum!='')
if($geburtsdatum_error)
echo "Format des Geburtsdatums ist ungueltig!";
}
-if(($vorname=='' && $nachname=='') || $geburtsdatum_error || $geburtsdatum=='')
- echo "