mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-25 16:44:28 +00:00
Veraltete Files entfernt
This commit is contained in:
@@ -1,196 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2008 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Rudolf Hangl <[email protected]>.
|
||||
* Gerald Simane-Senquens <[email protected]>.
|
||||
*/
|
||||
/*
|
||||
* Aktualisiert in der Datenbank alle UID Felder und verlaengert diese von 16 auf 32 Zeichen
|
||||
* Views die UIDs als Spalten enthalten werden geloescht und danach wieder angelegt
|
||||
*/
|
||||
require_once('../config/system.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
//Alle Tabellen holen die UID als Spalte haben
|
||||
//die 16 Zeichen lang ist.
|
||||
$qry="
|
||||
SELECT column_name as spalte, table_name as tabelle, table_schema as schema
|
||||
FROM information_schema.columns
|
||||
WHERE
|
||||
column_name in('student_uid','uid','mitarbeiter_uid', 'insertvon','updatevon','koordinator',
|
||||
'lektor','vorsitz','updateaktivvon','freigabevon_uid','vertretung_uid','freigabevon', 'lektor_uid')
|
||||
AND data_type='character varying'
|
||||
AND character_maximum_length='16'
|
||||
ORDER BY table_name DESC, column_name";
|
||||
$views=array();
|
||||
$anzviews=0;
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
$db->db_query('BEGIN');
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
//Alle Views die Spalten enthalten die geaendert werden loeschen
|
||||
if(substr($row->tabelle,0,3)=='vw_')
|
||||
{
|
||||
$qry_view = "SELECT * FROM pg_views WHERE viewname='$row->tabelle'";
|
||||
if($result_view = $db->db_query($qry_view))
|
||||
{
|
||||
if($row_view = $db->db_fetch_object($result_view))
|
||||
{
|
||||
$views[$anzviews]['definition']=$row_view->definition;
|
||||
$views[$anzviews]['schema']=$row_view->schemaname;
|
||||
$views[$anzviews]['viewname']=$row_view->viewname;
|
||||
$anzviews++;
|
||||
|
||||
$qry_drp_view = "DROP VIEW $row_view->schemaname.$row_view->viewname;";
|
||||
echo $qry_drp_view;
|
||||
$db->db_query($qry_drp_view);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//Spalte in der Tabelle aendern
|
||||
$qry_alter="ALTER TABLE $row->schema.$row->tabelle ALTER COLUMN $row->spalte TYPE varchar(32);";
|
||||
echo $qry_alter.'<br>';
|
||||
|
||||
if($db->db_query($qry_alter))
|
||||
echo "$row->tabelle : $row->spalte<br>";
|
||||
else
|
||||
echo "<b>Fehler: $qry_alter</b><br>";
|
||||
}
|
||||
}
|
||||
|
||||
// ----------- ort_kurzbz ------------ //
|
||||
$qry="SELECT column_name as spalte, table_name as tabelle, table_schema as schema
|
||||
FROM information_schema.columns
|
||||
WHERE
|
||||
column_name='ort_kurzbz'
|
||||
AND data_type='character varying'
|
||||
AND character_maximum_length='8'
|
||||
ORDER BY table_name DESC, column_name";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
//Alle Views die Spalten enthalten die geaendert werden loeschen
|
||||
if(substr($row->tabelle,0,3)=='vw_')
|
||||
{
|
||||
$qry_view = "SELECT * FROM pg_views WHERE viewname='$row->tabelle'";
|
||||
if($result_view = $db->db_query($qry_view))
|
||||
{
|
||||
if($row_view = $db->db_fetch_object($result_view))
|
||||
{
|
||||
$views[$anzviews]['definition']=$row_view->definition;
|
||||
$views[$anzviews]['schema']=$row_view->schemaname;
|
||||
$views[$anzviews]['viewname']=$row_view->viewname;
|
||||
$anzviews++;
|
||||
|
||||
$qry_drp_view = "DROP VIEW $row_view->schemaname.$row_view->viewname;";
|
||||
echo $qry_drp_view;
|
||||
$db->db_query($qry_drp_view);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Spalte in der Tabelle aendern
|
||||
$qry_alter="ALTER TABLE $row->schema.$row->tabelle ALTER COLUMN $row->spalte TYPE varchar(16);";
|
||||
echo $qry_alter.'<br>';
|
||||
|
||||
if($db->db_query($qry_alter))
|
||||
echo "$row->tabelle : $row->spalte<br>";
|
||||
else
|
||||
echo "<b>Fehler: $qry_alter</b><br>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Views wieder anlegen
|
||||
foreach ($views as $view)
|
||||
{
|
||||
$qry = "CREATE VIEW ".$view['schema'].".".$view['viewname']." AS ".$view['definition'];
|
||||
if($db->db_query($qry))
|
||||
echo $qry.'<br>';
|
||||
else
|
||||
echo '<b>Fehler beim Anlegen der View: '.$qry.'<br>';
|
||||
}
|
||||
|
||||
//ViewBerechtigungen wieder einspielen
|
||||
$qry ='
|
||||
Grant select on campus.vw_benutzer to group "admin";
|
||||
Grant select on campus.vw_benutzer to group "web";
|
||||
Grant select on campus.vw_lehreinheit to group "admin";
|
||||
Grant select on campus.vw_lehreinheit to group "web";
|
||||
Grant select on campus.vw_mitarbeiter to group "admin";
|
||||
Grant select on campus.vw_mitarbeiter to group "web";
|
||||
Grant select on campus.vw_reservierung to group "admin";
|
||||
Grant select on campus.vw_reservierung to group "web";
|
||||
Grant select on campus.vw_stundenplan to group "admin";
|
||||
Grant select on campus.vw_stundenplan to group "web";
|
||||
Grant select on campus.vw_persongruppe to group "admin";
|
||||
Grant select on campus.vw_persongruppe to group "web";
|
||||
Grant select on campus.vw_student to group "admin";
|
||||
Grant select on campus.vw_student to group "web";
|
||||
Grant select on campus.vw_student_lehrveranstaltung to group "admin";
|
||||
Grant select on campus.vw_student_lehrveranstaltung to group "web";
|
||||
Grant select on lehre.vw_stundenplan to group "admin";
|
||||
Grant select on lehre.vw_stundenplan to group "web";
|
||||
Grant select on lehre.vw_stundenplandev to group "admin";
|
||||
Grant select on lehre.vw_stundenplandev to group "web";
|
||||
Grant select on lehre.vw_lva_stundenplan to group "admin";
|
||||
Grant select on lehre.vw_lva_stundenplan to group "web";
|
||||
Grant select on lehre.vw_lva_stundenplandev to group "admin";
|
||||
Grant select on lehre.vw_lva_stundenplandev to group "web";
|
||||
Grant select on lehre.vw_reservierung to group "admin";
|
||||
Grant select on lehre.vw_reservierung to group "web";
|
||||
Grant select on lehre.vw_fas_lehrveranstaltung to group "admin";
|
||||
Grant select on lehre.vw_fas_lehrveranstaltung to group "web";
|
||||
Grant select on vw_betriebsmittelperson to group "admin";
|
||||
Grant select on vw_betriebsmittelperson to group "web";
|
||||
Grant select on testtool.vw_ablauf to group "admin";
|
||||
Grant select on testtool.vw_ablauf to group "web";
|
||||
Grant select on testtool.vw_pruefling to group "admin";
|
||||
Grant select on testtool.vw_pruefling to group "web";
|
||||
Grant select on testtool.vw_auswertung to group "admin";
|
||||
Grant select on testtool.vw_auswertung to group "web";
|
||||
Grant select on testtool.vw_auswertung_kategorie to group "admin";
|
||||
Grant select on testtool.vw_auswertung_kategorie to group "web";
|
||||
Grant select on vw_studiensemester to group "admin";
|
||||
--Grant select on public.vw_benutzerfunktion to group "admin";
|
||||
Grant select on public.vw_prestudent to group "admin";
|
||||
GRANT SELECT ON public.vw_prestudent to group web;
|
||||
GRANT SELECT ON lehre.vw_stundenplandev_student_unr TO GROUP web;
|
||||
GRANT SELECT ON lehre.vw_stundenplandev_student_unr TO GROUP admin;
|
||||
';
|
||||
echo $qry;
|
||||
if(!$db->db_query($qry))
|
||||
echo '<b>Fehler bei qry:</b>'.$qry;
|
||||
|
||||
if(!$db->db_query('COMMIT'))
|
||||
echo '<b>Fehler beim Commit</b>';
|
||||
else
|
||||
echo '<br><br><b>Aktualisierung erfolgreich</b>';
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -1,33 +0,0 @@
|
||||
Anleitung zum Update von FH-Complete Version 1.2 auf Version 2.0
|
||||
================================================================
|
||||
|
||||
Features der Version 2.0:
|
||||
-------------------------
|
||||
- Neues umfassenderes Rechtekonzept
|
||||
- Datenbank UTF-8 kodiert
|
||||
- Dateien die in der Datenbank gespeichert sind (PDFs, Bilder), sind nun base64 kodiert
|
||||
- Organisationsstruktur kann über Organisationseinheiten abgebildet werden
|
||||
- Datenbank Abstraktionsebene für den Einsatz alternativer Datenbanken
|
||||
- Diverse Bugfixes
|
||||
|
||||
Update:
|
||||
-------
|
||||
Die folgenden Schritte sind für ein Upgrade von Version 1.2 auf Version 2.0 nötig:
|
||||
|
||||
- Updatescript /system/ExtendUidInDatabase.php starten - UID wird auf 32 Zeichen und Räume auf 16 Zeichen erweitert. (Funktioniert auch, wenn die Datenbank bereits als utf8 eingespielt ist) Laufzeit ca 20 min
|
||||
- Datenbank Dump erstellen
|
||||
- Datenbank als UTF8 neu einspielen
|
||||
- Updatescript starten: /system/update12-20.php (Laufzeit: 2 sec)
|
||||
- Konvertierung der PDFs und Bilder in der Datenbank von Hex auf base64: /system/hextobase64.php Laufzeit < 2 Minuten
|
||||
- Konvertieren der Testtool-Daten: /system/TesttoolCleanEncoding.php Laufzeit: 2 sec
|
||||
- Kopieren ALLER Scripten aus dem trunk inclusive der neuen configs (Scripten unter include/Excel, include/xslfo2pdf, include/xslfo2pdf/fpdf nicht vergessen)
|
||||
- anpassen der configs (diese befinden sich ab sofort unter /config/)
|
||||
- in der Tabelle public.tbl_vorlagestudiengang muss bei jeder Vorlage im Header das Encoding von "ISO-8859-15" auf "UTF-8" geändert werden
|
||||
- die Files /trunk/system/xsl/Zeugnis_0_v1.xsl und ZeugnisEng_0_v1.xsl neu in die Tabelle public.tbl_vorlagestudiengang einspielen
|
||||
(bei XSL-Vorlagen wird das Attribut content-length nun richtig(er) interpretiert. Deshalb muss an manchen Stellen dieser Wert angepasst werden an die tatsächlichen mm Werte)
|
||||
- /system/checksystem.php starten
|
||||
- Fertig!
|
||||
|
||||
Die Updatescripte im System Ordner verwenden alle die Config /config/system.config.inc.php
|
||||
Die Scripten TesttoolCleanEncoding.php und hextobase64.php prüfen nicht ob das Script bereits ausgeführt wurde.
|
||||
D.h. sie dürfen nur einmal gestartet werden, da die Daten sonst doppelt kodiert werden!!
|
||||
@@ -1,45 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Roadmap</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Roadmap FH-Complete</h1>
|
||||
<br>
|
||||
<h2>Version 2.0</h2>
|
||||
<ul>
|
||||
<li>Erweiterte Architektur mit Basisklasse und DB-Abstraktion<br>
|
||||
Einsatz von anderen DBMS wie Oracle oder Sybase (MSSQL) wird
|
||||
möglich</li>
|
||||
<li>Rollenkonzept<br>
|
||||
Berrechtigungen werden auf Rollen vergeben. Rollen können selbst
|
||||
definiert werden.</li>
|
||||
<li>Organisationseinheiten<br>
|
||||
Als Basisstruktur wird eine rekursive Tabelle für
|
||||
Organisationseinheiten eingeführt. Somit kann jede beliebige
|
||||
Organisationsstruktur abgebildet werden. Studiengänge, Institute,
|
||||
Kostenstellen, etc. werden dann auf OEen gehängt.</li>
|
||||
</ul>
|
||||
Release: 1. Sept. 2009<br>
|
||||
<br>
|
||||
<h2>Version 2.2</h2>
|
||||
<ul>
|
||||
<li>einfache Modularchitektur</li>
|
||||
<li>Projektverwaltungsmodul (F&E BIS-Meldung)<br>
|
||||
</li>
|
||||
<li>einfaches mehrsprachiges CMS für CIS</li>
|
||||
<li>XML/XSLT-Architektur für CIS<br>
|
||||
</li>
|
||||
</ul>
|
||||
Release: 1. Sept. 2010<br>
|
||||
<h2>Version 2.4</h2>
|
||||
<ul>
|
||||
<li>Ausbau LV-Plan (Schnittstellen, evtl. mehrere Zeitraster)<br>
|
||||
</li>
|
||||
<li>Integration von eGroupware<br>
|
||||
</li>
|
||||
</ul>
|
||||
Release: 1. Sept. 2011<br>
|
||||
<br>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,32 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>TesttoolCleanEncoding</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
/**
|
||||
* Die Testtool Daten haben nach der Umstellung auf UTF8 ein Fehlerhaftes Encoding.
|
||||
* Um dies zu bereinigen, muss dieses Script gestartet werden.
|
||||
*
|
||||
* ACHTUNG! Dieses Script darf nicht mehrmals auf die gleiche DB angewandt werden
|
||||
*/
|
||||
require_once('../config/system.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
$db->db_query('BEGIN;');
|
||||
|
||||
$qry = "UPDATE testtool.tbl_frage_sprache SET text=convert_from(convert_to(text,'LATIN9'),'UTF8');
|
||||
UPDATE testtool.tbl_vorschlag_sprache SET text=convert_from(convert_to(text,'LATIN9'),'UTF8') WHERE text<>'' and text is not null AND strpos(text,'ß')=0;";
|
||||
if($db->db_query($qry))
|
||||
echo "Aktualiserung erfolgreich";
|
||||
else
|
||||
echo "Fehler beim Aktualisieren:".$db->db_last_error();
|
||||
|
||||
$db->db_query('COMMIT;');
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,200 +0,0 @@
|
||||
<map version="0.9.0">
|
||||
<!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
|
||||
<node CREATED="1263374154424" ID="ID_471564337" MODIFIED="1263374859450" TEXT="Firma">
|
||||
<node CREATED="1263375363306" ID="ID_256219247" MODIFIED="1263375367578" POSITION="right" TEXT="Wo?">
|
||||
<node CREATED="1263375008045" ID="ID_1507122203" MODIFIED="1266328965984" TEXT="Bestellung">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<ul>
|
||||
<li>
|
||||
Bestellung hängt auf Standort.
|
||||
</li>
|
||||
<li>
|
||||
Wenn optional eine Ansprechperson ausgewählt wird, werden diese Kontaktdaten (FaxNummer) verwendet.
|
||||
</li>
|
||||
<li>
|
||||
Vorausgewählt wird die Kontaktperson aus der letzten Bestellung bei der gleichen Firma.
|
||||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
<node CREATED="1263377702917" ID="ID_1682615779" MODIFIED="1266329187998" TEXT="Lieferadressen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
Über die tbl_standort wird die Standort-Adresse des Benutzers als Lieferadresse vorausgewählt. Diese kann auf alle anderen Standort-Adressen geändert werden. GmbH
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1263378163177" ID="ID_1716680379" MODIFIED="1263378165584" TEXT="Besteller">
|
||||
<node CREATED="1263379642522" ID="ID_1173818220" MODIFIED="1263379644759" TEXT="Person"/>
|
||||
<node CREATED="1263379647854" ID="ID_948357071" MODIFIED="1263379665802" TEXT="Firma die Bestellt"/>
|
||||
</node>
|
||||
<node CREATED="1263378281382" ID="ID_1757080766" MODIFIED="1266328811510" TEXT="Bestellnummer">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
Schema:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
Bestellung_id wird auf Bestellnummer kopiert.
|
||||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1263378351360" ID="ID_1889631166" MODIFIED="1263378354289" TEXT="Kostenstelle">
|
||||
<node CREATED="1263378372810" ID="ID_853881088" MODIFIED="1263378377016" TEXT="Organisationseinheit"/>
|
||||
</node>
|
||||
<node CREATED="1263378541556" ID="ID_398359254" MODIFIED="1263379487063" TEXT="Projekt (optional)"/>
|
||||
<node CREATED="1266329200388" ID="ID_1338939196" MODIFIED="1266329210151" TEXT="Template für Bestellung">
|
||||
<node CREATED="1266329275157" ID="ID_388004028" MODIFIED="1266329318934" TEXT="hängt auf OE">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
verwendet wird die erste die im Baum gefunden wird.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1266329523636" ID="ID_689821816" MODIFIED="1266329543628" TEXT="muss kein PDF ergeben"/>
|
||||
</node>
|
||||
<node CREATED="1266329320742" ID="ID_1340046779" MODIFIED="1266329402740" TEXT="Rechnungsadressen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
wie
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1266329989261" ID="ID_1394802262" MODIFIED="1266330062776" TEXT="Unterschrift als Grafik?">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
Hier könnte wirklich die Unterschrift vom obersten Freigeber verwendet werden.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1266330115411" ID="ID_755088728" MODIFIED="1266330422841" TEXT="Konto">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
Kostenstellenleiter kann sich aus dem bestehenden Kontorahmen verschiedene Konten für seine Kostenstelle auswählen.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1266330485836" ID="ID_1123475806" MODIFIED="1266330488225" TEXT="Bericht">
|
||||
<node CREATED="1266330490799" ID="ID_1732496060" MODIFIED="1266330508437" TEXT="Matrix Bestellungen/Konten"/>
|
||||
<node CREATED="1266330511373" ID="ID_1515110412" MODIFIED="1266330518795" TEXT="Matrix Bestellungen/Projekte"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1263375166897" ID="ID_1801119910" MODIFIED="1263375176181" TEXT="Projektarbeit">
|
||||
<node CREATED="1263375198511" ID="ID_429711882" MODIFIED="1263375217261" TEXT="Berufspraktikum"/>
|
||||
<node CREATED="1263375220355" ID="ID_1808182341" MODIFIED="1263375246015" TEXT="Projektarbeitsbetreuer">
|
||||
<node CREATED="1266328827027" ID="ID_1909467504" MODIFIED="1266328849238" TEXT="Firmenbetreuer ist einer Firma zugeordnet"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1263375116331" ID="ID_241137506" MODIFIED="1263375128511" TEXT="Betriebsmittel">
|
||||
<node CREATED="1266327307866" ID="ID_848764622" MODIFIED="1266327314208" TEXT="Reparatur">
|
||||
<node CREATED="1266328045783" ID="ID_195924258" MODIFIED="1266328169955" TEXT="bei Welcher Firma (Anmerkung)"/>
|
||||
</node>
|
||||
<node CREATED="1266327321534" ID="ID_386381454" MODIFIED="1266327344982" TEXT="Zuteilung Organisationseinheit"/>
|
||||
<node CREATED="1266327349521" ID="ID_26128919" MODIFIED="1266327355410" TEXT="Zuteilung Person">
|
||||
<node CREATED="1266327359579" ID="ID_1740997873" MODIFIED="1266327371222" TEXT="Datum von bis"/>
|
||||
<node CREATED="1266327374219" ID="ID_1909929145" MODIFIED="1266327386509" TEXT="Kaution über Konto"/>
|
||||
<node CREATED="1266327451370" ID="ID_143017059" MODIFIED="1266327465481" TEXT="Datum Rückgabefrist"/>
|
||||
</node>
|
||||
<node CREATED="1266328018602" ID="ID_983489538" MODIFIED="1266328032315" TEXT="optionaler Verweis auf Bestellung"/>
|
||||
</node>
|
||||
<node CREATED="1263375026408" ID="ID_184537137" MODIFIED="1263375036792" TEXT="Organisationseinheit"/>
|
||||
<node CREATED="1263375147640" ID="ID_1722259213" MODIFIED="1263375164658" TEXT="Lehrauftrag"/>
|
||||
<node CREATED="1263375289953" ID="ID_115813900" MODIFIED="1263375297249" TEXT="PreInteressenten"/>
|
||||
</node>
|
||||
<node CREATED="1263375387346" ID="ID_1887819714" MODIFIED="1263375538199" POSITION="left" TEXT="Tag">
|
||||
<node CREATED="1263375396681" ID="ID_1961756876" MODIFIED="1263375532731" TEXT="Partner"/>
|
||||
<node CREATED="1263375406253" ID="ID_374534979" MODIFIED="1263375414382" TEXT="Schulen"/>
|
||||
<node CREATED="1263375421988" ID="ID_1388610220" MODIFIED="1263375425446" TEXT="Lieferanten"/>
|
||||
<node CREATED="1263375433075" ID="ID_206196011" MODIFIED="1263375439885" TEXT="Lektoren"/>
|
||||
<node CREATED="1263375455157" ID="ID_471741296" MODIFIED="1263375458728" TEXT="Kunden"/>
|
||||
<node CREATED="1263375461223" ID="ID_1999952010" MODIFIED="1263375463998" TEXT="Sponsoren"/>
|
||||
</node>
|
||||
<node CREATED="1263375585251" ID="ID_1612372534" MODIFIED="1263375592383" POSITION="right" TEXT="Typ">
|
||||
<node CREATED="1263375677329" ID="ID_1019529139" MODIFIED="1263375681315" TEXT="Schulformen"/>
|
||||
</node>
|
||||
<node CREATED="1263375863234" ID="ID_453712036" MODIFIED="1263375866648" POSITION="left" TEXT="Standorte">
|
||||
<node CREATED="1263375876619" ID="ID_195659885" MODIFIED="1263376629098" TEXT="Adresse (1:1)"/>
|
||||
<node CREATED="1263375869470" ID="ID_1610538989" MODIFIED="1263376681081" TEXT="Person/Funktion (n:n)">
|
||||
<node CREATED="1263377222733" ID="ID_1236560985" MODIFIED="1263377224330" TEXT="Kontakt"/>
|
||||
</node>
|
||||
<node CREATED="1263377216853" ID="ID_25819312" MODIFIED="1263377220558" TEXT="Kontakt"/>
|
||||
</node>
|
||||
<node CREATED="1263379520124" ID="ID_493781026" MODIFIED="1266327073117" POSITION="right" TEXT="Kundennummer">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
Wo wird die Kundenummer angehängt?
|
||||
</p>
|
||||
<p>
|
||||
|
||||
</p>
|
||||
<ol>
|
||||
<li>
|
||||
zwischen Organisationseinheit und Firma<br />Vorerst werden nur die obersten Organisationseinheit verwendet (GmbH und FH TW)<br />Implementiert wird jedoch jetzt schon, dass die nächste/näheste Kundennummer verwendet wird.<br />
|
||||
</li>
|
||||
<li>
|
||||
hängt nur auf der Firma -><br />nein<br />
|
||||
</li>
|
||||
</ol>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1266327198308" ID="ID_1443789880" MODIFIED="1266327283793" POSITION="left" TEXT="Sperren">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
Wenn bei Firmen nichts mehr bestellt werden darf, kann der Administrator diese Firma sperren. (Blacklist) (Kein Tag)
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
</node>
|
||||
</map>
|
||||
@@ -1,84 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2012 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <[email protected]>
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/person.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if(!$rechte->isBerechtigt('admin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
//Alle Kartenuser holen
|
||||
$qry = "
|
||||
SELECT
|
||||
nummer, betriebsmittelperson_id, person_id
|
||||
FROM
|
||||
wawi.tbl_betriebsmittelperson
|
||||
JOIN wawi.tbl_betriebsmittel USING(betriebsmittel_id)
|
||||
WHERE
|
||||
tbl_betriebsmittelperson.uid is null
|
||||
AND tbl_betriebsmittelperson.retouram is null
|
||||
AND tbl_betriebsmittel.betriebsmitteltyp='Zutrittskarte'
|
||||
AND EXISTS (SELECT * FROM public.tbl_benutzer WHERE person_id=tbl_betriebsmittelperson.person_id AND aktiv=true)";
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if(!$user = getUidFromCardNumber($row->nummer))
|
||||
{
|
||||
$qry = "SELECT uid FROM public.tbl_benutzer WHERE aktiv AND person_id=".$db->db_add_param($row->person_id);
|
||||
if($result_user = $db->db_query($qry))
|
||||
{
|
||||
//Wenn nur 1 aktiver User vorhanden ist, wird dieser genommen
|
||||
if($db->db_num_rows($result_user)==1)
|
||||
{
|
||||
if($row_user = $db->db_fetch_object($result_user))
|
||||
{
|
||||
$user = $row_user->uid;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$pers = new person();
|
||||
$pers->load($row->person_id);
|
||||
echo "<br>Fot Found: $row->nummer PersonID: $row->person_id BetriebsmittelpersonID: $row->betriebsmittelperson_id $pers->vorname $pers->nachname<br>";
|
||||
}
|
||||
}
|
||||
}
|
||||
if($user!='')
|
||||
{
|
||||
$qry = "UPDATE wawi.tbl_betriebsmittelperson
|
||||
SET uid=".$db->db_add_param($user)."
|
||||
WHERE betriebsmittelperson_id=".$db->db_add_param($row->betriebsmittelperson_id);
|
||||
if($db->db_query($qry))
|
||||
echo '+';
|
||||
else
|
||||
echo '|';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -1,100 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger < [email protected] >
|
||||
* Andreas Oesterreicher < [email protected] >
|
||||
*/
|
||||
/**
|
||||
* Scannt das documents Verzeichnis nach LV-Ordnern die nicht mehr benoetigt werden
|
||||
*
|
||||
* Parameter:
|
||||
* stg_von ... Kennzahl ab der gescannt wird (inklusive)
|
||||
* stg_bis ... Kennzahl bis zu der gescannt wird (inklusive)
|
||||
*/
|
||||
require_once('../config/cis.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
$text='';
|
||||
$getstr='';
|
||||
|
||||
$lv_arr = array();
|
||||
$db = new basis_db();
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Unused Dirs</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
</head>
|
||||
<body>
|
||||
Zu den folgenden Verzeichnissen sind keine aktiven Lehrveranstaltungen vorhanden:<br><br>
|
||||
';
|
||||
|
||||
$qry = "SELECT * FROM lehre.tbl_lehrveranstaltung";
|
||||
if (isset($_REQUEST["stg_von"]))
|
||||
$getstr .= " studiengang_kz >= '".$_REQUEST["stg_von"]."'";
|
||||
if (isset($_REQUEST["stg_bis"]))
|
||||
{
|
||||
if ($getstr != "")
|
||||
$getstr .= " AND";
|
||||
$getstr .= " studiengang_kz <= '".$_REQUEST["stg_bis"]."'";
|
||||
}
|
||||
if ($getstr != "")
|
||||
$getstr = " WHERE".$getstr;
|
||||
$qry.= ($getstr!=''?$getstr:' WHERE ').' AND tbl_lehrveranstaltung.aktiv ';
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lv_arr[$row->studiengang_kz][$row->semester][$row->lehreverzeichnis] = 1;
|
||||
}
|
||||
}
|
||||
|
||||
$sqlstr = "SELECT studiengang_kz, lower(typ||kurzbz) as stg, max_semester FROM public.tbl_studiengang";
|
||||
$sqlstr = $sqlstr.$getstr." ORDER BY typ, kurzbz";
|
||||
|
||||
if($result = $db->db_query($sqlstr))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
echo "<hr><b>".$row->stg."</b><br>";
|
||||
for ($i=1; $i <= $row->max_semester; $i++)
|
||||
{
|
||||
$dir = "../documents/".strtolower($row->stg)."/".$i."/";
|
||||
echo "*** ".$i." ***<br>";
|
||||
if (is_dir($dir))
|
||||
{
|
||||
$files = scandir($dir);
|
||||
foreach ($files as $f)
|
||||
{
|
||||
if (is_dir($dir.$f) && $f != "." && $f != "..")
|
||||
{
|
||||
if (!key_exists($f, $lv_arr[$row->studiengang_kz][$i]))
|
||||
{
|
||||
echo $dir.$f.'<br>';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,200 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2013 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <[email protected]>,
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/studienordnung.class.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/studienplan.class.php');
|
||||
require_once('../include/lehrveranstaltung.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if(!$rechte->isBerechtigt('admin'))
|
||||
die('Keine berechtigung');
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll('typ, kurzbz',true);
|
||||
$db = new basis_db();
|
||||
|
||||
// Alle Studiengaenge durchlaufen
|
||||
foreach($studiengang->result as $rowstg)
|
||||
{
|
||||
/*
|
||||
$qry = "SELECT
|
||||
studiensemester_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
|
||||
JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($rowstg->studiengang_kz, FHC_INTEGER)."
|
||||
ORDER BY tbl_studiensemester.start LIMIT 1";
|
||||
*/
|
||||
$stsem = 'WS2013';
|
||||
/*
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$stsem = $row->studiensemester_kurzbz;
|
||||
}
|
||||
}
|
||||
*/
|
||||
// eine Neue Studienordnung anlegen
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->studiengang_kz=$rowstg->studiengang_kz;
|
||||
$studienordnung->bezeichnung=sprintf('%04s',$rowstg->studiengang_kz).'-'.$rowstg->kuerzel.'-'.$stsem;
|
||||
$studienordnung->version='01';
|
||||
$studienordnung->ects=($rowstg->max_semester*30);
|
||||
$studienordnung->gueltigvon=$stsem;
|
||||
$studienordnung->gueltigbis='';
|
||||
$studienordnung->studiengangbezeichnung = $rowstg->bezeichnung;
|
||||
$studienordnung->studiengangbezeichnung_englisch = $rowstg->english;
|
||||
$studienordnung->studiengangkurzbzlang = $rowstg->kurzbzlang;
|
||||
$studienordnung->insertvon = 'generate';
|
||||
$studienordnung->akadgrad_id=1;
|
||||
if(!$studienordnung->save())
|
||||
{
|
||||
echo 'Fehler bei Stg'.$rowstg->studiengang_kz.$studienordnung->errormsg;
|
||||
continue;
|
||||
}
|
||||
else
|
||||
$studienordnung_id = $studienordnung->studienordnung_id;
|
||||
|
||||
// Studienplan anlegen
|
||||
if($rowstg->mischform)
|
||||
{
|
||||
$qry = "SELECT
|
||||
distinct orgform_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($rowstg->studiengang_kz);
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if($row->orgform_kurzbz!='')
|
||||
createStudienplan($row->orgform_kurzbz, $studienordnung_id, $rowstg, $studienordnung->bezeichnung);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
createStudienplan($rowstg->orgform_kurzbz, $studienordnung_id, $rowstg, $studienordnung->bezeichnung);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
$qry = "SELECT * FROM public.tbl_studiensemester WHERE begin<now()";
|
||||
|
||||
$stsem = array();
|
||||
if($result_stsem = $db->db_query($qry))
|
||||
{
|
||||
while($row_stsem = $db->db_fetch_object($result_stsem))
|
||||
{
|
||||
$stsem[] = $row_stsem->studiensemester_kurzbz;
|
||||
}
|
||||
}
|
||||
*/
|
||||
$qry="SELECT *, (Select max_semester FROM public.tbl_studiengang where studiengang_kz=a.studiengang_kz) as max_semester FROM lehre.tbl_studienordnung as a WHERE studienordnung_id=(Select max(studienordnung_id) FROM lehre.tbl_studienordnung WHERE studiengang_kz=a.studiengang_kz)";
|
||||
|
||||
if($result_sto = $db->db_query($qry))
|
||||
{
|
||||
while($row_sto = $db->db_fetch_object($result_sto))
|
||||
{
|
||||
echo $row_sto->bezeichnung.'<br>';
|
||||
for($i=1;$i<=$row_sto->max_semester;$i++)
|
||||
{
|
||||
$qry="INSERT INTO lehre.tbl_studienordnung_semester(studienordnung_id, semester, studiensemester_kurzbz)
|
||||
VALUES(".$db->db_add_param($row_sto->studienordnung_id).','.$i.',';
|
||||
$stsem_arr=array('WS2013','SS2014','WS2014');
|
||||
foreach($stsem_arr as $studiensemester)
|
||||
{
|
||||
$db->db_query($qry.$db->db_add_param($studiensemester).');');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function createStudienplan($orgform, $studienordnung_id, $rowstg, $studienordnungbezeichnung)
|
||||
{
|
||||
global $db;
|
||||
$studienplan = new studienplan();
|
||||
$studienplan->studienordnung_id = $studienordnung_id;
|
||||
$studienplan->orgform_kurzbz=$orgform;
|
||||
$studienplan->version = 'V1';
|
||||
$studienplan->bezeichnung = $studienordnungbezeichnung.'-'.$orgform;
|
||||
$studienplan->regelstudiendauer = $rowstg->max_semester;
|
||||
$studienplan->sprache = $rowstg->sprache;
|
||||
$studienplan->aktiv = true;
|
||||
|
||||
$wochen='15';
|
||||
$qry = "SELECT wochen FROM public.tbl_semesterwochen WHERE studiengang_kz=".$db->db_add_param($rowstg->studiengang_kz)." LIMIT 1";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$wochen = $row->wochen;
|
||||
}
|
||||
}
|
||||
|
||||
$studienplan->semesterwochen = $wochen;
|
||||
$studienplan->testtool_sprachwahl = true;//$db->db_parse_bool($rowstg->testtool_sprachwahl);
|
||||
$studienplan->insertvon = 'generate';
|
||||
if(!$studienplan->save())
|
||||
{
|
||||
echo 'Studienplan failed for '.$rowstg->studiengang_kz.$studienplan->errormsg;
|
||||
continue;
|
||||
}
|
||||
else
|
||||
$studienplan_id = $studienplan->studienplan_id;
|
||||
|
||||
$qry = "SELECT
|
||||
distinct lehrveranstaltung_id, semester, koordinator
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($rowstg->studiengang_kz)."
|
||||
AND (orgform_kurzbz is null or orgform_kurzbz=".$db->db_add_param($orgform).")
|
||||
AND lehrtyp_kurzbz<>'lf'
|
||||
AND tbl_lehrveranstaltung.aktiv";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lehrveranstaltung = new studienplan();
|
||||
$lehrveranstaltung->new=true;
|
||||
$lehrveranstaltung->studienplan_id=$studienplan_id;
|
||||
$lehrveranstaltung->semester=$row->semester;
|
||||
$lehrveranstaltung->pflicht=true;
|
||||
$lehrveranstaltung->koordinator = $row->koordinator;
|
||||
$lehrveranstaltung->lehrveranstaltung_id=$row->lehrveranstaltung_id;
|
||||
$lehrveranstaltung->insertvon='generate';
|
||||
$lehrveranstaltung->saveStudienplanLehrveranstaltung();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -1,205 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2009 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Cbristian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]>,
|
||||
* Rudolf Hangl <[email protected]> and
|
||||
* Gerald Simane-Sequens <[email protected]>
|
||||
*
|
||||
*/
|
||||
/**
|
||||
* Dieses Script veraendert die Datenbank, damit die Dokumente (PDFs, Bilder, etc) die in
|
||||
* der Datenbank gespeichert sind, nicht mebr HEX codiert, sondern base64 Codiert sind
|
||||
*
|
||||
* !!! Dieses Script muss von der CommandLine gestartet werden da es sonst zu einem Timeout kommt !!!
|
||||
*/
|
||||
header('Expires: -1');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate' );
|
||||
header('Pragma: no-cache' );
|
||||
header('Content-Type: text/html;charset=UTF-8');
|
||||
|
||||
require_once('../config/system.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
$next_row_counter=10;
|
||||
|
||||
$db = new basis_db();
|
||||
if (!$db->db_query('BEGIN'))
|
||||
die('Error bei begin');
|
||||
|
||||
echo "tbl_akte...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
//Akte
|
||||
$qry = "UPDATE public.tbl_akte SET inhalt = encode(decode(inhalt, 'hex'),'base64')";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
|
||||
echo "<br>\ntbl_akte...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
echo "<hr>\n";
|
||||
|
||||
//Person
|
||||
echo "tbl_person...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE public.tbl_person SET foto = encode(decode(foto, 'hex'),'base64') WHERE foto is not null";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\ntbl_person...".date('Y-m-d H:i:s')." ENDE ".$db->db_last_error()."<br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
//Testtool - tbl_frage_sprache.bild
|
||||
echo "tbl_frage_sprache bild...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE testtool.tbl_frage_sprache SET bild = encode(decode(bild, 'hex'),'base64') WHERE bild is not null and bild<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\ntbl_frage_sprache bild...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
|
||||
//Testtool - tbl_frage_sprache.bild
|
||||
echo "tbl_frage_sprache audio...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE testtool.tbl_frage_sprache SET audio = encode(decode(audio, 'hex'),'base64') WHERE audio is not null AND audio<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\ntbl_frage_sprache audio...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
echo "<hr>\n";
|
||||
|
||||
//Testtool - tbl_vorschlag_sprache.bild
|
||||
echo "testtool.tbl_vorschlag_sprache bild...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE testtool.tbl_vorschlag_sprache SET bild = encode(decode(bild, 'hex'),'base64') WHERE bild is not null AND bild<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\ntesttool.tbl_vorschlag_sprache bild...".date('Y-m-d H:i:s')." ENDE <br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
//Testtool - tbl_vorschlag_sprache.audio
|
||||
echo "testtool.tbl_vorschlag_sprache audio...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE testtool.tbl_vorschlag_sprache SET audio = encode(decode(audio, 'hex'),'base64') WHERE audio is not null AND audio<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\ntesttool.tbl_vorschlag_sprache audio...".date('Y-m-d H:i:s')." ENDE <br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
//Kommune tbl_wettbewerb
|
||||
echo "kommune.tbl_wettbewerb icon...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
$qry = "UPDATE kommune.tbl_wettbewerb SET icon = encode(decode(icon, 'hex'),'base64') WHERE icon is not null AND icon<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\nkommune.tbl_wettbewerb icon...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
//Kommune tbl_team
|
||||
echo "kommune.tbl_team.logo...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE kommune.tbl_team SET logo = encode(decode(logo, 'hex'),'base64') WHERE logo is not null AND logo<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\nkommune.tbl_team logo...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
//tbl_sprache
|
||||
echo "public.tbl_sprache flagge ...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE public.tbl_sprache SET flagge = encode(decode(flagge, 'hex'),'base64') WHERE flagge is not null AND flagge<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\npublic.tbl_sprache flagge...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
//tbl_erhalter
|
||||
echo "public.tbl_erhalter logo ...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
$qry = "UPDATE public.tbl_erhalter SET logo = encode(decode(logo, 'hex'),'base64') WHERE logo is not null AND logo<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
|
||||
echo "<br>\npublic.tbl_erhalter logo...".date('Y-m-d H:i:s')."<br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
$qry = "UPDATE campus.tbl_veranstaltungskategorie SET bild = encode(decode(bild, 'hex'),'base64') WHERE bild is not null AND bild<>''";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$db->db_query('ROLLBACK');
|
||||
die('Fehler:'.$db->db_last_error());
|
||||
}
|
||||
echo "<br>\ncampus.tbl_veranstaltungskategorie bild...".date('Y-m-d H:i:s')." ENDE<br>\n";
|
||||
flush();
|
||||
|
||||
echo "<hr>\n";
|
||||
|
||||
if(!$db->db_query('COMMIT'))
|
||||
echo "<br>\n".date('Y-m-d H:i:s')." ERROR :".$db->db_last_error()."<br>\n".' line '. __LINE__ .' ; file ' . __FILE__;
|
||||
else
|
||||
echo "<br>\n<b>Aktualisierung abgeschlossen ".date('Y-m-d H:i:s')."</b>";
|
||||
?>
|
||||
@@ -1,66 +0,0 @@
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2012 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Karl Burkhart <[email protected]>
|
||||
*/
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Check Studenten</title>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
|
||||
<link rel="stylesheet" href="../skin/vilesci.css" type="text/css">
|
||||
</head>
|
||||
|
||||
<body class="background_main">
|
||||
<h2>Zuweisung von Zugangscodes zu Personen</h2>
|
||||
|
||||
<?php
|
||||
|
||||
$db = new basis_db();
|
||||
$count = 0;
|
||||
$countError=0;
|
||||
|
||||
$qry="SELECT person_id FROM public.tbl_person WHERE zugangscode is null";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$qry_zugangscode = "UPDATE public.tbl_person Set zugangscode ='".uniqid()."' where person_id = '".$row->person_id."'";
|
||||
if($db->db_query($qry_zugangscode))
|
||||
$count+=1;
|
||||
else
|
||||
$countError+=1;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
die('Es ist ein fehler bei der Abfrage aufgetreten');
|
||||
}
|
||||
|
||||
echo $count." Datensätze wurden upgedatet dabei sind ".$countError." Fehler aufgetreten";
|
||||
?>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,100 +0,0 @@
|
||||
<?php
|
||||
/**
|
||||
* Resettet den Usability Test auf der CIS-Redesign Seite
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Reset Usability Test</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
</head>
|
||||
<body>
|
||||
<h2>Reset Usability Test</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li>Foto löschen</li>
|
||||
<li>Fotostati löschen</li>
|
||||
<li>Daten aus Urlaubstool löschen und Demodaten eintragen</li>
|
||||
<li>Newseinträge löschen</li>
|
||||
</ul>
|
||||
</p>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
|
||||
<input type="submit" name="reset" value="Reset starten">
|
||||
</form>';
|
||||
|
||||
/** echo '
|
||||
<br />
|
||||
<br />
|
||||
<h2>Abgabetool</h2>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
|
||||
<input type="hidden" value="student1" name="uid">
|
||||
<input type="submit" name="reset_abgabe" value="Projektabgaben von Student1 resetten">
|
||||
</form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
|
||||
<input type="hidden" value="student2" name="uid">
|
||||
<input type="submit" name="reset_abgabe" value="Projektabgaben von Student2 resetten">
|
||||
</form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
|
||||
<input type="hidden" value="student3" name="uid">
|
||||
<input type="submit" name="reset_abgabe" value="Projektabgaben von Student3 resetten">
|
||||
</form>
|
||||
'; */
|
||||
|
||||
if(isset($_POST['reset']))
|
||||
{
|
||||
/*echo ' <font color="green"><ul>
|
||||
<li>Foto gelöscht</li>
|
||||
<li>Fotostati gelöscht</li>
|
||||
<li>Daten aus Urlaubstool gelöscht</li>
|
||||
</ul></font> ';*/
|
||||
$db = new basis_db();
|
||||
|
||||
$qry = "
|
||||
delete from public.tbl_person_fotostatus where person_id in (30566,453);
|
||||
delete from public.tbl_ampel_benutzer_bestaetigt where uid in ('gl1','if10b066');
|
||||
update public.tbl_person set foto=NULL, foto_sperre=FALSE where person_id in (30566,453);
|
||||
|
||||
|
||||
delete from campus.tbl_zeitsperre where mitarbeiter_uid='gl1';
|
||||
INSERT INTO campus.tbl_zeitsperre (zeitsperretyp_kurzbz,mitarbeiter_uid,bezeichnung,vondatum,vonstunde,bisdatum,bisstunde,vertretung_uid,updateamum,updatevon,insertamum,insertvon,erreichbarkeit_kurzbz,freigabeamum,freigabevon) VALUES ('Urlaub', 'gl1', 'Urlaub', '2013-05-01', NULL, '2013-05-03', NULL, NULL,NULL,NULL, now(), 'gl1',NULL,now(), 'kindlm');
|
||||
INSERT INTO campus.tbl_zeitsperre (zeitsperretyp_kurzbz,mitarbeiter_uid,bezeichnung,vondatum,vonstunde,bisdatum,bisstunde,vertretung_uid,updateamum,updatevon,insertamum,insertvon,erreichbarkeit_kurzbz,freigabeamum,freigabevon) VALUES ('Urlaub', 'gl1', 'Urlaub', '2013-05-06', NULL, '2013-05-10', NULL, NULL,NULL,NULL, now(), 'gl1',NULL,now(), 'kindlm');
|
||||
INSERT INTO campus.tbl_zeitsperre (zeitsperretyp_kurzbz,mitarbeiter_uid,bezeichnung,vondatum,vonstunde,bisdatum,bisstunde,vertretung_uid,updateamum,updatevon,insertamum,insertvon,erreichbarkeit_kurzbz,freigabeamum,freigabevon) VALUES ('Urlaub', 'gl1', 'Urlaub', '2013-07-22', NULL, '2013-07-26', NULL, NULL,NULL,NULL, now(), 'gl1',NULL,now(), 'kindlm');
|
||||
INSERT INTO campus.tbl_zeitsperre (zeitsperretyp_kurzbz,mitarbeiter_uid,bezeichnung,vondatum,vonstunde,bisdatum,bisstunde,vertretung_uid,updateamum,updatevon,insertamum,insertvon,erreichbarkeit_kurzbz,freigabeamum,freigabevon) VALUES ('Urlaub', 'gl1', 'Urlaub', '2013-07-29', NULL, '2013-08-02', NULL, NULL,NULL,NULL, now(), 'gl1',NULL,now(), 'kindlm');
|
||||
|
||||
delete from campus.tbl_news where insertvon='gl1';
|
||||
delete from campus.tbl_contentsprache where insertvon='gl1';
|
||||
delete from campus.tbl_content where insertvon='gl1';
|
||||
";
|
||||
|
||||
|
||||
if($db->db_query($qry))
|
||||
echo '<font color="green">ERFOLGREICH BEENDET</font>';
|
||||
else
|
||||
echo '<font color="red">ERROR</font>'.$db->db_last_error();
|
||||
}
|
||||
/* if(isset($_POST['reset_abgabe']))
|
||||
{
|
||||
$uid=$_POST['uid'];
|
||||
echo '<br />Resetting Abgabetool '.$uid.'...';
|
||||
$db = new basis_db();
|
||||
|
||||
$qry = "
|
||||
DELETE FROM campus.tbl_paabgabe
|
||||
WHERE paabgabe_id IN(SELECT paabgabe_id
|
||||
FROM
|
||||
campus.tbl_paabgabe
|
||||
JOIN lehre.tbl_projektarbeit USING(projektarbeit_id)
|
||||
WHERE student_uid='".addslashes($uid)."');
|
||||
DELETE FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id IN(SELECT projektarbeit_id FROM lehre.tbl_projektarbeit WHERE student_uid='".addslashes($uid)."');
|
||||
DELETE FROM lehre.tbl_projektarbeit WHERE student_uid='".addslashes($uid)."';
|
||||
";
|
||||
|
||||
if($db->db_query($qry))
|
||||
echo '<font color="green">done</font>';
|
||||
else
|
||||
echo '<font color="red">error</font>'.$db->db_last_error();
|
||||
}*/
|
||||
?>
|
||||
@@ -1,130 +0,0 @@
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2012 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Karl Burkhart <[email protected]>
|
||||
*/
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/mail.class.php');
|
||||
require_once('../include/person.class.php');
|
||||
require_once('../include/kontakt.class.php');
|
||||
?>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>Zugangscode Senden</title>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
|
||||
<link rel="stylesheet" href="../skin/vilesci.css" type="text/css">
|
||||
</head>
|
||||
|
||||
<body class="background_main">
|
||||
<h2>Email an Neuanfänger schicken</h2>
|
||||
|
||||
<?php
|
||||
|
||||
$db = new basis_db();
|
||||
$count = 0;
|
||||
$count_studenten = 0;
|
||||
$countError = 0;
|
||||
|
||||
$qry = "SELECT * FROM public.tbl_benutzer
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE uid LIKE '__12%'
|
||||
AND foto is null";
|
||||
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$kon_alt='';
|
||||
$person = new person();
|
||||
$person->load($row->person_id);
|
||||
|
||||
// private email holen
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->load_persKontakttyp($row->person_id, 'email');
|
||||
|
||||
$zugangscode = $row->zugangscode;
|
||||
$count_studenten+=1;
|
||||
|
||||
// Falls mehrere vorhanden sind, an alle schicken
|
||||
foreach($kontakt->result as $kon)
|
||||
{
|
||||
if($kon_alt != $kon->kontakt)
|
||||
{
|
||||
|
||||
if(sendMail($kon->kontakt, $row->nachname, $zugangscode))
|
||||
{
|
||||
echo $kon->kontakt.'</br>';
|
||||
$count+=1;
|
||||
}
|
||||
else
|
||||
$countError+=1;
|
||||
}
|
||||
|
||||
$kon_alt = $kon->kontakt;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
echo('Fehler bei der Abfrage aufgetreten');
|
||||
|
||||
|
||||
echo $count.' Emails an '.$count_studenten.' Studenten geschickt. Es sind dabei '.$countError.' Fehler aufgetreten';
|
||||
|
||||
function sendMail($email, $name, $zugangscode)
|
||||
{
|
||||
// trim zugangscode
|
||||
// an private email schicken
|
||||
$msg = '<b>Sehr geehrter Herr/Frau '.$name.'</b><br><br>';
|
||||
$msg.= 'Willkommen an der Fachhochschule Technikum Wien. <br><br>';
|
||||
$msg.= 'Für Ihren FH-Ausweis, der gleichzeitig als Zutrittskarte dient, benötigen wir ein Foto von Ihnen.<br>';
|
||||
$msg.= 'Bitte nutzen Sie den folgenden Link und den angegebenen Zugangscode um Ihr Foto hochzuladen.<br><br>';
|
||||
$msg.= '<a href="https://cis.technikum-wien.at/cis/public/prestudententool/index.php">https://cis.technikum-wien.at/cis/public/prestudententool/index.php</a><br>';
|
||||
$msg.= 'Zugangscode: '.trim($zugangscode).'<br><br>';
|
||||
$msg.= 'Die Kriterien, die Ihr Foto erfüllen muss, finden Sie beim Upload oder unter <a href="https://cis.technikum-wien.at/cms/content.php?content_id=6174">https://cis.technikum-wien.at/cms/content.php?content_id=6174</a> <br><br>';
|
||||
$msg.= 'Technische Unterstützung erhalten Sie unter <a href="mailto:[email protected]">[email protected]</a> <br><br>';
|
||||
$msg.= 'Wir wünschen Ihnen einen erfolgreichen Start ins Studium!<br><br>';
|
||||
$msg.= 'Fachhochschule Technikum Wien <br><br>';
|
||||
|
||||
$msg.= '---------------- <br><br>';
|
||||
$msg.= '<b>Dear Mr/Ms '.$name.'</b><br><br>';
|
||||
$msg.= 'Welcome to the University of Applied Sciences Technikum Wien.<br><br>';
|
||||
$msg.= 'For your UAS identity card, which also serves as a key card, we need a photo of you.<br>';
|
||||
$msg.= 'Please use the following link and the access code indicated in order to upload your photo.<br><br>';
|
||||
$msg.= '<a href="https://cis.technikum-wien.at/cis/public/prestudententool/index.php?lang=English">https://cis.technikum-wien.at/cis/public/prestudententool/index.php</a><br>';
|
||||
$msg.= 'Access code: '.trim($zugangscode).'<br><br>';
|
||||
$msg.= 'You can find the criteria that your photo has to fulfil either when uploading or under <a href ="https://cis.technikum-wien.at/cms/content.php?content_id=6174&sprache=English">https://cis.technikum-wien.at/cms/content.php?content_id=6174</a><br><br>';
|
||||
$msg.= 'Technical support is available under <a href="mailto:[email protected]">[email protected]</a> <br><br>';
|
||||
$msg.= 'We wish you a successful start to your studies!<br><br>';
|
||||
$msg.= 'University of Applied Sciences Technikum Wien';
|
||||
|
||||
$mail = new mail($email, 'no-reply', 'Fotoupload für Ihren FH-Ausweis', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
|
||||
$mail->setHTMLContent($msg);
|
||||
if($mail->send())
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html>
|
||||
<body>
|
||||
<a href="sync_stpldev_stpl.php">LV-Plan Sync (Mail)</a>
|
||||
<a href="sync_stpldev_stpl.php?sendmail=false">LV-Plan Sync (ohne Mails)</a>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,41 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/wawi_kostenstelle.class.php');
|
||||
|
||||
$kostenstelle = new wawi_kostenstelle();
|
||||
$kostenstelle->getAll();
|
||||
$db = new basis_db();
|
||||
|
||||
foreach($kostenstelle->result as $row)
|
||||
{
|
||||
$qry = "INSERT INTO wawi.tbl_konto_kostenstelle(konto_id, kostenstelle_id, insertamum, insertvon)
|
||||
SELECT konto_id, $row->kostenstelle_id, now(),'oesi' FROM wawi.tbl_konto WHERE kontonr::integer<100
|
||||
AND konto_id NOT IN(SELECT konto_id FROM wawi.tbl_konto_kostenstelle WHERE kostenstelle_id='$row->kostenstelle_id')";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo 'Failed:'.$qry;
|
||||
}
|
||||
echo '<br /><br />DONE';
|
||||
?>
|
||||
@@ -1,174 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
/**
|
||||
* Syncronisiert die Aufteilung von WaWi DB in FHComplete DB
|
||||
*/
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
if (!$conn_wawi = pg_pconnect(CONN_STRING_WAWI))
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden. *** File:='.__FILE__.' Line:='.__LINE__."\n");
|
||||
|
||||
$error_log='';
|
||||
$update_log='';
|
||||
$anzahl_aufteilungen=0;
|
||||
$anzahl_insert=0;
|
||||
$anzahl_update=0;
|
||||
$anzahl_delete=0;
|
||||
$anzahl_fehler=0;
|
||||
$starttime=date("d.m.Y H:i:s");
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Synchro - WaWi -> FAS - Aufteilung</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
$qry="
|
||||
SET CLIENT_ENCODING TO UNICODE;
|
||||
SELECT
|
||||
*, aufteilung.lupdate, aufteilung.cdate, bn_create.username_neu as insertvon, bn_update.username_neu as updatevon
|
||||
FROM
|
||||
aufteilung
|
||||
JOIN studiengang USING(studiengang_id)
|
||||
LEFT JOIN benutzer bn_update ON(aufteilung.luser=bn_update.user_id)
|
||||
LEFT JOIN benutzer bn_create ON(aufteilung.luser=bn_create.user_id)
|
||||
WHERE studiengang_id<>20
|
||||
ORDER BY aufteilung_id
|
||||
";
|
||||
if($result=pg_query($conn_wawi, $qry))
|
||||
{
|
||||
|
||||
$anzahl_aufteilungen=pg_num_rows($result);
|
||||
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
//check, ob firma bereits übertragen
|
||||
$qry_check="SELECT * FROM wawi.tbl_aufteilung WHERE aufteilung_id='".addslashes($row->aufteilung_id)."'";
|
||||
if($result_check=$db->db_query($qry_check))
|
||||
{
|
||||
if($db->db_num_rows($result_check)>0)
|
||||
{
|
||||
$update = false;
|
||||
//Aufteilung vorhanden - Änderungen im WaWi?
|
||||
if($row_check = $db->db_fetch_object($result_check))
|
||||
{
|
||||
if($row_check->bestellung_id!=$row->bestellung_id)
|
||||
{
|
||||
$update = true;
|
||||
$update_log.="\nBestellung_id von $row_check->bestellung_id auf $row->bestellung_id geändert";
|
||||
}
|
||||
if($row_check->oe_kurzbz!=$row->oe_kurzbz)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nOrganisationseinheit von $row_check->oe_kurzbz auf $row->oe_kurzbz geändert";
|
||||
}
|
||||
if($row_check->anteil!=$row->anteil)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nAnteil von $row_check->anteil auf $row->anteil geändert";
|
||||
}
|
||||
if($row_check->updatevon!=$row->username_neu)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nUpdateVon von $row_check->updatevon auf $row->username_neu geändert";
|
||||
}
|
||||
|
||||
if($update)
|
||||
{
|
||||
$qry = "UPDATE wawi.tbl_aufteilung SET
|
||||
bestellung_id=".$db->addslashes($row->bestellung_id).",
|
||||
oe_kurzbz=".$db->addslashes($row->oe_kurzbz).",
|
||||
anteil=".$db->addslashes($row->anteil).",
|
||||
updatevon=".$db->addslashes($row->updatevon).",
|
||||
updateamum=".$db->addslashes($row->lupdate)."
|
||||
WHERE aufteilung_id='".addslashes($row->aufteilung_id)."'";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_update++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler beim Update: $qry";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Aufteilung nicht vorhanden
|
||||
$qry="INSERT INTO wawi.tbl_aufteilung(aufteilung_id, bestellung_id, oe_kurzbz, anteil,
|
||||
insertamum, insertvon, updateamum, updatevon) VALUES("
|
||||
.$db->addslashes($row->aufteilung_id).","
|
||||
.$db->addslashes($row->bestellung_id).","
|
||||
.$db->addslashes($row->oe_kurzbz).","
|
||||
.$db->addslashes($row->anteil).","
|
||||
.$db->addslashes($row->cdate).","
|
||||
.$db->addslashes($row->insertvon).","
|
||||
.$db->addslashes($row->lupdate).","
|
||||
.$db->addslashes($row->updatevon).");";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_insert++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler beim Insert: $qry";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler bei Select: $qry_check";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
|
||||
if(!$db->db_query("SELECT setval('wawi.seq_aufteilung_aufteilung_id',(SELECT max(aufteilung_id) FROM wawi.tbl_aufteilung));"))
|
||||
{
|
||||
$error_log.="\nFehler beim Update der Sequence";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
//Mail versenden
|
||||
$statistik="Aufteilung Default Sync\n--------------\n";
|
||||
$statistik.="Beginn: ".$starttime." von ".DB_NAME." - Anzahl Einträge: ".$anzahl_aufteilungen."\n\n";
|
||||
$statistik.="\nEingefügte Datensätze: $anzahl_insert";
|
||||
$statistik.="\nGeänderte Datensätze: $anzahl_update";
|
||||
$statistik.="\nFehler: $anzahl_fehler\n";
|
||||
|
||||
$synced=$statistik.$error_log.$update_log;
|
||||
$mail = new mail(MAIL_ADMIN, "vilesci@".DOMAIN, "SYNC Aufteilung Default von ".DB_NAME, $synced);
|
||||
$mail->setReplyTo("vilesci@".DOMAIN);
|
||||
if(!$mail->send())
|
||||
{
|
||||
echo "<font color=\"#FF0000\">Fehler beim Versenden des Durchführungs-Mails!</font><br>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -1,174 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
/**
|
||||
* Syncronisiert die Default Aufteilung von WaWi DB in FHComplete DB
|
||||
*/
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
if (!$conn_wawi = pg_pconnect(CONN_STRING_WAWI))
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden. *** File:='.__FILE__.' Line:='.__LINE__."\n");
|
||||
|
||||
$error_log='';
|
||||
$update_log='';
|
||||
$anzahl_aufteilungen=0;
|
||||
$anzahl_insert=0;
|
||||
$anzahl_update=0;
|
||||
$anzahl_delete=0;
|
||||
$anzahl_fehler=0;
|
||||
$starttime = date("d.m.Y H:i:s");
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Synchro - WaWi -> FAS - Aufteilung Default</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
$qry="
|
||||
SET CLIENT_ENCODING TO UNICODE;
|
||||
SELECT
|
||||
*, aufteilung_default.lupdate
|
||||
FROM
|
||||
aufteilung_default
|
||||
JOIN studiengang USING(studiengang_id)
|
||||
LEFT JOIN benutzer ON(aufteilung_default.luser=user_id)
|
||||
WHERE studiengang_id<>20
|
||||
ORDER BY aufteilung_id
|
||||
";
|
||||
if($result=pg_query($conn_wawi, $qry))
|
||||
{
|
||||
|
||||
$anzahl_aufteilungen=pg_num_rows($result);
|
||||
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
//check, ob firma bereits übertragen
|
||||
$qry_check="SELECT * FROM wawi.tbl_aufteilung_default WHERE aufteilung_id='".addslashes($row->aufteilung_id)."'";
|
||||
if($result_check=$db->db_query($qry_check))
|
||||
{
|
||||
if($db->db_num_rows($result_check)>0)
|
||||
{
|
||||
$update = false;
|
||||
//Aufteilung vorhanden - Änderungen im WaWi?
|
||||
if($row_check = $db->db_fetch_object($result_check))
|
||||
{
|
||||
if($row_check->kostenstelle_id!=$row->kostenstelle_id)
|
||||
{
|
||||
$update = true;
|
||||
$update_log.="\nKostenstelle_id von $row_check->kostenstelle auf $row->kostenstelle_id geändert";
|
||||
}
|
||||
if($row_check->oe_kurzbz!=$row->oe_kurzbz)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nOrganisationseinheit von $row_check->oe_kurzbz auf $row->oe_kurzbz geändert";
|
||||
}
|
||||
if($row_check->anteil!=$row->anteil)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nAnteil von $row_check->anteil auf $row->anteil geändert";
|
||||
}
|
||||
if($row_check->updatevon!=$row->username_neu)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nUpdateVon von $row_check->updatevon auf $row->username_neu geändert";
|
||||
}
|
||||
|
||||
if($update)
|
||||
{
|
||||
$qry = "UPDATE wawi.tbl_aufteilung_default SET
|
||||
kostenstelle_id=".$db->addslashes($row->kostenstelle_id).",
|
||||
oe_kurzbz=".$db->addslashes($row->oe_kurzbz).",
|
||||
anteil=".$db->addslashes($row->anteil).",
|
||||
updatevon=".$db->addslashes($row->username_neu).",
|
||||
updateamum=".$db->addslashes($row->lupdate)."
|
||||
WHERE aufteilung_id='".addslashes($row->aufteilung_id)."'";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_update++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler beim Update: $qry";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Aufteilung nicht vorhanden
|
||||
$qry="INSERT INTO wawi.tbl_aufteilung_default(aufteilung_id, kostenstelle_id, oe_kurzbz, anteil,
|
||||
insertamum, insertvon, updateamum, updatevon) VALUES("
|
||||
.$db->addslashes($row->aufteilung_id).","
|
||||
.$db->addslashes($row->kostenstelle_id).","
|
||||
.$db->addslashes($row->oe_kurzbz).","
|
||||
.$db->addslashes($row->anteil).","
|
||||
.$db->addslashes($row->lupdate).","
|
||||
.$db->addslashes($row->username_neu).","
|
||||
.$db->addslashes($row->lupdate).","
|
||||
.$db->addslashes($row->username_neu).");";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_insert++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler beim Insert: $qry";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler bei Select: $qry_check";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
|
||||
if(!$db->db_query("SELECT setval('wawi.seq_aufteilung_default_aufteilung_id',(SELECT max(aufteilung_id) FROM wawi.tbl_aufteilung_default));"))
|
||||
{
|
||||
$error_log.="\nFehler beim Update der Sequence";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
|
||||
//Mail versenden
|
||||
$statistik="Aufteilung Default Sync\n--------------\n";
|
||||
$statistik.="Beginn: ".$starttime." von ".DB_NAME." - Anzahl Einträge: ".$anzahl_aufteilungen."\n\n";
|
||||
$statistik.="\nEingefügte Datensätze: $anzahl_insert";
|
||||
$statistik.="\nGeänderte Datensätze: $anzahl_update";
|
||||
$statistik.="\nFehler: $anzahl_fehler\n";
|
||||
|
||||
$synced=$statistik.$error_log.$update_log;
|
||||
$mail = new mail(MAIL_ADMIN, "vilesci@".DOMAIN, "SYNC Aufteilung Default von ".DB_NAME, $synced);
|
||||
$mail->setReplyTo("vilesci@".DOMAIN);
|
||||
if(!$mail->send())
|
||||
{
|
||||
echo "<font color=\"#FF0000\">Fehler beim Versenden des Durchführungs-Mails!</font><br>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -1,287 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
/**
|
||||
* Syncronisiert die Aufteilung von WaWi DB in FHComplete DB
|
||||
*/
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/berechtigung.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
if (!$conn_wawi = pg_pconnect(CONN_STRING_WAWI))
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden. *** File:='.__FILE__.' Line:='.__LINE__."\n");
|
||||
|
||||
$error_log='';
|
||||
$update_log='';
|
||||
$anzahl=0;
|
||||
$anzahl_insert=0;
|
||||
$anzahl_update=0;
|
||||
$anzahl_delete=0;
|
||||
$anzahl_fehler=0;
|
||||
$starttime=date("d.m.Y H:i:s");
|
||||
|
||||
|
||||
checkBerechtigung('wawi/bestellung','Bestellungen verwalten');
|
||||
checkBerechtigung('wawi/rechnung','Rechnungen verwalten');
|
||||
checkBerechtigung('wawi/konto','Konten verwalten');
|
||||
checkBerechtigung('wawi/kostenstelle','Kostenstellen verwalten');
|
||||
checkBerechtigung('wawi/freigabe','Freigeben von Bestellungen');
|
||||
checkBerechtigung('wawi/rechnung_freigeben','Freigeben von Rechnungen');
|
||||
checkBerechtigung('wawi/rechnung_transfer','Setzen des TransferDatums von Rechnungen');
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Synchro - WaWi -> FAS - Berechtigung</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
/*
|
||||
* Berechtigungen holen, Spalten:
|
||||
* username_neu, lesen, schreiben, freigeben, verwalten, kostenstelle_id, oe_kurzbz
|
||||
*
|
||||
* Direkte Kostenstellenzuordnung
|
||||
* UNION
|
||||
* Direkte Studiengangszuordnung
|
||||
*/
|
||||
$qry="
|
||||
SET CLIENT_ENCODING TO UNICODE;
|
||||
|
||||
SELECT
|
||||
username_neu, lesen, schreiben, freigeben, verwalten, kostenstelle_id, null as oe_kurzbz
|
||||
FROM
|
||||
public.kostenstelle_benutzer
|
||||
JOIN public.benutzer USING(user_id)
|
||||
UNION
|
||||
SELECT
|
||||
username_neu, lesen, schreiben, freigeben, verwalten, null as kostenstelle_id, oe_kurzbz
|
||||
FROM
|
||||
public.studiengang_benutzer
|
||||
JOIN public.benutzer USING(user_id)
|
||||
JOIN public.studiengang USING(studiengang_id)
|
||||
";
|
||||
/*
|
||||
* Wird nicht uebernommen:
|
||||
*
|
||||
* Kostenstellenzuordnung über Gruppen
|
||||
* UNION
|
||||
* Studiengangszuordnung über Gruppen
|
||||
* UNION
|
||||
|
||||
SELECT
|
||||
username_neu, lesen, schreiben, freigeben, verwalten, kostenstelle_id, null as oe_kurzbz
|
||||
FROM
|
||||
public.kostenstelle_gruppe
|
||||
JOIN public.gruppe_benutzer USING(gruppe_id)
|
||||
JOIN public.benutzer USING(user_id)
|
||||
UNION
|
||||
SELECT
|
||||
username_neu, lesen, schreiben, freigeben, verwalten, null as kostenstelle_id, oe_kurzbz
|
||||
FROM
|
||||
public.studiengang_gruppe
|
||||
JOIN public.gruppe_benutzer USING(gruppe_id)
|
||||
JOIN public.benutzer USING(user_id)
|
||||
JOIN public.studiengang USING(studiengang_id)
|
||||
UNION
|
||||
*/
|
||||
if($result=pg_query($conn_wawi, $qry))
|
||||
{
|
||||
|
||||
$anzahl=pg_num_rows($result);
|
||||
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
if($row->username_neu=='test')
|
||||
continue;
|
||||
|
||||
if($row->freigeben=='t' && $row->kostenstelle_id!='')
|
||||
{
|
||||
// wawi/freigabe suid kostenstelle_id
|
||||
addBerechtigung($row->username_neu, 'wawi/freigabe', 'suid', null, $row->kostenstelle_id);
|
||||
}
|
||||
|
||||
$art='';
|
||||
if($row->lesen=='t')
|
||||
$art='s';
|
||||
if($row->schreiben=='t')
|
||||
$art.='uid';
|
||||
|
||||
if($art!='')
|
||||
{
|
||||
// wawi/bestellung $art $kostenstelle_id/$oe_kurzbz
|
||||
addBerechtigung($row->username_neu, 'wawi/bestellung', $art, $row->oe_kurzbz, $row->kostenstelle_id);
|
||||
|
||||
// wawi/rechnung $art $kostenstelle_id/$oe_kurzbz
|
||||
addBerechtigung($row->username_neu, 'wawi/rechnung', $art, $row->oe_kurzbz, $row->kostenstelle_id);
|
||||
|
||||
// wawi/firma sui Firmenverwaltung fuer alle freischalten die eine berechtigung im wawi haben
|
||||
addBerechtigung($row->username_neu, 'wawi/firma', 'sui', null, null);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Permissions aufgrund des Feldes perms
|
||||
*/
|
||||
|
||||
//GST
|
||||
$qry = "SELECT username_neu FROM public.benutzer WHERE perms='gst'";
|
||||
if($result = pg_query($conn_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
addBerechtigung($row->username_neu, 'wawi/freigabe', 'suid', 'gst', null);
|
||||
}
|
||||
}
|
||||
|
||||
//REK
|
||||
$qry = "SELECT username_neu FROM public.benutzer WHERE perms='rek'";
|
||||
if($result = pg_query($conn_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
addBerechtigung($row->username_neu, 'wawi/freigabe', 'suid', 'etw', null);
|
||||
}
|
||||
}
|
||||
|
||||
//GMBH
|
||||
$qry = "SELECT username_neu FROM public.benutzer WHERE perms='gmb'";
|
||||
if($result = pg_query($conn_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
addBerechtigung($row->username_neu, 'wawi/freigabe', 'suid', 'gmbh', null);
|
||||
}
|
||||
}
|
||||
|
||||
//Admin
|
||||
$qry = "SELECT username_neu FROM public.benutzer WHERE perms='admin'";
|
||||
if($result = pg_query($conn_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
addBerechtigung($row->username_neu, 'wawi/konto', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/kostenstelle', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/bestellung', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/rechnung', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/rechnung_transfer', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/rechnung_freigeben', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/firma', 'suid', null, null);
|
||||
addBerechtigung($row->username_neu, 'wawi/budget', 'suid', 'gst', null);
|
||||
addBerechtigung($row->username_neu, 'wawi/storno', 'suid', 'gst', null);
|
||||
}
|
||||
}
|
||||
//Mail versenden
|
||||
$statistik="Berechtigung Sync\n--------------\n";
|
||||
$statistik.="Beginn: ".$starttime." von ".DB_NAME." - Anzahl Einträge: ".$anzahl."\n\n";
|
||||
$statistik.="\nEingefügte Datensätze: $anzahl_insert";
|
||||
$statistik.="\nGeänderte Datensätze: $anzahl_update";
|
||||
$statistik.="\nFehler: $anzahl_fehler\n";
|
||||
|
||||
$synced=$statistik.$error_log.$update_log;
|
||||
$mail = new mail(MAIL_ADMIN, "vilesci@".DOMAIN, "SYNC Berechtigung von ".DB_NAME, $synced);
|
||||
$mail->setReplyTo("vilesci@".DOMAIN);
|
||||
if(!$mail->send())
|
||||
{
|
||||
echo "<font color=\"#FF0000\">Fehler beim Versenden des Durchführungs-Mails!</font><br>";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob die Berechtigung (Benutzerrolle) vorhanden ist. Wenn nicht wird diese Angelegt
|
||||
* @param $username
|
||||
* @param $berechtigung_kurbz
|
||||
* @param $art
|
||||
* @param $oe_kurzbz
|
||||
* @param $kostenstelle_id
|
||||
*/
|
||||
function addBerechtigung($username, $berechtigung_kurzbz, $art, $oe_kurzbz, $kostenstelle_id)
|
||||
{
|
||||
global $error_log, $anzahl_fehler, $anzahl_insert, $db;
|
||||
|
||||
$qry = "SELECT * FROM system.tbl_benutzerrolle
|
||||
WHERE
|
||||
uid='".addslashes($username)."'
|
||||
AND berechtigung_kurzbz='".addslashes($berechtigung_kurzbz)."'";
|
||||
if($oe_kurzbz!='')
|
||||
$qry.=" AND oe_kurzbz='".addslashes($oe_kurzbz)."'";
|
||||
if($kostenstelle_id!='')
|
||||
$qry.=" AND kostenstelle_id='".addslashes($kostenstelle_id)."'";
|
||||
if($art!='')
|
||||
$qry.=" AND art='".addslashes($art)."'";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->uid = $username;
|
||||
$rechte->berechtigung_kurzbz = $berechtigung_kurzbz;
|
||||
$rechte->art = $art;
|
||||
$rechte->oe_kurzbz = $oe_kurzbz;
|
||||
$rechte->kostenstelle_id = $kostenstelle_id;
|
||||
$rechte->insertamum = date('Y-m-d H:i:s');
|
||||
$rechte->inservon = 'Syncro';
|
||||
$rechte->new = true;
|
||||
|
||||
if($rechte->save())
|
||||
{
|
||||
$anzahl_insert++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$anzahl_fehler++;
|
||||
$error_log.="\n".$rechte->errormsg;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob eine Berechtigung vorhanden ist und legt diese ggf an
|
||||
* @param $berechtigung_kurzbz
|
||||
* @param $beschreibung
|
||||
*/
|
||||
function checkBerechtigung($berechtigung_kurzbz, $beschreibung)
|
||||
{
|
||||
global $error_log, $anzahl_fehler;
|
||||
|
||||
$berechtigung = new berechtigung();
|
||||
|
||||
if(!$berechtigung->load($berechtigung_kurzbz))
|
||||
{
|
||||
$berechtigung->berechtigung_kurzbz=$berechtigung_kurzbz;
|
||||
$berechtigung->beschreibung=$beschreibung;
|
||||
$berechtigung->new = true;
|
||||
|
||||
if(!$berechtigung->save())
|
||||
{
|
||||
$error_log.="\nFehler beim Anlegen der Berechtigung wawi/bestellung";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -1,622 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/datum.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
$date = new datum();
|
||||
|
||||
$count_insert = 0;
|
||||
$count_insert_detail = 0;
|
||||
$count_insert_status = 0;
|
||||
$count_update = 0;
|
||||
$count_update_detail = 0;
|
||||
$count_update = 0;
|
||||
$count_delete = 0;
|
||||
$error_count = 0;
|
||||
$errormsg = '';
|
||||
$starttime=date("d.m.Y H:i:s");
|
||||
|
||||
$bool_insert = false;
|
||||
$firma_id = '';
|
||||
|
||||
if($con_wawi = pg_connect(CONN_STRING_WAWI))
|
||||
{
|
||||
if(!pg_query($con_wawi, 'SET CLIENT_ENCODING TO UNICODE;'))
|
||||
{
|
||||
$errormsg .= 'Fehler beim Setzen des Encodings';
|
||||
}
|
||||
|
||||
$qry =" SELECT
|
||||
*,
|
||||
public.bestellung_freigegeben.bestellung_id as bestellung_id_freigegeben,
|
||||
bestellung.titel as newtitel,
|
||||
cbenutzer.username_neu as cusername,
|
||||
lbenutzer.username_neu as lusername,
|
||||
kst_benutzer.username_neu as kst_username,
|
||||
rek_benutzer.username_neu as rek_username,
|
||||
gst_benutzer.username_neu as gst_username,
|
||||
gmb_benutzer.username_neu as gmb_username,
|
||||
geliefert_benutzer.username_neu as geliefert_username,
|
||||
besteller.username_neu as besteller_neu,
|
||||
public.bestellung.firma_id as firma
|
||||
|
||||
FROM public.bestellung
|
||||
|
||||
LEFT JOIN public.bestellung_freigegeben USING (bestellung_id)
|
||||
LEFT JOIN public.benutzer kst_benutzer ON (freigb_kst_user_id=kst_benutzer.user_id)
|
||||
LEFT JOIN public.benutzer rek_benutzer ON (freigb_rek_user_id=rek_benutzer.user_id)
|
||||
LEFT JOIN public.benutzer gst_benutzer ON (freigb_gst_user_id=gst_benutzer.user_id)
|
||||
LEFT JOIN public.benutzer gmb_benutzer ON (freigabe_gmb_user_id=gmb_benutzer.user_id)
|
||||
LEFT JOIN public.benutzer geliefert_benutzer ON(geliefert_user_id=geliefert_benutzer.user_id)
|
||||
LEFT JOIN public.benutzer cbenutzer ON (public.bestellung.cuser=cbenutzer.user_id)
|
||||
LEFT JOIN public.benutzer lbenutzer ON (public.bestellung.luser=lbenutzer.user_id)
|
||||
LEFT JOIN public.benutzer besteller ON (public.bestellung.kontaktperson=besteller.user_id)
|
||||
|
||||
ORDER BY bestellung_id DESC";
|
||||
|
||||
if($result = pg_query($con_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
// firma id joinen
|
||||
if ( $row->firma != '')
|
||||
{
|
||||
|
||||
$qry_firma = "SELECT firma_id from public.tbl_firma where ext_id = '$row->firma'";
|
||||
if($result_firma = $db->db_query($qry_firma))
|
||||
{
|
||||
if($row_firma = $db->db_fetch_object($result_firma))
|
||||
{
|
||||
$firma = $row_firma->firma_id;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//fehler aufgetreten
|
||||
$error_count++;
|
||||
$errormsg.= $qry_firma.' '.pg_last_error($con_wawi);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$firma = null;
|
||||
}
|
||||
|
||||
// ob es den eintrag schon gibt.
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung WHERE bestellung_id=$row->bestellung_id;";
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)>0)
|
||||
{
|
||||
$bool_insert=false;
|
||||
if($row_neu = $db->db_fetch_object($result_check))
|
||||
{
|
||||
//update der bestellung
|
||||
if($row->bestellung_id_freigegeben != null)
|
||||
$freigegeben = "t";
|
||||
else
|
||||
$freigegeben = "f";
|
||||
|
||||
if($row_neu->besteller_uid != $row->besteller_neu || $row_neu->kostenstelle_id != $row->kostenstelle_id || $row_neu->konto_id != $row->konto_id || $row_neu->firma_id != $firma || $row_neu->bestell_nr != $row->bestellnr ||
|
||||
$row_neu->titel != $row->newtitel || $row_neu->bemerkung != $row->bemerkungen || $row_neu->liefertermin != $row->liefertermin || $row_neu->updatevon != $row->lusername ||
|
||||
$row_neu->insertvon != $row->cusername || $date->formatDatum($row_neu->updateamum, 'Y-m-d H:i:s') != $date->formatDatum($row->lupdate, 'Y-m-d H:i:s') ||
|
||||
$date->formatDatum($row_neu->insertamum, 'Y-m-d H:i:s') != $date->formatDatum($row->erstellung, 'Y-m-d H:i:s') || $row_neu->freigegeben!=$freigegeben)
|
||||
{
|
||||
$qry="UPDATE wawi.tbl_bestellung SET besteller_uid = ".$db->addslashes($row->besteller_neu).", kostenstelle_id = ".$db->addslashes($row->kostenstelle_id).", konto_id = ".$db->addslashes($row->konto_id).", firma_id =
|
||||
".$db->addslashes($firma)." ,bestell_nr = ".$db->addslashes($row->bestellnr).", titel = ".$db->addslashes($row->newtitel).", bemerkung = ".$db->addslashes($row->bemerkungen).", freigegeben=".($freigegeben=='t'?'true':'false').", liefertermin=
|
||||
".$db->addslashes($row->liefertermin).", updateamum = ".$db->addslashes($row->lupdate).", updatevon = ".$db->addslashes($row->lusername).", insertamum = ".$db->addslashes($row->erstellung).", insertvon =
|
||||
".$db->addslashes($row->cusername)." WHERE bestellung_id = ".$db->addslashes($row->bestellung_id).";";
|
||||
|
||||
if($db->db_query($qry) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry.' '.$db->db_last_error();
|
||||
}
|
||||
$count_update++;
|
||||
$errormsg.= "Update Bestellung_id: ".$row->bestellung_id.'<br>';
|
||||
}
|
||||
|
||||
}
|
||||
if($row->freigb_kst != '')
|
||||
{
|
||||
// gibt es schon die freigabe
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung_bestellstatus where bestellung_id = ".$db->addslashes($row->bestellung_id)." and bestellstatus_kurzbz = 'Freigabe' AND oe_kurzbz is null;";
|
||||
// echo $qry;
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)==0)
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->kst_username).",null,".$db->addslashes($row->freigb_kst).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
|
||||
$count_insert_status++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Prüfung ob sich Freigabe geändert hat
|
||||
if($row->freigb_rek != '')
|
||||
{
|
||||
// gibt es schon die freigabe
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung_bestellstatus where bestellung_id = ".$db->addslashes($row->bestellung_id)." and bestellstatus_kurzbz = 'Freigabe' and oe_kurzbz = 'etw'";
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)==0)
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->rek_username).",'etw',".$db->addslashes($row->freigb_rek).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($row->freigb_gst != '')
|
||||
{
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung_bestellstatus where bestellung_id = ".$db->addslashes($row->bestellung_id)." and bestellstatus_kurzbz = 'Freigabe' and oe_kurzbz = 'gst';";
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)==0)
|
||||
{
|
||||
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->gst_username).",'gst',".$db->addslashes($row->freigb_gst).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($row->freigabe_gmb != '')
|
||||
{
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung_bestellstatus where bestellung_id = ".$db->addslashes($row->bestellung_id)." and bestellstatus_kurzbz = 'Freigabe' and uid = ".$db->addslashes($row->gmb_username)." and oe_kurzbz = 'gmbh'";
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)==0)
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->gmb_username).",'gmbh',".$db->addslashes($row->freigabe_gmb).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($row->geliefert != '')
|
||||
{
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung_bestellstatus where bestellung_id = ".$db->addslashes($row->bestellung_id)." and bestellstatus_kurzbz = 'Lieferung' and uid = ".$db->addslashes($row->geliefert_username).";";
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)==0)
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Lieferung').",".$db->addslashes($row->geliefert_username).",null,".$db->addslashes($row->geliefert).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($row->bestellung != '')
|
||||
{
|
||||
$qry = "SELECT * FROM wawi.tbl_bestellung_bestellstatus where bestellung_id = ".$db->addslashes($row->bestellung_id)." and bestellstatus_kurzbz = 'Bestellung'";
|
||||
if($result_check = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_check)==0)
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Bestellung').",null, null,".$db->addslashes($row->bestellung).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// insert bestellung
|
||||
if($row->bestellung_id_freigegeben != null)
|
||||
$freigegeben = "true";
|
||||
else
|
||||
$freigegeben = "false";
|
||||
|
||||
// lieferadresse,rechnungsadresse = immer 1 -> public.tbl_adresse id1
|
||||
$qry="INSERT INTO wawi.tbl_bestellung(bestellung_id, besteller_uid, kostenstelle_id, konto_id, firma_id, lieferadresse,
|
||||
rechnungsadresse, freigegeben, bestell_nr, titel, bemerkung, liefertermin, updateamum, updatevon, insertamum, insertvon,
|
||||
ext_id) VALUES (
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes($row->besteller_neu).",".$db->addslashes($row->kostenstelle_id).",
|
||||
".$db->addslashes($row->konto_id).",".$db->addslashes($firma).",".$db->addslashes('1').",".$db->addslashes('1').",
|
||||
".$freigegeben.",".$db->addslashes($row->bestellnr).",".$db->addslashes($row->newtitel).",".$db->addslashes($row->bemerkungen).",
|
||||
".$db->addslashes($row->liefertermin).",".$db->addslashes($row->lupdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->erstellung).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->bestellung_id).")";
|
||||
//echo $qry;
|
||||
if($db->db_query($qry) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry.' '.$db->db_last_error();
|
||||
}
|
||||
|
||||
$bool_insert=true;
|
||||
$count_insert++;
|
||||
|
||||
// insert tbl_bestellung_bestellstatus
|
||||
if($row->freigb_kst != '')
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->kst_username).",null,".$db->addslashes($row->freigb_kst).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
|
||||
if($row->freigb_rek != '')
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->rek_username).",'etw',".$db->addslashes($row->freigb_rek).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
|
||||
if($row->freigb_gst != '')
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->gst_username).",'gst',".$db->addslashes($row->freigb_gst).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
|
||||
if($row->freigabe_gmb != '')
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Freigabe').",".$db->addslashes($row->gmb_username).",'gmbh',".$db->addslashes($row->freigabe_gmb).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
|
||||
if($row->geliefert != '')
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Lieferung').",".$db->addslashes($row->geliefert_username).",null,".$db->addslashes($row->geliefert).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
|
||||
if($row->bestellung != '')
|
||||
{
|
||||
$qry_stati = "INSERT INTO wawi.tbl_bestellung_bestellstatus(bestellung_id, bestellstatus_kurzbz, uid, oe_kurzbz, datum, insertvon, insertamum, updatevon, updateamum)
|
||||
VALUES(
|
||||
".$db->addslashes($row->bestellung_id).",".$db->addslashes('Bestellung').",null, null,".$db->addslashes($row->bestellung).",
|
||||
".$db->addslashes($row->cusername).",".$db->addslashes($row->cdate).",".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).")";
|
||||
|
||||
if($db->db_query($qry_stati) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry_stati.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_status++;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// alle bestelldetails zu bestellung holen
|
||||
$qry = "SELECT
|
||||
*, benutzer.username_neu as lusername
|
||||
FROM
|
||||
public.bestelldetail
|
||||
LEFT JOIN public.benutzer ON(bestelldetail.luser=benutzer.user_id)
|
||||
WHERE bestellung_id = $row->bestellung_id";
|
||||
if($result_detail = pg_query($con_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result_detail))
|
||||
{
|
||||
//echo $row->bestelldetail_id."<br>";
|
||||
// ob eintrag in neuer Tabelle schon vorhanden ist
|
||||
$qry = "SELECT * FROM wawi.tbl_bestelldetail WHERE bestelldetail_id = $row->bestelldetail_id";
|
||||
if($bool_insert || $result_check = $db->db_query($qry))
|
||||
{
|
||||
if($bool_insert || $db->db_num_rows($result_check)==0)
|
||||
{
|
||||
// insert bestelldetails
|
||||
$qry = "INSERT INTO wawi.tbl_bestelldetail (bestelldetail_id, bestellung_id, position, menge, verpackungseinheit,
|
||||
beschreibung, artikelnummer, preisprove, mwst, erhalten, sort, text, insertamum, insertvon, updateamum, updatevon)
|
||||
VALUES (
|
||||
".$db->addslashes($row->bestelldetail_id).",".$db->addslashes($row->bestellung_id).",".$db->addslashes($row->pos).",
|
||||
".$db->addslashes($row->menge).",".$db->addslashes($row->ve).",".$db->addslashes($row->beschreibung).",
|
||||
".$db->addslashes($row->artikelnr).",".$db->addslashes($row->preisve).",".$db->addslashes($row->mwst).",
|
||||
".$db->addslashes($row->erhalten).",".$db->addslashes($row->pos).", false ,".$db->addslashes($row->lupdate).",
|
||||
".$db->addslashes($row->lusername).",".$db->addslashes($row->lupdate).",".$db->addslashes($row->lusername).")";
|
||||
|
||||
//echo $qry;
|
||||
|
||||
if($db->db_query($qry) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry.' '.$db->db_last_error();
|
||||
}
|
||||
$count_insert_detail++;
|
||||
}
|
||||
else
|
||||
{
|
||||
// update bestelldetails
|
||||
if($row_neu = $db->db_fetch_object($result_check))
|
||||
{
|
||||
|
||||
if($row_neu->bestellung_id != $row->bestellung_id || $row_neu->position != $row->pos || $row_neu->menge != $row->menge ||$row_neu->verpackungseinheit != $row->ve ||
|
||||
$row_neu->beschreibung != $row->beschreibung || $row_neu->artikelnummer != $row->artikelnr || round($row_neu->preisprove,2) != round($row->preisve,2) || $row_neu->mwst != $row->mwst)
|
||||
{
|
||||
|
||||
//echo $row->preisve."<br>";
|
||||
//echo $row_neu->preisprove."<br><br>";
|
||||
|
||||
$qry = "UPDATE wawi.tbl_bestelldetail SET position =
|
||||
".$db->addslashes($row->pos).", menge = ".$db->addslashes($row->menge).", verpackungseinheit = ".$db->addslashes($row->ve).", beschreibung =
|
||||
".$db->addslashes($row->beschreibung).", artikelnummer = ".$db->addslashes($row->artikelnr).", preisprove =
|
||||
".$db->addslashes($row->preisve).", mwst = ".$db->addslashes($row->mwst).", erhalten = ".$db->addslashes($row->erhalten).", sort =
|
||||
".$db->addslashes($row->pos).", text = false, insertamum = ".$db->addslashes($row->lupdate).", insertvon = ".$db->addslashes($row->lusername).", updateamum =
|
||||
".$db->addslashes($row->lupdate).", updatevon = ".$db->addslashes($row->lusername)." WHERE bestelldetail_id = ".$db->addslashes($row->bestelldetail_id).";";
|
||||
if($db->db_query($qry) != true)
|
||||
{
|
||||
// Fehler
|
||||
$error_count++;
|
||||
$errormsg.= $qry.' '.$db->db_last_error();
|
||||
}
|
||||
$count_update_detail++;
|
||||
$errormsg.= "Update Bestelldetail_id: ".$row->bestelldetail_id.'<br>';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
} // ende while
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= "Verbindung zu Datenbank fehlgeschlagen.";
|
||||
}
|
||||
|
||||
// delete --> bestellungen die es im wawi nicht mehr gibt
|
||||
$qry_delete = "DELETE
|
||||
FROM
|
||||
wawi.tbl_bestellung
|
||||
WHERE NOT EXISTS (
|
||||
SELECT bestellung_id FROM
|
||||
dblink(
|
||||
'".CONN_STRING_WAWI."'::text,
|
||||
'SELECT bestellung_id FROM public.bestellung WHERE bestellung_id=' || tbl_bestellung.bestellung_id
|
||||
)
|
||||
as foo(bestellung_id integer));";
|
||||
|
||||
if($result_delete = $db->db_query($qry_delete))
|
||||
{
|
||||
$count_delete += $db->db_affected_rows($result_delete);
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= "Fehler beim Löschen der Bestellungen! ".$db->db_last_error();
|
||||
}
|
||||
|
||||
// delete --> bestelldetails die es im wawi nicht mehr gibt
|
||||
$qry_delete = "DELETE
|
||||
FROM
|
||||
wawi.tbl_bestelldetail
|
||||
WHERE NOT EXISTS (
|
||||
SELECT bestelldetail_id FROM
|
||||
dblink(
|
||||
'".CONN_STRING_WAWI."'::text,
|
||||
'SELECT bestelldetail_id FROM public.bestelldetail WHERE bestelldetail_id=' || tbl_bestelldetail.bestelldetail_id
|
||||
)
|
||||
as foo(bestelldetail_id integer));";
|
||||
|
||||
if($result_delete = $db->db_query($qry_delete))
|
||||
{
|
||||
$count_delete += $db->db_affected_rows($result_delete);
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= "Fehler beim Löschen der Bestelldetails! ".$db->db_last_error();
|
||||
}
|
||||
|
||||
if ($count_insert >0)
|
||||
{
|
||||
$max_qry= "SELECT MAX(bestellung_id) as max FROM wawi.tbl_bestellung";
|
||||
if($result_max = $db->db_query($max_qry))
|
||||
{
|
||||
if($row_max = $db->db_fetch_object($result_max))
|
||||
{
|
||||
$set_qry ="SELECT setval('wawi.seq_bestellung_bestellung_id', $row_max->max)";
|
||||
$db->db_query($set_qry);
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= $set_qry.' '.$db->db_last_error();
|
||||
}
|
||||
}
|
||||
else
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
if ($count_insert_detail >0)
|
||||
{
|
||||
$max_qry= "SELECT MAX(bestelldetail_id) as max from wawi.tbl_bestelldetail";
|
||||
if($result_max = $db->db_query($max_qry))
|
||||
{
|
||||
if($row_max = $db->db_fetch_object($result_max))
|
||||
{
|
||||
$set_qry ="SELECT setval('wawi.seq_bestelldetail_bestelldetail_id', $row_max->max)";
|
||||
$db->db_query($set_qry);
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= $set_qry.' '.$db->db_last_error();
|
||||
}
|
||||
}
|
||||
else
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
if ($count_insert_status >0)
|
||||
{
|
||||
$max_qry= "SELECT MAX(bestellung_bestellstatus_id) as max from wawi.tbl_bestellung_bestellstatus";
|
||||
if($result_max = $db->db_query($max_qry))
|
||||
{
|
||||
if($row_max = $db->db_fetch_object($result_max))
|
||||
{
|
||||
$set_qry ="SELECT setval('wawi.seq_bestellung_bestellstatus_bestellung_bestellstatus_id', $row_max->max)";
|
||||
$db->db_query($set_qry);
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= $set_qry.' '.$db->db_last_error();
|
||||
}
|
||||
}
|
||||
else
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
echo $errormsg;
|
||||
|
||||
$send_msg = "
|
||||
Bestellungen Syncro
|
||||
Beginn: ".$starttime." von ".DB_NAME."
|
||||
$count_update Bestellungen wurden geändert.
|
||||
$count_update_detail Bestelldetails wurden geändert.
|
||||
$count_insert Bestellungen wurden hinzugefügt.
|
||||
$count_insert_detail Bestelldetails wurden hinzugefügt.
|
||||
$count_insert_status Bestellstati wurden hinzugefügt.
|
||||
$count_delete Bestellungen wurden gelöscht.
|
||||
$error_count Fehler sind dabei aufgetreten.
|
||||
|
||||
";
|
||||
echo $send_msg;
|
||||
|
||||
$mail = new mail(MAIL_ADMIN, '[email protected]', 'WaWi Syncro - Bestellung', $send_msg.$errormsg);
|
||||
if(!$mail->send())
|
||||
echo 'Fehler beim Senden des Mails';
|
||||
else
|
||||
echo '<br> Mail verschickt!';
|
||||
}
|
||||
?>
|
||||
@@ -1,213 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/datum.class.php');
|
||||
|
||||
$errormsg = '';
|
||||
$ausgabe = '';
|
||||
$updated_lines = '';
|
||||
$error_count=0;
|
||||
$insert_count=0;
|
||||
$update_count=0;
|
||||
$interval ='';
|
||||
|
||||
$date = new datum();
|
||||
$db = new basis_db();
|
||||
|
||||
//Datenbankverbindung zur WaWi Datenbank herstellen
|
||||
if ($conn_wawi = pg_pconnect(CONN_STRING_WAWI))
|
||||
{
|
||||
//Encoding auf UTF8 setzen, da die WaWi Datenbank LATIN9 kodiert ist
|
||||
if(!pg_query($conn_wawi, 'SET CLIENT_ENCODING TO UNICODE;'))
|
||||
{
|
||||
$errormsg .= 'Fehler beim Setzen des Encodings';
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
//Alle Kontoeintraege aus der WaWi Datenbank holen
|
||||
$qry = 'SELECT
|
||||
*,
|
||||
cbenutzer.username as cusername,
|
||||
lbenutzer.username as lusername,
|
||||
konto.lupdate as lkontoupdate
|
||||
FROM
|
||||
public.konto
|
||||
LEFT JOIN public.benutzer cbenutzer ON (cuser=user_id)
|
||||
LEFT JOIN public.benutzer lbenutzer ON (konto.luser=lbenutzer.user_id)
|
||||
;';
|
||||
if($result = pg_query($conn_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
//Dazupassenden Eintrag in der neuen Datenbank suchen
|
||||
$qry = "SELECT *, beschreibung[1] AS first_beschreibung FROM wawi.tbl_konto WHERE konto_id='".addslashes($row->konto)."'";
|
||||
if($result_neu = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_neu)>0)
|
||||
{
|
||||
//Wenn der Eintrag in der neuen Datenbank bereits vorhanden ist -> Update
|
||||
if($row_neu = $db->db_fetch_object($result_neu))
|
||||
{
|
||||
$update = 'UPDATE wawi.tbl_konto SET ';
|
||||
$bedingung = '';
|
||||
|
||||
//Spalten ueberpruefen
|
||||
if($row_neu->kontonr != $row->kontonr)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " kontonr=".$db->addslashes($row->kontonr);
|
||||
$updated_lines .= "kontonr von: \"".$row_neu->kontonr."\" auf: \"".$row->kontonr."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
//Wenn sich Beschreibung ändert, ändert sich kurzbeschreibung auch mit
|
||||
if($row_neu->first_beschreibung != $row->beschreibung)
|
||||
{
|
||||
$kurzbz = substr($row->beschreibung, 0, 32);
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " beschreibung[1]=".$db->addslashes($row->beschreibung);
|
||||
$bedingung .= ", kurzbz =".$db->addslashes($kurzbz);
|
||||
$updated_lines .= "beschreibung von: \"".$row_neu->first_beschreibung."\" auf: \"".$row->beschreibung."\" \n";
|
||||
$updated_lines .= "kurzbz von: \"".$row_neu->kurzbz."\" auf: \"".$kurzbz."\" \n";
|
||||
|
||||
$update_count+= 2;
|
||||
}
|
||||
|
||||
if($date->formatDatum($row_neu->insertamum, 'Y-m-d H:i:s') != $date->formatDatum($row->cdate, 'Y-m-d H:i:s'))
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " insertamum=".$db->addslashes($row->cdate);
|
||||
$updated_lines .= "insertamum von: \"".$row_neu->insertamum."\" auf: \"".$row->cdate."\" \n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if ($row_neu->insertvon != $row->cusername)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " insertvon=".$db->addslashes($row->cusername);
|
||||
$updated_lines .= "insertvon von: \"".$row_neu->insertvon."\" auf: \"".$row->cusername."\" \n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($date->formatDatum($row_neu->updateamum, 'Y-m-d H:i:s') != $date->formatDatum($row->lkontoupdate, 'Y-m-d H:i:s'))
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " updateamum=".$db->addslashes($row->lkontoupdate);
|
||||
$updated_lines .= "updateamum von: \"".$row_neu->updateamum."\" auf: \"".$row->lkontoupdate."\" \n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->updatevon != $row->lusername)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " updatevon=".$db->addslashes($row->lusername);
|
||||
$updated_lines .= "updatevon von: \"".$row_neu->updatevon."\" auf: \"".$row->lusername."\" \n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($updated_lines != '')
|
||||
$ausgabe .= "ID ".$row_neu->konto_id.": ".$updated_lines."\n \n";
|
||||
$updated_lines ='';
|
||||
}
|
||||
|
||||
if ($bedingung !='')
|
||||
{
|
||||
$update .= $bedingung." WHERE konto_id =".$row_neu->konto_id.";";
|
||||
//echo ($update);
|
||||
$db->db_query($update);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wenn der Eintrag noch nicht vorhanden ist, dann wird er neu angelegt
|
||||
$kurzbz = substr($row->beschreibung, 0, 32);
|
||||
$insert_qry = "INSERT INTO
|
||||
wawi.tbl_konto
|
||||
(konto_id, kontonr, beschreibung, kurzbz, aktiv, insertamum, insertvon, updateamum, updatevon)
|
||||
VALUES (
|
||||
".$row->konto.",".$row->kontonr.","."ARRAY[".$db->addslashes($row->beschreibung).", 'EE_".$row->beschreibung."']".",
|
||||
".$db->addslashes($kurzbz).", true, ".$db->addslashes($row->cdate).",".$db->addslashes($row->cusername).",
|
||||
".$db->addslashes($row->lkontoupdate).",".$db->addslashes($row->lusername).");";
|
||||
$insert_count++;
|
||||
//echo ($insert_qry);
|
||||
if($db->db_query($insert_qry) != true)
|
||||
$error_count++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg .= 'Es konnte keine Verbindung zum WAWI Server aufgebaut werden';
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
//Sequenz neu setzen
|
||||
if ($insert_count >0)
|
||||
{
|
||||
$max_qry= "SELECT MAX(konto_id) as max from wawi.tbl_konto";
|
||||
if($result_max = $db->db_query($max_qry))
|
||||
{
|
||||
if($row_max = $db->db_fetch_object($result_max))
|
||||
{
|
||||
$set_qry ="SELECT setval('wawi.seq_konto_konto_id', $row_max->max)";
|
||||
$db->db_query($set_qry);
|
||||
}
|
||||
else
|
||||
$error_count++;
|
||||
}
|
||||
else
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
$msg = "
|
||||
$update_count Datensätze wurden geändert.
|
||||
$insert_count Datensätze wurden hinzugefügt.
|
||||
$error_count Fehler sind dabei aufgetreten!
|
||||
|
||||
$ausgabe
|
||||
";
|
||||
|
||||
|
||||
|
||||
$msg.=$errormsg;
|
||||
|
||||
$mail = new mail(MAIL_ADMIN, 'vilesci.technikum-wien.at', 'WaWi Syncro - Konto', $msg);
|
||||
if(!$mail->send())
|
||||
echo 'Fehler beim Senden des Mails';
|
||||
else
|
||||
echo '<br> Mail verschickt!';
|
||||
?>
|
||||
@@ -1,358 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/datum.class.php');
|
||||
|
||||
$errormsg = '';
|
||||
$error_count = 0;
|
||||
$insert_count =0;
|
||||
$update_count =0;
|
||||
$updated_lines ='';
|
||||
$ausgabe ='';
|
||||
|
||||
$date = new datum();
|
||||
$db = new basis_db();
|
||||
|
||||
//Datenbankverbindung zum WaWi Server herstellen
|
||||
if($con_wawi = pg_connect(CONN_STRING_WAWI))
|
||||
{
|
||||
if(!pg_query($con_wawi, 'SET CLIENT_ENCODING TO UNICODE;'))
|
||||
{
|
||||
$errormsg .= 'Fehler beim Setzen des Encodings';
|
||||
}
|
||||
|
||||
//Alle Kostenstellen aus der WaWi Datenbank holen
|
||||
$qry = 'SELECT
|
||||
*,
|
||||
cbenutzer.username as cusername,
|
||||
lbenutzer.username as lusername,
|
||||
dbenutzer.username as dusername,
|
||||
kostenstelle.lupdate as lkostenupdate,
|
||||
kostenstelle.cdate as ckostendate,
|
||||
kostenstelle.bezeichnung as kostenbezeichnung,
|
||||
kostenstelle.kurzzeichen as kostenkurzzeichen,
|
||||
kostenstelle.duser as deleteuser,
|
||||
kostenstelle.ddate as deletedate
|
||||
FROM
|
||||
public.kostenstelle
|
||||
LEFT JOIN public.benutzer cbenutzer ON (cuser=user_id)
|
||||
LEFT JOIN public.benutzer lbenutzer ON (kostenstelle.luser=lbenutzer.user_id)
|
||||
LEFT JOIN public.benutzer dbenutzer ON (kostenstelle.duser=dbenutzer.user_id)
|
||||
LEFT JOIN public.studiengang stud ON (kostenstelle.studiengang_id=stud.studiengang_id)
|
||||
;';
|
||||
|
||||
if($result = pg_query($con_wawi, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
//Dazupassenden Eintrag in der neuen Datenbank suchen
|
||||
$qry = "SELECT * from wawi.tbl_kostenstelle WHERE kostenstelle_id = '$row->kostenstelle_id' ;";
|
||||
if($result_neu = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result_neu)>0)
|
||||
{
|
||||
// Update des Eintrages
|
||||
if($row_neu = $db->db_fetch_object($result_neu))
|
||||
{
|
||||
$update = 'UPDATE wawi.tbl_kostenstelle SET ';
|
||||
$bedingung = '';
|
||||
|
||||
//Spalten ueberpruefen
|
||||
if($row_neu->kostenstelle_id != $row->kostenstelle_id)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " kostenselle_id=".$db->addslashes($row->kostenstelle_id);
|
||||
$updated_lines .= "kostenstelle_id von: \"".$row_neu->kostenstelle_id."\" auf: \"".$row->kostenstelle_id."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->oe_kurzbz != $row->oe_kurzbz)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " oe_kurzbz=".$db->addslashes($row->oe_kurzbz);
|
||||
$updated_lines .= "oe_kurzbz von: \"".$row_neu->oe_kurzbz."\" auf: \"".$row->oe_kurzbz."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->bezeichnung != $row->kostenbezeichnung)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " bezeichnung=".$db->addslashes($row->kostenbezeichnung);
|
||||
$updated_lines .= "beschreibung von: \"".$row_neu->bezeichnung."\" auf: \"".$row->kostenbezeichnung."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->kurzbz != $row->kostenkurzzeichen)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " kurzbz=".$db->addslashes($row->kostenkurzzeichen);
|
||||
$updated_lines .= "kurzbz von: \"".$row_neu->kurzbz."\" auf: \"".$row->kostenkurzzeichen."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->ext_id != $row->kostenstelle_id)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " ext_id=".$db->addslashes($row->kostenstelle_id);
|
||||
$updated_lines .= "ext_id von: \"".$row_neu->ext_id."\" auf: \"".$row->kostenstelle_id."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->kostenstelle_nr != $row->kostenstelle_nr)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " kostenstelle_nr=".$db->addslashes($row->kostenstelle_nr);
|
||||
$updated_lines .= "kostenstelle_nr von: \"".$row_neu->kostenstelle_nr."\" auf: \"".$row->kostenstelle_nr."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
if($date->formatDatum($row_neu->insertamum, 'Y-m-d H:i:s') != $date->formatDatum($row->ckostendate, 'Y-m-d H:i:s'))
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " insertamum=".$db->addslashes($row->ckostendate);
|
||||
$updated_lines .= "insertamum von: \"".$row_neu->insertamum."\" auf: \"".$row->ckostendate."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->insertvon != $row->cusername)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " insertvon=".$db->addslashes($row->cusername);
|
||||
$updated_lines .= "insertvon von: \"".$row_neu->insertvon."\" auf: \"".$row->cusername."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
if($date->formatDatum($row_neu->updateamum, 'Y-m-d H:i:s') != $date->formatDatum($row->lkostenupdate, 'Y-m-d H:i:s'))
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " updateamum=".$db->addslashes($row->lkostenupdate);
|
||||
$updated_lines .= "updateamum von: \"".$row_neu->updateamum."\" auf: \"".$row->lkostenupdate."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->updatevon != $row->lusername)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " updatevon=".$db->addslashes($row->lusername);
|
||||
$updated_lines .= "updatevon von: \"".$row_neu->updatevon."\" auf: \"".$row->lusername."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($date->formatDatum($row_neu->deaktiviertamum, 'Y-m-d H:i:s') != $date->formatDatum($row->deletedate, 'Y-m-d H:i:s'))
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " deaktiviertamum=".$db->addslashes($row->deletedate);
|
||||
$updated_lines .= "deaktiviertamum von: \"".$row_neu->deaktiviertamum."\" auf: \"".$row->deletedate."\"\n";
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($row_neu->deaktiviertvon != $row->dusername)
|
||||
{
|
||||
if($bedingung!='')
|
||||
$bedingung.=',';
|
||||
$bedingung .= " deaktiviertvon=".$db->addslashes($row->dusername);
|
||||
$updated_lines .= "deaktiviertvon von: \"".$row_neu->deaktiviertvon."\" auf: \"".$row->dusername."\"\n";
|
||||
|
||||
if(($row->dusername) != '')
|
||||
{
|
||||
// wenn dusername gesetzt ist, aktiv auf false setzen
|
||||
$bedingung.= ", aktiv = false";
|
||||
$updated_lines .= "aktiv = false \n";
|
||||
$update_count++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$bedingung.=", aktiv = true";
|
||||
$updated_lines .= "aktiv = true \n";
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
$update_count++;
|
||||
}
|
||||
|
||||
if($updated_lines != '')
|
||||
$ausgabe .= "ID ".$row_neu->kostenstelle_id.": ".$updated_lines."\n \n";
|
||||
$updated_lines ='';
|
||||
}
|
||||
|
||||
if ($bedingung !='')
|
||||
{
|
||||
$update .= $bedingung." WHERE kostenstelle_id =".$row_neu->kostenstelle_id.";";
|
||||
echo "$update <br>";
|
||||
if($db->db_query($update) != true)
|
||||
{
|
||||
$errormsg.= "Fehler bei Update aufgetreten. ID:$row_neu->kostenstelle_id";
|
||||
$error_count++;
|
||||
}
|
||||
}
|
||||
|
||||
if($row->budget=='')
|
||||
{
|
||||
$row->budget=0;
|
||||
}
|
||||
$gj = 'GJ2010-2011';
|
||||
//Budget
|
||||
$qry_budget = "SELECT budget FROM wawi.tbl_budget WHERE kostenstelle_id = '$row_neu->kostenstelle_id' AND geschaeftsjahr_kurzbz='$gj'";
|
||||
if($result_budget = $db->db_query($qry_budget))
|
||||
{
|
||||
$qry_budget='';
|
||||
if($row_budget = $db->db_fetch_object($result_budget))
|
||||
{
|
||||
if($row_budget->budget!=$row->budget)
|
||||
{
|
||||
$qry_budget = "UPDATE wawi.tbl_budget SET budget='$row->budget WHERE kostenstelle_id='$row_neu->kostenstelle_id' AND geschaeftsjahr_kurzbz='$gj'";
|
||||
$updated_lines .= "budget im gj $gj von: \"".$row_budget->budget."\" auf: \"".$row->budget."\"\n";
|
||||
$update_count++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry_budget = "INSERT INTO wawi.tbl_budget(kostenstelle_id, geschaeftsjahr_kurzbz, budget) VALUES('".$row_neu->kostenstelle_id."','".$gj."','".$row->budget."');";
|
||||
$updated_lines .= "budget im gj $gj auf: \"".$row->budget."\"\n";
|
||||
$insert_count++;
|
||||
}
|
||||
|
||||
if($qry_budget!='')
|
||||
{
|
||||
if(!$db->db_query($qry_budget))
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.="Fehler beim Aktualisieren des Budgets:".$qry_budget;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$aktiv = 'true';
|
||||
if(isset($row->dusername))
|
||||
$aktiv = 'false';
|
||||
|
||||
// Insert neuen Eintrag
|
||||
$insert_qry = "INSERT INTO
|
||||
wawi.tbl_kostenstelle
|
||||
(kostenstelle_id, oe_kurzbz, bezeichnung, kurzbz, aktiv, updateamum, updatevon, insertamum, insertvon, ext_id, kostenstelle_nr, deaktiviertvon, deaktiviertamum)
|
||||
VALUES (
|
||||
".$db->addslashes($row->kostenstelle_id).",".$db->addslashes($row->oe_kurzbz).",".$db->addslashes($row->kostenbezeichnung).",
|
||||
".$db->addslashes($row->kostenkurzzeichen).", $aktiv,".$db->addslashes($row->lkostenupdate).",
|
||||
".$db->addslashes($row->lusername).",".$db->addslashes($row->ckostendate).",".$db->addslashes($row->cusername).",
|
||||
".$db->addslashes($row->kostenstelle_id).",".$db->addslashes($row->kostenstelle_nr).",
|
||||
".$db->addslashes($row->dusername).",".$db->addslashes($row->deletedate).");";
|
||||
//echo "$insert_qry <br>";
|
||||
$insert_count++;
|
||||
if($db->db_query($insert_qry) != true)
|
||||
{
|
||||
$errormsg.= "Fehler bei Insert aufgetreten. ID: $row->kostenstelle_id";
|
||||
$error_count++;
|
||||
$insert_count--;
|
||||
}
|
||||
|
||||
if($row->budget=='')
|
||||
{
|
||||
$row->budget=0;
|
||||
}
|
||||
$gj = 'GJ2010-2011';
|
||||
|
||||
$qry_budget = "INSERT INTO wawi.tbl_budget(kostenstelle_id, geschaeftsjahr_kurzbz, budget) VALUES('".$row->kostenstelle_id."','".$gj."','".$row->budget."');";
|
||||
|
||||
if(!$db->db_query($qry_budget))
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.="Fehler beim Aktualisieren des Budgets:".$qry_budget;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$errormsg .= 'Es konnte keine Verbindung zum WAWI Server aufgebaut werden';
|
||||
$error_count++;
|
||||
}
|
||||
|
||||
if ($insert_count >0)
|
||||
{
|
||||
// Sequenz erhöhen
|
||||
$max_qry= "SELECT MAX(kostenstelle_id) as max from wawi.tbl_kostenstelle";
|
||||
if($result_max = $db->db_query($max_qry))
|
||||
{
|
||||
if($row_max = $db->db_fetch_object($result_max))
|
||||
{
|
||||
$set_qry ="SELECT setval('wawi.seq_kostenstelle_kostenstelle_id', $row_max->max)";
|
||||
$db->db_query($set_qry);
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= "Fehler bei Select setval aufgetreten ";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_count++;
|
||||
$errormsg.= "Fehler bei Select MAX aufgetreten";
|
||||
}
|
||||
}
|
||||
|
||||
$msg = "
|
||||
$update_count Datensätze wurden geändert.
|
||||
$insert_count Datensätze wurden hinzugefügt.
|
||||
$error_count Fehler sind dabei aufgetreten!
|
||||
|
||||
$ausgabe
|
||||
";
|
||||
|
||||
|
||||
// Nachricht versenden
|
||||
$msg.=$errormsg;
|
||||
|
||||
$mail = new mail(MAIL_ADMIN, 'vilesci.technikum-wien.at', 'WaWi Syncro - Kostenstelle', $msg);
|
||||
if(!$mail->send())
|
||||
echo 'Fehler beim Senden des Mails';
|
||||
else
|
||||
echo '<br> Mail verschickt!';
|
||||
|
||||
?>
|
||||
@@ -1,98 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2011 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <[email protected]>
|
||||
*/
|
||||
require_once('../../config/system.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/content.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
$qry = 'SELECT * FROM campus.tbl_news';
|
||||
$gesamt=0;
|
||||
$fehler=0;
|
||||
$ok=0;
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$gesamt++;
|
||||
$xml = '<news>
|
||||
<verfasser><![CDATA['.$row->verfasser.']]></verfasser>
|
||||
<betreff><![CDATA['.$row->betreff.']]></betreff>
|
||||
<text><![CDATA['.$row->text.']]></text>
|
||||
</news>';
|
||||
|
||||
$content = new content();
|
||||
|
||||
$content->template_kurzbz = 'news';
|
||||
$content->oe_kurzbz = 'etw';
|
||||
$content->updatevon = $row->updatevon;
|
||||
$content->updateamum = $row->updateamum;
|
||||
$content->insertamum = $row->insertamum;
|
||||
$content->insertvon = $row->insertvon;
|
||||
$content->aktiv = true;
|
||||
$content->menu_open=false;
|
||||
$content->content = $xml;
|
||||
$content->sichtbar = true;
|
||||
$content->sprache = 'German';
|
||||
$content->titel = $row->betreff;
|
||||
$content->version = 1;
|
||||
if($content->save(true))
|
||||
{
|
||||
if($content->saveContentSprache(true))
|
||||
{
|
||||
$qry = "UPDATE campus.tbl_news SET content_id='".$content->content_id."' WHERE news_id='".$row->news_id."';";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
echo "ID $row->news_id angelegt<br>";
|
||||
$ok++;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "News Update Failed $row->news_id<br>";
|
||||
$fehler++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Content Sprache Update Failed $row->news_id<br>";
|
||||
$fehler++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Content Update Failed $row->news_id<br>";
|
||||
$fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Fehler beim Laden der News';
|
||||
}
|
||||
|
||||
echo "
|
||||
Gesamt: $gesamt<br>
|
||||
OK: $ok<br>
|
||||
Fehler: $fehler<br>
|
||||
";
|
||||
|
||||
?>
|
||||
@@ -1,278 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2010 FH Technikum Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Karl Burkhart <[email protected]>.
|
||||
*/
|
||||
/**
|
||||
* Syncronisiert die Aufteilung von WaWi DB in FHComplete DB
|
||||
*/
|
||||
require_once('../../config/wawi.config.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/datum.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
if (!$conn_wawi = pg_pconnect(CONN_STRING_WAWI))
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden. *** File:='.__FILE__.' Line:='.__LINE__."\n");
|
||||
|
||||
$error_log='';
|
||||
$update_log='';
|
||||
$anzahl_gesamt=0;
|
||||
$anzahl_insert=0;
|
||||
$anzahl_update=0;
|
||||
$anzahl_delete=0;
|
||||
$anzahl_fehler=0;
|
||||
$starttime=date("d.m.Y H:i:s");
|
||||
$datum_obj = new datum();
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Synchro - WaWi -> FAS - Rechnungen</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
$qry="
|
||||
SET CLIENT_ENCODING TO UNICODE;
|
||||
SELECT
|
||||
*, rechnung.lupdate, bn_update.username_neu as updatevon
|
||||
FROM
|
||||
rechnung
|
||||
LEFT JOIN benutzer bn_update ON(rechnung.luser=bn_update.user_id)
|
||||
ORDER BY r_id;
|
||||
";
|
||||
if($result=pg_query($conn_wawi, $qry))
|
||||
{
|
||||
|
||||
$anzahl_gesamt=pg_num_rows($result);
|
||||
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
//check, ob rechnung bereits übertragen
|
||||
$qry_check="SELECT * FROM wawi.tbl_rechnung WHERE rechnung_id='".addslashes($row->r_id)."'";
|
||||
if($result_check=$db->db_query($qry_check))
|
||||
{
|
||||
if($db->db_num_rows($result_check)>0)
|
||||
{
|
||||
$update = false;
|
||||
//Rechnung vorhanden
|
||||
if($row_check = $db->db_fetch_object($result_check))
|
||||
{
|
||||
if($row_check->bestellung_id!=$row->bestellung_id)
|
||||
{
|
||||
$update = true;
|
||||
$update_log.="\nBestellung_id von $row_check->bestellung_id auf $row->bestellung_id geändert";
|
||||
}
|
||||
if($row_check->buchungsdatum!=$row->buchungsdatum)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nBuchungsdatum von $row_check->buchungsdatum auf $row->buchungsdatum geändert";
|
||||
}
|
||||
if($row_check->rechnungsnr!=$row->rechnungsnr)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nRechnungsnr von $row_check->rechnungsnr auf $row->rechnungsnr geändert";
|
||||
}
|
||||
if($row_check->transfer_datum!=$row->transfer_datum)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nTransferDatum von $row_check->transfer_datum auf $row->transfer_datum geändert";
|
||||
}
|
||||
if($row_check->buchungstext!=$row->buchungstext)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nBuchungstext von $row_check->buchungstext auf $row->buchungstext geändert";
|
||||
}
|
||||
if($row_check->updatevon!=$row->updatevon)
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nUpdatevon von $row_check->updatevon auf $row->updatevon geändert";
|
||||
}
|
||||
if($row_check->updateamum!=$datum_obj->formatDatum($row->lupdate))
|
||||
{
|
||||
$update=true;
|
||||
$update_log.="\nUpdateamum von $row_check->updateamum auf $row->lupdate geändert";
|
||||
}
|
||||
|
||||
if($update)
|
||||
{
|
||||
$qry = "UPDATE wawi.tbl_rechnung SET
|
||||
bestellung_id=".$db->addslashes($row->bestellung_id).",
|
||||
buchungsdatum=".$db->addslashes($row->buchungsdatum).",
|
||||
rechnungsnr=".$db->addslashes($row->rechnungsnr).",
|
||||
transfer_datum=".$db->addslashes($row->transfer_datum).",
|
||||
buchungstext=".$db->addslashes($row->buchungstext).",
|
||||
updatevon=".$db->addslashes($row->updatevon).",
|
||||
updateamum=".$db->addslashes($datum_obj->formatDatum($row->lupdate))."
|
||||
WHERE rechnung_id='".addslashes($row->r_id)."'";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_update++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler beim Update: $qry";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
|
||||
//Rechnungsbetrag
|
||||
for($i=1;$i<=3;$i++)
|
||||
{
|
||||
$mwst = 'mwst'.$i;
|
||||
$betrag = 'betrag'.$i;
|
||||
|
||||
if($row->$mwst!='')
|
||||
{
|
||||
$qry = "SELECT * FROM wawi.tbl_rechnungsbetrag
|
||||
WHERE rechnung_id=".$db->addslashes($row->r_id)." AND ext_id='$i'";
|
||||
if($result_rbetrag = $db->db_query($qry))
|
||||
{
|
||||
if($row_rbetrag = $db->db_fetch_object($result_rbetrag))
|
||||
{
|
||||
//Update
|
||||
if($row_rbetrag->betrag!=round($row->$betrag,2))
|
||||
{
|
||||
$qry = "UPDATE wawi.tbl_rechnungsbetrag SET
|
||||
betrag=".$db->addslashes($row->$betrag)."
|
||||
mwst=".$db->addslashes($row->$betrag)."
|
||||
WHERE rechnungsbetrag_id=".$db->addslashes($row_rbetrag->rechnungsbetrag_id);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_update++;
|
||||
$update_log.="\nBetrag von $row_rbetrag->betrag auf ".$row->$betrag." geändert bei Mwst ".$row->$mwst;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Insert
|
||||
$qry = "INSERT INTO wawi.tbl_rechnungsbetrag(rechnung_id, mwst, betrag, ext_id) VALUES(".
|
||||
$db->addslashes($row->r_id).",".
|
||||
$db->addslashes($row->$mwst).",".
|
||||
$db->addslashes($row->$betrag).",'".$i."');";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_insert++;
|
||||
$update_log.="\nRechnungsbetrag hinzugefügt Mwst ".$row->$mwst." Betrag ".$row->$betrag;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$anzahl_fehler++;
|
||||
$error_log.="\nFehler beim Select: $qry";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Loeschen von ueberfluessigen Rechnungsbetraegen
|
||||
$qry="DELETE FROM wawi.tbl_rechnungsbetrag
|
||||
WHERE mwst NOT IN(".$db->addslashes($row->mwst1).",".$db->addslashes($row->mwst2).",".$db->addslashes($row->mwst3).")
|
||||
AND rechnung_id=".$db->addslashes($row->r_id);
|
||||
if($result_delete = $db->db_query($qry))
|
||||
{
|
||||
$rechnungsbetrag_delete = $db->db_affected_rows($result_delete);
|
||||
if($rechnungsbetrag_delete>0)
|
||||
{
|
||||
$update_log.="\n $rechnungsbetrag_delete Rechnungsbetrag Einträge gelöscht";
|
||||
$anzahl_delete+=$rechnungsbetrag_delete;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$anzahl_fehler++;
|
||||
$error_log.="\nFehler bei Delete: $qry";
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Aufteilung nicht vorhanden
|
||||
$qry="INSERT INTO wawi.tbl_rechnung(rechnung_id, bestellung_id, rechnungstyp_kurzbz,
|
||||
buchungsdatum, rechnungsnr, rechnungsdatum, transfer_datum, buchungstext,
|
||||
freigegeben, freigegebenamum, freigegebenvon, insertamum, insertvon,
|
||||
updateamum, updatevon) VALUES("
|
||||
.$db->addslashes($row->r_id).","
|
||||
.$db->addslashes($row->bestellung_id).","
|
||||
."'Rechnung',"
|
||||
.$db->addslashes($row->buchungsdatum).","
|
||||
.$db->addslashes($row->rechnungsnr).","
|
||||
.$db->addslashes($row->rechnungsdatum).","
|
||||
.$db->addslashes($row->transfer_datum).","
|
||||
.$db->addslashes($row->buchungstext).","
|
||||
."true,"
|
||||
.$db->addslashes($datum_obj->formatDatum($row->lupdate)).","
|
||||
.$db->addslashes($row->updatevon).","
|
||||
.$db->addslashes($datum_obj->formatDatum($row->lupdate)).","
|
||||
.$db->addslashes($row->updatevon).","
|
||||
.$db->addslashes($datum_obj->formatDatum($row->lupdate)).","
|
||||
.$db->addslashes($row->updatevon).");";
|
||||
if($row->mwst1!='')
|
||||
$qry.="INSERT INTO wawi.tbl_rechnungsbetrag(rechnung_id, mwst, betrag, ext_id) VALUES(".$db->addslashes($row->r_id).",".$db->addslashes($row->mwst1).",".$db->addslashes($row->betrag1).",1);";
|
||||
if($row->mwst2!='')
|
||||
$qry.="INSERT INTO wawi.tbl_rechnungsbetrag(rechnung_id, mwst, betrag, ext_id) VALUES(".$db->addslashes($row->r_id).",".$db->addslashes($row->mwst2).",".$db->addslashes($row->betrag2).",2);";
|
||||
if($row->mwst3!='')
|
||||
$qry.="INSERT INTO wawi.tbl_rechnungsbetrag(rechnung_id, mwst, betrag, ext_id) VALUES(".$db->addslashes($row->r_id).",".$db->addslashes($row->mwst3).",".$db->addslashes($row->betrag3).",3);";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$anzahl_insert++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler beim Insert: $qry";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_log.="\nFehler bei Select: $qry_check";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
|
||||
$qry = "
|
||||
SELECT setval('wawi.seq_rechnung_rechnung_id',(SELECT max(rechnung_id) FROM wawi.tbl_rechnung));
|
||||
SELECT setval('wawi.seq_rechnungsbetrag_rechnungsbetrag_id',(SELECT max(rechnungsbetrag_id) FROM wawi.tbl_rechnungsbetrag));
|
||||
";
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
$error_log.="\nFehler beim Update der Sequence";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
//Mail versenden
|
||||
$statistik="Rechnung Sync\n--------------\n";
|
||||
$statistik.="Beginn: ".$starttime." von ".DB_NAME." - Anzahl Einträge: ".$anzahl_gesamt."\n\n";
|
||||
$statistik.="\nEingefügte Datensätze: $anzahl_insert";
|
||||
$statistik.="\nGeänderte Datensätze: $anzahl_update";
|
||||
$statistik.="\nFehler: $anzahl_fehler\n";
|
||||
|
||||
$synced=$statistik.$error_log.$update_log;
|
||||
$mail = new mail(MAIL_ADMIN, "vilesci@".DOMAIN, "SYNC Rechnung von ".DB_NAME, $synced);
|
||||
$mail->setReplyTo("vilesci@".DOMAIN);
|
||||
if(!$mail->send())
|
||||
{
|
||||
echo "<font color=\"#FF0000\">Fehler beim Versenden des Durchführungs-Mails!</font><br>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -1,104 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2008 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]> and
|
||||
* Rudolf Hangl <[email protected]>.
|
||||
*/
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
|
||||
echo '<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Stundenplan-Check (stpldev-le)</title>
|
||||
</head>
|
||||
<body>';
|
||||
|
||||
// Startvariablen setzen
|
||||
$adress='[email protected]';
|
||||
$adress_stpl='[email protected]';
|
||||
|
||||
$message_stpl='';
|
||||
$message_sync='';
|
||||
$count_del=0;
|
||||
$count_ins=0;
|
||||
$count_upd=0;
|
||||
$count_err=0;
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
// Mails an die Lektoren und Verbaende
|
||||
$message='';
|
||||
|
||||
// Mail Headers festlegen
|
||||
$headers= "MIME-Version: 1.0\r\n";
|
||||
$headers.="Content-Type: text/html; charset=UTF-8\r\n";
|
||||
|
||||
$message_begin='Dies ist eine automatische Mail!<BR>Es haben sich folgende Aenderungen in Ihrem Stundenplan ergeben:<BR>';
|
||||
|
||||
|
||||
/**************************************************
|
||||
* Datensaetze holen die nicht mehr plausibel sind
|
||||
*/
|
||||
echo 'Folgende Lehreinheiten sind nicht plausibel.<BR>';flush();
|
||||
$sql_query="SELECT DISTINCT lehreinheit_id,studiengang_kz,semester,gruppe_kurzbz,mitarbeiter_uid,ort_kurzbz,
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid AS lehreinheitmitarbeiter_uid
|
||||
FROM lehre.tbl_stundenplandev LEFT OUTER JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id, mitarbeiter_uid)
|
||||
WHERE datum>=now() AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid IS NULL;";
|
||||
|
||||
if (!$result = $db->db_query($sql_query))
|
||||
{
|
||||
echo $sql_query.' fehlgeschlagen!<BR>'.$db->db_last_error();
|
||||
$message.=$sql_query.' fehlgeschlagen!<BR>'.$db->db_last_error();
|
||||
}
|
||||
else
|
||||
{
|
||||
flush();
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
echo $row->lehreinheit_id.'-'.$row->studiengang_kz.'-'.$row->semester.'-'.$row->gruppe_kurzbz.'-'.$row->mitarbeiter_uid.'-'.$row->ort_kurzbz.'<BR>';
|
||||
$message.=$row->lehreinheit_id.'-'.$row->studiengang_kz.'-'.$row->semester.'-'.$row->gruppe_kurzbz.'-'.$row->mitarbeiter_uid.'-'.$row->ort_kurzbz.'<BR>';
|
||||
}
|
||||
$message.='</table>';
|
||||
}
|
||||
|
||||
|
||||
/**************************************************
|
||||
* Mails verschicken
|
||||
*/
|
||||
|
||||
// Mail an Admin
|
||||
$message_tmp=$count_upd.' Datensätze wurden geändert.<BR>
|
||||
'.$count_ins.' Datensätze wurden hinzugefügt.<BR>
|
||||
'.$count_del.' Datensätze wurden gelöscht.<BR>
|
||||
'.$count_err.' Fehler sind dabei aufgetreten!<BR><BR>';
|
||||
echo '<BR>'.$message_tmp;
|
||||
$message_sync='<HTML><BODY>'.$message_tmp.$message_sync.$message_stpl.'</BODY></HTML>';
|
||||
$mail = new mail('[email protected]','[email protected]','Stundenplan update','');
|
||||
$mail->setHTMLContent($message);
|
||||
$mail->send();
|
||||
|
||||
$message_stpl='<HTML><BODY>'.$message_tmp.$message_stpl.'</BODY></HTML>';
|
||||
|
||||
$mail = new mail('[email protected]','[email protected]','Stundenplan update','');
|
||||
$mail->setHTMLContent($message);
|
||||
$mail->send();
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,360 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2009 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <[email protected]>,
|
||||
* Andreas Oesterreicher <[email protected]>,
|
||||
* Rudolf Hangl <[email protected]> and
|
||||
* Gerald Simane-Sequens <[email protected]>
|
||||
******************************************************************************
|
||||
* Beschreibung:
|
||||
* Dieses Skript fuehrt Datenbankupdates von Version 1.2 auf 2.0 durch
|
||||
*/
|
||||
|
||||
require_once('../config/system.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
echo '<H1>DB-Updates!</H1>';
|
||||
echo '<H2>Version 1.2 → 2.0</H2>';
|
||||
|
||||
// **************** lehre.tbl_prestudentstatus -> tbl_prestudentstatus ************************
|
||||
if(!@$db->db_query('SELECT * FROM public.tbl_status LIMIT 1;'))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_rolle RENAME TO tbl_status;
|
||||
ALTER TABLE public.tbl_prestudentrolle RENAME TO tbl_prestudentstatus;
|
||||
ALTER TABLE public.tbl_status RENAME COLUMN rolle_kurzbz TO status_kurzbz;
|
||||
ALTER TABLE public.tbl_prestudentstatus RENAME COLUMN rolle_kurzbz TO status_kurzbz;
|
||||
UPDATE pg_catalog.pg_constraint SET conname='pk_tbl_status' WHERE conname='pk_tbl_rolle';
|
||||
UPDATE pg_catalog.pg_constraint SET conname='orgform_prestudentstatus' WHERE conname='orgform_prestudentrolle';
|
||||
UPDATE pg_catalog.pg_constraint SET conname='pk_tbl_prestudentstatus' WHERE conname='pk_tbl_prestudentrolle';
|
||||
UPDATE pg_catalog.pg_constraint SET conname='prestudent_prestudentstatus' WHERE conname='prestudent_prestudentrolle';
|
||||
UPDATE pg_catalog.pg_constraint SET conname='status_prestudentstatus' WHERE conname='rolle_prestudentrolle';
|
||||
UPDATE pg_catalog.pg_constraint SET conname='studiensemester_prestudentstatus' WHERE conname='studiensemester_prestudentrolle';
|
||||
|
||||
CREATE OR REPLACE FUNCTION get_rolle_prestudent (integer, character varying) returns character varying as $$
|
||||
DECLARE i_prestudent_id ALIAS FOR $1;
|
||||
DECLARE cv_studiensemester_kurzbz ALIAS FOR $2;
|
||||
DECLARE rec RECORD;
|
||||
BEGIN
|
||||
IF (cv_studiensemester_kurzbz IS NULL) THEN
|
||||
SELECT INTO rec status_kurzbz
|
||||
FROM public.tbl_prestudentstatus
|
||||
WHERE prestudent_id=i_prestudent_id
|
||||
ORDER BY datum desc,insertamum desc, ext_id desc
|
||||
LIMIT 1;
|
||||
ELSE
|
||||
SELECT INTO rec status_kurzbz
|
||||
FROM tbl_prestudentstatus
|
||||
WHERE prestudent_id=i_prestudent_id AND studiensemester_kurzbz=cv_studiensemester_kurzbz
|
||||
ORDER BY datum desc,insertamum desc, ext_id desc
|
||||
LIMIT 1;
|
||||
END IF;
|
||||
|
||||
RETURN rec.status_kurzbz;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_status: '.$db->db_last_error().' </strong><br>';
|
||||
else
|
||||
echo ' public.tbl_status: Umbenannt auf tbl_status!<br>
|
||||
constrains umbenannt
|
||||
public.tbl_prestudentstatus: Umbenannt auf tbl_prestudentstatus!<br>
|
||||
constrains umbenannt';
|
||||
}
|
||||
|
||||
// *************** public.tbl_organisationseinheit *******************************
|
||||
if(!@$db->db_query('SELECT * FROM public.tbl_organisationseinheit LIMIT 1;'))
|
||||
{
|
||||
$qry = "CREATE TABLE public.tbl_organisationseinheit
|
||||
(
|
||||
oe_kurzbz Character varying(32) NOT NULL,
|
||||
oe_parent_kurzbz Character varying(32),
|
||||
bezeichnung Character varying(256),
|
||||
organisationseinheittyp_kurzbz Character varying(16) NOT NULL
|
||||
)
|
||||
WITH (OIDS=FALSE);
|
||||
|
||||
ALTER TABLE public.tbl_organisationseinheit ADD CONSTRAINT pk_tbl_organisationseinheit PRIMARY KEY (oe_kurzbz);
|
||||
ALTER TABLE public.tbl_organisationseinheit ADD CONSTRAINT oe_parent_oe FOREIGN KEY (oe_parent_kurzbz) REFERENCES public.tbl_organisationseinheit (oe_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
CREATE TABLE public.tbl_organisationseinheittyp
|
||||
(
|
||||
organisationseinheittyp_kurzbz Character varying(16) NOT NULL,
|
||||
bezeichnung Character varying(256),
|
||||
beschreibung text
|
||||
)
|
||||
WITH (OIDS=FALSE);
|
||||
|
||||
ALTER TABLE public.tbl_organisationseinheittyp ADD CONSTRAINT pk_organisationseinheittyp PRIMARY KEY (organisationseinheittyp_kurzbz);
|
||||
ALTER TABLE public.tbl_organisationseinheit ADD CONSTRAINT organisationseinheit_organisationseinheittyp FOREIGN KEY (organisationseinheittyp_kurzbz) REFERENCES public.tbl_organisationseinheittyp (organisationseinheittyp_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
GRANT SELECT on public.tbl_organisationseinheit TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE on public.tbl_organisationseinheit TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
|
||||
GRANT SELECT on public.tbl_organisationseinheittyp TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE on public.tbl_organisationseinheittyp TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
|
||||
ALTER TABLE public.tbl_studiengang ADD COLUMN oe_kurzbz character varying(32);
|
||||
ALTER TABLE public.tbl_studiengang ADD CONSTRAINT studiengang_organisationseinheit FOREIGN KEY (oe_kurzbz) REFERENCES public.tbl_organisationseinheit (oe_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
ALTER TABLE public.tbl_fachbereich ADD COLUMN oe_kurzbz character varying(32);
|
||||
ALTER TABLE public.tbl_fachbereich ADD CONSTRAINT fachbereich_organisationseinheit FOREIGN KEY (oe_kurzbz) REFERENCES public.tbl_organisationseinheit (oe_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
-- ORGANISATIONSEINHEITEN Anlegen
|
||||
INSERT INTO public.tbl_organisationseinheittyp(organisationseinheittyp_kurzbz, bezeichnung, beschreibung) VALUES('Erhalter',null, null);
|
||||
INSERT INTO public.tbl_organisationseinheittyp(organisationseinheittyp_kurzbz, bezeichnung, beschreibung) VALUES('Studienzentrum',null, null);
|
||||
INSERT INTO public.tbl_organisationseinheittyp(organisationseinheittyp_kurzbz, bezeichnung, beschreibung) VALUES('Studiengang',null, null);
|
||||
INSERT INTO public.tbl_organisationseinheittyp(organisationseinheittyp_kurzbz, bezeichnung, beschreibung) VALUES('Institut',null, null);
|
||||
INSERT INTO public.tbl_organisationseinheittyp(organisationseinheittyp_kurzbz, bezeichnung, beschreibung) VALUES('Abteilung',null, null);
|
||||
|
||||
-- Technikum Wien Spezifisch!!
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('etw',null,'Technikum Wien','Erhalter');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('ctee','etw','Communication Technologies & Electronic Engineering','Studienzentrum');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bel','ctee','BEL','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bew','ctee','BEW','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bic','ctee','BIC','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mes','ctee','MES','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mie','ctee','MIE','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mtm','ctee','MTM','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mti','ctee','MTI','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('EmbeddedSystems','ctee','Embedded System','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Telecom','ctee','Telecommunications & Internet Technologies','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('ElectronicEng','ctee','Electronic Engineering','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('itbs','etw','Information Technologies & Business Solutions','Studienzentrum');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bif','itbs','BIF','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bit','itbs','BIT','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bwi','itbs','BWI','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mic','itbs','MIC','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mit','itbs','MIT','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mse','itbs','MSE','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mwi','itbs','MWI','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mgs','itbs','MGS','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Informatik','itbs','Informatik','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Wirtschaftsinf','itbs','Wirtschaftsinformatik','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('InformationEng','itbs','Information Engineering & Security','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('eet','etw','Engineering & Environmental Technologies','Studienzentrum');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('biw','eet','BIW','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('miw','eet','MIW','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bmr','eet','BMR','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mmr','eet','MMR','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bee','eet','BEE','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mee','eet','MEE','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Mechatronics','eet','Mechatronics','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('AdvancedTech','eet','Advanced Technologies','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('ErnEnergie','eet','Erneuerbare Energietechnologien','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('lst','etw','Life Science Technologies','Studienzentrum');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bbe','lst','BBE','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('bst','lst','BST','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mbe','lst','MBE','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mgr','lst','MGR','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mst','lst','MST','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('mut','lst','MUT','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('BiomedTech','lst','Biomedizinische Technik & Umweltmanagement','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('SportsEng','lst','Sports Engineering and Biomechanics','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('AngewandteMath','etw','Angewandte Mathematik und Naturwissenschaften','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('MgmntWirtRecht','etw','Management, Wirtschaft, Recht','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Sozialkompetenz','etw','Sozialkompetenz- und Managementmethoden','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Sprachen','etw','Sprachen und Kulturwissenschaften','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Dummy','etw','Dummy','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Freifaecher','etw','Freifaecher','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Praxissemester','etw','Praxissemester','Institut');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('eak','etw','Aufbaukurse','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('lca','etw','Cisco Academy','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('ltc','etw','LLL China','Studiengang');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Auslandsbuero','etw','Auslandsbüro','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Bibliothek','etw','Bibliothek','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Geschaeftsltg','etw','Geschäftsleitung','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Unternehmenskommunikation','etw','Unternehmenskommunikation','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Infrastruktur','etw','Infrastruktur','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Haustechnik','Infrastruktur','Haustechnik','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('ServiceDesk','Infrastruktur','ServiceDesk','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('Systementwicklung','Infrastruktur','Systementwicklung','Abteilung');
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) VALUES('ZentrServices','Infrastruktur','ZentraleServices','Abteilung');
|
||||
|
||||
-- Alle noch nicht eingetragenen Institute und Studiengaenge direkt unter etw haengen
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) SELECT lower(typ::varchar(1) || kurzbz), 'etw', UPPER(typ::varchar(1) || kurzbz), 'Studiengang' FROM public.tbl_studiengang WHERE lower(typ::varchar(1) || kurzbz) not in (SELECT oe_kurzbz FROM public.tbl_organisationseinheit) AND studiengang_kz<>999;
|
||||
INSERT INTO public.tbl_organisationseinheit(oe_kurzbz, oe_parent_kurzbz, bezeichnung, organisationseinheittyp_kurzbz) SELECT fachbereich_kurzbz, 'etw', bezeichnung, 'Institut' FROM public.tbl_fachbereich WHERE fachbereich_kurzbz not in (SELECT oe_kurzbz FROM public.tbl_organisationseinheit);
|
||||
|
||||
-- Eintraege in Tabelle Studiengang und Fachbereich
|
||||
UPDATE public.tbl_studiengang set oe_kurzbz = lower(typ::varchar(1) || kurzbz) WHERE lower(typ::varchar(1) || kurzbz) in(select oe_kurzbz FROM public.tbl_organisationseinheit);
|
||||
UPDATE public.tbl_fachbereich set oe_kurzbz=fachbereich_kurzbz WHERE fachbereich_kurzbz in(select oe_kurzbz FROM public.tbl_organisationseinheit);
|
||||
|
||||
";
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_organisationseinheit: '.$db->db_last_error().' </strong><br>';
|
||||
else
|
||||
echo ' public.tbl_organisationseinheit: Tabelle wurde hinzugef�gt!<br>';
|
||||
;
|
||||
}
|
||||
|
||||
// ************* system.tbl_berechtigung ******************
|
||||
if(!@$db->db_query('SELECT * FROM system.tbl_berechtigung LIMIT 1;'))
|
||||
{
|
||||
$qry = "CREATE SCHEMA system;
|
||||
|
||||
GRANT USAGE ON SCHEMA system TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
GRANT USAGE ON SCHEMA system TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
|
||||
CREATE TABLE system.tbl_benutzerrolle
|
||||
(
|
||||
benutzerberechtigung_id serial NOT NULL,
|
||||
rolle_kurzbz Character varying(32),
|
||||
berechtigung_kurzbz Character varying(32),
|
||||
uid Character varying(16),
|
||||
funktion_kurzbz Character varying(16),
|
||||
oe_kurzbz Character varying(32),
|
||||
art Character varying(5) DEFAULT 's'::character varying NOT NULL,
|
||||
studiensemester_kurzbz Character varying(16),
|
||||
start Date,
|
||||
ende Date,
|
||||
negativ Boolean DEFAULT FALSE NOT NULL,
|
||||
updateamum Timestamp,
|
||||
updatevon Character varying(16),
|
||||
insertamum Timestamp DEFAULT now(),
|
||||
insertvon Character varying(16)
|
||||
)
|
||||
WITH (OIDS=FALSE);
|
||||
|
||||
CREATE INDEX idx_userberechtigung_uid ON system.tbl_benutzerrolle (uid);
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT pk_tbl_benutzerberechtigung PRIMARY KEY (benutzerberechtigung_id);
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT benutzerrolle_benutzer FOREIGN KEY (uid) REFERENCES public.tbl_benutzer (uid) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT benutzerrolle_funktion FOREIGN KEY (funktion_kurzbz) REFERENCES public.tbl_funktion (funktion_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
CREATE TABLE system.tbl_berechtigung
|
||||
(
|
||||
berechtigung_kurzbz Character varying(32) NOT NULL,
|
||||
beschreibung Character varying(256)
|
||||
)
|
||||
WITH (OIDS=FALSE);
|
||||
ALTER TABLE system.tbl_berechtigung ADD CONSTRAINT pk_tbl_berechtigung PRIMARY KEY (berechtigung_kurzbz);
|
||||
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT benutzerrolle_berechtigung FOREIGN KEY (berechtigung_kurzbz) REFERENCES system.tbl_berechtigung (berechtigung_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT benutzerrolle_organisationseinheit FOREIGN KEY (oe_kurzbz) REFERENCES public.tbl_organisationseinheit (oe_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT benutzerrolle_studiensemester FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester (studiensemester_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
CREATE TABLE system.tbl_rolle
|
||||
(
|
||||
rolle_kurzbz Character varying(32) NOT NULL,
|
||||
beschreibung Character varying(256)
|
||||
)
|
||||
WITH (OIDS=FALSE);
|
||||
|
||||
CREATE TABLE system.tbl_rolleberechtigung
|
||||
(
|
||||
berechtigung_kurzbz Character varying(32) NOT NULL,
|
||||
rolle_kurzbz Character varying(32),
|
||||
art Character varying(5)
|
||||
)
|
||||
WITH (OIDS=FALSE);
|
||||
|
||||
|
||||
ALTER TABLE system.tbl_rolle ADD CONSTRAINT pk_tbl_rolle PRIMARY KEY (rolle_kurzbz);
|
||||
ALTER TABLE system.tbl_rolleberechtigung ADD CONSTRAINT pk_tbl_rolleberechtigung PRIMARY KEY(berechtigung_kurzbz, rolle_kurzbz);
|
||||
ALTER TABLE system.tbl_rolleberechtigung ADD CONSTRAINT rolleberechtigung_rolle FOREIGN KEY(rolle_kurzbz) REFERENCES system.tbl_rolle (rolle_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE system.tbl_rolleberechtigung ADD CONSTRAINT rolleberechtigung_berechtigung FOREIGN KEY(berechtigung_kurzbz) REFERENCES system.tbl_berechtigung (berechtigung_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE system.tbl_benutzerrolle ADD CONSTRAINT benutzerrolle_rolle FOREIGN KEY (rolle_kurzbz) REFERENCES system.tbl_rolle (rolle_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
GRANT SELECT ON system.tbl_benutzerrolle TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
GRANT SELECT ON system.tbl_berechtigung TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
GRANT SELECT ON system.tbl_rolle TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
GRANT SELECT ON system.tbl_rolleberechtigung TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
|
||||
GRANT SELECT, UPDATE ON system.tbl_benutzerrolle_benutzerberechtigung_id_seq TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
GRANT SELECT, UPDATE ON system.tbl_benutzerrolle_benutzerberechtigung_id_seq TO GROUP ".DB_CIS_USER_GROUP.";
|
||||
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE ON system.tbl_benutzerrolle TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE ON system.tbl_berechtigung TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE ON system.tbl_rolle TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE ON system.tbl_rolleberechtigung TO GROUP ".DB_FAS_USER_GROUP.";
|
||||
|
||||
|
||||
--- SYNCRONISIEREN
|
||||
|
||||
INSERT INTO system.tbl_rolle(rolle_kurzbz, beschreibung) SELECT berechtigung_kurzbz, beschreibung FROM public.tbl_berechtigung;
|
||||
|
||||
-- Berechtigungen uebernehmen
|
||||
|
||||
INSERT INTO system.tbl_benutzerrolle(uid, funktion_kurzbz, rolle_kurzbz, berechtigung_kurzbz, art, oe_kurzbz,
|
||||
studiensemester_kurzbz, start, ende, negativ, updateamum, updatevon, insertamum, insertvon)
|
||||
SELECT
|
||||
uid, null, berechtigung_kurzbz, null, art,
|
||||
CASE WHEN fachbereich_kurzbz IS NOT NULL THEN (SELECT oe_kurzbz FROM public.tbl_fachbereich WHERE fachbereich_kurzbz=tbl_benutzerberechtigung.fachbereich_kurzbz)
|
||||
WHEN studiengang_kz IS NOT NULL THEN (SELECT oe_kurzbz FROM public.tbl_studiengang WHERE studiengang_kz=tbl_benutzerberechtigung.studiengang_kz)
|
||||
ELSE null
|
||||
END,
|
||||
studiensemester_kurzbz, start, ende, false, updateamum, updatevon, insertamum, insertvon
|
||||
FROM public.tbl_benutzerberechtigung;
|
||||
|
||||
--- ALTE TABELLE LOESCHEN
|
||||
DROP TABLE public.tbl_benutzerberechtigung;
|
||||
|
||||
-- Berechtigung anlegen
|
||||
INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) SELECT rolle_kurzbz, beschreibung FROM system.tbl_rolle;
|
||||
|
||||
-- Berechtigungen zu den Rollen
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) SELECT rolle_kurzbz, rolle_kurzbz, 'suid' FROM system.tbl_rolle;
|
||||
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('mitarbeiter','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('lehre','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('lv-plan','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('raumres','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('assistenz','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('news','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('preinteressent','admin','suid');
|
||||
INSERT INTO system.tbl_rolleberechtigung(berechtigung_kurzbz, rolle_kurzbz, art) VALUES('veranstaltung','admin','suid');
|
||||
|
||||
-- Bei alle ohne oe_kurzbz die Organisaitonseinheit auf etw setzen (admins)
|
||||
UPDATE system.tbl_benutzerrolle SET oe_kurzbz='etw' WHERE oe_kurzbz is null;
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>system schema: '.$db->db_last_error().' </strong><br>';
|
||||
else
|
||||
echo 'system schema: Berechtigungstabellen wurden hinzugefuegt!<br>';
|
||||
|
||||
}
|
||||
|
||||
// **************** public.tbl_benutzerfunktion ************************
|
||||
if(!@$db->db_query('SELECT oe_kurzbz FROM public.tbl_benutzerfunktion LIMIT 1;'))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_benutzerfunktion ADD COLUMN oe_kurzbz Character varying(32);
|
||||
ALTER TABLE public.tbl_benutzerfunktion ADD COLUMN datum_von Date;
|
||||
ALTER TABLE public.tbl_benutzerfunktion ADD COLUMN datum_bis Date;
|
||||
|
||||
-- studiengang in oe_kurzbz kopieren
|
||||
UPDATE public.tbl_benutzerfunktion SET oe_kurzbz = (SELECT lower(typ::varchar(1) || kurzbz) FROM public.tbl_studiengang WHERE studiengang_kz=tbl_benutzerfunktion.studiengang_kz);
|
||||
|
||||
DROP VIEW public.vw_benutzerfunktion;
|
||||
|
||||
ALTER TABLE public.tbl_benutzerfunktion ALTER COLUMN oe_kurzbz SET NOT NULL;
|
||||
|
||||
-- spalte loeschen
|
||||
ALTER TABLE public.tbl_benutzerfunktion DROP COLUMN studiengang_kz;
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_benutzerfunktion: '.$db->db_last_error().' </strong><br>';
|
||||
else
|
||||
echo ' public.tbl_benutzerfunktion: Umbenannt auf oe_kurzbz statt studiengang_kz hinzugefuegt!<br>
|
||||
Datum Von/Bis hinzugefuegt';
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user