This commit is contained in:
Andreas Österreicher
2009-07-07 07:42:01 +00:00
parent fa283decd6
commit c6a1a8e7ee
13 changed files with 231 additions and 1154 deletions
@@ -245,10 +245,6 @@ function StudentAbschlusspruefungMenulistMitarbeiterLoad(menulist, filter)
if(v.length>2)
{
if(filter=='')
filter1 = menulist.value;
else
filter1 = filter;
var url = '<?php echo APP_ROOT; ?>rdf/mitarbeiter.rdf.php?filter='+v+'&'+gettimestamp();
var oldDatasources = menulist.database.GetDataSources();
@@ -269,7 +265,6 @@ function StudentAbschlusspruefungMenulistMitarbeiterLoad(menulist, filter)
menulist.database.AddDataSource(datasource);
if(typeof(filter)!='undefined')
menulist.builder.rebuild();
}
}
+2
View File
@@ -18,6 +18,8 @@ abstract class db extends basis
abstract function db_fetch_array($result=null);
abstract function db_result($result = null, $i,$item);
abstract function db_num_rows($result=null);
abstract function db_num_fields($result=null);
abstract function db_field_name($result=null, $i);
abstract function db_affected_rows($result=null);
abstract function db_last_error();
}
+16
View File
@@ -88,5 +88,21 @@ class basis_db extends db
else
return pg_fetch_array($result);
}
function db_num_fields($result=null)
{
if(is_null($result))
return pg_num_fields($this->db_result);
else
return pg_num_fields($result);
}
function db_field_name($result=null, $i)
{
if(is_null($result))
return pg_field_name($this->db_result, $i);
else
return pg_field_name($result, $i);
}
}
?>
+3 -2
View File
@@ -79,7 +79,7 @@ if(isset($_GET['lehrveranstaltung_id']) && is_numeric($_GET['lehrveranstaltung_i
{
$lehrveranstaltung_id = $_GET['lehrveranstaltung_id'];
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
$mitarbeiter=new mitarbeiter($conn, null, true);
$mitarbeiter=new mitarbeiter();
}
else
{
@@ -195,6 +195,7 @@ if($lehrveranstaltung_id==null && $filter==null && $mitarbeiter_uid==null)
}
else
{
$filter = utf8_encode($filter);
echo "<RDF:Seq about=\"".$rdf_url."liste\" >";
if(isset($_GET['optional']) && $_GET['optional']=='true')
{
@@ -235,7 +236,7 @@ else
}
else
{
$mitarbeiter->getMitarbeiterFilter($filter);
$mitarbeiter->getMitarbeiterFilter($filter);
}
foreach ($mitarbeiter->result as $row)
+1 -1
View File
@@ -54,7 +54,7 @@ echo '
<RDF:Seq RDF:about="'.$rdf_url.'/liste">
';
$filter = utf8_encode($filter);
$qry = "SELECT distinct person_id, vorname, nachname, titelpre, titelpost FROM public.tbl_person WHERE nachname ~* '".addslashes($filter).".*' ORDER BY nachname, vorname, titelpre, titelpost";
if(isset($_GET['nurmittitel']))
+78 -39
View File
@@ -24,41 +24,36 @@
* 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('../vilesci/config.inc.php');
$connstring=CONN_STRING;
$connstring="host=theseus.technikum-wien.at dbname=-devvilesci user= password=";
if(!$conn = pg_connect($connstring))
die('Keine Verbindung zur DB');
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. (atttypmod=20 weil automatisch 4 zeichen dazugezaehlt werden)
//die 16 Zeichen lang ist.
$qry="
SELECT
attname as spalte, relname as tabelle
FROM
pg_attribute JOIN pg_class on(attrelid=pg_class.oid) JOIN pg_type ON(atttypid=pg_type.oid)
SELECT column_name as spalte, table_name as tabelle, table_schema as schema
FROM information_schema.columns
WHERE
attname in ('student_uid','uid','mitarbeiter_uid', 'insertvon','updatevon','koordinator',
'lektor','vorsitz','updateaktivvon','freigabevon_uid','vertretung_uid','freigabevon', 'lektor_uid')
AND atttypmod=20
AND (relname like 'tbl_%' OR relname like 'vw_%')
AND typname='varchar' ORDER BY tabelle DESC, spalte";
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;
pg_query($conn, 'SET search_path to bis, campus, fue, kommune, lehre, public, sync, testtool');
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
pg_query($conn,'BEGIN');
while($row = pg_fetch_object($result))
$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 = pg_query($conn, $qry_view))
if($result_view = $db->db_query($qry_view))
{
if($row_view = pg_fetch_object($result_view))
if($row_view = $db->db_fetch_object($result_view))
{
$views[$anzviews]['definition']=$row_view->definition;
$views[$anzviews]['schema']=$row_view->schemaname;
@@ -67,7 +62,7 @@ if($result = pg_query($conn, $qry))
$qry_drp_view = "DROP VIEW $row_view->schemaname.$row_view->viewname;";
echo $qry_drp_view;
pg_query($conn, $qry_drp_view);
$db->db_query($qry_drp_view);
}
}
@@ -75,22 +70,70 @@ if($result = pg_query($conn, $qry))
else
{
//Spalte in der Tabelle aendern
$qry_alter="ALTER TABLE $row->tabelle ALTER COLUMN $row->spalte TYPE varchar(32);";
$qry_alter="ALTER TABLE $row->schema.$row->tabelle ALTER COLUMN $row->spalte TYPE varchar(32);";
echo $qry_alter.'<br>';
if(pg_query($conn, $qry_alter))
if($db->db_query($qry_alter))
echo "$row->tabelle : $row->spalte<br>";
else
echo "Fehler: $qry_alter<br>";
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(pg_query($conn, $qry))
if($db->db_query($qry))
echo $qry.'<br>';
else
echo '<b>Fehler beim Anlegen der View: '.$qry.'<br>';
}
//ViewBerechtigungen wieder einspielen
@@ -125,18 +168,10 @@ if($result = pg_query($conn, $qry))
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_gebiet to group "admin";
Grant select on testtool.vw_gebiet to group "web";
Grant select on testtool.vw_frage to group "admin";
Grant select on testtool.vw_frage to group "web";
Grant select on testtool.vw_antwort to group "admin";
Grant select on testtool.vw_antwort to group "web";
Grant select on testtool.vw_anz_antwort to group "admin";
Grant select on testtool.vw_anz_antwort to group "web";
Grant select on testtool.vw_anz_richtig to group "admin";
Grant select on testtool.vw_anz_richtig 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";
@@ -149,9 +184,13 @@ if($result = pg_query($conn, $qry))
GRANT SELECT ON lehre.vw_stundenplandev_student_unr TO GROUP admin;
';
echo $qry;
pg_query($conn, $qry);
if(!$db->db_query($qry))
echo '<b>Fehler bei qry:</b>'.$qry;
pg_query($conn,'COMMIT');
if(!$db->db_query('COMMIT'))
echo '<b>Fehler beim Commit</b>';
else
echo '<br><br><b>Aktualisierung erfolgreich</b>';
}
?>
+27 -22
View File
@@ -26,17 +26,17 @@
* - Accounts die laenger als 3 Tage deaktiviert sind, werden per Mail an die
* Bibliothek gemeldet.
*/
require_once('../vilesci/config.inc.php');
require_once('../config/vilesci.config.inc.php');
require_once('../include/basis_db.class.php');
require_once('../include/mail.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$db = new basis_db();
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Check</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
</head>
<body class="Background_main">
@@ -46,13 +46,13 @@ $text='';
//Information an Bibliothek wenn ein Account deaktiviert wurde
$qry = "SELECT uid, (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid=uid) as mitarbeiter, titelpre, vorname, nachname, titelpost FROM public.tbl_benutzer JOIN public.tbl_person USING(person_id) WHERE tbl_benutzer.aktiv=false AND updateaktivam=CURRENT_DATE- interval '3 days'";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
if(pg_num_rows($result)>0)
if($db->db_num_rows($result)>0)
{
$message = "Dies ist eine automatische Mail!\n";
$message .= "Folgende Studenten/Mitarbeiter wurden im FAS deaktiviert: \n\n";
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$message .= " - $row->titelpre $row->vorname $row->nachname $row->titelpost ( $row->uid )\n";
}
@@ -64,7 +64,8 @@ if($result = pg_query($conn, $qry))
//$to = 'oesi@technikum-wien.at';
$to = 'bibliothek@'.DOMAIN;
mail($to,'Account Deaktivierung ', $message, 'From: vilesci@'.DOMAIN);
$mail = new mail($to, 'vilesci@'.DOMAIN, 'Account Deaktivierung', $message);
$mail->send();
$text.= "Warnung fuer Bibliothek wurde an $to verschickt\n";
}
}
@@ -72,9 +73,9 @@ if($result = pg_query($conn, $qry))
//Alle die vor einer Woche inaktiv gesetzt wurden darueber informieren
$qry = "SELECT uid, (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid=uid) as mitarbeiter FROM public.tbl_benutzer WHERE aktiv=false AND updateaktivam=CURRENT_DATE- interval '1 week'";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$message = "Dies ist eine automatische Mail!\n";
$message .= "Ihr Benutzerdatensatz wurde von einem unserer Mitarbeiter deaktiviert. Was bedeutet das nun für Sie?\n\n";
@@ -106,7 +107,8 @@ if($result = pg_query($conn, $qry))
//$to = 'oesi@technikum-wien.at';
$to = $row->uid.'@'.DOMAIN;
mail($to,'Ihr Datensatz wurde deaktiviert! '.$row->uid, $message, 'From: vilesci@'.DOMAIN);
$mail = new mail($to,'vilesci@'.DOMAIN,'Ihr Datensatz wurde deaktiviert! '.$row->uid, $message);
$mail->send();
$text.= "Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
}
}
@@ -116,9 +118,9 @@ if($result = pg_query($conn, $qry))
$qry = "SELECT uid FROM public.tbl_benutzer JOIN public.tbl_student ON(uid=student_uid) WHERE
aktiv=false AND updateaktivam=CURRENT_DATE- interval '".DEL_ABBRECHER_WEEKS." week'
AND get_rolle_prestudent (prestudent_id, NULL)='Abbrecher'";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$message = "Dies ist eine automatische Mail!\n";
$message .= "Ihr Benutzerdatensatz wurde von einem unserer Mitarbeiter deaktiviert. Was bedeutet das nun für Sie?\n\n";
@@ -135,7 +137,7 @@ if($result = pg_query($conn, $qry))
//$to = 'oesi@technikum-wien.at';
$to = $row->uid.'@'.DOMAIN;
mail($to,'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message, 'From: vilesci@'.DOMAIN);
$mail = new mail($to, 'vilesci@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message);
$text.= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
}
}
@@ -144,9 +146,9 @@ if($result = pg_query($conn, $qry))
$qry = "SELECT uid FROM public.tbl_benutzer JOIN public.tbl_student ON(uid=student_uid) WHERE
aktiv=false AND updateaktivam=CURRENT_DATE- interval '".DEL_STUDENT_WEEKS." week'
AND get_rolle_prestudent (prestudent_id, NULL)<>'Abbrecher'";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$message = "Dies ist eine automatische Mail!\n";
$message .= "Ihr Benutzerdatensatz wurde von einem unserer Mitarbeiter deaktiviert. Was bedeutet das nun für Sie?\n\n";
@@ -163,7 +165,8 @@ if($result = pg_query($conn, $qry))
//$to = 'oesi@technikum-wien.at';
$to = $row->uid.'@'.DOMAIN;
mail($to,'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message, 'From: vilesci@'.DOMAIN);
$mail = new mail($to,'vilesci@'.DOMAIN,'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message);
$mail->send();
$text.= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
}
}
@@ -171,9 +174,9 @@ if($result = pg_query($conn, $qry))
//Mitarbeiter
$qry = "SELECT uid FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) WHERE
aktiv=false AND updateaktivam=CURRENT_DATE- interval '".DEL_MITARBEITER_WEEKS." week'";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$message = "Dies ist eine automatische Mail!\n";
$message .= "Ihr Benutzerdatensatz wurde von einem unserer Mitarbeiter deaktiviert. Was bedeutet das nun für Sie?\n\n";
@@ -183,7 +186,7 @@ if($result = pg_query($conn, $qry))
$message .= "- Ihre Mailbox mit sämtlichen Mails wird gelöscht.\n";
$message .= "- Ihr Home-Verzeichnis mit allen enthaltenen Dateien wird gelöscht.\n\n";
$message .= "Sollte es sich hierbei um einen Irrtum handeln, wenden sie sich bitte an die Mitarbeiter unserer Personalabteillung.\n";
$message .= "Adelheit Schaaf - schaaf@technikum-wien.at\n";
$message .= "Nicole Sagmeister - sagmeister@technikum-wien.at\n";
$message .= "Orestis Kazamias - kazamias@technikum-wien.at\n\n";
$message .= "Mit freundlichen Grüßen,\n";
$message .= "FACHHOCHSCHULE TECHNIKUM WIEN\n";
@@ -192,7 +195,8 @@ if($result = pg_query($conn, $qry))
//$to = 'oesi@technikum-wien.at';
$to = $row->uid.'@'.DOMAIN;
mail($to,'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message, 'From: vilesci@'.DOMAIN);
$mail = new mail($to,'vilesci@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message);
$mail->send();
$text.= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n";
}
}
@@ -200,7 +204,8 @@ if($result = pg_query($conn, $qry))
echo nl2br($text);
if($text!='')
{
mail(MAIL_IT.', tw_ht@technikum-wien.at, schmuderm@technikum-wien.at, vilesci@technikum-wien.at' , 'Account Deaktivierung', "Dies ist eine automatische Mail!\nFolgende Warnungen zur Accountloeschung wurden versandt:\n\n".$text, 'From: vilesci@'.DOMAIN);
$mail = new mail(MAIL_IT.', tw_ht@technikum-wien.at, schmuderm@technikum-wien.at, vilesci@technikum-wien.at', 'vilesci@'.DOMAIN, 'Account Deaktivierung', "Dies ist eine automatische Mail!\nFolgende Warnungen zur Accountloeschung wurden versandt:\n\n".$text);
$mail->send();
}
echo '</body></html>';
+10 -9
View File
@@ -27,16 +27,16 @@
* Wenn kein aktuelles Studiensemester vorhanden ist, wird keine
* Nachricht versendet.
*/
require_once('../vilesci/config.inc.php');
require_once('../config/vilesci.config.inc.php');
require_once('../include/studiensemester.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur Datenbank');
require_once('../include/mail.class.php');
$stsem = new studiensemester($conn);
$stsem = new studiensemester();
if(!$studiensemester = $stsem->getakt())
die('Es ist kein aktuelles Studiensemester vorhanden -> Versand nicht noetig');
$db = new basis_db();
//Alle Lektoren holen die am Vortag zu einer Lehreinheit zugeteilt wurden
//und in diesem Studiensemester noch keinen Lehrauftrag haben.
@@ -56,12 +56,12 @@ WHERE uid IN(
)
";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
if(pg_num_rows($result)>0)
if($db->db_num_rows($result)>0)
{
$mitarbeiter='';
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$mitarbeiter .= trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost)." ($row->uid)\n";
}
@@ -70,7 +70,8 @@ if($result = pg_query($conn, $qry))
$message.=$mitarbeiter;
$to = MAIL_GST;
if(mail($to,'Neue Lektoren mit Lehrauftrag', $message, 'From: vilesci@'.DOMAIN))
$mail = new mail($to,'vilesci@'.DOMAIN,'Neue Lektoren mit Lehrauftrag', $message);
if($mail->send())
echo "Mail wurde an $to versandt:<br>".nl2br($message);
else
echo "Fehler beim Senden des Mails an $to:<br>".nl2br($message);
+49 -27
View File
@@ -1,4 +1,25 @@
<?php
/* Copyright (C) 2006 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 <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>
*/
// ************************************
// * Script zur Pruefung und Korrektur
// * moeglicher Inkonsistenzen
@@ -6,17 +27,17 @@
// * - Studenten ohne Prestudent_id werden korrigiert
// * - Inkonsistenzen der Tabellen tbl_studentlehrverband, tbl_student werden korrigiert
// **********************************
require_once('../vilesci/config.inc.php');
require_once('../config/vilesci.config.inc.php');
require_once('../include/studiensemester.class.php');
require_once('../include/person.class.php');
require_once('../include/benutzer.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/lehrverband.class.php');
require_once('../include/mail.class.php');
$db = new basis_db();
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Hestellen der DB Verbindung');
$anzahl_neue_prestudent_id=0;
$anzahl_fehler_prestudent=0;
$anzahl_gruppenaenderung=0;
@@ -30,21 +51,21 @@ $abunterbrecher_verschoben=0;
// * Bei Studenten mit fehlener Prestudent_id wird die passende id ermittelt und Eingetragen
// ****
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE prestudent_id is null";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
$text.="Suche Studenten mit fehlender Prestudent_id ...\n\n";
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid='$row->student_uid' AND tbl_prestudent.studiengang_kz='$row->studiengang_kz'";
if($result_id = pg_query($conn, $qry_id))
$qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid='".addslashes($row->student_uid)."' AND tbl_prestudent.studiengang_kz='$row->studiengang_kz'";
if($result_id = $db->db_query($qry_id))
{
if(pg_num_rows($result_id)==1)
if($db->db_num_rows($result_id)==1)
{
if($row_id = pg_fetch_object($result_id))
if($row_id = $db->db_fetch_object($result_id))
{
$qry_upd = "UPDATE public.tbl_student SET prestudent_id='$row_id->prestudent_id' WHERE student_uid='$row->student_uid'";
if(pg_query($conn, $qry_upd))
$qry_upd = "UPDATE public.tbl_student SET prestudent_id='$row_id->prestudent_id' WHERE student_uid='".addslashes($row->student_uid)."'";
if($db->db_query($qry_upd))
{
$text .= "Prestudent_id von $row->student_uid wurde auf $row_id->prestudent_id gesetzt\n";
$anzahl_neue_prestudent_id++;
@@ -56,12 +77,12 @@ if($result = pg_query($conn, $qry))
$anzahl_fehler_prestudent++;
}
}
elseif(pg_num_rows($result_id)>1)
elseif($db->db_num_rows($result_id)>1)
{
$text .= "Student $row->student_uid hat keine Prestudent_id und MEHRERE passende Prestudenteintraege\n";
$anzahl_fehler_prestudent++;
}
elseif(pg_num_rows($result_id)==0)
elseif($db->db_num_rows($result_id)==0)
{
$text .= "Student $row->student_uid hat keine Prestudent_id und KEINE passenden Prestudenteintraege\n";
$anzahl_fehler_prestudent++;
@@ -69,7 +90,7 @@ if($result = pg_query($conn, $qry))
}
else
{
$text.="Fehler bei Abfrage:".pg_last_error($conn)."\n";
$text.="Fehler bei Abfrage:".$db->db_last_error()."\n";
$anzahl_fehler_prestudent++;
}
}
@@ -112,18 +133,18 @@ $qry = "SELECT
)
";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
//Eintrag nur korrigieren wenn der Abbrecher/Unterbrecher Status der letzte in diesem Studiensemester ist
$prestd = new prestudent($conn);
$prestd = new prestudent();
$prestd->getLastStatus($row->prestudent_id, $row->studiensemester_kurzbz);
if($prestd->status_kurzbz=='Unterbrecher' || $prestd->status_kurzbz=='Abbrecher')
{
//Studentlehrverbandeintrag aktualisieren
$student = new student($conn);
$student = new student();
if($student->studentlehrverband_exists($row->student_uid, $row->studiensemester_kurzbz))
$student->new = false;
else
@@ -143,7 +164,7 @@ if($result = pg_query($conn, $qry))
$student->updatevon = 'chkstudentlvb';
//Pruefen ob der Lehrverband exisitert, wenn nicht dann wird er angelegt
$lehrverband = new lehrverband($conn);
$lehrverband = new lehrverband();
if(!$lehrverband->exists($student->studiengang_kz, $student->semester, $student->verband, $student->gruppe))
{
$lehrverband->studiengang_kz = $student->studiengang_kz;
@@ -173,7 +194,7 @@ if($result = pg_query($conn, $qry))
// * Unterschiedliche Gruppenzuteilungen in tbl_studentlehrverband - tbl_student korrigieren
// *****
$stsem = new studiensemester($conn);
$stsem = new studiensemester();
$stsem = $stsem->getNearest();
@@ -200,25 +221,25 @@ $qry = "SELECT
tbl_student.gruppe<>tbl_studentlehrverband.gruppe
)";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
$qry = "UPDATE public.tbl_student SET studiengang_kz='$row->studiengang_kz', semester='$row->semester', verband='$row->verband', gruppe='$row->gruppe' WHERE student_uid='$row->student_uid'";
if(pg_query($conn, $qry))
if($db->db_query($qry))
{
$text .= "Bei Student $row->student_uid wurde die Gruppenzuordnung von $row->studiengang_kz_old/$row->semester_old/$row->verband_old/$row->gruppe_old auf $row->studiengang_kz/$row->semester/$row->verband/$row->gruppe geaendert\n";
$anzahl_gruppenaenderung++;
}
else
{
$text.="Fehler beim Aendern der Gruppe: ".pg_last_error($conn)."\n";
$text.="Fehler beim Aendern der Gruppe: ".$db->db_last_error()."\n";
$anzahl_gruppenaenderung_fehler++;
}
}
}
else
$text.="Fehler bei Abfrage".pg_last_error($conn);
$text.="Fehler bei Abfrage".$db->db_last_error();
$statistik .= "Prestudent_id wurde bei $anzahl_neue_prestudent_id Studenten korrigiert\n";
$statistik .= "$anzahl_fehler_prestudent Fehler sind bei der Korrektur der Prestudent_id aufgetreten\n";
@@ -228,7 +249,8 @@ $statistik .= "Bei $anzahl_gruppenaenderung Studenten wurde die Gruppenzuordnung
$statistik .= "$anzahl_gruppenaenderung_fehler Fehler sind bei der Korrektur der Gruppenzuordnung aufgetreten\n";
$statistik .= "\n\n";
if(mail(MAIL_ADMIN, 'CHECK Studentlehrverband', $statistik.$text, "From: vilesci@technikum-wien.at"))
$mail = new mail(MAIL_ADMIN, 'vilesci@'.DOMAIN, 'CHECK Studentlehrverband', $statistik.$text);
if($mail->send())
echo 'Mail an '.MAIL_ADMIN.' wurde versandt';
else
echo 'Fehler beim Versenden des Mails an '.MAIL_ADMIN;
+23 -898
View File
@@ -25,905 +25,30 @@
* - Verzeichnisse (ob vorhanden und beschreibbar falls noetig).
*/
require ('../vilesci/config.inc.php');
require_once('../config/system.config.inc.php');
require_once('../include/basis_db.class.php');
// Datenbank Verbindung
//if (!$conn = pg_pconnect("host=.technikum-wien.at dbname= user= password="))
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!'.pg_last_error($conn));
$db = new basis_db();
echo '<H1>Systemcheck!</H1>';
echo '<H2>DB-Updates!</H2>';
// ******************* bis.tbl_nation.eu *********************
if($result = @pg_query($conn, "SELECT count(*) anzahl FROM bis.tbl_nation WHERE eu is null"))
{
$row = pg_fetch_object($result);
if($row->anzahl>0)
{
$qry = "UPDATE bis.tbl_nation SET eu=false WHERE eu IS NULL;
ALTER TABLE bis.tbl_nation ALTER COLUMN eu SET NOT NULL;
UPDATE bis.tbl_nation SET ewr=false WHERE ewr IS NULL;
ALTER TABLE bis.tbl_nation ALTER COLUMN ewr SET NOT NULL;";
if(!pg_query($conn, $qry))
echo '<strong>bis.tbl_nation: '.pg_last_error($conn).'</strong><br>';
else
echo ' bis.tbl_nation: spalte eu auf NOT NULL gesetzt!<br>';
}
else
{
echo '<strong>bis.tbl_nation: '.pg_last_error($conn).'</strong><br>';
}
}
// **************** lehre.tbl_projektarbeit.sprache *******************************
if(!$result = @pg_query($conn, "SELECT sprache FROM lehre.tbl_projektarbeit LIMIT 1;"))
{
$qry = "ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN sprache varchar(16);
ALTER TABLE lehre.tbl_projektarbeit ADD CONSTRAINT tbl_projektarbeit_sprache FOREIGN KEY (sprache) references public.tbl_sprache (sprache) on update cascade on delete restrict;
";
if(!pg_query($conn, $qry))
echo '<strong>lehre.tbl_projektarbeit: '.pg_last_error($conn).' </strong><br>';
else
echo ' lehre.tbl_projektarbeit: spalte sprache hinzugefuegt!<br>';
}
// **************** public.tbl_sprache.flagge *******************************
if(!$result = @pg_query($conn, "SELECT flagge FROM public.tbl_sprache LIMIT 1;"))
{
$qry = "ALTER TABLE public.tbl_sprache ADD COLUMN locale varchar(5);
ALTER TABLE public.tbl_sprache ADD COLUMN flagge text;
ALTER TABLE public.tbl_sprache ADD CONSTRAINT tbl_sprache_locale UNIQUE (locale);
UPDATE public.tbl_sprache SET flagge='47494638396110000b00d50000fafafaf8f8f8ec0000f30000fa3535fda2a2f67272f74b4bf6f6f6fa4444f43333f93c3dfd6b6bff7b7af4f5f5e60000fd8a8afb8a8af74444fe7676f53b3bf41c1cf22e2ef0f0f0f26565f26969fe5e5eeeeeeef85252f95455fdfdfdf98080e2e2e2f97d7df10f0ffb6161f72d2df56e6efc6666f90000fa5d5dfefefee00000fb8585fc4c4cfe8f8ff52323fbfbfbfe9091fd5454f6797adfdfdff95858fe5959fd5151f77676fd7071fb2f2ff62929dd0000fcfcfce9e9e9fd0000ff000021f90400000000002c0000000010000b00000686c09ff0e72bfa4ec8815220f8359e93098ec1308d5034cea1d9d0686a311b2b91581014a42da1006b4120ab4f48763394329f472f95f2f0782f0000010117173d0e207b7e8082840886888a8c818301080e171b883339051111717375771818322a27266566243a2e151522b316a957341d5a121214140a0a16163b4a034cc60fc82a2a3bcc41003b' WHERE sprache='German';
UPDATE public.tbl_sprache SET flagge='47494638396110000b00d50000fc5c5cfa5353f5f525f6f62bf42d2dfc6363e6e600fe7273fefe76f31616fdfd00fcfc4cec0000f30000fdfd6df2f213fefe5afbfb45f74b4bfa4444f43333f93c3df0f241f4f53bfd6b6bff7a7af74444ec6855f53b3be50000f83636f10d0df6f630f3f319f90000f4f41ff8f836e00000f9f93cf5c3b1fdfd53f17e57eedf4eede08df52121ecd3d4f9f1d6f5eae2b6bb9dece142f8f44bdfdf00f2f355f4ee57ec5351fc4c4cf2bdb0c0cea8e08c51e4a74aebc94bdd0000fd0000ff000021f90400000000002c0000000010000b00000685c09ff0e72bfa44c88692c1f8659e99c301832914008180a4990178b3b7c9a4e2a110b60a04045253c9221113093410c80c69082db55959e474022317780828271b2d383173752321840a0e0b2e3a362f2a818f0f9193393c3b30168e210f0f20332205636404042c2c09091f1f0425aa5f5a1a1a1c1c1466043d4a0d4cc51dc725253dcb41003b' WHERE sprache='Espanol';
UPDATE public.tbl_sprache SET flagge='47494638396110000b00c40000fe514e5065b100146d90b6d3f9918dcdd5eaf83435984b69fdfdfb182b8ebacfedbf99b5a1add6fcaeafea6055f9857c6183c18a99cffe63627b9bc4ffebea3c52ac851b377184c7dbe1f4ac617fe1bedf6473b5c2c4ddd9ddedfefeffffffff21f90400000000002c0000000010000b0000058160a44c50d96559170415744c4ce3610ce311841745dc830c1045a3f1897c2492cfa541f83012104644f3f81c01474aa17249743cd630001bfe780a190272cc36b8dd00cbb7fc718711f86d2450a024ed750b090102150c1f0f041b7506081508040e1102031e0f1c17171e63082b1c080e1b13070109a60516160502ac09030921003b' WHERE sprache='English';
";
if(!pg_query($conn, $qry))
echo '<strong>public.tbl_sprache: '.pg_last_error($conn).' </strong><br>';
else
echo ' public.tbl_sprache: spalte locale und flagge hinzugefuegt!<br>';
}
// **************** lehre.tbl_projektarbeit.titel *******************************
if($result = pg_query($conn, "SELECT atttypmod FROM pg_class JOIN pg_attribute ON(pg_class.oid=pg_attribute.attrelid) WHERE relname='tbl_projektarbeit' AND attname='titel'"))
{
if($row = pg_fetch_object($result))
{
if($row->atttypmod=='260')
{
$qry = "ALTER TABLE lehre.tbl_projektarbeit ALTER COLUMN titel TYPE varchar(1024);
ALTER TABLE lehre.tbl_projektarbeit ALTER COLUMN titel_english TYPE varchar(1024);";
if(!@pg_query($conn, $qry))
echo '<strong>lehre.tbl_projektarbeit: '.pg_last_error($conn).' </strong><br>';
else
echo ' lehre.tbl_projektarbeit: spalte titel und titel_english wurde auf 1024 Zeichen verbreitert!<br>';
}
}
}
// ************** campus.tbl_paabgabetyp **************************************************
if(!@pg_query($conn, 'SELECT * FROM campus.tbl_paabgabetyp LIMIT 1;'))
{
$sql =" ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN seitenanzahl integer;
ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN abgabedatum date;
ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN kontrollschlagwoerter varchar(150);
ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN schlagwoerter varchar(150);
ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN schlagwoerter_en varchar(150);
ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN abstract text;
ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN abstract_en text;
CREATE TABLE campus.tbl_paabgabe
(
paabgabe_id Serial NOT NULL,
projektarbeit_id integer NOT NULL,
paabgabetyp_kurzbz Varchar(16) NOT NULL,
fixtermin Boolean NOT NULL Default FALSE,
datum Date NOT NULL,
kurzbz Varchar(256),
abgabedatum Date,
insertvon Varchar(32),
insertamum Timestamp,
updatevon Varchar(32),
updateamum Timestamp,
constraint pk_paabgabe primary key (paabgabe_id)
);
Create table campus.tbl_paabgabetyp
(
paabgabetyp_kurzbz Varchar(16) NOT NULL,
bezeichnung Varchar(64),
constraint pk_paabgabetyp primary key (paabgabetyp_kurzbz)
);
Comment on column campus.tbl_paabgabe.fixtermin Is 'Gibt es eine harte oder weiche Deadline?';
Comment on column campus.tbl_paabgabe.datum Is 'Wann soll abgegeben werden?';
Comment on column campus.tbl_paabgabe.abgabedatum Is 'Wann wurde wirklich abgegeben?';
Alter table campus.tbl_paabgabe add Constraint projektarbeit_paabgabe foreign key (projektarbeit_id) references lehre.tbl_projektarbeit (projektarbeit_id) on update cascade on delete restrict;
Alter table campus.tbl_paabgabe add Constraint paabgabetyp_paabgabe foreign key (paabgabetyp_kurzbz) references campus.tbl_paabgabetyp (paabgabetyp_kurzbz) on update cascade on delete restrict;
Grant select on lehre.tbl_projektarbeit to group web;
Grant update on lehre.tbl_projektarbeit to group web;
Grant select on campus.tbl_paabgabe to group admin;
Grant update on campus.tbl_paabgabe to group admin;
Grant delete on campus.tbl_paabgabe to group admin;
Grant insert on campus.tbl_paabgabe to group admin;
Grant select on campus.tbl_paabgabe to group web;
Grant update on campus.tbl_paabgabe to group web;
Grant delete on campus.tbl_paabgabe to group web;
Grant insert on campus.tbl_paabgabe to group web;
Grant select on campus.tbl_paabgabetyp to group admin;
Grant update on campus.tbl_paabgabetyp to group admin;
Grant delete on campus.tbl_paabgabetyp to group admin;
Grant insert on campus.tbl_paabgabetyp to group admin;
Grant select on campus.tbl_paabgabetyp to group web;
GRANT SELECT ON campus.tbl_paabgabe_paabgabe_id_seq TO GROUP web;
GRANT UPDATE ON campus.tbl_paabgabe_paabgabe_id_seq TO GROUP web;
";
if(!@pg_query($conn, $sql))
echo '<strong>campus.tbl_paabgabe: '.pg_last_error($conn).' </strong><br>';
else
echo ' campus.tbl_paabgabe wurde hinzugefuegt!<br>';
}
// ************** bis.tbl_orgform.rolle **********************************************
if (!@pg_query($conn,'SELECT rolle FROM bis.tbl_orgform LIMIT 1;'))
{
$sql=" ALTER TABLE bis.tbl_orgform ADD COLUMN rolle boolean;
COMMENT ON COLUMN bis.tbl_orgform.rolle IS 'Kann diese Orgform fuer die Studentenrolle verwendet werden?';
UPDATE bis.tbl_orgform SET rolle=TRUE;
UPDATE bis.tbl_orgform SET rolle=FALSE WHERE orgform_kurzbz IN ('VBB', 'ZGS');
ALTER TABLE bis.tbl_orgform ALTER COLUMN rolle SET NOT NULL;
ALTER TABLE bis.tbl_orgform ALTER COLUMN rolle SET DEFAULT FALSE;
";
if (!@pg_query($conn,$sql))
echo '<strong>bis.tbl_orgform: '.pg_last_error($conn).' </strong><BR>';
else
echo ' bis wurde bei bis.tbl_orgform hinzugefuegt!<BR>';
}
// ************** campus.vw_lehreinheit.lv_semester **********************************************
if (!@pg_query($conn,'SELECT lv_semester FROM campus.vw_lehreinheit LIMIT 1;'))
{
$sql=" DROP VIEW campus.vw_lehreinheit;
CREATE OR REPLACE VIEW campus.vw_lehreinheit AS
SELECT
tbl_lehrveranstaltung.studiengang_kz AS lv_studiengang_kz,
tbl_lehrveranstaltung.semester AS lv_semester,
tbl_lehrveranstaltung.kurzbz AS lv_kurzbz,
tbl_lehrveranstaltung.bezeichnung AS lv_bezeichnung,
tbl_lehrveranstaltung.ects AS lv_ects,
tbl_lehrveranstaltung.lehreverzeichnis AS lv_lehreverzeichnis,
tbl_lehrveranstaltung.planfaktor AS lv_planfaktor,
tbl_lehrveranstaltung.planlektoren AS lv_planlektoren,
tbl_lehrveranstaltung.planpersonalkosten AS lv_planpersonalkosten,
tbl_lehrveranstaltung.plankostenprolektor AS lv_plankostenprolektor,
tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrveranstaltung_id,
tbl_lehreinheit.studiensemester_kurzbz, tbl_lehreinheit.lehrform_kurzbz,
tbl_lehreinheit.stundenblockung, tbl_lehreinheit.wochenrythmus,
tbl_lehreinheit.start_kw, tbl_lehreinheit.raumtyp, tbl_lehreinheit.raumtypalternativ,
tbl_lehreinheit.lehre, tbl_lehreinheit.unr, tbl_lehreinheit.lvnr,
tbl_lehreinheitmitarbeiter.lehrfunktion_kurzbz, tbl_lehreinheit.insertamum,
tbl_lehreinheit.insertvon, tbl_lehreinheit.updateamum, tbl_lehreinheit.updatevon,
tbl_lehreinheit.lehrfach_id, tbl_lehrfach.fachbereich_kurzbz,
tbl_lehrfach.kurzbz AS lehrfach, tbl_lehrfach.bezeichnung AS lehrfach_bez, tbl_lehrfach.farbe,
tbl_lehrveranstaltung.aktiv, tbl_lehrfach.sprache, tbl_lehreinheitmitarbeiter.mitarbeiter_uid,
tbl_lehreinheitmitarbeiter.semesterstunden, tbl_lehrveranstaltung.semesterstunden AS lv_semesterstunden,
tbl_lehreinheitmitarbeiter.planstunden, tbl_lehreinheitmitarbeiter.stundensatz, tbl_lehreinheitmitarbeiter.faktor,
tbl_lehreinheit.anmerkung, tbl_mitarbeiter.kurzbz AS lektor, tbl_lehreinheitgruppe.studiengang_kz,
tbl_lehreinheitgruppe.semester, tbl_lehreinheitgruppe.verband, tbl_lehreinheitgruppe.gruppe,
tbl_lehreinheitgruppe.gruppe_kurzbz, tbl_studiengang.kurzbz AS stg_kurzbz,
tbl_studiengang.kurzbzlang AS stg_kurzbzlang, tbl_studiengang.bezeichnung AS stg_bez,
tbl_studiengang.typ AS stg_typ, tbl_lehreinheitmitarbeiter.anmerkung AS anmerkunglektor,
tbl_lehrveranstaltung.lehrform_kurzbz AS lv_lehrform_kurzbz
FROM lehre.tbl_lehreinheit
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
JOIN lehre.tbl_lehrfach USING (lehrfach_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id)
JOIN tbl_mitarbeiter USING (mitarbeiter_uid)
JOIN lehre.tbl_lehreinheitgruppe USING (lehreinheit_id)
JOIN tbl_studiengang ON tbl_lehreinheitgruppe.studiengang_kz = tbl_studiengang.studiengang_kz;
GRANT SELECT ON campus.vw_lehreinheit TO 'admin';
GRANT SELECT ON campus.vw_lehreinheit TO 'web';
";
if (!@pg_query($conn,$sql))
echo '<strong>campus.vw_lehreinheit: '.pg_last_error($conn).' </strong><BR>';
else
echo ' lv_semester wurde bei campus.vw_lehreinheit hinzugefuegt!<BR>';
}
// ************** public.tbl_prestudent.dual **********************************************
if (!@pg_query($conn,'SELECT dual FROM public.tbl_prestudent LIMIT 1;'))
{
$sql=" ALTER TABLE public.tbl_prestudent ADD COLUMN dual boolean;
COMMENT ON COLUMN public.tbl_prestudent.dual IS 'Dual bedeutet 2. Bildungsweg.';
UPDATE public.tbl_prestudent SET dual=FALSE;
ALTER TABLE public.tbl_prestudent ALTER COLUMN dual SET NOT NULL;
ALTER TABLE public.tbl_prestudent ALTER COLUMN dual SET DEFAULT FALSE;
";
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_prestudent: '.pg_last_error($conn).' </strong><BR>';
else
echo ' dual wurde bei public.tbl_prestudent hinzugefuegt!<BR>';
}
// ************** campus.tbl_veranstaltung **********************************************
if (!@pg_query($conn,'SELECT veranstaltung_id FROM campus.tbl_reservierung LIMIT 1;'))
{
$sql=" ALTER TABLE campus.tbl_reservierung ADD COLUMN veranstaltung_id integer;
Create table campus.tbl_veranstaltung
(
veranstaltung_id Serial NOT NULL,
veranstaltungskategorie_kurzbz Varchar(16) NOT NULL,
titel Varchar(32),
beschreibung Varchar(256),
inhalt Text,
start Timestamp,
ende Timestamp,
insertamum Timestamp,
insertvon Varchar(16),
updateamum Timestamp,
updatevon Varchar(16),
freigabeamum Timestamp,
freigabevon Varchar(16),
constraint pk_tbl_veranstaltung primary key (veranstaltung_id)
);
Create table campus.tbl_veranstaltungskategorie
(
veranstaltungskategorie_kurzbz Varchar(16) NOT NULL,
bezeichnung Varchar(64),
farbe Char(6),
bild Text,
constraint pk_tbl_veranstaltungskategorie primary key (veranstaltungskategorie_kurzbz)
);
Alter table campus.tbl_veranstaltung add Constraint benutzer_veranstaltung foreign key (freigabevon) references public.tbl_benutzer (uid) on update cascade on delete restrict;
Alter table campus.tbl_reservierung add Constraint veranstaltung_reservierung foreign key (veranstaltung_id) references campus.tbl_veranstaltung (veranstaltung_id) on update cascade on delete restrict;
Alter table campus.tbl_veranstaltung add Constraint veranstaltungskategorie_veranstaltung foreign key (veranstaltungskategorie_kurzbz) references campus.tbl_veranstaltungskategorie (veranstaltungskategorie_kurzbz) on update cascade on delete restrict;
Grant select on campus.tbl_veranstaltung to group admin;
Grant update on campus.tbl_veranstaltung to group admin;
Grant delete on campus.tbl_veranstaltung to group admin;
Grant insert on campus.tbl_veranstaltung to group admin;
Grant select on campus.tbl_veranstaltungskategorie to group admin;
Grant update on campus.tbl_veranstaltungskategorie to group admin;
Grant delete on campus.tbl_veranstaltungskategorie to group admin;
Grant insert on campus.tbl_veranstaltungskategorie to group admin;
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE campus.tbl_veranstaltung TO web;
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE campus.tbl_veranstaltungskategorie TO web;
GRANT SELECT, UPDATE ON campus.tbl_veranstaltung_veranstaltung_id_seq to web;
";
if (!@pg_query($conn,$sql))
echo '<strong>campus.tbl_veranstaltung: '.pg_last_error($conn).' </strong><BR>';
else
echo ' Veranstaltungen wurden bei campus hinzugefuegt!<BR>';
}
// ************** kommune.tbl_wettbewerb.einzel -> teamgroesse **********************************************
if (@pg_query($conn,'SELECT einzel FROM kommune.tbl_wettbewerb LIMIT 1;'))
{
$sql=" ALTER TABLE kommune.tbl_wettbewerb DROP COLUMN einzel;
ALTER TABLE kommune.tbl_wettbewerb ADD COLUMN teamgroesse smallint DEFAULT 1;
UPDATE kommune.tbl_wettbewerb SET teamgroesse=1;
ALTER TABLE kommune.tbl_wettbewerb ALTER COLUMN teamgroesse SET NOT NULL;
";
if (!@pg_query($conn,$sql))
echo '<strong>kommune.tbl_wettbewerb: '.pg_last_error($conn).' </strong><BR>';
else
echo ' teamgroesse wurde bei kommune.tbl_wettbewerb hinzugefuegt!<BR>';
}
// ************* Kontaktmedium **********************************************************
if (!@pg_query($conn,'SELECT * FROM public.tbl_kontaktmedium LIMIT 1;'))
{
$sql=' ALTER TABLE tbl_preinteressent ADD COLUMN kontaktmedium_kurzbz varchar(32);
Create table public.tbl_kontaktmedium
(
kontaktmedium_kurzbz Varchar(32) NOT NULL,
beschreibung Varchar(256),
constraint pk_tbl_kontaktmedium primary key (kontaktmedium_kurzbz)
);
Grant select on public.tbl_kontaktmedium to group "admin";
Grant update on public.tbl_kontaktmedium to group "admin";
Grant delete on public.tbl_kontaktmedium to group "admin";
Grant insert on public.tbl_kontaktmedium to group "admin";
Grant select on public.tbl_kontaktmedium to group "web";
Alter table tbl_preinteressent add Constraint "kontaktmedium_preinteressent" foreign key ("kontaktmedium_kurzbz")
references public.tbl_kontaktmedium ("kontaktmedium_kurzbz") on update cascade on delete restrict;
';
if (!pg_query($conn,$sql))
echo '<strong>public.tbl_kontaktmedium: '.pg_last_error($conn).' </strong><BR>';
else
echo 'Tabelle public.tbl_kontaktmedium hinzugefuegt!<BR>Tabelle public.tbl_preinteressent.kontaktmedium_kurzbz hinzugefuegt!<BR>';
}
// ************** kommune.tbl_wettbewerbtyp.farbe **********************************************
if (!@pg_query($conn,'SELECT farbe FROM kommune.tbl_wettbewerbtyp LIMIT 1;'))
{
$sql=" ALTER TABLE kommune.tbl_wettbewerbtyp ADD COLUMN farbe char(6);
";
if (!@pg_query($conn,$sql))
echo '<strong>kommune.tbl_wettbewerbtyp: '.pg_last_error($conn).' </strong><BR>';
else
echo ' farbe wurde bei kommune.tbl_wettbewerbtyp hinzugefuegt!<BR>';
}
// ************** public.tbl_person.kurzbeschreibung **********************************************
if (!@pg_query($conn,'SELECT kurzbeschreibung FROM public.tbl_person LIMIT 1;'))
{
$sql=" ALTER TABLE public.tbl_person ADD COLUMN kurzbeschreibung text;
COMMENT ON COLUMN public.tbl_person.kurzbeschreibung IS 'Lebenslauf, OEH-Kandidatur, Kollegiumswahl, etc. ';
";
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_person: '.pg_last_error($conn).' </strong><BR>';
else
echo ' kurzbeschreibung wurde bei public.tbl_person hinzugefuegt!<BR>';
}
// ************** public.tbl_benutzerfunktion.semester **********************************************
if (!@pg_query($conn,'SELECT semester FROM public.tbl_benutzerfunktion LIMIT 1;'))
{
$sql=" ALTER TABLE public.tbl_benutzerfunktion ADD COLUMN semester smallint;
";
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_benutzerfunktion: '.pg_last_error($conn).' </strong><BR>';
else
echo ' semester wurde bei public.tbl_benutzerfunktion hinzugefuegt!<BR>';
}
// ************** lehre.tbl_moodle.gruppen **********************************************
if (!@pg_query($conn,'SELECT gruppen FROM lehre.tbl_moodle LIMIT 1;'))
{
$sql=" ALTER TABLE lehre.tbl_moodle ADD COLUMN gruppen boolean;
COMMENT ON COLUMN lehre.tbl_moodle.gruppen IS 'Soll beim Sync die Gruppenzuordnung uebernommen werden?';
UPDATE lehre.tbl_moodle SET gruppen=TRUE;
ALTER TABLE lehre.tbl_moodle ALTER COLUMN gruppen SET NOT NULL;
ALTER TABLE lehre.tbl_moodle ALTER COLUMN gruppen SET DEFAULT TRUE;
";
if (!@pg_query($conn,$sql))
echo '<strong>lehre.tbl_moodle: '.pg_last_error($conn).' </strong><BR>';
else
echo ' gruppen wurde bei lehre.tbl_moodle hinzugefuegt!<BR>';
}
// ************* Wettbewerbstyp **********************************************************
if (!@pg_query($conn,'SELECT * FROM kommune.tbl_wettbewerbtyp LIMIT 1;'))
{
$sql=' Create table kommune.tbl_wettbewerbtyp
(
wbtyp_kurzbz Varchar(16) NOT NULL,
bezeichnung Varchar(256),
constraint pk_tbl_wettbewerbtyp primary key (wbtyp_kurzbz)
);
Grant select on kommune.tbl_wettbewerbtyp to group "admin";
Grant update on kommune.tbl_wettbewerbtyp to group "admin";
Grant delete on kommune.tbl_wettbewerbtyp to group "admin";
Grant insert on kommune.tbl_wettbewerbtyp to group "admin";
Grant select on kommune.tbl_wettbewerbtyp to group "web";
Grant update on kommune.tbl_wettbewerbtyp to group "web";
Grant insert on kommune.tbl_wettbewerbtyp to group "web";
';
if (!pg_query($conn,$sql))
echo '<strong>kommune.tbl_wettbewerbtyp: '.pg_last_error($conn).' </strong><BR>';
else
echo 'Tabelle kommune.tbl_wettbewerbtyp hinzugefuegt!<BR>';
}
// ************** kommune.tbl_wettbewerb.wbtyp_kurzbz, uid ************************
if (!@pg_query($conn,'SELECT wbtyp_kurzbz, uid FROM kommune.tbl_wettbewerb LIMIT 1;'))
{
$sql=" ALTER TABLE kommune.tbl_wettbewerb ADD COLUMN wbtyp_kurzbz Varchar(16);
ALTER TABLE kommune.tbl_wettbewerb ADD COLUMN uid Varchar(16);
ALTER TABLE kommune.tbl_wettbewerb ADD COLUMN icon Text;
COMMENT ON COLUMN kommune.tbl_wettbewerb.uid IS 'Moderator';
ALTER TABLE kommune.tbl_wettbewerb add Constraint wettbewerbtyp_wettbewerb foreign key (wbtyp_kurzbz) references kommune.tbl_wettbewerbtyp (wbtyp_kurzbz) on update cascade on delete restrict;
";
if (!@pg_query($conn,$sql))
echo '<strong>kommune.tbl_wettbewerb: '.pg_last_error($conn).' </strong><BR>';
else
echo ' wbtyp_kurzbz wurde bei kommune.tbl_wettbewerb hinzugefuegt!<BR>
icon wurde bei kommune.tbl_wettbewerb hinzugefuegt!<BR>
uid wurde bei kommune.tbl_wettbewerb hinzugefuegt!<BR>';
}
// ************** Constraint:tbl_person_geschlecht ************************
$result=pg_query($conn,"SELECT consrc FROM pg_catalog.pg_constraint WHERE conname='tbl_person_geschlecht';");
if ($row=pg_fetch_object($result))
{
if ($row->consrc=="((geschlecht = 'm'::bpchar) OR (geschlecht = 'w'::bpchar))")
{
$sql=" ALTER TABLE public.tbl_person DROP CONSTRAINT tbl_person_geschlecht;
ALTER TABLE public.tbl_person ADD CONSTRAINT tbl_person_geschlecht CHECK ((geschlecht = 'm'::bpchar) OR (geschlecht = 'w'::bpchar) OR (geschlecht = 'u'::bpchar));
";
if (!@pg_query($conn,$sql))
echo '<strong>CONSTRAINT tbl_person_geschlecht: '.pg_last_error($conn).' </strong><BR>';
else
echo ' CONSTRAINT tbl_person_geschlecht wurde geaendert!<BR>';
}
}
else
{
$sql=" ALTER TABLE public.tbl_person ADD CONSTRAINT tbl_person_geschlecht CHECK ((geschlecht = 'm'::bpchar) OR (geschlecht = 'w'::bpchar) OR (geschlecht = 'u'::bpchar));
";
if (!@pg_query($conn,$sql))
echo '<strong>CONSTRAINT tbl_person_geschlecht: '.pg_last_error($conn).' </strong><BR>';
else
echo ' CONSTRAINT tbl_person_geschlecht wurde hinzugefuegt!<BR>';
}
// ************* Moodle **********************************************************
if (!@pg_query($conn,'SELECT * FROM lehre.tbl_moodle LIMIT 1;'))
{
$sql=' CREATE TABLE lehre.tbl_moodle
(
"moodle_id" Serial NOT NULL,
"mdl_course_id" bigint NOT NULL,
"lehreinheit_id" integer,
"lehrveranstaltung_id" integer ,
"studiensemester_kurzbz" Varchar(16) ,
"insertamum" Timestamp Default now(),
"insertvon" Varchar(16),
constraint "pk_tbl_moodle" primary key ("moodle_id")
);
Alter table lehre.tbl_moodle add Constraint "lehreinheit_moodle" foreign key ("lehreinheit_id") references "lehre"."tbl_lehreinheit" ("lehreinheit_id") on update cascade on delete restrict;
Alter table lehre.tbl_moodle add Constraint "studiensemester_moodle" foreign key ("studiensemester_kurzbz") references "public"."tbl_studiensemester" ("studiensemester_kurzbz") on update cascade on delete restrict;
Alter table lehre.tbl_moodle add Constraint "lehrveranstaltung_moodle" foreign key ("lehrveranstaltung_id") references "lehre"."tbl_lehrveranstaltung" ("lehrveranstaltung_id") on update cascade on delete restrict;
Grant select on lehre.tbl_moodle to group "admin";
Grant update on lehre.tbl_moodle to group "admin";
Grant delete on lehre.tbl_moodle to group "admin";
Grant insert on lehre.tbl_moodle to group "admin";
Grant select on lehre.tbl_moodle to group "web";
Grant update on lehre.tbl_moodle to group "web";
Grant insert on lehre.tbl_moodle to group "web";
';
if (!pg_query($conn,$sql))
echo '<strong>lehre.tbl_moodle: '.pg_last_error($conn).' </strong><BR>';
else
echo 'Tabelle lehre.tbl_moodle hinzugefuegt!<BR>';
}
// ************* Newssprache **********************************************************
if (!@pg_query($conn,'SELECT * FROM campus.tbl_newssprache LIMIT 1;'))
{
if (@pg_query($conn,'SELECT * FROM public.tbl_newssprache LIMIT 1;'))
if (!@pg_query($conn,'DROP TABLE public.tbl_newssprache;'))
echo '<strong>public.tbl_newssprache: '.pg_last_error($conn).' </strong><BR>';
else
echo 'public.tbl_newssprache wurde geloescht!<BR>';
$sql=' CREATE TABLE campus.tbl_newssprache
(
sprache Varchar(16) NOT NULL,
news_id integer NOT NULL,
betreff Varchar(128),
text Text,
updateamum Timestamp,
updatevon Varchar(16),
insertamum Timestamp,
insertvon Varchar(16),
constraint "pk_tbl_newssprache" primary key ("sprache","news_id")
);
ALTER TABLE campus.tbl_newssprache add Constraint "sprache_newssprache" foreign key ("sprache") references public.tbl_sprache ("sprache") on update cascade on delete restrict;
ALTER TABLE campus.tbl_newssprache add Constraint "news_newssprache" foreign key ("news_id") references campus.tbl_news ("news_id") on update cascade on delete restrict;
GRANT select on campus.tbl_newssprache to group "admin";
GRANT update on campus.tbl_newssprache to group "admin";
GRANT delete on campus.tbl_newssprache to group "admin";
GRANT insert on campus.tbl_newssprache to group "admin";
GRANT select on campus.tbl_newssprache to group "web";
GRANT update on campus.tbl_newssprache to group "web";
GRANT delete on campus.tbl_newssprache to group "web";
GRANT insert on campus.tbl_newssprache to group "web";
';
if (!@pg_query($conn,$sql))
echo '<strong>campus.tbl_newssprache: '.pg_last_error($conn).' </strong><BR>';
else
echo 'Tabelle campus.tbl_newssprache hinzugefuegt!<BR>';
}
// ************** public.tbl_gruppe.orgform_kurzbz ************************
if (!@pg_query($conn,'SELECT orgform_kurzbz FROM public.tbl_gruppe LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_gruppe ADD COLUMN orgform_kurzbz varchar(3);
ALTER TABLE public.tbl_lehrverband ADD COLUMN orgform_kurzbz varchar(3);
ALTER TABLE lehre.tbl_lehrveranstaltung ADD COLUMN orgform_kurzbz varchar(3);
ALTER TABLE lehre.tbl_lehrveranstaltung ADD Constraint "orgform_lehrveranstaltung" foreign key ("orgform_kurzbz") references bis.tbl_orgform ("orgform_kurzbz") on update cascade on delete restrict;
ALTER TABLE public.tbl_gruppe ADD Constraint "orgform_gruppe" foreign key ("orgform_kurzbz") references bis.tbl_orgform ("orgform_kurzbz") on update cascade on delete restrict;
ALTER TABLE public.tbl_lehrverband ADD Constraint "orgform_lehrverband" foreign key ("orgform_kurzbz") references bis.tbl_orgform ("orgform_kurzbz") on update cascade on delete restrict;
';
if (!@pg_query($conn,$sql))
echo '<strong>orgform_kurzbz: '.pg_last_error($conn).' </strong><BR>';
else
echo ' orgform_kurzbz wurde bei public.tbl_gruppe hinzugefuegt!<BR>
orgform_kurzbz wurde bei public.tbl_lehrverband hinzugefuegt!<BR>
orgform_kurzbz wurde bei lehre.tbl_lehrveranstaltung hinzugefuegt!<BR>';
}
// ************** public.tbl_firma.schule ************************
if (!@pg_query($conn,'SELECT schule FROM public.tbl_firma LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_firma ADD COLUMN schule boolean;
UPDATE public.tbl_firma SET schule=FALSE;
ALTER TABLE public.tbl_firma ALTER COLUMN schule SET NOT NULL;
ALTER TABLE public.tbl_firma ALTER COLUMN schule SET DEFAULT FALSE;
';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_firma: '.pg_last_error($conn).' </strong><BR>';
else
echo 'schule wurde bei public.tbl_firma hinzugefuegt!<BR>';
}
// ************** public.tbl_studiengang.moodle ************************
if (!@pg_query($conn,'SELECT moodle FROM public.tbl_studiengang LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_studiengang ADD COLUMN moodle boolean;
UPDATE public.tbl_studiengang SET moodle=TRUE;
ALTER TABLE public.tbl_studiengang ALTER COLUMN moodle SET NOT NULL;
ALTER TABLE public.tbl_studiengang ALTER COLUMN moodle SET DEFAULT TRUE;
';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_studiengang: '.pg_last_error($conn).' </strong><BR>';
else
echo 'moodle wurde bei public.tbl_studiengang hinzugefuegt!<BR>';
}
// ************** campus.tbl_news.datum_bis ************************
if (!@pg_query($conn,'SELECT datum_bis FROM campus.tbl_news LIMIT 1;'))
{
$sql=' ALTER TABLE campus.tbl_news ADD COLUMN datum_bis date;';
if (!@pg_query($conn,$sql))
echo '<strong>campus.tbl_news: '.pg_last_error($conn).' </strong><BR>';
else
echo 'datum_bis wurde bei campus.tbl_news hinzugefuegt!<BR>';
}
// ************** public.tbl_ort.standort_kurzbz,telefonklappe ************************
if (!@pg_query($conn,'SELECT standort_kurzbz,telefonklappe FROM public.tbl_ort LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_ort ADD COLUMN standort_kurzbz varchar(16);
ALTER TABLE public.tbl_ort ADD COLUMN telefonklappe varchar(8);
ALTER TABLE public.tbl_ort ADD Constraint "standort_ort" foreign key ("standort_kurzbz") references public.tbl_standort ("standort_kurzbz") on update cascade on delete restrict;';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_ort: '.pg_last_error($conn).' </strong><BR>';
else
echo 'standort_kurzbz wurde bei public.tbl_ort hinzugefuegt!<BR>telefonklappe wurde bei public.tbl_ort hinzugefuegt!<BR>';
}
// ************** campus.tbl_zeitsperre.freigabeamum ************************
if (!@pg_query($conn,'SELECT freigabeamum FROM campus.tbl_zeitsperre LIMIT 1;'))
{
$sql=' ALTER TABLE campus.tbl_zeitsperre ADD COLUMN freigabeamum Timestamp;
ALTER TABLE campus.tbl_zeitsperre ADD COLUMN freigabevon varchar(16);';
if (!@pg_query($conn,$sql))
echo '<strong>campus.tbl_zeitsperre: '.pg_last_error($conn).' </strong><BR>';
else
echo 'freigabevon,freigabeamum wurde bei campus.tbl_zeitsperre hinzugefuegt!<BR>';
}
// ************** public.tbl_person.kompetenzen ************************
if (!@pg_query($conn,'SELECT kompetenzen FROM public.tbl_person LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_person ADD COLUMN kompetenzen text;';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_person: '.pg_last_error($conn).' </strong><BR>';
else
echo 'kompetenzen wurde bei public.tbl_person hinzugefuegt!<BR>';
}
// ************** public.tbl_buchungstyp.standardbetrag ************************
if (!@pg_query($conn,'SELECT standardbetrag FROM public.tbl_buchungstyp LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_buchungstyp ADD COLUMN standardbetrag numeric(8,2);';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_buchungstyp: '.pg_last_error($conn).' </strong><BR>';
else
echo 'standardbetrag wurde bei public.tbl_buchungstyp hinzugefuegt!<BR>';
}
// ************** public.tbl_buchungstyp.standardtext ************************
if (!@pg_query($conn,'SELECT standardtext FROM public.tbl_buchungstyp LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_buchungstyp ADD COLUMN standardtext varchar(256);';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_buchungstyp: '.pg_last_error($conn).' </strong><BR>';
else
echo 'standardtext wurde bei public.tbl_buchungstyp hinzugefuegt!<BR>';
}
// ************** lehre.tbl_lehrveranstaltung.projektarbeit ************************
if (!@pg_query($conn,'SELECT projektarbeit FROM lehre.tbl_lehrveranstaltung LIMIT 1;'))
{
$sql=' ALTER TABLE lehre.tbl_lehrveranstaltung ADD COLUMN projektarbeit boolean;
UPDATE lehre.tbl_lehrveranstaltung SET projektarbeit=FALSE;
ALTER TABLE lehre.tbl_lehrveranstaltung ALTER COLUMN projektarbeit SET DEFAULT TRUE;
ALTER TABLE lehre.tbl_lehrveranstaltung ALTER COLUMN projektarbeit SET NOT NULL;';
if (!@pg_query($conn,$sql))
echo '<strong>lehre.tbl_lehrveranstaltung: '.pg_last_error($conn).' </strong><BR>';
else
echo 'projektarbeit wurde bei lehre.tbl_lehrveranstaltung hinzugefuegt!<BR>';
}
// ************** campus.vw_lehreinheit.lv_lehrform_kurzbz ************************
if (!@pg_query($conn,'SELECT lv_lehrform_kurzbz FROM campus.vw_lehreinheit LIMIT 1;'))
{
$sql=' DROP VIEW campus.vw_lehreinheit;
CREATE OR REPLACE VIEW campus.vw_lehreinheit AS
SELECT tbl_lehrveranstaltung.studiengang_kz AS lv_studiengang_kz, tbl_lehrveranstaltung.kurzbz AS lv_kurzbz, tbl_lehrveranstaltung.bezeichnung AS lv_bezeichnung,
tbl_lehrveranstaltung.ects AS lv_ects, tbl_lehrveranstaltung.lehreverzeichnis AS lv_lehreverzeichnis, tbl_lehrveranstaltung.planfaktor AS lv_planfaktor,
tbl_lehrveranstaltung.planlektoren AS lv_planlektoren, tbl_lehrveranstaltung.planpersonalkosten AS lv_planpersonalkosten,
tbl_lehrveranstaltung.plankostenprolektor AS lv_plankostenprolektor, lehreinheit_id, lehrveranstaltung_id, studiensemester_kurzbz, tbl_lehreinheit.lehrform_kurzbz,
stundenblockung, wochenrythmus, start_kw, raumtyp, raumtypalternativ, tbl_lehreinheit.lehre, unr, lvnr, lehrfunktion_kurzbz, tbl_lehreinheit.insertamum,
tbl_lehreinheit.insertvon, tbl_lehreinheit.updateamum, tbl_lehreinheit.updatevon, lehrfach_id, fachbereich_kurzbz, tbl_lehrfach.kurzbz AS lehrfach,
tbl_lehrfach.bezeichnung AS lehrfach_bez, tbl_lehrfach.farbe, tbl_lehrveranstaltung.aktiv, tbl_lehrfach.sprache, mitarbeiter_uid,
tbl_lehreinheitmitarbeiter.semesterstunden AS semesterstunden, tbl_lehrveranstaltung.semesterstunden AS lv_semesterstunden, planstunden, tbl_lehreinheitmitarbeiter.stundensatz,
faktor, tbl_lehreinheit.anmerkung, tbl_mitarbeiter.kurzbz AS lektor, tbl_lehreinheitgruppe.studiengang_kz, tbl_lehreinheitgruppe.semester, verband, gruppe,
gruppe_kurzbz, tbl_studiengang.kurzbz AS stg_kurzbz, tbl_studiengang.kurzbzlang AS stg_kurzbzlang, tbl_studiengang.bezeichnung AS stg_bez,
tbl_studiengang.typ AS stg_typ, tbl_lehreinheitmitarbeiter.anmerkung AS anmerkunglektor, tbl_lehrveranstaltung.lehrform_kurzbz AS lv_lehrform_kurzbz
FROM ((((((lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)) JOIN lehre.tbl_lehrfach USING (lehrfach_id))
JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id)) JOIN tbl_mitarbeiter USING (mitarbeiter_uid)) JOIN lehre.tbl_lehreinheitgruppe USING (lehreinheit_id))
JOIN tbl_studiengang ON ((tbl_lehreinheitgruppe.studiengang_kz = tbl_studiengang.studiengang_kz)));
GRANT SELECT ON TABLE campus.vw_lehreinheit TO GROUP web;
GRANT SELECT ON TABLE campus.vw_lehreinheit TO GROUP admin;';
if (!@pg_query($conn,$sql))
echo '<strong>campus.vw_lehreinheit: '.pg_last_error($conn).' </strong><BR>';
else
echo 'lv_lehrform_kurzbz wurde bei campus.vw_lehreinheit hinzugefuegt!<BR>';
}
// ************** lehre.tbl_abschlusspruefung.note ************************
if (!@pg_query($conn,'SELECT note FROM lehre.tbl_abschlusspruefung LIMIT 1;'))
{
$sql=" ALTER TABLE lehre.tbl_abschlusspruefung ADD COLUMN note smallint;
Comment on column lehre.tbl_abschlusspruefung.note Is 'Note der komm. Pruefung';
Alter table lehre.tbl_abschlusspruefung add Constraint note_abschlusspruefung foreign key (note)
references lehre.tbl_note (note) on update cascade on delete restrict;";
if (!@pg_query($conn,$sql))
echo '<strong>lehre.tbl_abschlusspruefung: '.pg_last_error($conn).' </strong><BR>';
else
echo 'note wurde bei lehre.tbl_abschlusspruefung hinzugefuegt!<BR>';
}
// ************** bis.tbl_bisio.ort,uni,lehreinheit_id ************************
if (!@pg_query($conn,'SELECT ort,universitaet,lehreinheit_id FROM bis.tbl_bisio LIMIT 1;'))
{
$sql=' ALTER TABLE bis.tbl_bisio ADD COLUMN ort varchar(128);
ALTER TABLE bis.tbl_bisio ADD COLUMN universitaet varchar(256);
ALTER TABLE bis.tbl_bisio ADD COLUMN lehreinheit_id integer;
ALTER TABLE bis.tbl_bisio ADD CONSTRAINT lehreinheit_bisio FOREIGN KEY (lehreinheit_id)
REFERENCES lehre.tbl_lehreinheit (lehreinheit_id) on update cascade on delete restrict;';
if (!@pg_query($conn,$sql))
echo '<strong>bis.tbl_bisio: '.pg_last_error($conn).' </strong><BR>';
else
echo 'ort,uni,lehreinheit_id wurde bei bis.tbl_bisio hinzugefuegt!<BR>';
}
// ************** lehre.tbl_lehrveranstaltung.bezeichnung_english ************************
if (!@pg_query($conn,'SELECT bezeichnung_english FROM lehre.tbl_lehrveranstaltung LIMIT 1;'))
{
$sql=" ALTER TABLE lehre.tbl_lehrveranstaltung ADD COLUMN bezeichnung_english varchar(256);
UPDATE lehre.tbl_lehrveranstaltung SET bezeichnung_english=titel FROM campus.tbl_lvinfo
WHERE tbl_lvinfo.sprache='English' AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id;";
if (!@pg_query($conn,$sql))
echo '<strong>lehre.tbl_lehrveranstaltung: '.pg_last_error($conn).' </strong><BR>';
else
echo 'bezeichnung_english wurde bei lehre.tbl_lehrveranstaltung hinzugefuegt!<BR>';
}
// ************** lehre.tbl_projektarbeit.titel_english ************************
if (!@pg_query($conn,'SELECT titel_english FROM lehre.tbl_projektarbeit LIMIT 1;'))
{
$sql=" ALTER TABLE lehre.tbl_projektarbeit ADD COLUMN titel_english varchar(256);
Comment on column lehre.tbl_projektarbeit.titel_english Is 'Englischer Titel';";
if (!@pg_query($conn,$sql))
echo '<strong>lehre.tbl_projektarbeit: '.pg_last_error($conn).' </strong><BR>';
else
echo 'titel_english wurde bei lehre.tbl_projektarbeit hinzugefuegt!<BR>';
}
// ************** public.tbl_studiengang.zusatzinfo_html ************************
if (!@pg_query($conn,'SELECT zusatzinfo_html FROM public.tbl_studiengang LIMIT 1;'))
{
$sql=" ALTER TABLE public.tbl_studiengang ADD COLUMN zusatzinfo_html text;
Comment on column public.tbl_studiengang.zusatzinfo_html Is 'Zusatzinfo fuers CIS in HTML';";
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_studiengang: '.pg_last_error($conn).' </strong><BR>';
else
echo 'zusatzinfo_html wurde bei public.tbl_studiengang hinzugefuegt!<BR>';
}
// ************** public.tbl_ort.stockwerk ************************
if (!@pg_query($conn,'SELECT stockwerk FROM public.tbl_ort LIMIT 1;'))
{
$sql=" ALTER TABLE public.tbl_ort ADD COLUMN stockwerk smallint;";
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_ort: '.pg_last_error($conn).' </strong><BR>';
else
echo 'stockwerk wurde bei public.tbl_ort hinzugefuegt!<BR>';
}
// ************** campus.tbl_resturlaub.urlaubstageprojahr ************************
if (!@pg_query($conn,'SELECT urlaubstageprojahr FROM campus.tbl_resturlaub LIMIT 1;'))
{
$sql=' ALTER TABLE campus.tbl_resturlaub ADD COLUMN urlaubstageprojahr smallint;
ALTER TABLE campus.tbl_resturlaub ALTER COLUMN urlaubstageprojahr SET DEFAULT 25;
UPDATE campus.tbl_resturlaub SET urlaubstageprojahr=25;
ALTER TABLE campus.tbl_resturlaub ALTER COLUMN urlaubstageprojahr SET NOT NULL;
ALTER TABLE campus.tbl_resturlaub ADD CONSTRAINT tbl_resturlaub_urlaubstageprojahr CHECK (urlaubstageprojahr>=0)';
if (!@pg_query($conn,$sql))
echo '<strong>campus.tbl_resturlaub: '.pg_last_error($conn).' </strong><BR>';
else
echo 'urlaubstageprojahr wurde bei campus.tbl_resturlaub hinzugefuegt!<BR>';
}
// ************** public.tbl_benutzer.updateaktivam,updateaktivvon ************************
if (!@pg_query($conn,'SELECT updateaktivam,updateaktivvon FROM public.tbl_benutzer LIMIT 1;'))
{
$sql=' ALTER TABLE public.tbl_benutzer ADD COLUMN updateaktivam Date;
ALTER TABLE public.tbl_benutzer ADD COLUMN updateaktivvon Varchar(16);';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_benutzer: '.pg_last_error($conn).' </strong><BR>';
else
echo 'updateaktivam und updateaktivvon wurden bei public.tbl_benutzer hinzugefuegt!<BR>';
}
// ************** lehre.tbl_lehrveranstaltung.lehrform_kurzbz ************************
if (!@pg_query($conn,'SELECT lehrform_kurzbz FROM lehre.tbl_lehrveranstaltung LIMIT 1;'))
{
$sql=' ALTER TABLE lehre.tbl_lehrveranstaltung ADD COLUMN lehrform_kurzbz varchar(8);
Alter table lehre.tbl_lehrveranstaltung add Constraint "lehrform_lehrveranstaltung" foreign key ("lehrform_kurzbz") references lehre.tbl_lehrform ("lehrform_kurzbz") on update cascade on delete restrict;';
if (!@pg_query($conn,$sql))
echo '<strong>lehre.tbl_lehrveranstaltung: '.pg_last_error($conn).' </strong><BR>';
else
echo 'lehrform_kurzbz wurde bei lehre.tbl_lehrveranstaltung hinzugefuegt!<BR>';
}
// ************** bis.tbl_bundesland ************************
if (!@pg_query($conn,'SELECT * FROM bis.tbl_bundesland LIMIT 1;'))
{
$sql=' CREATE TABLE bis.tbl_bundesland
(
bundesland_code Smallint NOT NULL,
kurzbz Varchar(8) UNIQUE,
bezeichnung Varchar(64),
constraint "pk_tbl_bundesland" primary key ("bundesland_code")
);
ALTER TABLE public.tbl_person ADD COLUMN bundesland_code smallint;
ALTER TABLE public.tbl_person add Constraint "bundesland_person" foreign key ("bundesland_code") references "bis"."tbl_bundesland" ("bundesland_code") on update cascade on delete restrict;
GRANT select on bis.tbl_bundesland to group "admin";
GRANT update on bis.tbl_bundesland to group "admin";
GRANT delete on bis.tbl_bundesland to group "admin";
GRANT insert on bis.tbl_bundesland to group "admin";
GRANT select on bis.tbl_bundesland to group "web";';
if (!@pg_query($conn,$sql))
echo '<strong>bis.tbl_bundesland: '.pg_last_error($conn).' </strong><BR>';
else
echo 'Tabelle bis.tbl_bundesland wurde hinzugefuegt!<BR>';
}
// ************** public.tbl_preinteressent ************************
if (!@pg_query($conn,'SELECT * FROM public.tbl_preinteressent LIMIT 1;'))
{
$sql=' Create table tbl_preinteressent
(
preinteressent_id Serial NOT NULL,
person_id integer NOT NULL,
studiensemester_kurzbz Varchar(16) NOT NULL,
aufmerksamdurch_kurzbz Varchar(16) NOT NULL,
firma_id integer NOT NULL,
erfassungsdatum Date,
einverstaendnis Boolean,
absagedatum Timestamp,
anmerkung Text,
insertamum Timestamp,
insertvon Varchar(16),
updateamum Timestamp,
updatevon Varchar(16),
maturajahr Numeric(4,0),
infozusendung Date,
constraint pk_tbl_preinteressent primary key (preinteressent_id)
);
Create table tbl_preinteressentstudiengang
(
studiengang_kz integer NOT NULL,
preinteressent_id integer NOT NULL,
prioritaet Smallint,
freigabedatum Timestamp,
uebernahmedatum Timestamp,
insertamum Timestamp,
insertvon Varchar(16),
updateamum Timestamp,
updatevon Varchar(16),
constraint pk_tbl_preinteressentstudiengang primary key (studiengang_kz,preinteressent_id)
);
Comment on column "tbl_preinteressent"."firma_id" Is \'Schule\';
Comment on column "tbl_preinteressent"."einverstaendnis" Is \'Einverstaendniserklaerung\';
Comment on column "tbl_preinteressentstudiengang"."prioritaet" Is \'1 .. normal, 2. .. mittel, 3 ...\';
Alter table "tbl_preinteressentstudiengang" add Constraint "studiengang_preinteressentstudiengang" foreign key ("studiengang_kz") references "public"."tbl_studiengang" ("studiengang_kz") on update cascade on delete restrict;
Alter table "tbl_preinteressent" add Constraint "studiensemester_preinteressent" foreign key ("studiensemester_kurzbz") references "public"."tbl_studiensemester" ("studiensemester_kurzbz") on update cascade on delete restrict;
Alter table "tbl_preinteressent" add Constraint "person_preinteressent" foreign key ("person_id") references "public"."tbl_person" ("person_id") on update cascade on delete restrict;
Alter table "tbl_preinteressent" add Constraint "firma_preinteressent" foreign key ("firma_id") references "public"."tbl_firma" ("firma_id") on update cascade on delete restrict;
Alter table "tbl_preinteressent" add Constraint "aufmerksamdurch_preinteressent" foreign key ("aufmerksamdurch_kurzbz") references "public"."tbl_aufmerksamdurch" ("aufmerksamdurch_kurzbz") on update cascade on delete restrict;
Alter table "tbl_preinteressentstudiengang" add Constraint "preinteressent_preinteressentstudiengang" foreign key ("preinteressent_id") references "tbl_preinteressent" ("preinteressent_id") on update cascade on delete restrict;
Grant select on "tbl_preinteressent" to group "admin";
Grant update on "tbl_preinteressent" to group "admin";
Grant delete on "tbl_preinteressent" to group "admin";
Grant insert on "tbl_preinteressent" to group "admin";
Grant select on "tbl_preinteressentstudiengang" to group "admin";
Grant update on "tbl_preinteressentstudiengang" to group "admin";
Grant delete on "tbl_preinteressentstudiengang" to group "admin";
Grant insert on "tbl_preinteressentstudiengang" to group "admin";
Grant all on public.tbl_preinteressent_preinteressent_id_seq to group "admin";';
if (!@pg_query($conn,$sql))
echo '<strong>public.tbl_preinteressent: '.pg_last_error($conn).' </strong><BR>';
else
echo 'Tabelle public.tbl_preinteressent wurde hinzugefuegt!<BR>';
}
// ************** lehre.vw_stundenplandev_student_unr ************************
if (!@pg_query($conn,'SELECT * FROM lehre.vw_stundenplandev_student_unr WHERE unr=0 LIMIT 1;'))
{
$sql=" CREATE OR REPLACE VIEW lehre.vw_stundenplandev_student_unr AS
SELECT unr, datum, stunde, student_uid
FROM
(
SELECT stpl.unr, stpl.datum, stpl.stunde, uid AS student_uid
FROM lehre.tbl_stundenplandev stpl JOIN tbl_benutzergruppe USING (gruppe_kurzbz)
WHERE studiensemester_kurzbz=(SELECT studiensemester_kurzbz FROM tbl_studiensemester WHERE stpl.datum<=ende AND stpl.datum>=start)
GROUP BY stpl.unr, stpl.datum, stpl.stunde, uid
UNION
SELECT stpl.unr, stpl.datum, stpl.stunde, student_uid
FROM lehre.tbl_stundenplandev stpl JOIN tbl_studentlehrverband
ON (stpl.gruppe_kurzbz IS NULL AND stpl.studiengang_kz=tbl_studentlehrverband.studiengang_kz AND stpl.semester=tbl_studentlehrverband.semester
AND (stpl.verband=tbl_studentlehrverband.verband OR (stpl.verband=' ' AND stpl.verband!=tbl_studentlehrverband.verband))
AND (stpl.gruppe=tbl_studentlehrverband.gruppe OR (stpl.gruppe=' ' AND stpl.gruppe!=tbl_studentlehrverband.gruppe))
)
WHERE studiensemester_kurzbz=(SELECT studiensemester_kurzbz FROM tbl_studiensemester WHERE stpl.datum<=ende AND stpl.datum>=start)
GROUP BY stpl.unr,stpl.datum,stpl.stunde,student_uid
) AS sub_stpl_uid
GROUP BY unr, datum, stunde, student_uid;
GRANT select on lehre.vw_stundenplandev_student_unr to group admin;
GRANT select on lehre.vw_stundenplandev_student_unr to group web;";
if (!@pg_query($conn,$sql))
echo '<strong>lehre.vw_stundenplandev_student_unr: '.pg_last_error($conn).' </strong><BR>';
else
echo 'VIEW lehre.vw_stundenplandev_student_unr wurde hinzugefuegt!<BR>';
}
// ************** Leserechte auf bis.tbl_orgform fuer web user *****************
if($result =pg_query($conn, "SELECT has_table_privilege('web','bis.tbl_orgform','select') as bool"))
{
if($row = pg_fetch_object($result))
{
if($row->bool=='f')
{
$sql="GRANT SELECT ON bis.tbl_orgform TO GROUP web;";
if (!@pg_query($conn,$sql))
echo '<strong>bis.tbl_orgform Rechte: '.pg_last_error($conn).' </strong><BR>';
else
echo 'User web erhaelt Leserechte auf die Tabelle bis.tbl_orgform<BR>';
}
}
}
// ********************** Pruefungen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
/*
if(!$result = @$db->db_query("SELECT nachname FROM public.tbl_person LIMIT 1;"))
{
$qry = '--UPDATE';
if(!$db->db_query($qry))
echo '<strong>public.tbl_person: '.$db->db_last_error().'</strong><br>';
else
echo ' public.tbl_person: Tabellen hinzugefuegt!<br>';
}
*/
$tabellen=array(
"bis.tbl_ausbildung" => array("ausbildungcode","ausbildungbez","ausbildungbeschreibung"),
"bis.tbl_berufstaetigkeit" => array("berufstaetigkeit_code","berufstaetigkeit_bez","berufstaetigkeit_kurzbz"),
@@ -1081,8 +206,8 @@ foreach ($tabellen AS $attribute)
$sql_attr.=$attr.',';
$sql_attr=substr($sql_attr, 0, -1);
if (!@pg_query($conn,'SELECT '.$sql_attr.' FROM '.$tabs[$i].' LIMIT 1;'))
echo '<BR><strong>'.$tabs[$i].': '.pg_last_error($conn).' </strong><BR>';
if (!@$db->db_query('SELECT '.$sql_attr.' FROM '.$tabs[$i].' LIMIT 1;'))
echo '<BR><strong>'.$tabs[$i].': '.$db->db_last_error().' </strong><BR>';
else
echo $tabs[$i].': OK - ';
flush();
@@ -1091,22 +216,22 @@ foreach ($tabellen AS $attribute)
echo '<H2>Gegenpruefung!</H2>';
$sql_query="SELECT schemaname,tablename FROM pg_catalog.pg_tables WHERE schemaname != 'pg_catalog' AND schemaname != 'information_schema' AND schemaname != 'sync';";
if (!$result=@pg_query($conn,$sql_query))
echo '<BR><strong>'.pg_last_error($conn).' </strong><BR>';
if (!$result=@$db->db_query($sql_query))
echo '<BR><strong>'.$db->db_last_error().' </strong><BR>';
else
while ($row=pg_fetch_object($result))
while ($row=$db->db_fetch_object($result))
{
$fulltablename=$row->schemaname.'.'.$row->tablename;
if (!isset($tabellen[$fulltablename]))
echo 'Tabelle '.$fulltablename.' existiert in der DB, aber nicht in diesem Skript!<BR>';
else
if (!$result_fields=@pg_query($conn,"SELECT * FROM $fulltablename LIMIT 1;"))
echo '<BR><strong>'.pg_last_error($conn).' </strong><BR>';
if (!$result_fields=@$db->db_query("SELECT * FROM $fulltablename LIMIT 1;"))
echo '<BR><strong>'.$db->db_last_error().' </strong><BR>';
else
for ($i=0; $i<pg_num_fields($result_fields); $i++)
for ($i=0; $i<$db->db_num_fields($result_fields); $i++)
{
$found=false;
$fieldnameDB=pg_field_name($result_fields,$i);
$fieldnameDB=$db->db_field_name($result_fields,$i);
foreach ($tabellen[$fulltablename] AS $fieldnameARRAY)
if ($fieldnameDB==$fieldnameARRAY)
{
+13 -9
View File
@@ -19,25 +19,29 @@
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require('../vilesci/config.inc.php');
/**
* Script zur Erinnerung der Assistenz
* Dieses Script wird 1x pro Monat per Cronjob gestartet
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/basis_db.class.php');
require_once('../include/mail.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$db = new basis_db();
$qry = "SELECT distinct email FROM public.tbl_studiengang WHERE studiengang_kz!=0 AND email is not null";
$headers = "From: vilesci@technikum-wien.at";
$message = "Dies ist eine automatische eMail!\n\nAm 20. jedes Monats wird die Lehrauftragsliste automatisch and die GST geschickt. Bitte führen Sie bis dahin noch alle anstehenden Korrekturen durch!\n\nBesten Dank,\nGeschäftsstelle";
$subject = "Erinnerung Lehrauftragsliste";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
while($row = pg_fetch_object($result))
while($row = $db->db_fetch_object($result))
{
//$to = "pam@technikum-wien.at";
$to = $row->email;
$subject = "Erinnerung Lehrauftragsliste";
if(mail($to, $subject, $message, $headers))
$mail = new mail($to, 'vilesci@'.DOMAIN, $subject, $message);
if($mail->send())
echo "Email an $to versandt\n";
else
echo "Fehler beim Versenden des Erinnerungsmails an $to\n";
+9 -10
View File
@@ -22,17 +22,14 @@
/*
* Versendet Erinnerungsmails an die Assistenz zur Uebernahme der Freigegebenen Preinteressenten
*/
require_once('../vilesci/config.inc.php');
require_once('../config/vilesci.config.inc.php');
require_once('../include/studiengang.class.php');
require_once('../include/preinteressent.class.php');
require_once('../include/person.class.php');
require_once('../include/datum.class.php');
require_once('../include/mail.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$studiengang = new studiengang($conn);
$studiengang = new studiengang();
$studiengang->getAll();
$datum_obj = new datum();
$message_sync='';
@@ -40,7 +37,7 @@ $message_sync='';
foreach ($studiengang->result as $stg)
{
//Freigegebene aber noch nicht uebernommene Preinteressenten des Studienganges laden
$preinteressent = new preinteressent($conn);
$preinteressent = new preinteressent();
$preinteressent->loadFreigegebene($stg->studiengang_kz);
if(count($preinteressent->result)>0)
@@ -50,7 +47,7 @@ foreach ($studiengang->result as $stg)
foreach ($preinteressent->result as $row)
{
$person = new person($conn);
$person = new person();
$person->load($row->person_id);
$message.="- $person->nachname $person->vorname ".($person->gebdatum!=''?"(Geburtsdatum: ".$datum_obj->formatDatum($person->gebdatum,'d.m.Y').')':'')."\n";
}
@@ -60,7 +57,8 @@ foreach ($studiengang->result as $stg)
$message.="\nins FAS übertragen";
$to = $stg->email;
//Mail versenden
if(mail($to, 'Preinteressent Übernahme - Erinnerungsmail', $message, 'FROM: vilesci@'.DOMAIN))
$mail = new mail($to, 'vilesci@'.DOMAIN, 'Preinteressent Übernahme - Erinnerungsmail', $message);
if($mail->send())
$message_sync.="Studiengang: $stg->kuerzel EMail-Versand an $stg->email ... ok\n";
else
$message_sync.="Studiengang: $stg->kuerzel EMail-Versand an $stg->email ... FEHLER BEIM SENDEN !!!\n";
@@ -71,7 +69,8 @@ if($message_sync!='')
//Mail an Administration
$message_sync = "Dies ist eine automatische Mail!\n\nEs wurden folgende Benachrichtungen zur Preinteressentenübernahme verschickt:\n\n".$message_sync;
$to = MAIL_ADMIN;
if(mail($to, 'Preinteressent Übernahme - Erinnerungsmail', $message_sync, 'FROM: vilesci@'.DOMAIN))
$mail = new mail($to, 'vilesci@'.DOMAIN, 'Preinteressent Übernahme - Erinnerungsmail', $message_sync);
if($mail->send())
echo "<br><b>Erinnerungsmails wurden versendet</b>";
else
echo "<br><b>Fehler beim Versenden der Mails</b>";
-132
View File
@@ -1,132 +0,0 @@
<?php
// **************************************
// Syncronisiert alle Noten
// FAS -> VILESCI
// setzt vorraus: - tbl_sprache
// - tbl_studiengang
// einschraenkung auf studiengang_fk per http-get:
// sync_fas_vilesci_note_stg.php?stg_von=x&stg_bis=y
// **************************************
require_once('../cis/config.inc.php');
//$adress='fas_sync@technikum-wien.at';
$conn=pg_connect(CONN_STRING) or die("Connection zur Portal Datenbank fehlgeschlagen");
$headtext='';
$text='';
$lv_arr = array(); //array (lehrveranstaltung_fk->lehrveranstaltung_id)
$qry = "select * from lehre.tbl_lehrveranstaltung";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$lv_arr[$row->studiengang_kz][$row->semester][$row->lehreverzeichnis] = 1;
}
}
$text .= "";
//query bauen: falls http-get-einschraenkungen fuer student_fk
//sync_fas_vilesci_note.php?student_fk_von=x&student_fk_bis=y
/*
$getstr = "";
$sqlstr = "SELECT DISTINCT student_fk FROM note";
if (isset($_REQUEST["student_fk_von"]))
$getstr .= " student_fk >='".$_REQUEST["student_fk_von"]."'";
if (isset($_REQUEST["student_fk_bis"]))
{
if ($getstr != "")
$getstr .= " AND";
$getstr .= " student_fk <='".$_REQUEST["student_fk_bis"]."'";
}
if ($getstr != "")
$getstr = " WHERE ".$getstr;
$sqlstr = $sqlstr.$getstr." order by student_fk";
*/
$getstr = "";
$sqlstr = "select * from tbl_studiengang";
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;
$sqlstr = $sqlstr.$getstr." order by kurzbzlang";
//echo $sqlstr;
//$sqlstr ="select count(*) from note, student where note.student_fk = student.student_pk and student.studiengang_fk = '16' and (note.student_fk=12217 or note.student_fk = 10704);";
if($result = pg_query($conn, $sqlstr))
{
while($row = pg_fetch_object($result))
{
$text .= "<hr><b>".$row->kurzbzlang."</b><br>";
for ($i=1; $i <= $row->max_semester; $i++)
{
$dir = "/documents/documents/".strtolower($row->kurzbzlang)."/".$i."/";
$text .= "*** ".$i." ***<br>";
if (is_dir($dir))
{
$files = scandir($dir);
foreach ($files as $f)
{
if (is_dir($dir.$f) && $f != "." && $f != "..")
{
if ($row->studiengang_kz == 999)
$text .= $f."<br>";
else if (!key_exists($f, $lv_arr[$row->studiengang_kz][$i]))
{
//echo $row->studiengang_kz."/".$i."<br>";
$text .= $f."<br>";
}
}
}
}
}
}
}
/*
if (mail($adress,"FAS - Vilesci (Noten/Pruefungen)",$headtext."\n\n<html><body>".$text."</body></html>","From: vilesci@technikum-wien.at\nContent-Type: text/html\n"))
$sendmail=true;
else
$sendmail=false;
}
*/
?>
<html>
<head>
<title>Unused Dirs</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<?php
/*
if ($sendmail)
echo 'Mail wurde verschickt an '.$adress.'!<br>';
else
echo "Mail konnte nicht verschickt werden!<br>";
*/
echo $headtext;
echo "<br><br>";
echo $text;
?>
</body>