diff --git a/content/adressedialog.js.php b/content/adressedialog.js.php
index 869fbd8a7..c89f697d2 100644
--- a/content/adressedialog.js.php
+++ b/content/adressedialog.js.php
@@ -50,7 +50,7 @@ function AdresseInit(adresse_id, person_id)
var predicateNS = "http://www.technikum-wien.at/adresse/rdf";
- //Daten holen
+ //RDF parsen
person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
name = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#name" ));
@@ -67,6 +67,7 @@ function AdresseInit(adresse_id, person_id)
}
else
{
+ //Defaultwerte bei Neuem Datensatz
neu = true;
name='';
strasse='';
@@ -102,6 +103,9 @@ function AdresseInit(adresse_id, person_id)
document.getElementById('adresse-menulist-firma').value=firma_id;
}
+// ****
+// * Speichern der Daten
+// ****
function AdresseSpeichern()
{
if(window.opener.KontaktAdresseSpeichern(document))
diff --git a/content/adressedialog.xul.php b/content/adressedialog.xul.php
index cbaa016d1..5ccb5581a 100644
--- a/content/adressedialog.xul.php
+++ b/content/adressedialog.xul.php
@@ -89,14 +89,14 @@ else
-
+
-
+
diff --git a/content/bankverbindungdialog.js.php b/content/bankverbindungdialog.js.php
new file mode 100644
index 000000000..925b13bc2
--- /dev/null
+++ b/content/bankverbindungdialog.js.php
@@ -0,0 +1,103 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+
+require_once('../vilesci/config.inc.php');
+require_once('../include/functions.inc.php');
+
+$conn = pg_pconnect(CONN_STRING);
+
+$user = get_uid();
+loadVariables($conn, $user);
+?>
+
+// ****
+// * Laedt die zu bearbeitenden Daten
+// ****
+function BankverbindungInit(bankverbindung_id, person_id)
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ if(bankverbindung_id!='')
+ {
+ //Daten holen
+ var url = 'rdf/bankverbindung.rdf.php?bankverbindung_id='+bankverbindung_id+'&'+gettimestamp();
+
+ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
+ getService(Components.interfaces.nsIRDFService);
+
+ var dsource = rdfService.GetDataSourceBlocking(url);
+
+ var subject = rdfService.GetResource("http://www.technikum-wien.at/bankverbindung/" + bankverbindung_id);
+
+ var predicateNS = "http://www.technikum-wien.at/bankverbindung/rdf";
+
+ //RDF parsen
+
+ person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
+ name = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#name" ));
+ anschrift = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anschrift" ));
+ bic = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bic" ));
+ blz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#blz" ));
+ iban = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#iban" ));
+ kontonr = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#kontonr" ));
+ typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#typ" ));
+ verrechnung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#verrechnung" ));
+ neu = false;
+ }
+ else
+ {
+ //Defaultwerte bei Neuem Datensatz
+ neu = true;
+ name='';
+ anschrift='';
+ bic='';
+ blz='';
+ iban='';
+ kontonr='';
+ typ='p';
+ verrechnung='Ja';
+ }
+
+ document.getElementById('bankverbindung-checkbox-neu').checked=neu;
+ document.getElementById('bankverbindung-textbox-person_id').value=person_id;
+ document.getElementById('bankverbindung-textbox-bankverbindung_id').value=bankverbindung_id;
+ document.getElementById('bankverbindung-textbox-name').value=name;
+ document.getElementById('bankverbindung-textbox-anschrift').value=anschrift;
+ document.getElementById('bankverbindung-textbox-bic').value=bic;
+ document.getElementById('bankverbindung-textbox-blz').value=blz;
+ document.getElementById('bankverbindung-textbox-iban').value=iban;
+ document.getElementById('bankverbindung-textbox-kontonr').value=kontonr;
+ document.getElementById('bankverbindung-menulist-typ').value=typ;
+ if(verrechnung=='Ja')
+ document.getElementById('bankverbindung-checkbox-verrechnung').checked=true;
+ else
+ document.getElementById('bankverbindung-checkbox-verrechnung').checked=false;
+}
+
+// ****
+// * Speichern der Daten
+// ****
+function BankverbindungSpeichern()
+{
+ if(window.opener.KontaktBankverbindungSpeichern(document))
+ window.close();
+}
\ No newline at end of file
diff --git a/content/bankverbindungdialog.xul.php b/content/bankverbindungdialog.xul.php
new file mode 100644
index 000000000..f15d6038f
--- /dev/null
+++ b/content/bankverbindungdialog.xul.php
@@ -0,0 +1,113 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+
+header("Cache-Control: no-cache");
+header("Cache-Control: post-check=0, pre-check=0",false);
+header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
+header("Pragma: no-cache");
+header("Content-type: application/vnd.mozilla.xul+xml");
+
+include('../vilesci/config.inc.php');
+echo ''."\n";
+
+echo '';
+echo '';
+
+if(isset($_GET['bankverbindung_id']) && is_numeric($_GET['bankverbindung_id']))
+ $bankverbindung_id=$_GET['bankverbindung_id'];
+else
+ $bankverbindung_id='';
+
+if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
+ $person_id=$_GET['person_id'];
+else
+ $person_id='';
+?>
+
+)"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/content/fas.xul.php b/content/fas.xul.php
index 42527f26a..780ea353b 100644
--- a/content/fas.xul.php
+++ b/content/fas.xul.php
@@ -21,9 +21,9 @@
*/
header("Content-type: application/vnd.mozilla.xul+xml");
echo '';
-include('../vilesci/config.inc.php');
-include('../include/functions.inc.php');
-include('../include/fas/benutzer.class.php');
+require_once('../vilesci/config.inc.php');
+require_once('../include/functions.inc.php');
+require_once('../include/fas/benutzer.class.php');
// Testumgebung
$user=get_uid();
@@ -40,7 +40,7 @@ if(!$benutzer->loadVariables($user))
$error_msg = $benutzer->errormsg;
/*echo '';*/
echo '';
-echo "";
+echo '';
echo '';
?>
isBerechtigt('admin'))
if(!$error)
{
- if(isset($_POST['type']) && $_POST['type']=='adressesave')
+ //in der Variable type wird die auszufuehrende Aktion mituebergeben
+ if(isset($_POST['type']) && $_POST['type']=='adressesave') // ***** ADRESSEN ***** //
{
//Speichert die Adressdaten in die Datenbank
$adresse = new adresse($conn, null, true);
@@ -96,8 +95,6 @@ if(!$error)
$adresse->firma_id = $_POST['firma_id'];
$adresse->updateamum = date('Y-m-d H:i:s');
$adresse->updatevon = $user;
- $adresse->insertamum = date('Y-m-d H:i:s');
- $adresse->insertvon = $user;
//Wenn die Nation Oesterreich ist, dann muss die Gemeinde in der Tabelle Gemeinde vorkommen
if($_POST['nation']=='A')
@@ -136,7 +133,7 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='adressedelete')
{
- //Speichert die Adressdaten in die Datenbank
+ //Loescht Adressen aus der DB
$adresse = new adresse($conn, null, true);
if($adresse->delete($_POST['adresse_id']))
@@ -149,6 +146,115 @@ if(!$error)
$errormsg = $adresse->errormsg;
}
}
+ elseif(isset($_POST['type']) && $_POST['type']=='kontaktsave') // ***** KONTAKT ***** //
+ {
+ //Speichert die Kontaktdaten in die Datenbank
+ $kontakt = new kontakt($conn, null, true);
+
+ if($_POST['neu']=='false')
+ {
+ $kontakt->load($_POST['kontakt_id']);
+ $kontakt->new = false;
+ }
+ else
+ {
+ $kontakt->insertamum = date('Y-m-d H:i:s');
+ $kontakt->insertvon = $user;
+ $kontakt->new = true;
+ }
+
+ $kontakt->kontakt_id = $_POST['kontakt_id'];
+ $kontakt->person_id = $_POST['person_id'];
+ $kontakt->anmerkung = $_POST['anmerkung'];
+ $kontakt->kontakt = $_POST['kontakt'];
+ $kontakt->kontakttyp = $_POST['typ'];
+ $kontakt->zustellung = ($_POST['zustellung']=='true'?true:false);
+ $kontakt->firma_id = $_POST['firma_id'];
+ $kontakt->updateamum = date('Y-m-d H:i:s');
+ $kontakt->updatevon = $user;
+
+ if($kontakt->save())
+ {
+ $return = true;
+ $data = $kontakt->kontakt_id;
+ }
+ else
+ {
+ $return = false;
+ $errormsg = $kontakt->errormsg;
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='kontaktdelete')
+ {
+ //Loescht Kontaktdaten aus der Datenbank
+ $kontakt = new kontakt($conn, null, true);
+
+ if($kontakt->delete($_POST['kontakt_id']))
+ {
+ $return = true;
+ }
+ else
+ {
+ $return = false;
+ $errormsg = $kontakt->errormsg;
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='bankverbindungsave') // ***** BANKVERBINDUNG ***** //
+ {
+ //Speichert die Kontaktdaten in die Datenbank
+ $bankverbindung = new bankverbindung($conn, null, true);
+
+ if($_POST['neu']=='false')
+ {
+ $bankverbindung->load($_POST['bankverbindung_id']);
+ $bankverbindung->new = false;
+ }
+ else
+ {
+ $bankverbindung->insertamum = date('Y-m-d H:i:s');
+ $bankverbindung->insertvon = $user;
+ $bankverbindung->new = true;
+ }
+
+ $bankverbindung->bankverbindung_id = $_POST['bankverbindung_id'];
+ $bankverbindung->person_id = $_POST['person_id'];
+ $bankverbindung->name = $_POST['name'];
+ $bankverbindung->anschrift = $_POST['anschrift'];
+ $bankverbindung->bic = $_POST['bic'];
+ $bankverbindung->blz = $_POST['blz'];
+ $bankverbindung->iban = $_POST['iban'];
+ $bankverbindung->kontonr = $_POST['kontonr'];
+ $bankverbindung->typ = $_POST['typ'];
+ $bankverbindung->verrechnung = ($_POST['verrechnung']=='true'?true:false);
+ $bankverbindung->updateamum = date('Y-m-d H:i:s');
+ $bankverbindung->updatevon = $user;
+
+ if($bankverbindung->save())
+ {
+ $return = true;
+ $data = $bankverbindung->bankverbindung_id;
+ }
+ else
+ {
+ $return = false;
+ $errormsg = $bankverbindung->errormsg;
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='bankverbindungdelete')
+ {
+ //Loescht Bankverbindungen aus der Datenbank
+ $bankverbindung = new bankverbindung($conn, null, true);
+
+ if($bankverbindung->delete($_POST['bankverbindung_id']))
+ {
+ $return = true;
+ }
+ else
+ {
+ $return = false;
+ $errormsg = $bankverbindung->errormsg;
+ }
+ }
else
{
$return = false;
@@ -156,8 +262,9 @@ if(!$error)
$data = '';
}
}
-?>
-
+
+//RDF mit den Returnwerden ausgeben
+echo '
-
- ]]>
- ]]>
+ '.($return?'true':'false').'
+
+
+';
+?>
\ No newline at end of file
diff --git a/content/fasoverlay.js.php b/content/fasoverlay.js.php
index 1abce9927..16050a40f 100644
--- a/content/fasoverlay.js.php
+++ b/content/fasoverlay.js.php
@@ -233,10 +233,17 @@ function onVerbandSelect(event)
treeStudent.database.AddDataSource(StudentTreeDatasource);
StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver);
treeStudent.builder.addListener(StudentTreeListener);
+
+ //Detailfelder Deaktivieren
StudentDetailReset();
StudentDetailDisableFields(true);
StudentPrestudentDisableFields(true);
StudentKontoDisableFields(true);
+ StudentAkteDisableFields(true);
+ StudentBetriebsmittelDisableFields(true);
+ StudentIODisableFields(true);
+ StudentNoteDisableFields(true);
+ document.getElementById('student-kontakt').setAttribute('src','');
}
catch(e)
{
diff --git a/content/kontakt.js.php b/content/kontakt.js.php
index 69d3e56e8..3ae1f9826 100644
--- a/content/kontakt.js.php
+++ b/content/kontakt.js.php
@@ -36,6 +36,7 @@ var KontaktKontaktSelectID=null; // ID des Kontaktes der nach dem Rebuild markie
var BankverbindungTreeDatasource=''; // Datasource des Bankverbindung Trees
var KontaktBankverbindungSelectID=null; // ID der Bankverbindung die nach dem Rebuild markiert werden soll
var KontaktPerson_id=null;
+
// ********** LISTENER UND OBSERVER ********** //
// ****
@@ -139,7 +140,12 @@ var KontaktBankverbindungTreeListener =
window.setTimeout(KontaktBankverbindungTreeSelectID,10);
}
};
+
// ********** FUNKTIONEN ********** //
+
+// ****
+// * Laedt die Trees
+// ****
function loadKontakte(person_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
@@ -296,11 +302,17 @@ function KontaktAdresseSpeichern(dialog)
}
}
+// ****
+// * Neu Dialog oeffnen
+// ****
function KontaktAdresseNeu()
{
window.open("content/adressedialog.xul.php?person_id="+KontaktPerson_id,"","chrome, status=no, width=500, height=350, centerscreen, resizable");
}
+// ****
+// * Bearbeiten Dialog oeffnen
+// ****
function KontaktAdresseBearbeiten()
{
tree = document.getElementById('kontakt-adressen-tree');
@@ -314,6 +326,9 @@ function KontaktAdresseBearbeiten()
window.open("content/adressedialog.xul.php?adresse_id="+adresse_id,"","chrome, status=no, width=500, height=350, centerscreen, resizable");
}
+// ****
+// * markierten Datensatz loeschen
+// ****
function KontaktAdresseDelete()
{
tree = document.getElementById('kontakt-adressen-tree');
@@ -354,6 +369,24 @@ function KontaktAdresseDelete()
}
}
+// ****
+// * Beim Sortieren des Trees wird der markierte Eintrag gespeichert und nach dem sortieren
+// * wieder markiert.
+// ****
+function KontaktAdresseTreeSort()
+{
+ var i;
+ var tree=document.getElementById('kontakt-adressen-tree');
+ if(tree.currentIndex>=0)
+ i = tree.currentIndex;
+ else
+ i = 0;
+ col = tree.columns ? tree.columns["kontakt-adressen-treecol-adresse_id"] : "kontakt-adressen-treecol-adresse_id";
+ KontaktAdresseSelectID = tree.view.getCellText(i,col);
+ window.setTimeout("KontaktAdressenTreeSelectID()",10);
+}
+
+
// ********** KONTAKTE ********** //
// ****
@@ -386,6 +419,139 @@ function KontaktKontaktTreeSelectID()
}
}
+// ****
+// * Speichert die Kontaktdaten
+// ****
+function KontaktKontaktSpeichern(dialog)
+{
+ neu = dialog.getElementById('kontakt-checkbox-neu').checked;
+ person_id = dialog.getElementById('kontakt-textbox-person_id').value;
+ kontakt_id = dialog.getElementById('kontakt-textbox-kontakt_id').value;
+ anmerkung = dialog.getElementById('kontakt-textbox-anmerkung').value;
+ kontakt = dialog.getElementById('kontakt-textbox-kontakt').value;
+ zustellung = dialog.getElementById('kontakt-checkbox-zustellung').checked;
+ typ = dialog.getElementById('kontakt-menulist-typ').value;
+ firma_id = dialog.getElementById('kontakt-menulist-firma').value;
+
+ var url = 'content/fasDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'kontaktsave');
+
+ req.add('neu', neu);
+ req.add('person_id', person_id);
+ req.add('kontakt_id', kontakt_id);
+ req.add('anmerkung', anmerkung);
+ req.add('kontakt', kontakt);
+ req.add('typ', typ);
+ req.add('zustellung', zustellung);
+ req.add('firma_id', firma_id);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ return false;
+ }
+ else
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ KontaktKontaktSelectID = val.dbdml_data;
+ KontaktTreeDatasource.Refresh(false);
+ return true;
+ }
+}
+
+// ****
+// * Neu Dialog anzeigen
+// ****
+function KontaktKontaktNeu()
+{
+ window.open("content/kontaktdialog.xul.php?person_id="+KontaktPerson_id,"","chrome, status=no, width=500, height=350, centerscreen, resizable");
+}
+
+// ****
+// * Bearbeiten Dialog anzeigen
+// ****
+function KontaktKontaktBearbeiten()
+{
+ tree = document.getElementById('kontakt-kontakt-tree');
+
+ if (tree.currentIndex==-1) return;
+
+ //Ausgewaehlte ID holen
+ var col = tree.columns ? tree.columns["kontakt-kontakt-treecol-kontakt_id"] : "kontakt-kontakt-treecol-kontakt_id";
+ var kontakt_id=tree.view.getCellText(tree.currentIndex,col);
+
+ window.open("content/kontaktdialog.xul.php?kontakt_id="+kontakt_id,"","chrome, status=no, width=500, height=350, centerscreen, resizable");
+}
+
+// ****
+// * markierten Datensatz loeschen
+// ****
+function KontaktKontaktDelete()
+{
+ tree = document.getElementById('kontakt-kontakt-tree');
+
+ if (tree.currentIndex==-1) return;
+
+ //Ausgewaehlte ID holen
+ var col = tree.columns ? tree.columns["kontakt-kontakt-treecol-kontakt_id"] : "kontakt-kontakt-treecol-kontakt_id";
+ var kontakt_id=tree.view.getCellText(tree.currentIndex,col);
+
+ if(confirm('Diesen Kontakt wirklich loeschen?'))
+ {
+ var url = 'content/fasDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'kontaktdelete');
+
+ req.add('kontakt_id', kontakt_id);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ return false;
+ }
+ else
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ KontaktTreeDatasource.Refresh(false);
+ return true;
+ }
+ }
+}
+
+// ****
+// * Beim Sortieren des Trees wird der markierte Eintrag gespeichert und nach dem sortieren
+// * wieder markiert.
+// ****
+function KontaktKontaktTreeSort()
+{
+ var i;
+ var tree=document.getElementById('kontakt-kontakt-tree');
+ if(tree.currentIndex>=0)
+ i = tree.currentIndex;
+ else
+ i = 0;
+ col = tree.columns ? tree.columns["kontakt-kontakt-treecol-kontakt_id"] : "kontakt-kontakt-treecol-kontakt_id";
+ KontaktKontaktSelectID = tree.view.getCellText(i,col);
+ window.setTimeout("KontaktKontaktTreeSelectID()",10);
+}
+
// ********** BANKVERBINDUNG ********** //
// ****
@@ -416,4 +582,145 @@ function KontaktBankverbindungTreeSelectID()
}
}
}
-}
\ No newline at end of file
+}
+
+
+// ****
+// * Speichert die Bankdaten
+// ****
+function KontaktBankverbindungSpeichern(dialog)
+{
+ neu = dialog.getElementById('bankverbindung-checkbox-neu').checked;
+ person_id = dialog.getElementById('bankverbindung-textbox-person_id').value;
+ bankverbindung_id = dialog.getElementById('bankverbindung-textbox-bankverbindung_id').value;
+ name = dialog.getElementById('bankverbindung-textbox-name').value;
+ anschrift = dialog.getElementById('bankverbindung-textbox-anschrift').value;
+ bic = dialog.getElementById('bankverbindung-textbox-bic').value;
+ blz = dialog.getElementById('bankverbindung-textbox-blz').value;
+ iban = dialog.getElementById('bankverbindung-textbox-iban').value;
+ kontonr = dialog.getElementById('bankverbindung-textbox-kontonr').value;
+ typ = dialog.getElementById('bankverbindung-menulist-typ').value;
+ verrechnung = dialog.getElementById('bankverbindung-checkbox-verrechnung').checked;
+
+ var url = 'content/fasDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'bankverbindungsave');
+
+ req.add('neu', neu);
+ req.add('person_id', person_id);
+ req.add('bankverbindung_id', bankverbindung_id);
+ req.add('name', name);
+ req.add('anschrift', anschrift);
+ req.add('bic', bic);
+ req.add('blz', blz);
+ req.add('iban', kontonr);
+ req.add('kontonr', kontonr);
+ req.add('typ', typ);
+ req.add('verrechnung', verrechnung);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ return false;
+ }
+ else
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ KontaktBankverbindungSelectID = val.dbdml_data;
+ BankverbindungTreeDatasource.Refresh(false);
+ return true;
+ }
+}
+
+// ****
+// * Neu Dialog anzeigen
+// ****
+function KontaktBankverbindungNeu()
+{
+ window.open("content/bankverbindungdialog.xul.php?person_id="+KontaktPerson_id,"","chrome, status=no, width=500, height=350, centerscreen, resizable");
+}
+
+// ****
+// * Bearbeiten Dialog anzeigen
+// ****
+function KontaktBankverbindungBearbeiten()
+{
+ tree = document.getElementById('kontakt-bankverbindung-tree');
+
+ if (tree.currentIndex==-1) return;
+
+ //Ausgewaehlte ID holen
+ var col = tree.columns ? tree.columns["kontakt-bankverbindung-treecol-bankverbindung_id"] : "kontakt-bankverbindung-treecol-bankverbindung_id";
+ var bankverbindung_id=tree.view.getCellText(tree.currentIndex,col);
+
+ window.open("content/bankverbindungdialog.xul.php?bankverbindung_id="+bankverbindung_id,"","chrome, status=no, width=500, height=350, centerscreen, resizable");
+}
+
+// ****
+// * markierten Datensatz loeschen
+// ****
+function KontaktBankverbindungDelete()
+{
+ tree = document.getElementById('kontakt-bankverbindung-tree');
+
+ if (tree.currentIndex==-1) return;
+
+ //Ausgewaehlte ID holen
+ var col = tree.columns ? tree.columns["kontakt-bankverbindung-treecol-bankverbindung_id"] : "kontakt-bankverbindung-treecol-bankverbindung_id";
+ var bankverbindung_id=tree.view.getCellText(tree.currentIndex,col);
+
+ if(confirm('Diese Bankverbindung wirklich loeschen?'))
+ {
+ var url = 'content/fasDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'bankverbindungdelete');
+
+ req.add('bankverbindung_id', bankverbindung_id);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ return false;
+ }
+ else
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ BankverbindungTreeDatasource.Refresh(false);
+ return true;
+ }
+ }
+}
+
+
+// ****
+// * Beim Sortieren des Trees wird der markierte Eintrag gespeichert und nach dem sortieren
+// * wieder markiert.
+// ****
+function KontaktBankverbindungTreeSort()
+{
+ var i;
+ var tree=document.getElementById('kontakt-bankverbindung-tree');
+ if(tree.currentIndex>=0)
+ i = tree.currentIndex;
+ else
+ i = 0;
+ col = tree.columns ? tree.columns["kontakt-bankverbindung-treecol-bankverbindung_id"] : "kontakt-bankverbindung-treecol-bankverbindung_id";
+ KontaktBankverbindungSelectID = tree.view.getCellText(i,col);
+ window.setTimeout("KontaktBankverbindungTreeSelectID()",10);
+}
diff --git a/content/kontakt.xul.php b/content/kontakt.xul.php
index 91d4ea260..2e2c05000 100644
--- a/content/kontakt.xul.php
+++ b/content/kontakt.xul.php
@@ -64,51 +64,51 @@ else
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#name" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#strasse" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#plz" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#ort" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#gemeinde" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#nation" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#typ" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#heimatadresse" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#zustelladresse" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#firma_id" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#adresse_id" onclick="KontaktAdresseTreeSort()"/>
+ sort="rdf:http://www.technikum-wien.at/adresse/rdf#person_id" onclick="KontaktAdresseTreeSort()"/>
@@ -148,7 +148,7 @@ else
-
-
-
+
+
-
-
@@ -194,7 +198,8 @@ else
-
+
+
@@ -204,9 +209,9 @@ else
-
-
-
+
+
+
@@ -216,7 +221,7 @@ else
-
-
-
+
+
+
-
-
-
+
\ No newline at end of file
diff --git a/content/kontaktdialog.js.php b/content/kontaktdialog.js.php
new file mode 100644
index 000000000..60a508b2a
--- /dev/null
+++ b/content/kontaktdialog.js.php
@@ -0,0 +1,95 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+
+require_once('../vilesci/config.inc.php');
+require_once('../include/functions.inc.php');
+
+$conn = pg_pconnect(CONN_STRING);
+
+$user = get_uid();
+loadVariables($conn, $user);
+?>
+
+// ****
+// * Laedt die zu bearbeitenden Daten
+// ****
+function KontaktInit(kontakt_id, person_id)
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ if(kontakt_id!='')
+ {
+ //Daten holen
+ var url = 'rdf/kontakt.rdf.php?kontakt_id='+kontakt_id+'&'+gettimestamp();
+
+ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
+ getService(Components.interfaces.nsIRDFService);
+
+ var dsource = rdfService.GetDataSourceBlocking(url);
+
+ var subject = rdfService.GetResource("http://www.technikum-wien.at/kontakt/" + kontakt_id);
+
+ var predicateNS = "http://www.technikum-wien.at/kontakt/rdf";
+
+ //RDF parsen
+
+ person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
+ anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
+ kontakt = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#kontakt" ));
+ zustellung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zustellung" ));
+ firma_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#firma_id" ));
+ typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#kontakttyp" ));
+ neu = false;
+ }
+ else
+ {
+ //Defaultwerte bei Neuem Datensatz
+ neu = true;
+ anmerkung='';
+ kontakt='';
+ zustellung='Ja';
+ firma_id='';
+ typ='email';
+ }
+
+ document.getElementById('kontakt-checkbox-neu').checked=neu;
+ document.getElementById('kontakt-textbox-person_id').value=person_id;
+ document.getElementById('kontakt-textbox-kontakt_id').value=kontakt_id;
+ document.getElementById('kontakt-textbox-anmerkung').value=anmerkung;
+ document.getElementById('kontakt-textbox-kontakt').value=kontakt;
+ document.getElementById('kontakt-menulist-typ').value=typ;
+ document.getElementById('kontakt-menulist-firma').value=firma_id;
+
+ if(zustellung=='Ja')
+ document.getElementById('kontakt-checkbox-zustellung').checked=true;
+ else
+ document.getElementById('kontakt-checkbox-zustellung').checked=false;
+}
+
+// ****
+// * Speichern der Daten
+// ****
+function KontaktSpeichern()
+{
+ if(window.opener.KontaktKontaktSpeichern(document))
+ window.close();
+}
\ No newline at end of file
diff --git a/content/kontaktdialog.xul.php b/content/kontaktdialog.xul.php
new file mode 100644
index 000000000..d554629a7
--- /dev/null
+++ b/content/kontaktdialog.xul.php
@@ -0,0 +1,117 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+
+header("Cache-Control: no-cache");
+header("Cache-Control: post-check=0, pre-check=0",false);
+header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
+header("Pragma: no-cache");
+header("Content-type: application/vnd.mozilla.xul+xml");
+
+include('../vilesci/config.inc.php');
+echo ''."\n";
+
+echo '';
+echo '';
+
+if(isset($_GET['kontakt_id']) && is_numeric($_GET['kontakt_id']))
+ $kontakt_id=$_GET['kontakt_id'];
+else
+ $kontakt_id='';
+
+if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
+ $person_id=$_GET['person_id'];
+else
+ $person_id='';
+?>
+
+)"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/content/phpRequest.js.php b/content/phpRequest.js.php
index 42cb7880d..f8c7572cf 100644
--- a/content/phpRequest.js.php
+++ b/content/phpRequest.js.php
@@ -56,7 +56,7 @@ function phpRequestExecute()
try {
var txt = "?";
for(var i in this.parms) {
- txt = txt+'&'+this.parms[i].name+'='+this.parms[i].value;
+ txt = txt+'&'+this.parms[i].name+'='+encodeURIComponent(this.parms[i].value);
}
//alert('sende '+txt);
//Two options here, only uncomment one of these
@@ -113,7 +113,7 @@ function phpRequestExecutePOST()
var txt = "";
for(var i in this.parms)
{
- txt = txt+'&'+this.parms[i].name+'='+this.parms[i].value;
+ txt = txt+'&'+this.parms[i].name+'='+encodeURIComponent(this.parms[i].value);
}
//alert('sende '+txt);
diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php
index 04c07cfa1..6d3ef5aa7 100644
--- a/content/student/studentoverlay.js.php
+++ b/content/student/studentoverlay.js.php
@@ -516,6 +516,7 @@ function StudentDetailDisableFields(val)
document.getElementById('student-detail-textbox-semester').disabled=val;
document.getElementById('student-detail-textbox-verband').disabled=val;
document.getElementById('student-detail-textbox-gruppe').disabled=val;
+ document.getElementById('student-detail-button-save').disabled=val;
}
// ****
@@ -663,8 +664,9 @@ function StudentAuswahl()
StudentPrestudentDisableFields(false);
StudentKontoDisableFields(false);
StudentBetriebsmittelDisableFields(false);
+ StudentAkteDisableFields(false);
StudentIODisableFields(false);
- StudentNoteDetailDisableFields(true);
+ StudentNoteDisableFields(false);
document.getElementById('student-detail-button-save').disabled=false;
}
else
@@ -1118,80 +1120,103 @@ function StudentAnmeldungreihungstestHeute()
}
// ****
-// * Laedt ein Zeugnis dass in der DB gespeichert ist
+// * Einen Ab-/Unterbrecher wieder zum Studenten machen
// ****
-function StudentZeugnisAnzeigen()
+function StudentUnterbrecherZuStudent()
{
- var tree = document.getElementById('student-zeugnis-tree');
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var tree = document.getElementById('student-tree');
if (tree.currentIndex==-1) return;
- try
+ if(sem = prompt('In welches Semester soll dieser Student verschoben werden?'))
{
- //Ausgewaehlte ID holen
- var col = tree.columns ? tree.columns["student-zeugnis-tree-akte_id"] : "student-zeugnis-tree-akte_id";
- var akte_id=tree.view.getCellText(tree.currentIndex,col);
- if(akte_id!='')
+ if(!isNaN(sem))
{
- window.open('content/akte.php?id='+akte_id,'File');
- //document.location.href='content/akte.php?id='+akte_id;
+ StudentAddRolle('Student', sem)
}
else
{
- return false;
- }
- }
- catch(e)
- {
- alert(e);
- return false;
+ alert('Semester ist ungueltig');
+ }
}
}
// ****
-// * Loescht ein Zeugnis
+// * Fuegt eine Rolle zu einem Studenten hinzu
// ****
-function StudentAkteDel()
+function StudentAddRolle(rolle, semester)
{
-
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- var tree = document.getElementById('student-zeugnis-tree');
-
- if (tree.currentIndex==-1)
- return;
+ var tree = document.getElementById('student-tree');
+
+ if (tree.currentIndex==-1) return;
- try
+ //Ausgewaehlte ID holen
+ var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
+ var prestudent_id=tree.view.getCellText(tree.currentIndex,col);
+
+ if(semester!='0' || confirm('Diesen Studenten zum '+rolle+' machen?'))
{
- //Ausgewaehlte Akte holen
- var col = tree.columns ? tree.columns["student-zeugnis-tree-akte_id"] : "student-zeugnis-tree-akte_id";
- var akte_id=tree.view.getCellText(tree.currentIndex,col);
- }
- catch(e)
- {
- alert(e);
- return false;
- }
-
- //Abfrage ob wirklich geloescht werden soll
- if (confirm('Zeugnis wirklich entfernen?'))
- {
- //Script zum loeschen aufrufen
- var req = new phpRequest('student/studentDBDML.php','','');
-
- req.add('type','deleteAkte');
- req.add('akte_id',akte_id);
+ var url = 'content/student/studentDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'addrolle');
- var response = req.executePOST();
-
- var val = new ParseReturnValue(response)
+ req.add('prestudent_id', prestudent_id);
+ req.add('rolle_kurzbz', rolle);
+ req.add('semester', semester);
- if(!val.dbdml_return)
- alert(val.dbdml_errormsg)
-
- StudentTreeRefresh();
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response);
+
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ }
+ else
+ {
+ StudentTreeRefresh();
+ SetStatusBarText('Rolle hinzugefuegt');
+ }
}
}
+// ****
+// * Druckt die Instkriptionsbestaetigung
+// ****
+function StudentPrintInskriptionsbestaetigung()
+{
+ tree = document.getElementById('student-tree');
+ //Alle markierten Studenten holen
+ var start = new Object();
+ var end = new Object();
+ var numRanges = tree.view.selection.getRangeCount();
+ var paramList= '';
+ var anzahl=0;
+
+ for (var t = 0; t < numRanges; t++)
+ {
+ tree.view.selection.getRangeAt(t,start,end);
+ for (var v = start.value; v <= end.value; v++)
+ {
+ col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
+ uid = tree.view.getCellText(v,col);
+ paramList += ';'+uid;
+ anzahl = anzahl+1;
+ }
+ }
+
+ if(anzahl>0)
+ window.open('content/pdfExport.php?xml=student.rdf.php&xsl=Inskription&uid='+paramList,'Inskriptionsbestaetigung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
+ else
+ alert('Bitte einen Studenten auswaehlen');
+}
+
// **************** KONTO ******************
// ****
@@ -1631,6 +1656,89 @@ function StudentCreateZeugnis()
window.open('content/student/zeugnis.php?uid='+uid+'&studiengang_kz='+studiengang_kz+'&semester='+semester,'Zeugnis', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
+// ****
+// * Laedt ein Zeugnis dass in der DB gespeichert ist
+// ****
+function StudentZeugnisAnzeigen()
+{
+ var tree = document.getElementById('student-zeugnis-tree');
+
+ if (tree.currentIndex==-1) return;
+
+ try
+ {
+ //Ausgewaehlte ID holen
+ var col = tree.columns ? tree.columns["student-zeugnis-tree-akte_id"] : "student-zeugnis-tree-akte_id";
+ var akte_id=tree.view.getCellText(tree.currentIndex,col);
+ if(akte_id!='')
+ {
+ window.open('content/akte.php?id='+akte_id,'File');
+ //document.location.href='content/akte.php?id='+akte_id;
+ }
+ else
+ {
+ return false;
+ }
+ }
+ catch(e)
+ {
+ alert(e);
+ return false;
+ }
+}
+
+// ****
+// * Loescht ein Zeugnis
+// ****
+function StudentAkteDel()
+{
+
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var tree = document.getElementById('student-zeugnis-tree');
+
+ if (tree.currentIndex==-1)
+ return;
+
+ try
+ {
+ //Ausgewaehlte Akte holen
+ var col = tree.columns ? tree.columns["student-zeugnis-tree-akte_id"] : "student-zeugnis-tree-akte_id";
+ var akte_id=tree.view.getCellText(tree.currentIndex,col);
+ }
+ catch(e)
+ {
+ alert(e);
+ return false;
+ }
+
+ //Abfrage ob wirklich geloescht werden soll
+ if (confirm('Zeugnis wirklich entfernen?'))
+ {
+ //Script zum loeschen aufrufen
+ var req = new phpRequest('student/studentDBDML.php','','');
+
+ req.add('type','deleteAkte');
+ req.add('akte_id',akte_id);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
+ if(!val.dbdml_return)
+ alert(val.dbdml_errormsg)
+
+ StudentTreeRefresh();
+ }
+}
+
+// ****
+// * Deaktiviert die Felder
+// ****
+function StudentAkteDisableFields(val)
+{
+ document.getElementById('student-zeugnis-button-archivieren').disabled=val;
+}
+
// ********** Betriebsmittel ******************
// ****
@@ -1904,103 +2012,6 @@ function StudentBetriebsmittelNeu()
document.getElementById('student-betriebsmittel-textbox-ausgegebenam').value=tag+'.'+monat+'.'+jahr;
}
-// ****
-// * Einen Ab-/Unterbrecher wieder zum Studenten machen
-// ****
-function StudentUnterbrecherZuStudent()
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- var tree = document.getElementById('student-tree');
-
- if (tree.currentIndex==-1) return;
-
- if(sem = prompt('In welches Semester soll dieser Student verschoben werden?'))
- {
- if(!isNaN(sem))
- {
- StudentAddRolle('Student', sem)
- }
- else
- {
- alert('Semester ist ungueltig');
- }
- }
-}
-
-// ****
-// * Fuegt eine Rolle zu einem Studenten hinzu
-// ****
-function StudentAddRolle(rolle, semester)
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- var tree = document.getElementById('student-tree');
-
- if (tree.currentIndex==-1) return;
-
- //Ausgewaehlte ID holen
- var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
- var prestudent_id=tree.view.getCellText(tree.currentIndex,col);
-
- if(semester!='0' || confirm('Diesen Studenten zum '+rolle+' machen?'))
- {
- var url = 'content/student/studentDBDML.php';
- var req = new phpRequest(url,'','');
-
- req.add('type', 'addrolle');
-
- req.add('prestudent_id', prestudent_id);
- req.add('rolle_kurzbz', rolle);
- req.add('semester', semester);
-
- var response = req.executePOST();
-
- var val = new ParseReturnValue(response);
-
- if (!val.dbdml_return)
- {
- if(val.dbdml_errormsg=='')
- alert(response)
- else
- alert(val.dbdml_errormsg)
- }
- else
- {
- StudentTreeRefresh();
- SetStatusBarText('Rolle hinzugefuegt');
- }
- }
-}
-
-// ****
-// * Druckt die Instkriptionsbestaetigung
-// ****
-function StudentPrintInskriptionsbestaetigung()
-{
- tree = document.getElementById('student-tree');
- //Alle markierten Studenten holen
- var start = new Object();
- var end = new Object();
- var numRanges = tree.view.selection.getRangeCount();
- var paramList= '';
- var anzahl=0;
-
- for (var t = 0; t < numRanges; t++)
- {
- tree.view.selection.getRangeAt(t,start,end);
- for (var v = start.value; v <= end.value; v++)
- {
- col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
- uid = tree.view.getCellText(v,col);
- paramList += ';'+uid;
- anzahl = anzahl+1;
- }
- }
-
- if(anzahl>0)
- window.open('content/pdfExport.php?xml=student.rdf.php&xsl=Inskription&uid='+paramList,'Inskriptionsbestaetigung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
- else
- alert('Bitte einen Studenten auswaehlen');
-}
// **************** Incomming/Outgoing ******************
@@ -2337,6 +2348,14 @@ function StudentLvGesamtNotenTreeSelectID()
}
}
+// ***
+// * Disabled/Enabled die Nodenfelder
+// ***
+function StudentNoteDisableFields(val)
+{
+ document.getElementById('student-note-copy').disabled=val;
+}
+
// ***
// * Disabled/Enabled die Detailfelder
// ***
diff --git a/include/bankverbindung.class.php b/include/bankverbindung.class.php
index 9ebc89e1e..58100501c 100644
--- a/include/bankverbindung.class.php
+++ b/include/bankverbindung.class.php
@@ -197,7 +197,6 @@ class bankverbindung
*/
function save()
{
- $this->done=false;
//Variablen pruefen
if(!$this->checkvars())
return false;
@@ -220,7 +219,6 @@ class bankverbindung
($this->verrechnung?'true':'false').', now(), '.
$this->addslashes($this->insertvon).', now(), '.
$this->addslashes($this->updatevon).');';
- $this->done=true;
}
else
{
@@ -237,66 +235,36 @@ class bankverbindung
$this->errormsg = 'person_id muss eine gueltige Zahl sein: '.$this->person_id.'';
return false;
}
- $qryz="SELECT * FROM public.tbl_bankverbindung WHERE bankverbindung_id='$this->bankverbindung_id';";
- if($resultz = pg_query($this->conn, $qryz))
- {
- if($rowz = pg_fetch_object($resultz))
- {
- $update=false;
- if($rowz->person_id!=$this->person_id) $update=true;
- if($rowz->name!=$this->name) $update=true;
- if($rowz->anschrift!=$this->anschrift) $update=true;
- if($rowz->bic!=$this->bic) $update=true;
- if($rowz->blz!=$this->blz) $update=true;
- if($rowz->iban!=$this->iban) $update=true;
- if($rowz->kontonr!=$this->kontonr) $update=true;
- if($rowz->typ!=$this->typ) $update=true;
- if($rowz->verrechnung!=$this->verrechnung) $update=true;
- if($rowz->ext_id!=$this->ext_id) $update=true;
- if($update)
- {
- $qry='UPDATE public.tbl_bankverbindung SET '.
- 'person_id='.$this->addslashes($this->person_id).', '.
- 'name='.$this->addslashes($this->name).', '.
- 'anschrift='.$this->addslashes($this->anschrift).', '.
- 'blz='.$this->addslashes($this->blz).', '.
- 'bic='.$this->addslashes($this->bic).', '.
- 'kontonr='.$this->addslashes($this->kontonr).', '.
- 'iban='.$this->addslashes($this->iban).', '.
- 'typ='.$this->addslashes($this->typ).', '.
- 'verrechnung='.($this->verrechnung?'true':'false').', '.
- 'ext_id='.$this->addslashes($this->ext_id).' '.
- 'WHERE bankverbindung_id='.$this->addslashes($this->bankverbindung_id).';';
- $this->done=true;
- }
- }
- }
+ $qry='UPDATE public.tbl_bankverbindung SET '.
+ 'person_id='.$this->addslashes($this->person_id).', '.
+ 'name='.$this->addslashes($this->name).', '.
+ 'anschrift='.$this->addslashes($this->anschrift).', '.
+ 'blz='.$this->addslashes($this->blz).', '.
+ 'bic='.$this->addslashes($this->bic).', '.
+ 'kontonr='.$this->addslashes($this->kontonr).', '.
+ 'iban='.$this->addslashes($this->iban).', '.
+ 'typ='.$this->addslashes($this->typ).', '.
+ 'verrechnung='.($this->verrechnung?'true':'false').', '.
+ 'ext_id='.$this->addslashes($this->ext_id).', '.
+ 'updateamum='.$this->addslashes($this->updateamum).','.
+ 'updatevon='.$this->addslashes($this->updatevon).' '.
+ 'WHERE bankverbindung_id='.$this->addslashes($this->bankverbindung_id).';';
}
-
- if ($this->done)
+ //echo $qry."\n";
+ if(pg_query($this->conn, $qry))
{
- //echo $qry."\n";
- if(pg_query($this->conn, $qry))
+ if($this->new)
{
- if($this->new)
+ //Sequence auslesen
+ $qry = "SELECT currval('public.tbl_bankverbindung_bankverbindung_id_seq') as id";
+ if($result = pg_query($this->conn, $qry))
{
- //Sequence auslesen
- $qry = "SELECT currval('public.tbl_bankverbindung_bankverbindung_id_seq') as id";
- if($result = pg_query($this->conn, $qry))
+ if($row = pg_fetch_object($result))
{
- if($row = pg_fetch_object($result))
- {
- $this->bankverbindung_id = $row->id;
- pg_query($this->conn, 'COMMIT');
- return true;
- }
- else
- {
- $this->errormsg = 'Fehler beim Auslesen der Sequence';
- pg_query($this->conn, 'ROLLBACK');
- return false;
- }
+ $this->bankverbindung_id = $row->id;
+ pg_query($this->conn, 'COMMIT');
+ return true;
}
else
{
@@ -305,17 +273,19 @@ class bankverbindung
return false;
}
}
- return true;
- }
- else
- {
- $this->errormsg = 'Fehler beim Speichern der Daten';
- return false;
+ else
+ {
+ $this->errormsg = 'Fehler beim Auslesen der Sequence';
+ pg_query($this->conn, 'ROLLBACK');
+ return false;
+ }
}
+ return true;
}
else
{
- return true;
+ $this->errormsg = 'Fehler beim Speichern der Daten';
+ return false;
}
}
diff --git a/include/kontakt.class.php b/include/kontakt.class.php
index b6a4af6b7..043e4f658 100644
--- a/include/kontakt.class.php
+++ b/include/kontakt.class.php
@@ -30,7 +30,6 @@ class kontakt
var $new; // @var boolean
var $errormsg; // @var string
var $result = array(); // @var adresse Objekt
- var $done=false; // @var boolean
//Tabellenspalten
Var $kontakt_id; // @var integer
@@ -46,6 +45,9 @@ class kontakt
var $updateamum; // @var timestamp
var $updatevon; // @var bigint
+ var $beschreibung;
+ var $firma_name;
+
/**
* Konstruktor
* @param $conn Connection
@@ -84,7 +86,7 @@ class kontakt
return false;
}
- $qry = "SELECT * FROM public.tbl_kontakt WHERE kontakt_id='$kontakt_id'";
+ $qry = "SELECT tbl_kontakt.*, tbl_firma.name as firma_name FROM public.tbl_kontakt LEFT JOIN public.tbl_firma USING(firma_id) WHERE kontakt_id='$kontakt_id'";
if($result = pg_query($this->conn, $qry))
{
@@ -93,6 +95,7 @@ class kontakt
$this->kontakt_id = $row->kontakt_id;
$this->person_id = $row->person_id;
$this->firma_id = $row->firma_id;
+ $this->firma_name = $row->firma_name;
$this->kontakttyp = $row->kontakttyp;
$this->anmerkung = $row->anmerkung;
$this->kontakt = $row->kontakt;
@@ -163,7 +166,6 @@ class kontakt
*/
function save()
{
- $this->done=false;
//Variablen pruefen
if(!$this->checkvars())
return false;
@@ -181,8 +183,7 @@ class kontakt
($this->zustellung?'true':'false').', '.
$this->addslashes($this->ext_id).', now(), '.
$this->addslashes($this->insertvon).', now(), '.
- $this->addslashes($this->updatevon).');';
- $this->done=true;
+ $this->addslashes($this->updatevon).');';
}
else
{
@@ -194,88 +195,63 @@ class kontakt
$this->errormsg = 'kontakt_id muss eine gueltige Zahl sein: '.$this->kontakt_id.' ('.$this->person_id.')';
return false;
}
- $qry="SELECT * FROM tbl_kontakt WHERE kontakt_id='$this->kontakt_id';";
- if($resultz = pg_query($this->conn, $qry))
- {
- if($rowz = pg_fetch_object($resultz))
- {
- $update=false;
- if($rowz->person_id!=$this->person_id) $update=true;
- if($rowz->firma_id!=$this->firma_id) $update=true;
- if($rowz->kontakttyp!=$this->kontakttyp) $update=true;
- if($rowz->anmerkung!=$this->anmerkung) $update=true;
- if($rowz->kontakt!=$this->kontakt) $update=true;
- if($rowz->zustellung!=$this->zustellung) $update=true;
- if($rowz->ext_id!=$this->ext_id) $update=true;
-
- if($update)
- {
- $qry='UPDATE tbl_kontakt SET '.
- 'person_id='.$this->addslashes($this->person_id).', '.
- 'firma_id='.$this->addslashes($this->firma_id).', '.
- 'kontakttyp='.$this->addslashes($this->kontakttyp).', '.
- 'anmerkung='.$this->addslashes($this->anmerkung).', '.
- 'kontakt='.$this->addslashes($this->kontakt).', '.
- 'zustellung='.($this->zustellung?'true':'false').', '.
- 'ext_id='.$this->addslashes($this->ext_id).', '.
- 'updateamum= now(), '.
- 'updatevon='.$this->addslashes($this->updatevon).' '.
- 'WHERE kontakt_id='.$this->addslashes($this->kontakt_id).';';
- $this->done=true;
- }
- }
- }
+
+ $qry='UPDATE tbl_kontakt SET '.
+ 'person_id='.$this->addslashes($this->person_id).', '.
+ 'firma_id='.$this->addslashes($this->firma_id).', '.
+ 'kontakttyp='.$this->addslashes($this->kontakttyp).', '.
+ 'anmerkung='.$this->addslashes($this->anmerkung).', '.
+ 'kontakt='.$this->addslashes($this->kontakt).', '.
+ 'zustellung='.($this->zustellung?'true':'false').', '.
+ 'ext_id='.$this->addslashes($this->ext_id).', '.
+ 'updateamum= now(), '.
+ 'updatevon='.$this->addslashes($this->updatevon).' '.
+ 'WHERE kontakt_id='.$this->addslashes($this->kontakt_id).';';
}
- //echo $qry;
- if ($this->done)
+
+ if(pg_query($this->conn, $qry))
{
- if(pg_query($this->conn, $qry))
+ //Sequence auslesen um die eingefuegte ID zu ermitteln
+ if($this->new)
{
- if($this->new)
+ $qry = "SELECT currval('public.tbl_kontakt_kontakt_id_seq') as id";
+
+ if($result = pg_query($this->conn, $qry))
{
- $qry = "SELECT currval('public.tbl_kontakt_kontakt_id_seq') as id";
-
- if($result = pg_query($this->conn, $qry))
+ if($row = pg_fetch_object($result))
{
- if($row = pg_fetch_object($result))
- {
- $this->kontakt_id = $row->id;
- pg_query($this->conn, 'COMMIT');
- return true;
- }
- else
- {
- $this->errormsg = 'Fehler beim Auslesen er Sequence';
- pg_query($this->conn, 'ROLLBACK');
- return false;
- }
+ $this->kontakt_id = $row->id;
+ pg_query($this->conn, 'COMMIT');
+ return true;
}
else
{
- $this->errormsg = 'Fehler beim Auslesen der Sequence';
+ $this->errormsg = 'Fehler beim Auslesen er Sequence';
pg_query($this->conn, 'ROLLBACK');
return false;
}
- }
- return true;
- }
- else
- {
- $this->errormsg = 'Fehler beim Speichern der Daten';
- return false;
- }
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Auslesen der Sequence';
+ pg_query($this->conn, 'ROLLBACK');
+ return false;
+ }
+ }
+ return true;
}
else
{
- return true;
+ $this->errormsg = 'Fehler beim Speichern der Daten';
+ return false;
}
}
- /**
- * Loescht den Datenensatz mit der ID die uebergeben wird
- * @param $kontakt_id ID die geloescht werden soll
- * @return true wenn ok, false im Fehlerfall
- */
+ // **
+ // * Loescht den Datenensatz mit der ID die uebergeben wird
+ // * @param $kontakt_id ID die geloescht werden soll
+ // * @return true wenn ok, false im Fehlerfall
+ // **
function delete($kontakt_id)
{
if(!is_numeric($kontakt_id))
@@ -306,7 +282,7 @@ class kontakt
return false;
}
- $qry = "SELECT * FROM public.tbl_kontakt WHERE person_id='$person_id'";
+ $qry = "SELECT tbl_kontakt.*, tbl_firma.name as firma_name FROM public.tbl_kontakt LEFT JOIN public.tbl_firma USING(firma_id) WHERE person_id='$person_id'";
if($result = pg_query($this->conn, $qry))
{
@@ -317,10 +293,11 @@ class kontakt
$obj->kontakt_id = $row->kontakt_id;
$obj->person_id = $row->person_id;
$obj->firma_id = $row->firma_id;
+ $obj->firma_name = $row->firma_name;
$obj->kontakttyp = $row->kontakttyp;
$obj->anmerkung = $row->anmerkung;
$obj->kontakt = $row->kontakt;
- $obj->zustellung = $row->zustellung;
+ $obj->zustellung = ($row->zustellung=='t'?true:false);
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
@@ -331,5 +308,34 @@ class kontakt
}
}
}
+
+ // **************************
+ // * Laedt alle Kontakttypen
+ // * @return true wenn ok
+ // * false im Fehlerfall
+ // **************************
+ function getKontakttyp()
+ {
+ $qry = "SELECT * FROM public.tbl_kontakttyp ORDER BY beschreibung";
+
+ if($result = pg_query($this->conn, $qry))
+ {
+ while($row = pg_fetch_object($result))
+ {
+ $obj = new kontakt($this->conn, null, null);
+
+ $obj->kontakttyp = $row->kontakttyp;
+ $obj->beschreibung = $row->beschreibung;
+
+ $this->result[] = $obj;
+ }
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Daten';
+ return false;
+ }
+ }
}
?>
\ No newline at end of file
diff --git a/rdf/kontakt.rdf.php b/rdf/kontakt.rdf.php
index a67397558..798086f5f 100644
--- a/rdf/kontakt.rdf.php
+++ b/rdf/kontakt.rdf.php
@@ -84,6 +84,7 @@ function draw_rdf($row)
kontakt_id.']]>
person_id.']]>
firma_id.']]>
+ firma_name.']]>
kontakttyp.']]>
anmerkung.']]>
kontakt.']]>
diff --git a/rdf/kontakttyp.rdf.php b/rdf/kontakttyp.rdf.php
new file mode 100644
index 000000000..f0a8cd0c6
--- /dev/null
+++ b/rdf/kontakttyp.rdf.php
@@ -0,0 +1,72 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+// header für no cache
+header("Cache-Control: no-cache");
+header("Cache-Control: post-check=0, pre-check=0",false);
+header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
+header("Pragma: no-cache");
+// content type setzen
+header("Content-type: application/xhtml+xml");
+// xml
+echo '';
+// DAO
+require_once('../vilesci/config.inc.php');
+require_once('../include/kontakt.class.php');
+
+// Datenbank Verbindung
+if (!$conn = pg_pconnect(CONN_STRING))
+ die('Es konnte keine Verbindung zum Server aufgebaut werden!');
+
+$kontakt = new kontakt($conn, null, true);
+
+$rdf_url='http://www.technikum-wien.at/kontakttyp';
+
+echo '
+
+
+
+';
+
+if($kontakt->getKontakttyp())
+{
+ foreach ($kontakt->result as $row)
+ {
+ echo '
+
+
+ kontakttyp.']]>
+ beschreibung.']]>
+
+
+ ';
+ }
+}
+else
+{
+ echo $kontakt->errormsg;
+}
+?>
+
+
\ No newline at end of file