From 7d8d6fe0a17e810e51ad78a5cbab4caf16ba5099 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 30 Mar 2010 12:14:16 +0000 Subject: [PATCH] Bugfixes Firmenverwaltung neu --- cis/private/lehre/softgrid.php | 41 ++++++------------- include/firma.class.php | 7 ++-- include/konto.class.php | 2 +- include/mitarbeiter.class.php | 2 +- include/moodle_course.class.php | 2 +- include/tw/cis_menu_main.inc.php | 4 -- system/checksystem.php | 68 ++++++++++++++++---------------- 7 files changed, 55 insertions(+), 71 deletions(-) diff --git a/cis/private/lehre/softgrid.php b/cis/private/lehre/softgrid.php index d1629c3e3..4de7cabfc 100644 --- a/cis/private/lehre/softgrid.php +++ b/cis/private/lehre/softgrid.php @@ -23,8 +23,7 @@ echo ''; * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > */ -// ---------------- CIS Include Dateien einbinden - require_once('../../../config/cis.config.inc.php'); +require_once('../../../config/cis.config.inc.php'); ?> @@ -93,28 +92,15 @@ echo ''; $cSoftGridApplicationsRoot=array('%CSIDL_PROGRAMS%\\SoftGrid Applications\\','%CSIDL_PROGRAMS%\\SoftGrid Applications'); $debug=trim((isset($_REQUEST['debug']) ? $_REQUEST['debug']:false)); -# $cXMLFile=trim((isset($_REQUEST['xml']) ? $_REQUEST['xml']:'AppList.xml')); - if ($_SERVER["SERVER_NAME"]=="dav.technikum-wien.at" || $_SERVER["SERVER_NAME"]=="calva.technikum-wien.at") - { - $cXMLFile=trim((isset($_REQUEST['xml']) ? $_REQUEST['xml']: dirname(__FILE__).'/AppList.xml')); - if (!is_file($cXMLFile) && !stristr($cXMLFile,'http') ) - { - $cXMLFile="/var/www/htdocs/simane/test/appllist/AppList.xml"; - } - } - else - { - $cXMLFile=trim((isset($_REQUEST['xml']) ? $_REQUEST['xml']:'../../../documents/infrastruktur/AppList.xml')); - if (!is_file($cXMLFile) && !stristr($cXMLFile,'http') ) - { - if (is_file("AppList.xml") ) - { - $cXMLFile="AppList.xml"; - } - } - - } + $cXMLFile=trim((isset($_REQUEST['xml']) ? $_REQUEST['xml']:'../../../documents/infrastruktur/AppList.xml')); + if (!is_file($cXMLFile) && !stristr($cXMLFile,'http') ) + { + if (is_file("AppList.xml") ) + { + $cXMLFile="AppList.xml"; + } + } if (!is_file($cXMLFile) && !stristr($cXMLFile,'http') ) { @@ -293,7 +279,7 @@ echo ''; if (empty($tmp_value['SecondLevel'])) { $cHTML.=''; - $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].' '; + $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].' '; $cHTML.=''; } else if ($cLastSecondLevel!=strtolower($tmp_value['SecondLevel'])) @@ -323,7 +309,6 @@ echo ''; $cHTML.=''; $cHTML.=''; echo $cHTML; -exit; function SecondLevel($arrAPPMENUE,$cSearchSecondLevel) { @@ -359,7 +344,7 @@ exit; if (empty($tmp_value['ThirdLevel'])) { $cHTML.=''; - $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].''; + $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].''; $cHTML.=''; } else if ($cLastThirdLevel!=strtolower($tmp_value['ThirdLevel'])) @@ -428,7 +413,7 @@ exit; if (empty($tmp_value['FourthLevel'])) { $cHTML.=''; - $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].''; + $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].''; $cHTML.=''; } else if ($cLastFourthLevel!=strtolower($tmp_value['FourthLevel'])) @@ -495,7 +480,7 @@ exit; $cClass='row2'; } $cHTML.=''; - $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].''; + $cHTML.=''.(!empty($tmp_value['Icon'])?'Icon':'').' '.$tmp_value['APPHref'].''; $cHTML.=''; } $cHTML.=''; diff --git a/include/firma.class.php b/include/firma.class.php index debe598af..452e84236 100644 --- a/include/firma.class.php +++ b/include/firma.class.php @@ -393,9 +393,10 @@ class firma extends basis_db $qry.=" distinct on(firma_id)"; $qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung "; $qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse "; - $qry.=" FROM public.tbl_firma, public.tbl_standort "; - $qry.=" left outer join public.tbl_adresse on ( tbl_adresse.adresse_id=tbl_standort.adresse_id ) "; - $qry.=" WHERE tbl_standort.firma_id=tbl_firma.firma_id "; + $qry.=" FROM public.tbl_firma"; + $qry.=" LEFT JOIN public.tbl_standort USING(firma_id) "; + $qry.=" LEFT JOIN public.tbl_adresse on ( tbl_adresse.adresse_id=tbl_standort.adresse_id ) "; + $qry.=" WHERE 1=1"; if($filter!='') $qry.= " and ( lower(tbl_firma.name) like lower('%$filter%') diff --git a/include/konto.class.php b/include/konto.class.php index aed07606f..1b8e6d964 100644 --- a/include/konto.class.php +++ b/include/konto.class.php @@ -393,7 +393,7 @@ class konto extends basis_db * Liefert alle Buchungstypen * @return true wenn ok, false wenn Fehler */ - public function getBuchungstyp($aktiv) + public function getBuchungstyp($aktiv=null) { $qry = "SELECT * FROM public.tbl_buchungstyp"; diff --git a/include/mitarbeiter.class.php b/include/mitarbeiter.class.php index a325472f7..20480a661 100644 --- a/include/mitarbeiter.class.php +++ b/include/mitarbeiter.class.php @@ -849,7 +849,7 @@ class mitarbeiter extends benutzer public function getMitarbeiterOrganisationseinheit($oe_kurzbz) { $sql_query="SELECT DISTINCT campus.vw_mitarbeiter.uid, titelpre, titelpost, vorname, vornamen, nachname, gebdatum, gebort, gebzeit, anmerkung, aktiv, - homepage, updateamum, updatevon, personalnummer, kurzbz, lektor, fixangestellt, standort_id, telefonklappe FROM campus.vw_mitarbeiter + homepage, vw_mitarbeiter.updateamum, vw_mitarbeiter.updatevon, personalnummer, kurzbz, lektor, fixangestellt, standort_id, telefonklappe FROM campus.vw_mitarbeiter JOIN public.tbl_benutzerfunktion USING (uid) WHERE funktion_kurzbz='oezuordnung' AND oe_kurzbz='".addslashes($oe_kurzbz)."' AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND diff --git a/include/moodle_course.class.php b/include/moodle_course.class.php index 98a91cbe9..b124d6df1 100644 --- a/include/moodle_course.class.php +++ b/include/moodle_course.class.php @@ -1566,7 +1566,7 @@ class moodle_course extends basis_db } } } - var_dump($courses); + return $courses; } diff --git a/include/tw/cis_menu_main.inc.php b/include/tw/cis_menu_main.inc.php index b5011daac..603abef64 100644 --- a/include/tw/cis_menu_main.inc.php +++ b/include/tw/cis_menu_main.inc.php @@ -374,10 +374,6 @@   menu item Medienaustattung - - - - diff --git a/system/checksystem.php b/system/checksystem.php index 51729234c..497736e40 100644 --- a/system/checksystem.php +++ b/system/checksystem.php @@ -403,11 +403,11 @@ if(!@$db->db_query("SELECT steuernummer FROM public.tbl_firma LIMIT 1;")) ALTER TABLE public.tbl_standort ALTER COLUMN kurzbz DROP NOT NULL; - -- vorhandene Standorte als Firmen anlegen + -- verknuepfung Standort/Firma richtigstellen INSERT INTO public.tbl_firmentyp(firmentyp_kurzbz, beschreibung) VALUES('Intern','Intern'); - INSERT INTO public.tbl_firma(firmentyp_kurzbz, name, schule, steuernummer, anmerkung, gesperrt, aktiv, ext_id) - SELECT 'Intern', kurzbz, false, null, null, false, true, standort_id FROM public.tbl_standort; + UPDATE public.tbl_firma set firmentyp_kurzbz='Intern', ext_id=(SELECT standort_id FROM public.tbl_adresse JOIN public.tbl_standort USING(adresse_id) WHERE tbl_adresse.firma_id=tbl_firma.firma_id) + WHERE firma_id in(SELECT tbl_adresse.firma_id FROM public.tbl_standort JOIN public.tbl_adresse USING(adresse_id)); UPDATE public.tbl_standort SET bezeichnung=kurzbz WHERE bezeichnung is null; @@ -544,7 +544,7 @@ if(!@$db->db_query("SELECT steuernummer FROM public.tbl_firma LIMIT 1;")) GRANT SELECT ON campus.vw_mitarbeiter TO web; -- Syncronisieren der Daten - + -- Firmenkontakte in tbl_kontakt auslagern -- EMail INSERT INTO public.tbl_kontakt(standort_id, kontakttyp, kontakt, insertamum, insertvon, updateamum, updatevon) @@ -561,6 +561,7 @@ if(!@$db->db_query("SELECT steuernummer FROM public.tbl_firma LIMIT 1;")) SELECT standort_id, 'fax', fax, tbl_firma.insertamum, tbl_firma.insertvon, now(), 'checksystem' FROM public.tbl_firma JOIN public.tbl_standort USING(firma_id) WHERE fax is not null AND fax<>''; + UPDATE public.tbl_kontakt SET standort_id=(SELECT standort_id FROM public.tbl_standort WHERE firma_id=tbl_kontakt.firma_id LIMIT 1) WHERE firma_id IS NOT NULL; -- Spalten entfernen @@ -579,42 +580,43 @@ if(!@$db->db_query("SELECT steuernummer FROM public.tbl_firma LIMIT 1;")) if(!$db->db_query($qry)) echo 'Firmenverwaltung: '.$db->db_last_error().'
'; else + { echo 'Tabellen fuer neue Firmenverwaltung hinzugefuegt!
'; - //Adressen der Firmen Syncronisieren - $qry = " - SELECT - adresse, tbl_firma.insertamum, tbl_firma.insertvon, standort_id - FROM - public.tbl_firma JOIN public.tbl_standort USING(firma_id) - WHERE - tbl_firma.adresse IS NOT NULL - AND tbl_firma.adresse<>'' - AND tbl_standort.adresse_id IS NULL"; - - if($result = $db->db_query($qry)) - { - while($row = $db->db_fetch_object($result)) + //Adressen der Firmen Syncronisieren + $qry = " + SELECT + adresse, tbl_firma.insertamum, tbl_firma.insertvon, standort_id + FROM + public.tbl_firma JOIN public.tbl_standort USING(firma_id) + WHERE + tbl_firma.adresse IS NOT NULL + AND tbl_firma.adresse<>'' + AND tbl_standort.adresse_id IS NULL"; + + if($result = $db->db_query($qry)) { - $qry = "INSERT INTO public.tbl_adresse(strasse, typ, heimatadresse, - zustelladresse, updateamum, updatevon, insertamum, insertvon) - VALUES('".addslashes($row->adresse)."', 'f', false, true, now(), 'checksystem', - ".($row->insertamum!=''?"'".addslashes($row->insertamum)."'":'null').",'".addslashes($row->insertvon)."'); - UPDATE public.tbl_standort SET adresse_id=currval('public.tbl_adresse_adresse_id_seq') WHERE standort_id='".$row->standort_id."';"; - if(!$db->db_query($qry)) + while($row = $db->db_fetch_object($result)) { - echo 'Fehler beim Syncronisieren der Adress-Daten:'.$qry; + $qry = "INSERT INTO public.tbl_adresse(strasse, typ, heimatadresse, + zustelladresse, updateamum, updatevon, insertamum, insertvon) + VALUES('".addslashes($row->adresse)."', 'f', false, true, now(), 'checksystem', + ".($row->insertamum!=''?"'".addslashes($row->insertamum)."'":'null').",'".addslashes($row->insertvon)."'); + UPDATE public.tbl_standort SET adresse_id=currval('public.tbl_adresse_adresse_id_seq') WHERE standort_id='".$row->standort_id."';"; + if(!$db->db_query($qry)) + { + echo 'Fehler beim Syncronisieren der Adress-Daten:'.$qry; + } } } + //Adressfeld entfernen + $qry = "ALTER TABLE public.tbl_firma DROP COLUMN adresse;"; + + if(!$db->db_query($qry)) + { + echo 'Fehler beim Loeschen der Spalte adresse'; + } } - //Adressfeld entfernen - $qry = "ALTER TABLE public.tbl_firma DROP COLUMN adresse;"; - - if(!$db->db_query($qry)) - { - echo 'Fehler beim Loeschen der Spalte adresse'; - } - } if(!@$db->db_query("SELECT mailverteiler FROM public.tbl_organisationseinheit LIMIT 1;"))