From 8efb6035c927e4dac41a5c595808e6d1293f10bc Mon Sep 17 00:00:00 2001 From: Andreas Oesterreicher Date: Thu, 12 Sep 2019 17:36:40 +0200 Subject: [PATCH 1/2] =?UTF-8?q?Mitarbeiter=20Defaultwert=20f=C3=BCr=20Fixa?= =?UTF-8?q?ngestellt=20und=20Aliasgenerierung=20ist=20konfiguriertbar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/global.config-default.inc.php | 6 +++++ vilesci/personen/import/mitarbeiterimport.php | 26 ++++++++++++------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php index d2a3801f0..fa131a8aa 100644 --- a/config/global.config-default.inc.php +++ b/config/global.config-default.inc.php @@ -9,6 +9,9 @@ define('DEFAULT_LEHREINHEIT_LEHRFORM','UE'); // Defaul Trennzeichen fuer E-Mail Empfaenger wenn nicht ueber Variablen ueberschrieben define('DEFAULT_EMAILADRESSENTRENNZEICHEN',','); +// Gibt an ob neue Mitarbeiter per default fixangestellt sind oder nicht +define('DEFAULT_MITARBEITER_FIXANGESTELLT', true); + //Anzeigeoptionen für Lehrveranstaltungen im CIS define('CIS_LEHRVERANSTALTUNG_NEWSGROUPS_ANZEIGEN',true); define('CIS_LEHRVERANSTALTUNG_FEEDBACK_ANZEIGEN',true); @@ -196,6 +199,9 @@ define('SET_UID_AS_PERSONENKENNZEICHEN',false); // Legt fest ob fuer Studierende eine Alias EMail Adresse generiert wird (true|false) define('GENERATE_ALIAS_STUDENT',true); +// gibt an ob beim Anlegen von Mitarbeitern ein Alias generiert wird. +define('GENERATE_ALIAS_MITARBEITERIN',true); + // Wie viele Tage nach Semesterstart soll bei der Neuanlage von Studierenden noch das aktuelle Semester vorgeschlagen werden. define('VILESCI_PERSON_NEU_STUDIENSEMESTER_UEBERGANGSFRIST',30); diff --git a/vilesci/personen/import/mitarbeiterimport.php b/vilesci/personen/import/mitarbeiterimport.php index 561323795..7707c19f6 100644 --- a/vilesci/personen/import/mitarbeiterimport.php +++ b/vilesci/personen/import/mitarbeiterimport.php @@ -46,7 +46,7 @@ function getGemeindeDropDown($postleitzahl) $found=false; $firstentry=''; $gemeinde_x = (isset($_REQUEST['gemeinde'])?$_REQUEST['gemeinde']:''); - $qry = "SELECT distinct name FROM bis.tbl_gemeinde WHERE plz='".addslashes($postleitzahl)."'"; + $qry = "SELECT distinct name FROM bis.tbl_gemeinde WHERE plz=".$db->db_add_param($postleitzahl); echo ''; if(is_numeric($postleitzahl) && $postleitzahl<10000) { @@ -473,7 +473,10 @@ $fixangestellt = (isset($_POST['fixangestellt'])?true:false); if(!isset($_POST['svnr'])) { $lektor = true; - $fixangestellt = true; + if(defined('DEFAULT_MITARBEITER_FIXANGESTELLT') && DEFAULT_MITARBEITER_FIXANGESTELLT) + $fixangestellt = true; + else + $fixangestellt = false; } $ersatzkennzeichen = (isset($_POST['ersatzkennzeichen'])?$_POST['ersatzkennzeichen']:''); @@ -516,7 +519,7 @@ if(isset($_POST['save'])) else { $zugangscode = substr(md5(openssl_random_pseudo_bytes(20)), 0, 15); - + $person->new = true; $person->anrede = $anrede; $person->titelpre = $titel; @@ -617,7 +620,10 @@ if(isset($_POST['save'])) $benutzer->person_id = $person->person_id; $benutzer->bnaktiv = true; $benutzer->aktiv = true; - $benutzer->alias = $alias; + if (!defined('GENERATE_ALIAS_MITARBEITERIN') || GENERATE_ALIAS_MITARBEITERIN ) + { + $benutzer->alias = $alias; + } $benutzer->insertamum=date('Y-m-d H:i:s'); $benutzer->insertvon = $user; $benutzer->aktivierungscode = generateActivationKey(); @@ -949,7 +955,7 @@ if($vorname!='' && $nachname!='') { if($where!='') $where.=' OR'; - $where.=" (LOWER(vorname)=LOWER('".$vorname."') AND LOWER(nachname)=LOWER('".$nachname."'))"; + $where.=" (LOWER(vorname)=LOWER('".$db->db_escape($vorname)."') AND LOWER(nachname)=LOWER('".$db->db_escape($nachname)."'))"; } if($where!='') @@ -963,11 +969,11 @@ if($where!='') while($row = $db->db_fetch_object($result)) { $status = ''; - $qry_stati = "SELECT 'Mitarbeiter' as rolle FROM campus.vw_mitarbeiter WHERE person_id='$row->person_id' + $qry_stati = "SELECT 'Mitarbeiter' as rolle FROM campus.vw_mitarbeiter WHERE person_id=".$db->db_add_param($row->person_id)." UNION - SELECT (get_rolle_prestudent(prestudent_id, null) || ' ' || UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz)) as rolle FROM public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz) WHERE person_id='$row->person_id' + SELECT (get_rolle_prestudent(prestudent_id, null) || ' ' || UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz)) as rolle FROM public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz) WHERE person_id=".$db->db_add_param($row->person_id)." UNION - SELECT 'PreInteressent' as rolle FROM public.tbl_preinteressent WHERE person_id='$row->person_id'"; + SELECT 'PreInteressent' as rolle FROM public.tbl_preinteressent WHERE person_id=".$db->db_add_param($row->person_id); if($result_stati = $db->db_query($qry_stati)) { while($row_stati = $db->db_fetch_object($result_stati)) @@ -977,7 +983,7 @@ if($where!='') } $status = mb_substr($status, 0, mb_strlen($status)-2); echo ''."$row->nachname$row->vorname$row->vornamen$row->gebdatum$row->svnr".($row->geschlecht=='m'?'männlich':'weiblich').""; - $qry_adr = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id'"; + $qry_adr = "SELECT * FROM public.tbl_adresse WHERE person_id=".$db->db_add_param($row->person_id); if($result_adr = $db->db_query($qry_adr)) while($row_adr=$db->db_fetch_object($result_adr)) echo "$row_adr->plz $row_adr->ort, $row_adr->strasse
"; From 123fef945f01ed137a8fbbed3f2b05c73b631082 Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 12 Sep 2019 18:10:36 +0200 Subject: [PATCH 2/2] - copied pivot.de.js pivottable language file from reporting addon to public folder --- public/js/pivottable/pivot.de.js | 76 ++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 public/js/pivottable/pivot.de.js diff --git a/public/js/pivottable/pivot.de.js b/public/js/pivottable/pivot.de.js new file mode 100644 index 000000000..855b6e430 --- /dev/null +++ b/public/js/pivottable/pivot.de.js @@ -0,0 +1,76 @@ +(function() { + var callWithJQuery; + + callWithJQuery = function(pivotModule) { + if (typeof exports === "object" && typeof module === "object") { + return pivotModule(require("jquery")); + } else if (typeof define === "function" && define.amd) { + return define(["jquery"], pivotModule); + } else { + return pivotModule(jQuery); + } + }; + callWithJQuery(function($) { + var deFmt, deFmtInt, deFmtPct, nf, tpl; + nf = $.pivotUtilities.numberFormat; + tpl = $.pivotUtilities.aggregatorTemplates; + deFmt = nf({ + thousandsSep: ".", + decimalSep: "," + }); + deFmtInt = nf({ + digitsAfterDecimal: 0, + thousandsSep: ".", + decimalSep: "," + }); + deFmtPct = nf({ + digitsAfterDecimal: 1, + scaler: 100, + suffix: "%", + thousandsSep: ".", + decimalSep: "," + }); + return $.pivotUtilities.locales.de = { + localeStrings: { + renderError: "Bei dem Zeichnen der Pivot Ergebnisse ist ein Fehler aufgetreten.", + computeError: "Bei dem berechnen der Pivot Ergebnisse ist ein Fehler aufgetreten.", + uiRenderError: "Bei dem Zeichnen des Pivot Interfaces ist ein Fehler aufgetreten.", + selectAll: "Wähle alle", + selectNone: "Wähle keine", + tooMany: "(zu viele Ergebnisse)", + filterResults: "Ergebnisse filtern", + totals: "Total", + vs: "vs", + by: "von" + }, + aggregators: { + "Anzahl": tpl.count(deFmtInt), + "Anzahl einzigartiger Werte": tpl.countUnique(deFmtInt), + "Liste einzigartiger Werte": tpl.listUnique(", "), + "Summe": tpl.sum(deFmt), + "Summe in ganzen Zahlen": tpl.sum(deFmtInt), + "Durchschnitt": tpl.average(deFmt), + "Summe über Summe": tpl.sumOverSum(deFmt), + "80% obere Grenze": tpl.sumOverSumBound80(true, deFmt), + "80% untere Grenze": tpl.sumOverSumBound80(false, deFmt), + "Prozent": tpl.fractionOf(tpl.sum(), "total", deFmtPct), + "Prozent pro Reihe": tpl.fractionOf(tpl.sum(), "row", deFmtPct), + "Prozent pro Spalte": tpl.fractionOf(tpl.sum(), "col", deFmtPct), + "Anzahl als Teil des Ganzen": tpl.fractionOf(tpl.count(), "total", deFmtPct), + "Anzahl als Teil der Reihe": tpl.fractionOf(tpl.count(), "row", deFmtPct), + "Anzahl als Teil der Spalte": tpl.fractionOf(tpl.count(), "col", deFmtPct) + }, + renderers: { + "Tabelle": $.pivotUtilities.renderers["Table"], + "Tabelle mit Balken": $.pivotUtilities.renderers["Table Barchart"], + "Heatmap": $.pivotUtilities.renderers["Heatmap"], + "Heatmap für Reihen": $.pivotUtilities.renderers["Row Heatmap"], + "Heatmap für Spalten": $.pivotUtilities.renderers["Col Heatmap"] + } + }; + }); + +}).call(this); + + +//# sourceMappingURL=pivot.de.js.map