Merge branch 'feature-8528/BIS-Meldung_Studierendenmeldung_anpassen'

This commit is contained in:
Andreas Österreicher
2020-10-20 14:06:55 +02:00
11 changed files with 2860 additions and 2437 deletions
+3 -1
View File
@@ -249,7 +249,9 @@ define('BIS_FUNKTIONSCODE_6_ARR', array(
'Team'
));
// Standortcode fuer Lehrgaenge
define('BIS_STANDORTCODE_LEHRGAENGE', '0');
// bPk Abfrage
define('BPK_FUER_ALLE_BENUTZER_ABFRAGEN', false);
?>
+206 -203
View File
@@ -1,204 +1,207 @@
<?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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
$user = get_uid();
loadVariables($user);
?>
// ****
// * Laedt die zu bearbeitenden Daten
// ****
function AdresseInit(adresse_id, person_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if(adresse_id!='')
{
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/adresse.rdf.php?adresse_id='+adresse_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/adresse/" + adresse_id);
var predicateNS = "http://www.technikum-wien.at/adresse/rdf";
//RDF parsen
person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
name = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#name" ));
strasse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#strasse" ));
plz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#plz" ));
ort = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#ort" ));
gemeinde = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#gemeinde" ));
nation = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#nation" ));
typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#typ" ));
heimatadresse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#heimatadresse" ));
zustelladresse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zustelladresse" ));
firma_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#firma_id" ));
rechnungsadresse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#rechnungsadresse" ));
anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
neu = false;
}
else
{
//Defaultwerte bei Neuem Datensatz
neu = true;
name='';
strasse='';
plz='';
ort='';
gemeinde=''
nation='A';
typ='h';
heimatadresse='Ja';
zustelladresse='Ja';
firma_id='';
rechnungsadresse='Nein';
anmerkung='';
}
document.getElementById('adresse-checkbox-neu').checked=neu;
document.getElementById('adresse-textbox-person_id').value=person_id;
document.getElementById('adresse-textbox-adresse_id').value=adresse_id;
document.getElementById('adresse-textbox-name').value=name;
document.getElementById('adresse-textbox-strasse').value=strasse;
document.getElementById('adresse-textbox-plz').value=plz;
AdresseLoadGemeinde(true);
document.getElementById('adresse-textbox-gemeinde').value=gemeinde;
AdresseLoadOrtschaft(true);
document.getElementById('adresse-textbox-ort').value=ort;
document.getElementById('adresse-menulist-nation').value=nation;
document.getElementById('adresse-menulist-typ').value=typ;
if(heimatadresse=='Ja')
document.getElementById('adresse-checkbox-heimatadresse').checked=true;
else
document.getElementById('adresse-checkbox-heimatadresse').checked=false;
if(zustelladresse=='Ja')
document.getElementById('adresse-checkbox-zustelladresse').checked=true;
else
document.getElementById('adresse-checkbox-zustelladresse').checked=false;
document.getElementById('adresse-menulist-firma').value=firma_id;
document.getElementById('adresse-textbox-anmerkung').value=anmerkung;
if(rechnungsadresse=='Ja')
document.getElementById('adresse-checkbox-rechnungsadresse').checked=true;
else
document.getElementById('adresse-checkbox-rechnungsadresse').checked=false;
}
// ****
// * Speichern der Daten
// ****
function AdresseSpeichern()
{
if(window.opener.KontaktAdresseSpeichern(document))
window.close();
else
this.focus();
}
// ****
// * Laedt die Gemeinden zur eingegebenen Postleitzahl
// ****
function AdresseLoadGemeinde(blocking)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
menulist_gemeinde = document.getElementById('adresse-textbox-gemeinde');
if(document.getElementById('adresse-menulist-nation').value=='A')
{
menulist_gemeinde.value='';
document.getElementById('adresse-textbox-ort').value='';
}
plz = document.getElementById('adresse-textbox-plz').value;
if(plz.length>3)
{
var url = '<?php echo APP_ROOT; ?>rdf/gemeinde.rdf.php?plz='+plz+'&'+gettimestamp();
var oldDatasources = menulist_gemeinde.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
menulist_gemeinde.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
menulist_gemeinde.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
if(blocking)
var datasource = rdfService.GetDataSourceBlocking(url);
else
var datasource = rdfService.GetDataSource(url);
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
menulist_gemeinde.database.AddDataSource(datasource);
menulist_gemeinde.builder.rebuild();
}
}
// ****
// * Laedt die Ortschaften zu Plz und Gemeinde
// ****
function AdresseLoadOrtschaft(blocking)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
gemeinde = document.getElementById('adresse-textbox-gemeinde').value;
menulist_ort = document.getElementById('adresse-textbox-ort');
if(document.getElementById('adresse-menulist-nation').value=='A')
{
menulist_ort.value='';
}
plz = document.getElementById('adresse-textbox-plz').value;
if(plz.length>3 && gemeinde!='')
{
var url = '<?php echo APP_ROOT; ?>rdf/gemeinde.rdf.php?plz='+plz+'&gemeinde='+encodeURIComponent(gemeinde)+'&'+gettimestamp();
var oldDatasources = menulist_ort.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
menulist_ort.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
menulist_ort.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
if(blocking)
var datasource1 = rdfService.GetDataSourceBlocking(url);
else
var datasource1 = rdfService.GetDataSource(url);
datasource1.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource1.QueryInterface(Components.interfaces.nsIRDFXMLSink);
menulist_ort.database.AddDataSource(datasource1);
menulist_ort.builder.rebuild();
}
<?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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
$user = get_uid();
loadVariables($user);
?>
// ****
// * Laedt die zu bearbeitenden Daten
// ****
function AdresseInit(adresse_id, person_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if(adresse_id!='')
{
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/adresse.rdf.php?adresse_id='+adresse_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/adresse/" + adresse_id);
var predicateNS = "http://www.technikum-wien.at/adresse/rdf";
//RDF parsen
person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
name = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#name" ));
strasse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#strasse" ));
plz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#plz" ));
ort = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#ort" ));
gemeinde = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#gemeinde" ));
nation = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#nation" ));
typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#typ" ));
heimatadresse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#heimatadresse" ));
zustelladresse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zustelladresse" ));
co_name = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#co_name" ));
firma_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#firma_id" ));
rechnungsadresse = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#rechnungsadresse" ));
anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
neu = false;
}
else
{
//Defaultwerte bei Neuem Datensatz
neu = true;
name='';
strasse='';
plz='';
ort='';
gemeinde=''
nation='A';
typ='h';
heimatadresse='Ja';
zustelladresse='Ja';
co_name = '';
firma_id='';
rechnungsadresse='Nein';
anmerkung='';
}
document.getElementById('adresse-checkbox-neu').checked=neu;
document.getElementById('adresse-textbox-person_id').value=person_id;
document.getElementById('adresse-textbox-adresse_id').value=adresse_id;
document.getElementById('adresse-textbox-name').value=name;
document.getElementById('adresse-textbox-strasse').value=strasse;
document.getElementById('adresse-textbox-plz').value=plz;
AdresseLoadGemeinde(true);
document.getElementById('adresse-textbox-gemeinde').value=gemeinde;
AdresseLoadOrtschaft(true);
document.getElementById('adresse-textbox-ort').value=ort;
document.getElementById('adresse-menulist-nation').value=nation;
document.getElementById('adresse-menulist-typ').value=typ;
if(heimatadresse=='Ja')
document.getElementById('adresse-checkbox-heimatadresse').checked=true;
else
document.getElementById('adresse-checkbox-heimatadresse').checked=false;
if(zustelladresse=='Ja')
document.getElementById('adresse-checkbox-zustelladresse').checked=true;
else
document.getElementById('adresse-checkbox-zustelladresse').checked=false;
document.getElementById('adresse-textbox-co_name').value = co_name;
document.getElementById('adresse-menulist-firma').value=firma_id;
document.getElementById('adresse-textbox-anmerkung').value=anmerkung;
if(rechnungsadresse=='Ja')
document.getElementById('adresse-checkbox-rechnungsadresse').checked=true;
else
document.getElementById('adresse-checkbox-rechnungsadresse').checked=false;
}
// ****
// * Speichern der Daten
// ****
function AdresseSpeichern()
{
if(window.opener.KontaktAdresseSpeichern(document))
window.close();
else
this.focus();
}
// ****
// * Laedt die Gemeinden zur eingegebenen Postleitzahl
// ****
function AdresseLoadGemeinde(blocking)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
menulist_gemeinde = document.getElementById('adresse-textbox-gemeinde');
if(document.getElementById('adresse-menulist-nation').value=='A')
{
menulist_gemeinde.value='';
document.getElementById('adresse-textbox-ort').value='';
}
plz = document.getElementById('adresse-textbox-plz').value;
if(plz.length>3)
{
var url = '<?php echo APP_ROOT; ?>rdf/gemeinde.rdf.php?plz='+plz+'&'+gettimestamp();
var oldDatasources = menulist_gemeinde.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
menulist_gemeinde.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
menulist_gemeinde.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
if(blocking)
var datasource = rdfService.GetDataSourceBlocking(url);
else
var datasource = rdfService.GetDataSource(url);
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
menulist_gemeinde.database.AddDataSource(datasource);
menulist_gemeinde.builder.rebuild();
}
}
// ****
// * Laedt die Ortschaften zu Plz und Gemeinde
// ****
function AdresseLoadOrtschaft(blocking)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
gemeinde = document.getElementById('adresse-textbox-gemeinde').value;
menulist_ort = document.getElementById('adresse-textbox-ort');
if(document.getElementById('adresse-menulist-nation').value=='A')
{
menulist_ort.value='';
}
plz = document.getElementById('adresse-textbox-plz').value;
if(plz.length>3 && gemeinde!='')
{
var url = '<?php echo APP_ROOT; ?>rdf/gemeinde.rdf.php?plz='+plz+'&gemeinde='+encodeURIComponent(gemeinde)+'&'+gettimestamp();
var oldDatasources = menulist_ort.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
menulist_ort.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
menulist_ort.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
if(blocking)
var datasource1 = rdfService.GetDataSourceBlocking(url);
else
var datasource1 = rdfService.GetDataSource(url);
datasource1.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource1.QueryInterface(Components.interfaces.nsIRDFXMLSink);
menulist_ort.database.AddDataSource(datasource1);
menulist_ort.builder.rebuild();
}
}
+205 -198
View File
@@ -1,199 +1,206 @@
<?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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
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('../config/vilesci.config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
if(isset($_GET['adresse_id']) && is_numeric($_GET['adresse_id']))
$adresse_id=$_GET['adresse_id'];
else
$adresse_id='';
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
$person_id=$_GET['person_id'];
else
$person_id='';
?>
<window id="adresse-dialog" title="Adresse"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="AdresseInit(<?php echo ($adresse_id!=''?$adresse_id:"''").','.($person_id!=''?$person_id:"''"); ?>)"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/adressedialog.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<vbox>
<textbox id="adresse-textbox-adresse_id" hidden="true"/>
<textbox id="adresse-textbox-person_id" hidden="true"/>
<checkbox id="adresse-checkbox-neu" hidden="true"/>
<groupbox id="adresse-groupbox" flex="1">
<caption label="Details"/>
<grid id="adresse-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="Typ" control="adresse-menulist-typ"/>
<menulist id="adresse-menulist-typ"
flex="1">
<menupopup>
<menuitem value="h" label="Hauptwohnsitz"/>
<menuitem value="n" label="Nebenwohnsitz"/>
<menuitem value="f" label="Firma"/>
<menuitem value="r" label="Rechnungsadresse"/>
</menupopup>
</menulist>
</row>
<row>
<label value="Strasse" control="adresse-textbox-strasse"/>
<hbox>
<textbox id="adresse-textbox-strasse" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Nation" control="adresse-menulist-nation"/>
<menulist id="adresse-menulist-nation"
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php" flex="1"
ref="http://www.technikum-wien.at/nation/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Plz" control="adresse-textbox-plz"/>
<hbox>
<textbox id="adresse-textbox-plz" maxlength="16" size="5" oninput="AdresseLoadGemeinde(false)"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Gemeinde" />
<!--<hbox>
<textbox id="adresse-textbox-gemeinde" maxlength="256" size="30" />
<spacer flex="1" />
</hbox>-->
<menulist id="adresse-textbox-gemeinde"
editable="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/gemeinde/liste"
oncommand="AdresseLoadOrtschaft(false)"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gemeinde/rdf#name"
label="rdf:http://www.technikum-wien.at/gemeinde/rdf#name"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Ortschaft" control="adresse-textbox-ort"/>
<!--<hbox>
<textbox id="adresse-textbox-ort" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>-->
<menulist id="adresse-textbox-ort"
editable="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/gemeinde/liste"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gemeinde/rdf#ortschaftsname"
label="rdf:http://www.technikum-wien.at/gemeinde/rdf#ortschaftsname"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Heimatadresse" control="adresse-checkbox-heimatadresse"/>
<checkbox id="adresse-checkbox-heimatadresse" checked="true"/>
</row>
<row>
<label value="Zustelladresse" control="adresse-checkbox-zustelladresse"/>
<checkbox id="adresse-checkbox-zustelladresse" checked="true"/>
</row>
<row>
<label value="Rechnungsadresse" control="adresse-checkbox-rechnungsadresse"/>
<checkbox id="adresse-checkbox-rechnungsadresse" checked="true"/>
</row>
<row>
<label value="Firma" control="adresse-menulist-firma"/>
<!--
<menulist id="adresse-menulist-firma"
datasources="<?php echo APP_ROOT ?>rdf/firma.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/firma/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/firma/rdf#firma_id"
label="rdf:http://www.technikum-wien.at/firma/rdf#name"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
-->
<box class="Firma" id="adresse-menulist-firma" />
</row>
<row>
<label value="Name" control="adresse-textbox-name"/>
<hbox>
<textbox id="adresse-textbox-name" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Anmerkung" control="adresse-textbox-anmerkung"/>
<textbox id="adresse-textbox-anmerkung" multiline="true"/>
</row>
</rows>
</grid>
<hbox>
<spacer flex="1" />
<button id="adresse-button-speichern" oncommand="AdresseSpeichern()" label="Speichern" />
</hbox>
</groupbox>
</vbox>
<?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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
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('../config/vilesci.config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
if(isset($_GET['adresse_id']) && is_numeric($_GET['adresse_id']))
$adresse_id=$_GET['adresse_id'];
else
$adresse_id='';
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
$person_id=$_GET['person_id'];
else
$person_id='';
?>
<window id="adresse-dialog" title="Adresse"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="AdresseInit(<?php echo ($adresse_id!=''?$adresse_id:"''").','.($person_id!=''?$person_id:"''"); ?>)"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/adressedialog.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<vbox>
<textbox id="adresse-textbox-adresse_id" hidden="true"/>
<textbox id="adresse-textbox-person_id" hidden="true"/>
<checkbox id="adresse-checkbox-neu" hidden="true"/>
<groupbox id="adresse-groupbox" flex="1">
<caption label="Details"/>
<grid id="adresse-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="Typ" control="adresse-menulist-typ"/>
<menulist id="adresse-menulist-typ"
flex="1">
<menupopup>
<menuitem value="h" label="Hauptwohnsitz"/>
<menuitem value="n" label="Nebenwohnsitz"/>
<menuitem value="f" label="Firma"/>
<menuitem value="r" label="Rechnungsadresse"/>
</menupopup>
</menulist>
</row>
<row>
<label value="Strasse" control="adresse-textbox-strasse"/>
<hbox>
<textbox id="adresse-textbox-strasse" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Nation" control="adresse-menulist-nation"/>
<menulist id="adresse-menulist-nation"
datasources="<?php echo APP_ROOT ?>rdf/nation.rdf.php" flex="1"
ref="http://www.technikum-wien.at/nation/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/nation/rdf#nation_code"
label="rdf:http://www.technikum-wien.at/nation/rdf#kurztext"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Plz" control="adresse-textbox-plz"/>
<hbox>
<textbox id="adresse-textbox-plz" maxlength="16" size="5" oninput="AdresseLoadGemeinde(false)"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Gemeinde" />
<!--<hbox>
<textbox id="adresse-textbox-gemeinde" maxlength="256" size="30" />
<spacer flex="1" />
</hbox>-->
<menulist id="adresse-textbox-gemeinde"
editable="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/gemeinde/liste"
oncommand="AdresseLoadOrtschaft(false)"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gemeinde/rdf#name"
label="rdf:http://www.technikum-wien.at/gemeinde/rdf#name"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Ortschaft" control="adresse-textbox-ort"/>
<!--<hbox>
<textbox id="adresse-textbox-ort" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>-->
<menulist id="adresse-textbox-ort"
editable="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/gemeinde/liste"
>
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gemeinde/rdf#ortschaftsname"
label="rdf:http://www.technikum-wien.at/gemeinde/rdf#ortschaftsname"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Heimatadresse" control="adresse-checkbox-heimatadresse"/>
<checkbox id="adresse-checkbox-heimatadresse" checked="true"/>
</row>
<row>
<label value="Zustelladresse" control="adresse-checkbox-zustelladresse"/>
<checkbox id="adresse-checkbox-zustelladresse" checked="true"/>
</row>
<row>
<label value="Abweichender Empfänger (c/o)" control="adresse-textbox-co_name"/>
<hbox>
<textbox id="adresse-textbox-co_name" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Rechnungsadresse" control="adresse-checkbox-rechnungsadresse"/>
<checkbox id="adresse-checkbox-rechnungsadresse" checked="true"/>
</row>
<row>
<label value="Firma" control="adresse-menulist-firma"/>
<!--
<menulist id="adresse-menulist-firma"
datasources="<?php echo APP_ROOT ?>rdf/firma.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/firma/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/firma/rdf#firma_id"
label="rdf:http://www.technikum-wien.at/firma/rdf#name"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
-->
<box class="Firma" id="adresse-menulist-firma" />
</row>
<row>
<label value="Name" control="adresse-textbox-name"/>
<hbox>
<textbox id="adresse-textbox-name" maxlength="256" size="30"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Anmerkung" control="adresse-textbox-anmerkung"/>
<textbox id="adresse-textbox-anmerkung" multiline="true"/>
</row>
</rows>
</grid>
<hbox>
<spacer flex="1" />
<button id="adresse-button-speichern" oncommand="AdresseSpeichern()" label="Speichern" />
</hbox>
</groupbox>
</vbox>
</window>
+823 -822
View File
File diff suppressed because it is too large Load Diff
+799 -797
View File
File diff suppressed because it is too large Load Diff
+343 -338
View File
@@ -1,338 +1,343 @@
<?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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
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");
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
$person_id = $_GET['person_id'];
else
die('Parameter person_id muss uebergeben werden');
$uid = get_uid();
?>
<window id="kontakt-window" title="Kontakt"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadKontakte(<?php echo $person_id; ?>);"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/kontakt.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<vbox>
<!-- ADRESSEN -->
<groupbox id="kontakt-groupbox-adresse">
<caption label="Adressen" />
<hbox>
<tree id="kontakt-adressen-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/adresse/liste"
ondblclick="KontaktAdresseBearbeiten()"
flags="dont-build-content"
enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height"
>
<treecols>
<treecol id="kontakt-adressen-treecol-typ" label="Typ" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#typ_name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-strasse" label="Strasse" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#strasse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-plz" label="Plz" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#plz" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-ort" label="Ort" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#ort" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-gemeinde" label="Gemeinde" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#gemeinde" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-nation" label="Nation" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#nation" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-heimatadresse" label="Heimatadresse" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#heimatadresse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-zustelladresse" label="Zustelladresse" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#zustelladresse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-firma_id" label="Firma_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#firma_id" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-adresse_id" label="Adresse_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#adresse_id" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-person_id" label="Person_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#person_id" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-name" label="Name" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-updateamum" label="letzte Aenderung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#updateamum" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-firma_name" label="Firma" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#firma_name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-rechnungsadresse" label="Rechnungsadresse" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#rechnungsadresse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-anmerkung" label="Anmerkung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#anmerkung" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#typ_name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#strasse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#plz" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#ort" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#gemeinde" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#nation" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#heimatadresse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#zustelladresse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#firma_id" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#adresse_id" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#updateamum" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#firma_name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#rechnungsadresse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#anmerkung" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id='kontakt-adressen-neu' label='Neu' oncommand='KontaktAdresseNeu()' />
<button id='kontakt-adressen-bearbeiten' label='Bearbeiten' oncommand='KontaktAdresseBearbeiten()' />
<button id='kontakt-adressen-loeschen' label='Loeschen' oncommand='KontaktAdresseDelete()' />
</vbox>
</hbox>
</groupbox>
<groupbox id="kontakt-groupbox-adresse">
<caption label="Kontakt" />
<hbox>
<tree id="kontakt-kontakt-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/kontakt/liste"
ondblclick="KontaktKontaktBearbeiten();"
flags="dont-build-content"
enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height"
>
<treecols>
<treecol id="kontakt-kontakt-treecol-kontakttyp" label="Typ" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakttyp" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-kontakt" label="Kontakt" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-zustellung" label="Zustellung" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#zustellung" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-anmerkung" label="Anmerkung" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#anmerkung" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-firma_name" label="Firma" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_name" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-firma_id" label="Firma_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_id" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-person_id" label="Person_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#person_id" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-kontakt_id" label="Kontakt_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt_id" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-updateamum" label="letzte Aenderung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#updateamum" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakttyp" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#zustellung" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#anmerkung" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_name" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_id" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt_id" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#updateamum" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="kontakt-kontakt-neu" label="Neu" oncommand="KontaktKontaktNeu()" />
<button id="kontakt-kontakt-bearbeiten" label="Bearbeiten" oncommand="KontaktKontaktBearbeiten()" />
<button id="kontakt-kontakt-loeschen" label="Loeschen" oncommand="KontaktKontaktDelete()" />
</vbox>
</hbox>
</groupbox>
<?php
$recht = new benutzerberechtigung();
$recht->getBerechtigungen($uid);
if($recht->isberechtigt('mitarbeiter/bankdaten') || $recht->isberechtigt('student/bankdaten'))
echo '
<groupbox id="kontakt-groupbox-bankverbindung">
<caption label="Bankverbindungen" />
<hbox>
<tree id="kontakt-bankverbindung-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/bankverbindung/liste"
ondblclick="KontaktBankverbindungBearbeiten()"
flags="dont-build-content"
enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height"
>
<treecols>
<treecol id="kontakt-bankverbindung-treecol-name" label="Name" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#name" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-anschrift" label="Anschrift" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#anschrift" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-bic" label="BIC" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bic" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-blz" label="BLZ" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#blz" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-iban" label="IBAN" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#iban" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-kontonr" label="Kontonummer" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#kontonr" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-typ_bezeichnung" label="Typ" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#typ_bezeichnung" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-verrechnung" label="Verrechnung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#verrechnung" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-person_id" label="Person_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#person_id" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-bankverbindung_id" label="Bankverbindung_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bankverbindung_id" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#name" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#anschrift" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bic" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#blz" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#iban" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#kontonr" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#typ_bezeichnung" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#verrechnung" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bankverbindung_id" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="kontakt-bankverbindung-neu" label="Neu" oncommand="KontaktBankverbindungNeu()" />
<button id="kontakt-bankverbindung-bearbeiten" label="Bearbeiten" oncommand="KontaktBankverbindungBearbeiten()" />
<button id="kontakt-bankverbindung-loeschen" label="Loeschen" oncommand="KontaktBankverbindungDelete()" />
</vbox>
</hbox>
</groupbox>';
?>
</vbox>
</window>
<?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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
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");
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
$person_id = $_GET['person_id'];
else
die('Parameter person_id muss uebergeben werden');
$uid = get_uid();
?>
<window id="kontakt-window" title="Kontakt"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadKontakte(<?php echo $person_id; ?>);"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/kontakt.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<vbox>
<!-- ADRESSEN -->
<groupbox id="kontakt-groupbox-adresse">
<caption label="Adressen" />
<hbox>
<tree id="kontakt-adressen-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/adresse/liste"
ondblclick="KontaktAdresseBearbeiten()"
flags="dont-build-content"
enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height"
>
<treecols>
<treecol id="kontakt-adressen-treecol-typ" label="Typ" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#typ_name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-strasse" label="Strasse" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#strasse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-plz" label="Plz" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#plz" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-ort" label="Ort" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#ort" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-gemeinde" label="Gemeinde" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#gemeinde" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-nation" label="Nation" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#nation" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-heimatadresse" label="Heimatadresse" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#heimatadresse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-zustelladresse" label="Zustelladresse" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#zustelladresse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-co_name" label="Abweich.Empf.(c/o)" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#co_name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-firma_id" label="Firma_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#firma_id" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-adresse_id" label="Adresse_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#adresse_id" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-person_id" label="Person_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#person_id" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-name" label="Name" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-updateamum" label="letzte Aenderung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#updateamum" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-firma_name" label="Firma" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#firma_name" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-rechnungsadresse" label="Rechnungsadresse" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#rechnungsadresse" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-adressen-treecol-anmerkung" label="Anmerkung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/adresse/rdf#anmerkung" onclick="KontaktAdresseTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#typ_name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#strasse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#plz" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#ort" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#gemeinde" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#nation" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#heimatadresse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#zustelladresse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#co_name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#firma_id" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#adresse_id" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#updateamum" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#firma_name" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#rechnungsadresse" />
<treecell label="rdf:http://www.technikum-wien.at/adresse/rdf#anmerkung" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id='kontakt-adressen-neu' label='Neu' oncommand='KontaktAdresseNeu()' />
<button id='kontakt-adressen-bearbeiten' label='Bearbeiten' oncommand='KontaktAdresseBearbeiten()' />
<button id='kontakt-adressen-loeschen' label='Loeschen' oncommand='KontaktAdresseDelete()' />
</vbox>
</hbox>
</groupbox>
<groupbox id="kontakt-groupbox-adresse">
<caption label="Kontakt" />
<hbox>
<tree id="kontakt-kontakt-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/kontakt/liste"
ondblclick="KontaktKontaktBearbeiten();"
flags="dont-build-content"
enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height"
>
<treecols>
<treecol id="kontakt-kontakt-treecol-kontakttyp" label="Typ" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakttyp" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-kontakt" label="Kontakt" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-zustellung" label="Zustellung" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#zustellung" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-anmerkung" label="Anmerkung" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#anmerkung" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-firma_name" label="Firma" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_name" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-firma_id" label="Firma_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_id" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-person_id" label="Person_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#person_id" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-kontakt_id" label="Kontakt_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt_id" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-kontakt-treecol-updateamum" label="letzte Aenderung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/kontakt/rdf#updateamum" onclick="KontaktKontaktTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakttyp" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#zustellung" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#anmerkung" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_name" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#firma_id" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#kontakt_id" />
<treecell label="rdf:http://www.technikum-wien.at/kontakt/rdf#updateamum" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="kontakt-kontakt-neu" label="Neu" oncommand="KontaktKontaktNeu()" />
<button id="kontakt-kontakt-bearbeiten" label="Bearbeiten" oncommand="KontaktKontaktBearbeiten()" />
<button id="kontakt-kontakt-loeschen" label="Loeschen" oncommand="KontaktKontaktDelete()" />
</vbox>
</hbox>
</groupbox>
<?php
$recht = new benutzerberechtigung();
$recht->getBerechtigungen($uid);
if($recht->isberechtigt('mitarbeiter/bankdaten') || $recht->isberechtigt('student/bankdaten'))
echo '
<groupbox id="kontakt-groupbox-bankverbindung">
<caption label="Bankverbindungen" />
<hbox>
<tree id="kontakt-bankverbindung-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/bankverbindung/liste"
ondblclick="KontaktBankverbindungBearbeiten()"
flags="dont-build-content"
enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height"
>
<treecols>
<treecol id="kontakt-bankverbindung-treecol-name" label="Name" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#name" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-anschrift" label="Anschrift" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#anschrift" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-bic" label="BIC" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bic" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-blz" label="BLZ" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#blz" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-iban" label="IBAN" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#iban" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-kontonr" label="Kontonummer" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#kontonr" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-typ_bezeichnung" label="Typ" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#typ_bezeichnung" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-verrechnung" label="Verrechnung" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#verrechnung" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-person_id" label="Person_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#person_id" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="kontakt-bankverbindung-treecol-bankverbindung_id" label="Bankverbindung_id" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bankverbindung_id" onclick="KontaktBankverbindungTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#name" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#anschrift" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bic" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#blz" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#iban" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#kontonr" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#typ_bezeichnung" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#verrechnung" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/bankverbindung/rdf#bankverbindung_id" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="kontakt-bankverbindung-neu" label="Neu" oncommand="KontaktBankverbindungNeu()" />
<button id="kontakt-bankverbindung-bearbeiten" label="Bearbeiten" oncommand="KontaktBankverbindungBearbeiten()" />
<button id="kontakt-bankverbindung-loeschen" label="Loeschen" oncommand="KontaktBankverbindungDelete()" />
</vbox>
</hbox>
</groupbox>';
?>
</vbox>
</window>
+18 -3
View File
@@ -43,6 +43,7 @@ class adresse extends basis_db
public $typ; // string
public $heimatadresse; // boolean
public $zustelladresse; // boolean
public $coname; // string
public $firma_id; // integer
public $updateamum; // timestamp
public $updatevon; // string
@@ -99,6 +100,7 @@ class adresse extends basis_db
$this->person_id = $row->person_id;
$this->plz = $row->plz;
$this->strasse = $row->strasse;
$this->co_name = $row->co_name;
$this->typ = $row->typ;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
@@ -161,6 +163,7 @@ class adresse extends basis_db
$adr_obj->insertamum = $row->insertamum;
$adr_obj->insertvon = $row->insertvon;
$adr_obj->zustelladresse = $this->db_parse_bool($row->zustelladresse);
$adr_obj->co_name = $row->co_name;
$adr_obj->rechnungsadresse = $this->db_parse_bool($row->rechnungsadresse);
$adr_obj->anmerkung = $row->anmerkung;
@@ -217,6 +220,7 @@ class adresse extends basis_db
$adr_obj->insertamum = $row->insertamum;
$adr_obj->insertvon = $row->insertvon;
$adr_obj->zustelladresse = $this->db_parse_bool($row->zustelladresse);
$adr_obj->co_name = $row->co_name;
$adr_obj->rechnungsadresse = $this->db_parse_bool($row->rechnungsadresse);
$adr_obj->anmerkung = $row->anmerkung;
@@ -268,6 +272,12 @@ class adresse extends basis_db
$this->errormsg = 'Gemeinde darf nicht länger als 255 Zeichen sein';
return false;
}
if(mb_strlen($this->co_name)>64)
{
$this->errormsg = 'Gemeinde darf nicht länger als 64 Zeichen sein';
return false;
}
$this->errormsg = '';
return true;
@@ -289,7 +299,7 @@ class adresse extends basis_db
{
//Neuen Datensatz einfuegen
$qry='BEGIN;INSERT INTO public.tbl_adresse (person_id, name, strasse, plz, typ, ort, nation, insertamum, insertvon,
gemeinde, heimatadresse, zustelladresse, firma_id, updateamum, updatevon, rechnungsadresse, anmerkung) VALUES('.
gemeinde, heimatadresse, zustelladresse, firma_id, updateamum, updatevon, rechnungsadresse, anmerkung, co_name) VALUES('.
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->name).', '.
$this->db_add_param($this->strasse).', '.
@@ -304,7 +314,8 @@ class adresse extends basis_db
$this->db_add_param($this->firma_id, FHC_INTEGER).', now(), '.
$this->db_add_param($this->updatevon).','.
$this->db_add_param($this->rechnungsadresse, FHC_BOOLEAN, false).','.
$this->db_add_param($this->anmerkung).');';
$this->db_add_param($this->anmerkung).','.
$this->db_add_param($this->co_name).');';
}
else
{
@@ -314,6 +325,7 @@ class adresse extends basis_db
$this->errormsg = 'adresse_id muss eine gueltige Zahl sein';
return false;
}
$qry='UPDATE public.tbl_adresse SET'.
' person_id='.$this->db_add_param($this->person_id, FHC_INTEGER).', '.
' name='.$this->db_add_param($this->name).', '.
@@ -329,7 +341,8 @@ class adresse extends basis_db
' heimatadresse='.$this->db_add_param($this->heimatadresse, FHC_BOOLEAN, false).', '.
' zustelladresse='.$this->db_add_param($this->zustelladresse, FHC_BOOLEAN, false).', '.
' rechnungsadresse='.$this->db_add_param($this->rechnungsadresse, FHC_BOOLEAN, false).','.
' anmerkung='.$this->db_add_param($this->anmerkung).' '.
' anmerkung='.$this->db_add_param($this->anmerkung).', '.
' co_name='.$this->db_add_param($this->co_name).' '.
'WHERE adresse_id='.$this->db_add_param($this->adresse_id, FHC_INTEGER, false).';';
}
@@ -442,6 +455,7 @@ class adresse extends basis_db
$this->firma_id = $row->firma_id;
$this->rechnungsadresse = $this->db_parse_bool($row->rechnungsadresse);
$this->anmerkung = $row->anmerkung;
$this->co_name = $row->co_name;
}
else
{
@@ -498,6 +512,7 @@ class adresse extends basis_db
$adr_obj->zustelladresse = $this->db_parse_bool($row->zustelladresse);
$adr_obj->rechnungsadresse = $this->db_parse_bool($row->rechnungsadresse);
$adr_obj->anmerkung = $row->anmerkung;
$adr_obj->co_name = $row->co_name;
$this->result[] = $adr_obj;
}
+1
View File
@@ -112,6 +112,7 @@ function draw_rdf($row)
<ADRESSE:typ_name><![CDATA['.$typ.']]></ADRESSE:typ_name>
<ADRESSE:heimatadresse><![CDATA['.($row->heimatadresse?'Ja':'Nein').']]></ADRESSE:heimatadresse>
<ADRESSE:zustelladresse><![CDATA['.($row->zustelladresse?'Ja':'Nein').']]></ADRESSE:zustelladresse>
<ADRESSE:co_name><![CDATA['. $row->co_name.']]></ADRESSE:co_name>
<ADRESSE:firma_id><![CDATA['.$row->firma_id.']]></ADRESSE:firma_id>
<ADRESSE:firma_name><![CDATA['.$firma_name.']]></ADRESSE:firma_name>
<ADRESSE:updateamum><![CDATA['.date('d.m.Y H:i:s',strtotime($row->updateamum)).']]></ADRESSE:updateamum>
+14 -1
View File
@@ -4389,6 +4389,19 @@ if(!$result = @$db->db_query("SELECT sort FROM lehre.tbl_abschlussbeurteilung LI
echo '<br>lehre.tbl_abschlussbeurteilung: Spalte sort hinzugefuegt!<br>';
}
//Spalte co_adresse in tbl_adresse
if(!$result = @$db->db_query("SELECT co_name FROM public.tbl_adresse LIMIT 1"))
{
$qry = "
ALTER TABLE public.tbl_adresse ADD COLUMN co_name varchar(256);
COMMENT ON COLUMN public.tbl_adresse.co_name IS 'Name des abweichenden Empfaengers';";
if(!$db->db_query($qry))
echo '<strong>public.tbl_adresse: '.$db->db_last_error().'</strong><br>';
else
echo '<br>public.tbl_adresse: Spalte co_name und anmerkung hinzugefuegt';
}
// Add column iso3166_1_a3 to tbl_nation
if(!$result = @$db->db_query("SELECT iso3166_1_a3 FROM bis.tbl_nation LIMIT 1"))
{
@@ -4566,7 +4579,7 @@ $tabellen=array(
"lehre.tbl_zeugnis" => array("zeugnis_id","student_uid","zeugnis","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id"),
"lehre.tbl_zeugnisnote" => array("lehrveranstaltung_id","student_uid","studiensemester_kurzbz","note","uebernahmedatum","benotungsdatum","bemerkung","updateamum","updatevon","insertamum","insertvon","ext_id","punkte"),
"public.ci_apikey" => array("apikey_id","key","level","ignore_limits","date_created"),
"public.tbl_adresse" => array("adresse_id","person_id","name","strasse","plz","ort","gemeinde","nation","typ","heimatadresse","zustelladresse","firma_id","updateamum","updatevon","insertamum","insertvon","ext_id","rechnungsadresse","anmerkung"),
"public.tbl_adresse" => array("adresse_id","person_id","name","strasse","plz","ort","gemeinde","nation","typ","heimatadresse","zustelladresse","firma_id","updateamum","updatevon","insertamum","insertvon","ext_id","rechnungsadresse","anmerkung", "co_name"),
"public.tbl_akte" => array("akte_id","person_id","dokument_kurzbz","uid","inhalt","mimetype","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id","dms_id","nachgereicht","anmerkung","titel_intern","anmerkung_intern","nachgereicht_am","ausstellungsnation","formal_geprueft_amum","archiv","signiert","stud_selfservice","akzeptiertamum"),
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon","email","verpflichtend","buttontext"),
"public.tbl_ampel_benutzer_bestaetigt" => array("ampel_benutzer_bestaetigt_id","ampel_id","uid","insertamum","insertvon"),
+151 -3
View File
@@ -44,8 +44,16 @@ $fehler='';
$maxsemester=0;
$v='';
$studiensemester=new studiensemester();
$ssem=$studiensemester->getaktorNext();
$psem=$studiensemester->getPrevious();
if (isset($_GET['studiensemester']))
{
$ssem = $_GET['studiensemester'];
$psem = $studiensemester->getPreviousFrom($ssem);
}
else
{
$ssem=$studiensemester->getaktorNext();
$psem=$studiensemester->getPrevious();
}
$datei='';
$zaehl=0;
$lehrgangsname = '';
@@ -93,6 +101,18 @@ if(isset($_GET['plausi']))
{
$plausi=$_GET['plausi'];
}
// Standortcode
if (defined('BIS_STANDORTCODE_LEHRGAENGE') && BIS_STANDORTCODE_LEHRGAENGE != '0')
{
$standortcode = BIS_STANDORTCODE_LEHRGAENGE;
}
else
{
echo "<H2>Standortcode f&uuml;r Lehrg&auml;nge fehlt.</H2>";
exit;
}
$datumobj=new datum();
//Lehrgangsdaten auslesen
@@ -185,6 +205,7 @@ if($result = $db->db_query($qry))
$gemeinde=$rowadr->gemeinde;
$strasse=$rowadr->strasse;
$nation=$rowadr->nation;
$co_name = $rowadr->co_name;
}
else
{
@@ -192,7 +213,58 @@ if($result = $db->db_query($qry))
$gemeinde='';
$strasse='';
$nation='';
$co_name = '';
}
// Zustelladresse & c/o Name(=abweichender Empfaenger)
$qryzustelladr = "
SELECT *
FROM public.tbl_adresse
WHERE zustelladresse IS TRUE
AND person_id=". $db->db_add_param($row->pers_id). ";
";
$results = $db->db_query($qryzustelladr);
if ($db->db_num_rows($results) != 1)
{
$error_log1.= "Es sind ".$db->db_num_rows($results)." Zustelladressen eingetragen\n";
}
$zustell_plz = '';
$zustell_gemeinde = '';
$zustell_strasse = '';
$zustell_nation = '';
if ($rowzustelladr = $db->db_fetch_object($results))
{
$zustell_plz = $rowzustelladr->plz;
$zustell_gemeinde = $rowzustelladr->gemeinde;
$zustell_strasse = $rowzustelladr->strasse;
$zustell_nation = $rowzustelladr->nation;
}
// eMail-Adresse
$qry_mail = "
SELECT kontakt
FROM public.tbl_kontakt
WHERE kontakttyp = 'email'
AND zustellung = TRUE
AND person_id = ". $db->db_add_param($row->pers_id). "
ORDER BY insertamum DESC LIMIT 1;
";
$email = '';
if ($result_email = $db->db_query($qry_mail))
{
if($db->db_num_rows($result_email) == 1)
{
if($row_mail = $db->db_fetch_object($result_email))
{
$email = $row_mail->kontakt;
}
}
}
if($row->gebdatum<'1920-01-01' OR $row->gebdatum==null OR $row->gebdatum=='')
{
$error_log.=(!empty($error_log)?', ':'')."Geburtsdatum ('".$row->gebdatum."')";
@@ -237,6 +309,7 @@ if($result = $db->db_query($qry))
{
$error_log.=(!empty($error_log)?', ':'')."Ersatzkennzeichen ('".$row->ersatzkennzeichen."') enth&auml;lt Geburtsdatum (".$row->gebdatum.") nicht";
}
// Wenn SVNR fehlt, darf Ersatzkennzeichen nicht fehlen (und umgekehrt)
if(($row->svnr=='' || $row->svnr==null)&&($row->ersatzkennzeichen=='' || $row->ersatzkennzeichen==null))
{
$error_log.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') bzw. ErsKz ('".$row->ersatzkennzeichen."') fehlt";
@@ -306,6 +379,49 @@ if($result = $db->db_query($qry))
}
}
}
if($row->bpk == '' || $row->bpk == null)
{
$error_log .= (!empty($error_log) ? ', ' : '') . "bPK fehlt";
}
if($row->bpk != '' && $row->bpk != null)
{
if (!preg_match('/[a-zA-Z0-9\+\/]{27}=/', $row->bpk))
{
$error_log.=(!empty($error_log) ? ', ' : ''). "bPK-Zeichenfolge ist ung&uuml;ltig";
}
if (strlen($row->bpk) != 28)
{
$error_log.=(!empty($error_log) ? ', ' : ''). "bPK ist nicht 28 Zeichen lang";
}
}
if ($zustell_plz == '' || $zustell_plz == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-PLZ fehlt";
}
if ($zustell_gemeinde == '' || $zustell_gemeinde == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-Gemeinde fehlt";
}
if ($zustell_strasse == '' || $zustell_strasse == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-Strasse fehlt";
}
if ($zustell_nation == '' || $zustell_nation == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-Nation fehlt";
}
if ($email == '' || $email == null)
{
$error_log.=(!empty($error_log)?', ':'')."eMail Adresse fehlt oder eMail-Zustellung auf 'Nein' gesetzt.";
}
//Bestimmen der aktuellen Prestudentrolle (Status) und des akt. Ausbildungssemesters des Studenten
$qrystatus="SELECT * FROM public.tbl_prestudentstatus
WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND studiensemester_kurzbz=".$db->db_add_param($ssem)."
@@ -481,7 +597,21 @@ if($result = $db->db_query($qry))
<PersKz>".trim($row->matrikelnr)."</PersKz>
<Matrikelnummer>".$row->matr_nr."</Matrikelnummer>
<GeburtsDatum>".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."</GeburtsDatum>
<Geschlecht>".strtoupper($row->geschlecht)."</Geschlecht>
<Geschlecht>".strtoupper($row->geschlecht)."</Geschlecht>";
if ($row->titelpre != '')
{
$datei .= "
<AkadGradeVorName>" . $row->titelpre . "</AkadGradeVorName>";
}
if ($row->titelpost != '')
{
$datei .= "
<AkadGradeNachName>" . $row->titelpost . "</AkadGradeNachName>";
}
$datei .= "
<Vorname>".$row->vorname."</Vorname>
<Familienname>".$row->nachname."</Familienname>";
@@ -495,6 +625,10 @@ if($result = $db->db_query($qry))
$datei.="
<ErsKz>".$row->ersatzkennzeichen."</ErsKz>";
}
$datei.="
<bPK>".$row->bpk."</bPK>
";
$datei.="
<StaatsangehoerigkeitCode>".$row->staatsbuergerschaft."</StaatsangehoerigkeitCode>
@@ -502,6 +636,19 @@ if($result = $db->db_query($qry))
<HeimatGemeinde>".$gemeinde."</HeimatGemeinde>
<HeimatStrasse><![CDATA[".$strasse."]]></HeimatStrasse>
<HeimatNation>".$nation."</HeimatNation>
<ZustellPLZ>". $zustell_plz. "</ZustellPLZ>
<ZustellGemeinde>". $zustell_gemeinde. "</ZustellGemeinde>
<ZustellStrasse>". $zustell_strasse. "</ZustellStrasse>
<ZustellNation>". $zustell_nation. "</ZustellNation>";
if ($co_name != '')
{
$datei .= "
<coName>". $co_name. "</coName>";
}
$datei.="
<eMailAdresse>". $email. "</eMailAdresse>
<ZugangCode>".$row->zgv_code."</ZugangCode>
<ZugangDatum>".date("dmY", $datumobj->mktime_fromdate($row->zgvdatum))."</ZugangDatum>";
@@ -545,6 +692,7 @@ if($result = $db->db_query($qry))
}
$datei.="
<StudStatusCode>".$status."</StudStatusCode>
<StandortCode>" .$standortcode. "</StandortCode>
</StudentIn>";
}
}
+297 -71
View File
@@ -52,6 +52,7 @@ if(!$rechte->isBerechtigt('student/stammdaten',null,'suid') && !$rechte->isBerec
$error_log='';
$error_log1='';
$error_log_all="";
$error_log_io = ''; // error log fuer plausichecks von incomings/outgoings
$stgart='';
$fehler='';
$maxsemester=0;
@@ -612,6 +613,7 @@ function GenerateXMLStudentBlock($row)
global $stg_kz;
$error_log='';
$error_log1='';
$error_log_io = '';
$datei = '';
$datumobj = new datum();
@@ -623,6 +625,9 @@ function GenerateXMLStudentBlock($row)
$ausserordentlich=true;
else
$ausserordentlich=false;
// Pruefen, ob Incoming (3.Stelle in Personenkennzeichen = 0)
$incoming = mb_substr($row->matrikelnr,2,1) == '0' ? true : false;
$qryadr="SELECT * FROM public.tbl_adresse WHERE heimatadresse IS TRUE AND person_id=".$db->db_add_param($row->pers_id).";";
$results=$db->db_query($qryadr);
@@ -637,6 +642,7 @@ function GenerateXMLStudentBlock($row)
$gemeinde=$rowadr->gemeinde;
$strasse=$rowadr->strasse;
$nation=$rowadr->nation;
$co_name = $rowadr->co_name;
}
else
{
@@ -644,7 +650,43 @@ function GenerateXMLStudentBlock($row)
$gemeinde='';
$strasse='';
$nation='';
$co_name = '';
}
// Zustelladresse & c/o Name(=abweichender Empfaenger)
$qryzustelladr = "
SELECT *
FROM public.tbl_adresse
WHERE zustelladresse IS TRUE
AND person_id=". $db->db_add_param($row->pers_id). ";
";
$results = $db->db_query($qryzustelladr);
if ($db->db_num_rows($results) != 1)
{
$error_log1.= "Es sind ".$db->db_num_rows($results)." Zustelladressen eingetragen\n";
}
$zustell_plz = '';
$zustell_gemeinde = '';
$zustell_strasse = '';
$zustell_nation = '';
if ($rowzustelladr = $db->db_fetch_object($results))
{
$zustell_plz = $rowzustelladr->plz;
$zustell_gemeinde = $rowzustelladr->gemeinde;
$zustell_strasse = $rowzustelladr->strasse;
$zustell_nation = $rowzustelladr->nation;
}
// FH eMail-Adresse FH aus UID@Domain
$email = '';
if ($row->student_uid != '')
{
$email = $row->student_uid. '@'. DOMAIN;
}
if($row->gebdatum<'1920-01-01' OR $row->gebdatum==null OR $row->gebdatum=='')
{
$error_log.=(!empty($error_log)?', ':'')."Geburtsdatum ('".$row->gebdatum."')";
@@ -709,6 +751,51 @@ function GenerateXMLStudentBlock($row)
{
$error_log.=(!empty($error_log)?', ':'')."Heimat-Nation ('".$nation."')";
}
if($row->bpk == '' || $row->bpk == null)
{
$error_log .= (!empty($error_log) ? ', ' : '') . "bPK fehlt";
}
if($row->bpk != '' && $row->bpk != null)
{
if (!preg_match('/[a-zA-Z0-9\+\/]{27}=/', $row->bpk))
{
$error_log.=(!empty($error_log) ? ', ' : ''). "bPK-Zeichenfolge ist ung&uuml;ltig";
}
if (strlen($row->bpk) != 28)
{
$error_log.=(!empty($error_log) ? ', ' : ''). "bPK ist nicht 28 Zeichen lang";
}
}
if (!$ausserordentlich && !$incoming)
{
if ($zustell_plz == '' || $zustell_plz == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-PLZ fehlt";
}
if ($zustell_gemeinde == '' || $zustell_gemeinde == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-Gemeinde fehlt";
}
if ($zustell_strasse == '' || $zustell_strasse == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-Strasse fehlt";
}
if ($zustell_nation == '' || $zustell_nation == null)
{
$error_log.=(!empty($error_log)?', ':'')."Zustell-Nation fehlt";
}
if ($email == '' || $email == null)
{
$error_log.=(!empty($error_log)?', ':'')."Studenten-eMail Adresse fehlt (keine Student-UID eingetragen).";
}
}
if(!$ausserordentlich)
{
if($row->zgv_code=='' || $row->zgv_code==null)
@@ -806,7 +893,7 @@ function GenerateXMLStudentBlock($row)
}
else
{
$error_log.= "$row->vorname $row->nachname wird nicht gemeldet da kein gueltiger Status vorhanden ist!";
$error_log.= (!empty($error_log)?', ':''). "$row->vorname $row->nachname wird nicht gemeldet da kein gueltiger Status vorhanden ist!";
return '';
}
$aktstatus=$rowstatus->status_kurzbz;
@@ -861,7 +948,7 @@ function GenerateXMLStudentBlock($row)
}
else
{
$error_log.= "$row->vorname $row->nachname wird nicht gemeldet da kein gueltiger Status vorhanden ist!";
$error_log.= (!empty($error_log)?', ':''). "$row->vorname $row->nachname wird nicht gemeldet da kein gueltiger Status vorhanden ist!";
return '';
}
$aktstatus=$rowstatus->status_kurzbz;
@@ -876,7 +963,7 @@ function GenerateXMLStudentBlock($row)
$aktstatus_datum='';
$aktstatus_stsem='';
$sem='';
$error_log.= "kein gueltiger Status vorhanden";
$error_log.= (!empty($error_log)?', ':''). "kein gueltiger Status vorhanden";
}
}
@@ -887,7 +974,7 @@ function GenerateXMLStudentBlock($row)
$aktstatus_datum='';
$aktstatus_stsem='';
$sem='';
$error_log.= "kein gueltiger Status vorhanden";
$error_log.= (!empty($error_log)?', ':''). "kein gueltiger Status vorhanden";
}
}
@@ -1066,44 +1153,85 @@ function GenerateXMLStudentBlock($row)
return '';
}
else
{
$datei.="
{
$datei .= "
<StudentIn>
<PersKz>".trim($row->matrikelnr)."</PersKz>";
$datei.="
<Matrikelnummer>".$row->matr_nr."</Matrikelnummer>";
if(!$ausserordentlich)
<PersKz>" . trim($row->matrikelnr) . "</PersKz>";
$datei .= "
<Matrikelnummer>" . $row->matr_nr . "</Matrikelnummer>";
if (!$ausserordentlich)
{
$datei.="
<OrgFormCode>".$orgform_code_array[$storgform]."</OrgFormCode>";
$datei .= "
<OrgFormCode>" . $orgform_code_array[$storgform] . "</OrgFormCode>";
}
$datei.="
<GeburtsDatum>".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."</GeburtsDatum>
<Geschlecht>".strtoupper($row->geschlecht)."</Geschlecht>";
$datei.="
<Vorname>".$row->vorname."</Vorname>
<Familienname>".$row->nachname."</Familienname>";
if($row->svnr!='')
$datei .= "
<GeburtsDatum>" . date("dmY", $datumobj->mktime_fromdate($row->gebdatum)) . "</GeburtsDatum>
<Geschlecht>" . strtoupper($row->geschlecht) . "</Geschlecht>";
if ($row->titelpre != '')
{
$datei.="
<SVNR>".$row->svnr."</SVNR>";
$datei .= "
<AkadGradeVorName>" . $row->titelpre . "</AkadGradeVorName>";
}
if($row->ersatzkennzeichen!='')
if ($row->titelpost != '')
{
$datei.="
<ErsKz>".$row->ersatzkennzeichen."</ErsKz>";
$datei .= "
<AkadGradeNachName>" . $row->titelpost . "</AkadGradeNachName>";
}
$datei.="
<StaatsangehoerigkeitCode>".$row->staatsbuergerschaft."</StaatsangehoerigkeitCode>
<HeimatPLZ>".$plz."</HeimatPLZ>
<HeimatGemeinde>".$gemeinde."</HeimatGemeinde>
<HeimatStrasse><![CDATA[".$strasse."]]></HeimatStrasse>
<HeimatNation>".$nation."</HeimatNation>";
$datei .= "
<Vorname>" . $row->vorname . "</Vorname>
<Familienname>" . $row->nachname . "</Familienname>";
if ($row->svnr != '')
{
$datei .= "
<SVNR>" . $row->svnr . "</SVNR>";
}
if ($row->ersatzkennzeichen != '')
{
$datei .= "
<ErsKz>" . $row->ersatzkennzeichen . "</ErsKz>";
}
$datei .= "
<bPK>" . $row->bpk . "</bPK>
";
$datei .= "
<StaatsangehoerigkeitCode>" . $row->staatsbuergerschaft . "</StaatsangehoerigkeitCode>
<HeimatPLZ>" . $plz . "</HeimatPLZ>
<HeimatGemeinde>" . $gemeinde . "</HeimatGemeinde>
<HeimatStrasse><![CDATA[" . $strasse . "]]></HeimatStrasse>
<HeimatNation>" . $nation . "</HeimatNation>";
if (!$ausserordentlich && !$incoming)
{
$datei .= "
<ZustellPLZ>" . $zustell_plz . "</ZustellPLZ>
<ZustellGemeinde>" . $zustell_gemeinde . "</ZustellGemeinde>
<ZustellStrasse>" . $zustell_strasse . "</ZustellStrasse>
<ZustellNation>" . $zustell_nation . "</ZustellNation>";
}
if ($co_name != '')
{
$datei .= "
<coName>" . $co_name . "</coName>
";
}
if ($email != '')
{
$datei .= "
<eMailAdresse>" . $email . "</eMailAdresse>
";
}
if(!$ausserordentlich)
{
$datei.="
@@ -1206,48 +1334,146 @@ function GenerateXMLStudentBlock($row)
$gast=$rowio->nation_code;
$avon=date("dmY", $datumobj->mktime_fromdate($rowio->von));
$abis=date("dmY", $datumobj->mktime_fromdate($rowio->bis));
$datei.="
<IO>
<MobilitaetsProgrammCode>".$mob."</MobilitaetsProgrammCode>
<GastlandCode>".$gast."</GastlandCode>
<AufenthaltVon>".$avon."</AufenthaltVon>";
if($datumobj->mktime_fromdate($rowio->bis)<$datumobj->mktime_fromdate($bisdatum) && $datumobj->mktime_fromdate($rowio->bis)>$datumobj->mktime_fromdate($bisprevious))
{
$datei.="
<AufenthaltBis>".$abis."</AufenthaltBis>";
}
$adauer = (is_null($rowio->von) || is_null($rowio->bis))
? null
: $datumobj->DateDiff($rowio->von, $rowio->bis);
// Aufenthaltszweckcode --------------------------------------------------------------------------------
$bisio_zweck = new bisio();
$bisio_zweck->getZweck($rowio->bisio_id);
foreach ($bisio_zweck->result as $row_zweck)
$zweck_code_arr = array();
// Bei Incomings...
if ($aktstatus == 'Incoming')
{
$datei.="
<AufenthaltZweckCode>".$row_zweck->zweck_code."</AufenthaltZweckCode>";
}
if ($aktstatus != 'Incoming' && $rowio->ects_erworben != '')
{
$datei.="
<ECTSerworben>".$rowio->ects_erworben."</ECTSerworben>";
}
if ($aktstatus != 'Incoming' && $rowio->ects_angerechnet != '')
{
$datei.="
<ECTSangerechnet>".$rowio->ects_angerechnet."</ECTSangerechnet>";
}
if ($aktstatus != 'Incoming')
{
$bisio_foerderung = new bisio();
$bisio_foerderung->getFoerderungen($rowio->bisio_id);
foreach ($bisio_foerderung->result as $row_foerderung)
// ...max 1 Aufenthaltszweck
if (count($bisio_zweck->result) > 1)
{
$datei.="
<AufenthaltFoerderungCode>".$row_foerderung->aufenthaltfoerderung_code."</AufenthaltFoerderungCode>";
$error_log_io .= (!empty($error_log_io) ? ', ' : ''). "Es sind". count($bisio_zweck->result).
" Aufenthaltszwecke eingetragen (max. 1 Zweck für Incomings)";
}
//...nur Zweck 1, 2 oder 3 erlaubt
if (count($bisio_zweck->result) == 1 &&
empty(array_intersect(array(1, 2, 3), array_column($bisio_zweck->result, 'zweck_code'))))
{
$error_log_io .= (!empty($error_log_io) ? ', ' : ''). "Aufenthaltszweckcode ist ".
$bisio_zweck->result[0]->zweck_code. " (f&uuml;r Incomings ist nur Zweck 1, 2, 3 erlaubt)";
}
}
$datei.="
</IO>";
foreach ($bisio_zweck->result as $row_zweck)
{
// Nur eindeutige Werte (bei Mehrfachangaben; trifft auf Outgoings zu)
if (!in_array($row_zweck->zweck_code, $zweck_code_arr))
{
// Aufenthaltszweck 1, 2, 3 nicht gemeinsam melden
if (!empty(array_intersect(array(1, 2, 3), $zweck_code_arr)))
{
$error_log_io .= (!empty($error_log_io) ? ', ' : '').
"Aufenthaltzweckcode 1, 2, 3 d&uuml;rfen nicht gemeinsam gemeldet werden";
}
$zweck_code_arr []= $row_zweck->zweck_code;
}
}
// Aufenthaltfoerderungscode ---------------------------------------------------------------------------
$aufenthaltfoerderung_code_arr = array();
// Nur bei Outgoings Aufenthaltsfoerderungscode melden
if ($aktstatus != 'Incoming') {
$bisio_foerderung = new bisio();
$bisio_foerderung->getFoerderungen($rowio->bisio_id);
// ... mindestens 1 Aufenthaltfoerderung melden, wenn Auslandsaufenthalt >= 29 Tage
if ((!$bisio_foerderung->result || count($bisio_foerderung->result) == 0) && $adauer >= 29)
{
$error_log_io .= (!empty($error_log_io) ? ', ' : '') .
"Keine Aufenthaltsfoerderung angegeben (bei Outgoings >= 29 Tage Monat im Ausland muss mind. 1 gemeldet werden)";
}
foreach ($bisio_foerderung->result as $row_foerderung)
{
// ...wenn code = 5, nur ein Wert erlaubt (keine Mehrfachangaben)
if ($row_foerderung->aufenthaltfoerderung_code == 5) {
unset($aufenthaltfoerderung_code_arr);
$aufenthaltfoerderung_code_arr [] = $row_foerderung->aufenthaltfoerderung_code;
break;
}
// nur eindeutige Werte
if (!in_array($row_foerderung->aufenthaltfoerderung_code, $aufenthaltfoerderung_code_arr)) {
$aufenthaltfoerderung_code_arr [] = $row_foerderung->aufenthaltfoerderung_code;
}
}
if ($rowio->ects_erworben == '' && $adauer >= 29)
{
$error_log_io .= (!empty($error_log_io) ? ', ' : '') .
"Erworbene ECTS fehlen (Meldepflicht bei Outgoings >= 29 Tage Monat im Ausland)";
}
if ($rowio->ects_angerechnet == '' && $adauer >= 29)
{
$error_log_io .= (!empty($error_log_io) ? ', ' : '') .
"Angerechnete ECTS fehlen (Meldepflicht bei Outgoings >= 29 Tage Monat im Ausland)";
}
}
// Bei validen Daten errorlog ausgeben
if($error_log_io != '')
{
$v.="<u>Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($laststatus->status_kurzbz): </u>\n";
if($error_log_io != '')
{
$v.="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Fehler: ".$error_log_io. "\n";
}
$v.="\n";
$error_log_io = '';
return '';
}
// Bei validen Daten XML-Datensatz bauen
else
{
$datei.="
<IO>
<MobilitaetsProgrammCode>".$mob."</MobilitaetsProgrammCode>
<GastlandCode>".$gast."</GastlandCode>
<AufenthaltVon>".$avon."</AufenthaltVon>";
if($datumobj->mktime_fromdate($rowio->bis)<$datumobj->mktime_fromdate($bisdatum) && $datumobj->mktime_fromdate($rowio->bis)>$datumobj->mktime_fromdate($bisprevious))
{
$datei.="
<AufenthaltBis>".$abis."</AufenthaltBis>";
}
foreach ($zweck_code_arr as $zweck)
{
$datei.="
<AufenthaltZweckCode>". $zweck. "</AufenthaltZweckCode>";
}
if ($aktstatus != 'Incoming' && $rowio->ects_erworben != '')
{
$datei.="
<ECTSerworben>".$rowio->ects_erworben."</ECTSerworben>";
}
if ($aktstatus != 'Incoming' && $rowio->ects_angerechnet != '')
{
$datei.="
<ECTSangerechnet>".$rowio->ects_angerechnet."</ECTSangerechnet>";
}
foreach ($aufenthaltfoerderung_code_arr as $aufenthaltfoerderung_code)
{
$datei.="
<AufenthaltFoerderungCode>". $aufenthaltfoerderung_code. "</AufenthaltFoerderungCode>";
}
$datei.="
</IO>";
}
if($aktstatus!='Incoming')
{
if(!isset($iosem[$storgform][$sem]))