This commit is contained in:
kindlm
2016-10-20 09:43:09 +02:00
25 changed files with 8232 additions and 3009 deletions
+129
View File
@@ -70,6 +70,7 @@ require_once('../../include/benutzerfunktion.class.php');
require_once('../../include/note.class.php');
require_once('../../include/standort.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/mobilitaet.class.php');
$user = get_uid();
$db = new basis_db();
@@ -589,6 +590,7 @@ if(!$error)
$prestudent->dual = ($_POST['dual']=='true'?true:false);
$prestudent->anmerkung = $_POST['anmerkung'];
$prestudent->mentor = $_POST['mentor'];
$prestudent->gsstudientyp_kurzbz = $_POST['gsstudientyp_kurzbz'];
//$prestudent->insertamum = date('Y-m-d H:i:s');
//$prestudent->insertvon = $user;
$prestudent->updateamum = date('Y-m-d H:i:s');
@@ -3840,6 +3842,133 @@ if(!$error)
$errormsg = 'Fehlerhafte Parameteruebergabe';
}
}
elseif(isset($_POST['type']) && $_POST['type']=='savemobilitaet')
{
// Speichert Mobilitaet/Gemeinsames Studium
$prestudent_id = $_POST['prestudent_id'];
$prestudent_obj = new prestudent();
$prestudent_obj->load($prestudent_id);
if(!$rechte->isBerechtigt('student/stammdaten', $prestudent_obj->studiengang_kz, 'suid'))
{
$return = false;
$error = true;
$errormsg = 'Sie haben keine Berechtigung';
}
else
{
$mob = new mobilitaet();
$error = false;
if(isset($_POST['mobilitaet_id']))
{
$mobilitaet_id = $_POST['mobilitaet_id'];
if(!$mob->load($mobilitaet_id))
{
$error=true;
$errormsg = $mob->errormsg;
}
}
else
{
$mob->new = true;
$mob->inservon = $user;
}
if(isset($_POST['studiensemester_kurzbz'])
&& isset($_POST['mobilitaetsprogramm_code'])
&& isset($_POST['gsprogramm_id'])
&& isset($_POST['mobilitaetstyp_kurzbz'])
&& isset($_POST['firma_id'])
&& isset($_POST['status_kurzbz'])
&& isset($_POST['ausbildungssemester']))
{
$studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
$mobilitaetsprogramm_code = $_POST['mobilitaetsprogramm_code'];
$gsprogramm_id = $_POST['gsprogramm_id'];
$mobilitaetstyp_kurzbz = $_POST['mobilitaetstyp_kurzbz'];
$firma_id = $_POST['firma_id'];
$status_kurzbz = $_POST['status_kurzbz'];
$ausbildungssemester = $_POST['ausbildungssemester'];
}
else
{
$error = true;
$errormsg = 'Fehlerhafte Parameteruebergabe';
$return = false;
}
if(!$error)
{
$mob->prestudent_id = $prestudent_id;
$mob->studiensemester_kurzbz = $studiensemester_kurzbz;
$mob->mobilitaetsprogramm_code = $mobilitaetsprogramm_code;
$mob->gsprogramm_id = $gsprogramm_id;
$mob->mobilitaetstyp_kurzbz = $mobilitaetstyp_kurzbz;
$mob->firma_id = $firma_id;
$mob->status_kurzbz = $status_kurzbz;
$mob->ausbildungssemester = $ausbildungssemester;
$mob->updatevon = $user;
if($mob->save())
{
$return = true;
$data = $mob->mobilitaet_id;
}
else
{
$return = false;
$error = true;
$errormsg = $mob->errormsg;
}
}
else
{
$return = false;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='deletemobilitaet')
{
$mobilitaet_id = $_POST['mobilitaet_id'];
$mob = new mobilitaet();
if($mob->load($mobilitaet_id))
{
$prestudent = new prestudent();
if($prestudent->load($mob->prestudent_id))
{
if(!$rechte->isBerechtigt('student/stammdaten',$prestudent->studiengang_kz,'suid'))
{
$error = true;
$return = false;
$errormsg = 'Sie haben keine Berechtigung';
}
else
{
if($mob->delete($mobilitaet_id))
{
$return = true;
}
else
{
$errormsg = $mob->errormsg;
$return = false;
}
}
}
else
{
$error = true;
$return = false;
$errormsg = $prestudent->errormsg;
}
}
else
{
$return = false;
$errormsg = $mob->errormsg;
}
}
else
{
$return = false;
+43 -29
View File
@@ -47,9 +47,9 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<vbox id="student-detail" style="overflow:auto;margin:0px;" flex="1">
<vbox hidden="true">
<label value="Neu"/>
<checkbox id="student-detail-checkbox-new" checked="true" />
<checkbox id="student-detail-checkbox-new" checked="true" />
<label value="Person_id"/>
<textbox id="student-detail-textbox-person_id" disabled="true"/>
<textbox id="student-detail-textbox-person_id" disabled="true"/>
</vbox>
<vbox flex="1">
<groupbox id="student-detail-groupbox-person">
@@ -100,7 +100,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="SVNR" control="student-detail-textbox-svnr"/>
@@ -145,7 +145,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<menuitem value="m" label="maennlich"/>
<menuitem value="w" label="weiblich"/>
<menuitem value="u" label="unbekannt"/>
</menupopup>
</menupopup>
</menulist>
<label value="Familienstand" control="student-detail-menulist-familienstand"/>
<menulist id="student-detail-menulist-familienstand" disabled="true">
@@ -155,7 +155,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<menuitem value="l" label="ledig"/>
<menuitem value="v" label="verheiratet"/>
<menuitem value="w" label="verwitwet"/>
</menupopup>
</menupopup>
</menulist>
<label value="Anzahl der Kinder" control="student-detail-textbox-anzahlderkinder" hidden="true"/>
<textbox id="student-detail-textbox-anzahlderkinder" disabled="true" maxlength="2" hidden="true"/>
@@ -168,7 +168,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<button id="student-detail-button-image-delete" label="Delete" oncommand="StudentImageDelete();" disabled="true"/>
<spacer flex="1" />
</hbox>
<button id="student-detail-button-image-infomail" label="Infomail" oncommand="StudentImageInfomail();" disabled="true"/>
<button id="student-detail-button-image-infomail" label="Infomail" oncommand="StudentImageInfomail();" disabled="true"/>
</vbox>
<hbox>
<image src='' id="student-detail-image" style="margin-left:5px; width:90px; height:120px"/> <!--height="60" width="60"-->
@@ -182,7 +182,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</rows>
</grid>
</groupbox>
<vbox flex="1" >
<groupbox id="student-detail-groupbox-student">
<caption label="Student" />
@@ -233,14 +233,14 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</rows>
</grid>
</groupbox>
<hbox>
<spacer flex="1" />
<button id="student-detail-button-save" label="Speichern" oncommand="StudentDetailSave();" disabled="true"/>
</hbox>
</vbox>
</vbox>
</vbox>
@@ -249,15 +249,15 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<popupset>
<menupopup id="student-prestudent-rolle-tree-popup">
<menuitem label="Bearbeiten" oncommand="StudentRolleBearbeiten();" id="student-prestudent-rolle-tree-popup-edit" hidden="false"/>
<menuitem label="Status bestaetigen" oncommand="StudentPrestudentRolleBestaetigen();" id="student-prestudent-rolle-tree-popup-approve" hidden="false"/>
<menuitem label="Status bestaetigen" oncommand="StudentPrestudentRolleBestaetigen();" id="student-prestudent-rolle-tree-popup-approve" hidden="false"/>
<menuitem label="Neuen Status hinzufuegen" oncommand="StudentRolleAdd();" id="student-prestudent-rolle-tree-popup-add" hidden="false"/>
<menuitem label="Entfernen" oncommand="StudentPrestudentRolleDelete();" id="student-prestudent-rolle-tree-popup-delete" hidden="false"/>
<menuitem label="Status vorrücken" oncommand="StudentPrestudentRolleVorruecken();" id="student-prestudent-rolle-tree-popup-move_forward" hidden="false"/>
<menuitem label="Entfernen" oncommand="StudentPrestudentRolleDelete();" id="student-prestudent-rolle-tree-popup-delete" hidden="false"/>
<menuitem label="Status vorrücken" oncommand="StudentPrestudentRolleVorruecken();" id="student-prestudent-rolle-tree-popup-move_forward" hidden="false"/>
</menupopup>
</popupset>
<vbox hidden="true">
<label value="Neu"/>
<checkbox id="student-prestudent-checkbox-new" checked="false" />
<checkbox id="student-prestudent-checkbox-new" checked="false" />
<label value="Person_id"/>
<textbox id="student-prestudent-textbox-person_id" disabled="true"/>
<label value="Prestudent_id"/>
@@ -265,7 +265,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<label value="studiengang_kz"/>
<textbox id="student-prestudent-textbox-studiengang_kz" disabled="true"/>
</vbox>
<groupbox id="student-detail-groupbox-zgv">
<caption id="student-detail-groupbox-caption" label="Zugangsvoraussetzung" />
<grid id="student-prestudent-grid-zgv" style="margin:4px;" flex="1">
@@ -352,7 +352,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</row>
</rows>
</grid>
</groupbox>
<groupbox id="student-detail-groupbox-reihungstest">
<caption label="&tab-prestudent-aufnahme.label;" />
@@ -363,7 +363,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<column flex="1"/>
<column flex="5"/>
<column flex="1"/>
<column flex="5"/>
<column flex="5"/>
</columns>
<rows>
<row>
@@ -378,7 +378,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<!-- datasources="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?optional=true" flex="1"-->
<menulist id="student-prestudent-menulist-reihungstest" disabled="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/reihungstest/alle"
ref="http://www.technikum-wien.at/reihungstest/alle"
oncommand="StudentReihungstestDropDownSelect()">
<template>
<menupopup>
@@ -388,9 +388,9 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</menupopup>
</template>
</menulist>
<toolbarbutton id="student-prestudent-button-reihungstest-refresh" image="../skin/images/refresh.png" tooltiptext="Liste neu laden" onclick="StudentReihungstestDropDownRefresh()"/>
</hbox>
</row>
<row>
@@ -405,7 +405,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<label value="Punkte2" control="student-prestudent-textbox-punkte2"/>
<textbox id="student-prestudent-textbox-punkte2" disabled="true" maxlength="9" size="9" onchange="StudentReihungstestPunkteChange();" oninput="StudentReihungstestPunkteSum();"/>
<?php
// Das Eingebefeld fuer die 3. Reihungstestpunkte wird nur angezeigt,
// Das Eingebefeld fuer die 3. Reihungstestpunkte wird nur angezeigt,
// wenn im dies im Config aktiviert wurde
if(defined('RT_PUNKTE3') && RT_PUNKTE3=='true')
$hidden='';
@@ -415,7 +415,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '
<label value="Punkte3" control="student-prestudent-textbox-punkte3" '.$hidden.'/>
<textbox id="student-prestudent-textbox-punkte3" disabled="true" maxlength="9" size="9" onchange="StudentReihungstestPunkteChange();" oninput="StudentReihungstestPunkteSum();" '.$hidden.'/>
';
';
?>
<label value="Gesamtpunkte" control="student-prestudent-textbox-punkte"/>
<textbox id="student-prestudent-textbox-punkte" disabled="true" maxlength="9" size="9" onchange="StudentReihungstestPunkteChange();"/>
@@ -433,7 +433,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<column flex="1"/>
<column flex="5"/>
<column flex="1"/>
<column flex="5"/>
<column flex="5"/>
</columns>
<rows>
<row>
@@ -499,10 +499,24 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</menupopup>
</template>
</menulist>
<label value="Studientyp" control="student-detail-menulist-gsstudientyp"/>
<menulist id="student-detail-menulist-gsstudientyp" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/gsstudientyp.rdf.php" flex="1"
ref="http://www.technikum-wien.at/gsstudientyp" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gsstudientyp/rdf#gsstudientyp_kurzbz"
label="rdf:http://www.technikum-wien.at/gsstudientyp/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Facheinschlaegig berufstaetig" control="student-prestudent-checkbox-facheinschlberuf" hidden="true"/>
<checkbox id="student-prestudent-checkbox-facheinschlberuf" checked="true" disabled="true" hidden="true"/>
</row>
</rows>
</grid>
@@ -531,7 +545,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<hbox><textbox id="student-prestudent-textbox-mentor" disabled="true" size="40" maxlength="256"/></hbox>
</row>
</rows>
</grid>
</grid>
</groupbox>
<groupbox id="student-detail-groupbox-rollen">
<caption label="Status" />
@@ -553,12 +567,12 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-ausbildungssemester" label="Semester" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester"
sorthints="integer"/>
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-datum" label="Datum" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum" />
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum" />
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-orgform_kurzbz" label="Organisationsform" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
@@ -589,7 +603,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#bestaetigt_Am" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren flex="1" >
+3
View File
@@ -40,6 +40,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentdetailoverlay.xul.p
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentzeugnisoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentkontooverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentiooverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentmobilitaetoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentnotenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentpruefungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentanrechnungenoverlay.xul.php"?>';
@@ -387,6 +388,7 @@ else
<tab id="student-tab-konto" label="Konto" />
<tab id="student-tab-betriebsmittel" label="Betriebsmittel" />
<tab id="student-tab-io" label="In/Out" />
<tab id="student-tab-mobilitaet" label="GS" />
<tab id="student-tab-noten" label="Noten" />
<tab id="student-tab-zeugnis" label="Archiv" />
<tab id="student-tab-pruefung" label="Prüfung" />
@@ -414,6 +416,7 @@ else
<vbox id="student-konto" style="margin-top:10px;" />
<iframe id="student-betriebsmittel" src="" style="margin-top:10px;" />
<vbox id="student-io" style="margin-top:10px;" />
<vbox id="student-mobilitaet" style="margin-top:10px;" />
<vbox id="student-noten" style="margin-top:10px;" />
<vbox id="student-zeugnis" style="margin-top:10px;" />
<vbox id="student-pruefung" style="margin-top:10px;" />
@@ -0,0 +1,317 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../../config/vilesci.config.inc.php');
?>
var StudentMobilitaetTreeDatasource;
var StudentMobilitaetTreeSelectID='';
// ****
// * Observer fuer BISIO Tree
// * startet Rebuild nachdem das Refresh
// * der datasource fertig ist
// ****
var StudentMobilitaetTreeSinkObserver =
{
onBeginLoad : function(pSink)
{
tree = document.getElementById('student-mobilitaet-tree');
tree.removeEventListener('select', StudentMobilitaetAuswahl, false);
},
onInterrupt : function(pSink) {},
onResume : function(pSink) {},
onError : function(pSink, pStatus, pError) {},
onEndLoad : function(pSink)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('student-mobilitaet-tree').builder.rebuild();
}
};
// ****
// * Nach dem Rebuild wird der Eintrag wieder
// * markiert
// ****
var StudentMobilitaetTreeListener =
{
willRebuild : function(builder) { },
didRebuild : function(builder)
{
tree = document.getElementById('student-mobilitaet-tree');
tree.addEventListener('select', StudentMobilitaetAuswahl, false);
//timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
window.setTimeout(StudentMobilitaetTreeSelectID,10);
}
};
function StudentMobilitaetAuswahl()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var gstree = document.getElementById('student-mobilitaet-tree');
if (gstree.currentIndex==-1)
return;
StudentMobilitaetDisableFields(false);
//Ausgewaehlte ID holen
var mobilitaet_id = getTreeCellText(gstree, 'student-mobilitaet-tree-mobilitaet_id', gstree.currentIndex);
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/mobilitaet.rdf.php?mobilitaet_id='+mobilitaet_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/mobilitaet/" + mobilitaet_id);
var predicateNS = "http://www.technikum-wien.at/mobilitaet/rdf";
//Daten holen
var mobilitaetsprogramm_code = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#mobilitaetsprogramm_code" ));
var studiensemester_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiensemester_kurzbz" ));
var gsprogramm_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#gsprogramm_id" ));
var mobilitaetstyp_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#mobilitaetstyp_kurzbz" ));
var firma_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#firma_id" ));
var status_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#status_kurzbz" ));
var ausbildungssemester = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#ausbildungssemester" ));
document.getElementById('student-mobilitaet-detail-checkbox-neu').checked=false;
document.getElementById('student-mobilitaet-detail-textbox-mobilitaet_id').value=mobilitaet_id;
document.getElementById('student-mobilitaet-menulist-studiensemester').value=studiensemester_kurzbz;
document.getElementById('student-mobilitaet-menulist-mobilitaetsprogramm').value=mobilitaetsprogramm_code;
document.getElementById('student-mobilitaet-menulist-gsprogramm').value=gsprogramm_id;
document.getElementById('student-mobilitaet-menulist-mobilitaetstyp').value=mobilitaetstyp_kurzbz;
document.getElementById('student-mobilitaet-menulist-firma').value=firma_id;
document.getElementById('student-mobilitaet-menulist-status').value=status_kurzbz;
document.getElementById('student-mobilitaet-textbox-ausbildungssemester').value=ausbildungssemester;
}
function StudentMobilitaetLoad(prestudent_id)
{
document.getElementById('student-mobilitaet-detail-textbox-prestudent_id').value=prestudent_id;
document.getElementById('student-mobilitaet-button-neu').disabled=false;
document.getElementById('student-mobilitaet-button-loeschen').disabled=false;
var gstree = document.getElementById('student-mobilitaet-tree');
url='<?php echo APP_ROOT;?>rdf/mobilitaet.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp();
try
{
StudentMobilitaetTreeDatasource.removeXMLSinkObserver(StudentMobilitaetTreeSinkObserver);
gstree.builder.removeListener(StudentMobilitaetTreeListener);
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = gstree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
gstree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
gstree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
StudentMobilitaetTreeDatasource = rdfService.GetDataSource(url);
StudentMobilitaetTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentMobilitaetTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
gstree.database.AddDataSource(StudentMobilitaetTreeDatasource);
StudentMobilitaetTreeDatasource.addXMLSinkObserver(StudentMobilitaetTreeSinkObserver);
gstree.builder.addListener(StudentMobilitaetTreeListener);
}
// ****
// * Aktiviert die Felder zum Anlegen eines neuen Eintrages
// ****
function StudentMobilitaetNeu()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//Felder Resetten und Aktivieren
StudentMobilitaetResetFileds();
StudentMobilitaetDisableFields(false);
// Defaultwerte fuer neuen Eintrag setzen
var stsem = getStudiensemester();
document.getElementById('student-mobilitaet-menulist-studiensemester').value=stsem;
document.getElementById('student-mobilitaet-menulist-status').value='Student';
document.getElementById('student-mobilitaet-menulist-mobilitaetstyp').value='GS';
}
function StudentMobilitaetResetFileds()
{
document.getElementById('student-mobilitaet-detail-checkbox-neu').checked=true;
document.getElementById('student-mobilitaet-detail-textbox-mobilitaet_id').value='';
document.getElementById('student-mobilitaet-menulist-studiensemester').value='';
document.getElementById('student-mobilitaet-menulist-mobilitaetsprogramm').value='';
document.getElementById('student-mobilitaet-menulist-gsprogramm').value='';
document.getElementById('student-mobilitaet-menulist-mobilitaetstyp').value='';
document.getElementById('student-mobilitaet-menulist-firma').value='';
document.getElementById('student-mobilitaet-menulist-status').value='';
document.getElementById('student-mobilitaet-textbox-ausbildungssemester').value='';
}
function StudentMobilitaetDisableFields(val)
{
document.getElementById('student-mobilitaet-menulist-studiensemester').disabled=val;
document.getElementById('student-mobilitaet-menulist-mobilitaetsprogramm').disabled=val;
document.getElementById('student-mobilitaet-menulist-gsprogramm').disabled=val;
document.getElementById('student-mobilitaet-menulist-mobilitaetstyp').disabled=val;
document.getElementById('student-mobilitaet-menulist-firma').disabled=val;
document.getElementById('student-mobilitaet-menulist-status').disabled=val;
document.getElementById('student-mobilitaet-textbox-ausbildungssemester').disabled=val;
document.getElementById('student-mobilitaet-button-speichern').disabled=val;
}
// ****
// * Speichert den Mobilitaet Datensatz
// ****
function StudentMobilitaetSpeichern()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var ausbildungssemester = document.getElementById('student-mobilitaet-textbox-ausbildungssemester').value;
var status = document.getElementById('student-mobilitaet-menulist-status').value;
var firma = document.getElementById('student-mobilitaet-menulist-firma').value;
var mobilitaetstyp = document.getElementById('student-mobilitaet-menulist-mobilitaetstyp').value;
var gsprogramm = document.getElementById('student-mobilitaet-menulist-gsprogramm').value;
var mobilitaetsprogramm = document.getElementById('student-mobilitaet-menulist-mobilitaetsprogramm').value;
var studiensemester = document.getElementById('student-mobilitaet-menulist-studiensemester').value;
var neu = document.getElementById('student-mobilitaet-detail-checkbox-neu').checked;
var prestudent_id = document.getElementById('student-mobilitaet-detail-textbox-prestudent_id').value;
var mobilitaet_id = document.getElementById('student-mobilitaet-detail-textbox-mobilitaet_id').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'savemobilitaet');
if(neu==false)
req.add('mobilitaet_id', mobilitaet_id);
req.add('neu', neu);
req.add('mobilitaetsprogramm_code', mobilitaetsprogramm);
req.add('ausbildungssemester', ausbildungssemester);
req.add('status_kurzbz', status);
req.add('firma_id', firma);
req.add('mobilitaetstyp_kurzbz', mobilitaetstyp);
req.add('gsprogramm_id', gsprogramm);
req.add('studiensemester_kurzbz', studiensemester);
req.add('prestudent_id', prestudent_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)
}
else
{
document.getElementById('student-mobilitaet-detail-textbox-mobilitaet_id').value = val.dbdml_data;
document.getElementById('student-mobilitaet-detail-checkbox-neu').checked=false;
StudentMobilitaetTreeSelectID = val.dbdml_data;
StudentMobilitaetTreeDatasource.Refresh(false); //non blocking
SetStatusBarText('Daten wurden gespeichert');
}
}
// ****
// * Selectiert den Mobilitaet Eintrag nachdem der Tree
// * rebuildet wurde.
// ****
function StudentMobilitaetTreeSelectID()
{
var tree=document.getElementById('student-mobilitaet-tree');
if(tree.view)
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
else
return false;
//In der globalen Variable ist die zu selektierende Eintrag gespeichert
if(StudentMobilitaetSelectID!=null)
{
for(var i=0;i < items;i++)
{
//ID der row holen
var mobilitaet_id = getTreeCellText(tree, 'student-mobilitaet-tree-mobilitaet_id', i);
//wenn dies die zu selektierende Zeile
if(mobilitaet_id == StudentMobilitaetSelectID)
{
//Zeile markieren
tree.view.selection.select(i);
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
tree.treeBoxObject.ensureRowIsVisible(i);
StudentMobilitaetSelectID=null;
return true;
}
}
}
}
function StudentMobilitaetDelete()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-mobilitaet-tree');
if (tree.currentIndex==-1) return;
StudentMobilitaetDisableFields(false);
//Ausgewaehlte Nr holen
var mobilitaet_id = getTreeCellText(tree, 'student-mobilitaet-tree-mobilitaet_id', tree.currentIndex);
if(confirm('Diesen Eintrag wirklich loeschen?'))
{
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'deletemobilitaet');
req.add('mobilitaet_id', mobilitaet_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)
}
else
{
StudentMobilitaetSelectID=mobilitaet_id;
StudentMobilitaetTreeDatasource.Refresh(false); //non blocking
SetStatusBarText('Daten wurden geloescht');
StudentMobilitaetResetFileds();
StudentMobilitaetDisableFields(true);
}
}
}
@@ -0,0 +1,228 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@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');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
?>
<overlay id="MobilitaetDetailOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/studentmobilitaetoverlay.js.php" />
<vbox id="student-mobilitaet" style="overflow:auto;margin:0px;" flex="1">
<popupset>
<menupopup id="student-mobilitaet-tree-popup">
<menuitem label="Entfernen" oncommand="StudentMobilitaetDelete();" id="student-mobilitaet-tree-popup-delete" hidden="false"/>
</menupopup>
</popupset>
<hbox flex="1">
<grid id="student-mobilitaet-grid-detail" style="margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="1"/>
</columns>
<rows>
<row>
<tree id="student-mobilitaet-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/mobilitaet"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
context="student-mobilitaet-tree-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="student-mobilitaet-tree-studiensemester" label="StSem" flex="2" hidden="false" primary="true"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/mobilitaet/rdf#studiensemester"/>
<splitter class="tree-splitter"/>
<treecol id="student-mobilitaet-tree-mobilitaetsprogramm" label="Mobilitaetsprogramm" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mobilitaet/rdf#mobilitaetsprogramm"/>
<splitter class="tree-splitter"/>
<treecol id="student-mobilitaet-tree-status_kurzbz" label="Status" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mobilitaet/rdf#status_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="student-mobilitaet-tree-ausbildungssemester" label="Sem" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mobilitaet/rdf#ausbildungssemester" />
<splitter class="tree-splitter"/>
<treecol id="student-mobilitaet-tree-gsprogrammtyp_kurzbz" label="Typ" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mobilitaet/rdf#gsprogrammtyp_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="student-mobilitaet-tree-mobilitaet_id" label="ID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mobilitaet/rdf#mobilitaet_id" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mobilitaet/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mobilitaet/rdf#mobilitaetsprogramm"/>
<treecell label="rdf:http://www.technikum-wien.at/mobilitaet/rdf#status_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mobilitaet/rdf#ausbildungssemester"/>
<treecell label="rdf:http://www.technikum-wien.at/mobilitaet/rdf#gsprogrammtyp_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mobilitaet/rdf#mobilitaet_id"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<vbox>
<hbox>
<button id="student-mobilitaet-button-neu" label="Neu" oncommand="StudentMobilitaetNeu();" disabled="true"/>
<button id="student-mobilitaet-button-loeschen" label="Loeschen" oncommand="StudentMobilitaetDelete();" disabled="true"/>
</hbox>
<vbox hidden="true">
<label value="Neu"/>
<checkbox id="student-mobilitaet-detail-checkbox-neu" checked="true" />
<label value="Uid"/>
<textbox id="student-mobilitaet-detail-textbox-prestudent_id" disabled="true"/>
<label value="gs ID"/>
<textbox id="student-mobilitaet-detail-textbox-mobilitaet_id" disabled="true"/>
</vbox>
<groupbox id="student-mobilitaet-groupbox" flex="1">
<caption label="Gemeinsame Studien"/>
<grid id="student-mobilitaet-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="Typ" control="student-mobilitaet-menulist-mobilitaetstyp"/>
<menulist id="student-mobilitaet-menulist-mobilitaetstyp" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/mobilitaetstyp.rdf.php" flex="1"
ref="http://www.technikum-wien.at/mobilitaetstyp" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/mobilitaetstyp/rdf#mobilitaetstyp_kurzbz"
label="rdf:http://www.technikum-wien.at/mobilitaetstyp/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Studiensemester" control="student-mobilitaet-menulist-studiensemester"/>
<menulist id="student-mobilitaet-menulist-studiensemester" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/studiensemester.rdf.php" flex="1"
ref="http://www.technikum-wien.at/studiensemester/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/studiensemester/rdf#kurzbz"
label="rdf:http://www.technikum-wien.at/studiensemester/rdf#kurzbz"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Mobilitaetsprogramm" control="student-mobilitaet-menulist-mobilitaetsprogramm"/>
<menulist id="student-mobilitaet-menulist-mobilitaetsprogramm" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/mobilitaetsprogramm.rdf.php?optional=true" flex="1"
ref="http://www.technikum-wien.at/mobilitaetsprogramm/liste" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/mobilitaetsprogramm/rdf#mobilitaetsprogramm_code"
label="rdf:http://www.technikum-wien.at/mobilitaetsprogramm/rdf#kurzbz - rdf:http://www.technikum-wien.at/mobilitaetsprogramm/rdf#beschreibung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Studienprogramm" control="student-mobilitaet-menulist-gsprogramm"/>
<menulist id="student-mobilitaet-menulist-gsprogramm" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/gsprogramm.rdf.php" flex="1"
ref="http://www.technikum-wien.at/gsprogramm" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gsprogramm/rdf#gsprogramm_id"
label="rdf:http://www.technikum-wien.at/gsprogramm/rdf#gsprogrammtyp_bezeichnung - rdf:http://www.technikum-wien.at/gsprogramm/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Partner" control="student-mobilitaet-menulist-firma"/>
<menulist id="student-mobilitaet-menulist-firma" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/firma.rdf.php?partner=true&amp;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>
</row>
<row>
<label value="Status" control="student-mobilitaet-menulist-status"/>
<menulist id="student-mobilitaet-menulist-status" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/status.rdf.php" flex="1"
ref="http://www.technikum-wien.at/status" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/status/rdf#status_kurzbz"
label="rdf:http://www.technikum-wien.at/status/rdf#status_kurzbz"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</row>
<row>
<label value="Ausbildungssemester" control="student-mobilitaet-textbox-ausbildungssemester"/>
<hbox>
<textbox id="student-mobilitaet-textbox-ausbildungssemester" disabled="true" size="1"/>
<spacer flex="1" />
</hbox>
</row>
</rows>
</grid>
</groupbox>
<hbox>
<spacer flex="1" />
<button id="student-mobilitaet-button-speichern" oncommand="StudentMobilitaetSpeichern()" label="Speichern" disabled="true"/>
</hbox>
</vbox>
</row>
</rows>
</grid>
</hbox>
<spacer flex="1" />
</vbox>
</overlay>
+44 -32
View File
@@ -919,11 +919,12 @@ function StudentAuswahl()
StudentKontoDisableFields(false);
StudentAkteDisableFields(false);
StudentIODisableFields(false);
StudentMobilitaetDisableFields(false);
StudentNoteDisableFields(false);
document.getElementById('student-detail-button-save').disabled=false;
StudentPruefungDisableFileds(false);
if(document.getElementById('student-tab-anrechnungen'))
StudentAnrechnungenDisableFields(false);
StudentAnrechnungenDisableFields(false);
}
else
{
@@ -944,9 +945,9 @@ function StudentAuswahl()
var url = '<?php echo APP_ROOT ?>rdf/student.rdf.php?prestudent_id='+prestudent_id+'&studiensemester_kurzbz='+stsem+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/student/" + prestudent_id);
@@ -1057,6 +1058,7 @@ function StudentAuswahl()
anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkungpre" ));
mentor = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#mentor" ));
dual = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#dual" ));
gsstudientyp_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#gsstudientyp_kurzbz" ));
document.getElementById('student-prestudent-menulist-aufmerksamdurch').value=aufmerksamdurch_kurzbz;
document.getElementById('student-prestudent-menulist-berufstaetigkeit').value=berufstaetigkeit_code;
@@ -1102,6 +1104,7 @@ function StudentAuswahl()
document.getElementById('student-prestudent-textbox-anmerkung').value=anmerkung;
document.getElementById('student-prestudent-textbox-mentor').value=mentor;
document.getElementById('student-detail-menulist-gsstudientyp').value=gsstudientyp_kurzbz;
document.getElementById('student-detail-groupbox-caption').label='Zugangsvoraussetzung für '+nachname+' '+vorname;
rollentree = document.getElementById('student-prestudent-tree-rolle');
@@ -1366,6 +1369,12 @@ function StudentAuswahl()
bisiotree.builder.addListener(StudentIOTreeListener);
}
if(uid!='')
{
// *** Gemeinsame Studien / Mobilitaet ***
StudentMobilitaetLoad(prestudent_id);
}
if(uid!='')
{
// *** ZeugnisNoten ***
@@ -1474,40 +1483,40 @@ function StudentAuswahl()
}
if(document.getElementById('student-tab-anrechnungen'))
{
// ****** Anrechnungen ****** //
StudentAnrechnungDetailDisableFields(true);
StudentAnrechnungResetNotizLabel();
{
// ****** Anrechnungen ****** //
StudentAnrechnungDetailDisableFields(true);
StudentAnrechnungResetNotizLabel();
anrechnungtree = document.getElementById('student-anrechnungen-tree');
anrechnungtree = document.getElementById('student-anrechnungen-tree');
url='<?php echo APP_ROOT;?>rdf/anrechnung.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp();
url='<?php echo APP_ROOT;?>rdf/anrechnung.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp();
try
{
StudentAnrechnungTreeDatasource.removeXMLSinkObserver(StudentAnrechnungTreeSinkObserver);
anrechnungtree.builder.removeListener(StudentAnrechnungTreeListener);
}
catch(e)
{}
try
{
StudentAnrechnungTreeDatasource.removeXMLSinkObserver(StudentAnrechnungTreeSinkObserver);
anrechnungtree.builder.removeListener(StudentAnrechnungTreeListener);
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = anrechnungtree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
anrechnungtree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
anrechnungtree.builder.rebuild();
//Alte DS entfernen
var oldDatasources = anrechnungtree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
anrechnungtree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
anrechnungtree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
StudentAnrechnungTreeDatasource = rdfService.GetDataSource(url);
StudentAnrechnungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentAnrechnungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
anrechnungtree.database.AddDataSource(StudentAnrechnungTreeDatasource);
StudentAnrechnungTreeDatasource.addXMLSinkObserver(StudentAnrechnungTreeSinkObserver);
anrechnungtree.builder.addListener(StudentAnrechnungTreeListener);
}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
StudentAnrechnungTreeDatasource = rdfService.GetDataSource(url);
StudentAnrechnungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentAnrechnungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
anrechnungtree.database.AddDataSource(StudentAnrechnungTreeDatasource);
StudentAnrechnungTreeDatasource.addXMLSinkObserver(StudentAnrechnungTreeSinkObserver);
anrechnungtree.builder.addListener(StudentAnrechnungTreeListener);
}
if(uid!='')
{
@@ -1602,6 +1611,7 @@ function StudentPrestudentDisableFields(val)
//document.getElementById('student-prestudent-menulist-studiengang_kz').disabled=val;
document.getElementById('student-prestudent-textbox-anmerkung').disabled=val;
document.getElementById('student-prestudent-textbox-mentor').disabled=val;
document.getElementById('student-detail-menulist-gsstudientyp').disabled=val;
//Status Tree leeren
rollentree = document.getElementById('student-prestudent-tree-rolle');
@@ -1656,6 +1666,7 @@ function StudentPrestudentSave()
studiengang_kz = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
anmerkung = document.getElementById('student-prestudent-textbox-anmerkung').value;
mentor = document.getElementById('student-prestudent-textbox-mentor').value;
gsstudientyp = document.getElementById('student-detail-menulist-gsstudientyp').value;
if(zgvdatum!='' && !CheckDatum(zgvdatum))
{
@@ -1711,6 +1722,7 @@ function StudentPrestudentSave()
req.add('studiengang_kz', studiengang_kz);
req.add('anmerkung', anmerkung);
req.add('mentor', mentor);
req.add('gsstudientyp_kurzbz', gsstudientyp);
var response = req.executePOST();
+63 -9
View File
@@ -48,6 +48,7 @@ class firma extends basis_db
public $gesperrt; // boolean
public $aktiv; // boolean
public $finanzamt; // string
public $partner_code; // varchar(20)
// firma_organisationseinheit
public $oe_kurzbz; // string
@@ -108,6 +109,7 @@ class firma extends basis_db
$this->gesperrt = $this->db_parse_bool($row->gesperrt);
$this->aktiv = $this->db_parse_bool($row->aktiv);
$this->finanzamt = $row->finanzamt;
$this->partner_code = $row->partner_code;
$qry = "SELECT tag FROM public.tbl_firmatag WHERE firma_id=".$this->db_add_param($firma_id,FHC_INTEGER).';';
if($resulttag = $this->db_query($qry))
@@ -188,7 +190,8 @@ class firma extends basis_db
$this->db_add_param($this->steuernummer).', '.
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).','.
$this->db_add_param($this->aktiv, FHC_BOOLEAN).','.
$this->db_add_param($this->finanzamt, FHC_INTEGER).' ); ';
$this->db_add_param($this->finanzamt, FHC_INTEGER).','.
$this->db_add_param($this->partner_code).'); ';
}
else
{
@@ -212,7 +215,8 @@ class firma extends basis_db
'steuernummer='.$this->db_add_param($this->steuernummer).', '.
'gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).', '.
'aktiv='.$this->db_add_param($this->aktiv, FHC_BOOLEAN).', '.
'finanzamt='.$this->db_add_param($this->finanzamt, FHC_INTEGER).' '.
'finanzamt='.$this->db_add_param($this->finanzamt, FHC_INTEGER).', '.
'partner_code='.$this->db_add_param($this->partner_code).' '.
'WHERE firma_id='.$this->db_add_param($this->firma_id, FHC_INTEGER).';';
}
@@ -377,7 +381,7 @@ class firma extends basis_db
SELECT
firma_id, name, anmerkung, lieferbedingungen, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon,
ext_id, schule, steuernummer, gesperrt, aktiv, finanzamt, '1' as sort
ext_id, schule, steuernummer, gesperrt, aktiv, finanzamt, '1' as sort, partner_code
FROM public.tbl_firma
WHERE
UPPER(trim(public.tbl_firma.name)) like '".$this->db_escape($matchcode)."%'
@@ -418,6 +422,7 @@ class firma extends basis_db
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
$fa->aktiv = $this->db_parse_bool($row->aktiv);
$fa->finanzamt = $row->finanzamt;
$fa->partner_code = $row->partner_code;
$this->result[] = $fa;
}
@@ -495,6 +500,7 @@ class firma extends basis_db
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
$fa->aktiv = $this->db_parse_bool($row->aktiv);
$fa->finanzamt = $row->finanzamt;
$fa->partner_code = $row->partner_code;
$this->result[] = $fa;
}
@@ -511,7 +517,7 @@ class firma extends basis_db
$this->result = array();
$this->errormsg = '';
$qry ="SELECT * FROM (SElECT ";
$qry ="SELECT * FROM (SElECT ";
$qry.=" distinct on(firma_id)";
$qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung ";
$qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse ";
@@ -542,6 +548,7 @@ class firma extends basis_db
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
$fa->aktiv = $this->db_parse_bool($row->aktiv);
$fa->finanzamt = $row->finanzamt;
$fa->partner_code = $row->partner_code;
$fa->kurzbz = $row->kurzbz;
$fa->adresse_id = $row->adresse_id;
$fa->standort_id = $row->standort_id;
@@ -571,15 +578,15 @@ class firma extends basis_db
/**
* Suche nur nach Firmennamen für die abgespeckte Firmenverwaltung
* Suche nur nach Firmennamen für die abgespeckte Firmenverwaltung
* @return true wenn ok, false im Fehlerfall
*/
public function searchByName($filter)
public function searchByName($filter)
{
$this->result = array();
$this->errormsg = '';
$qry ="SELECT * FROM (SElECT ";
$qry ="SELECT * FROM (SElECT ";
$qry.=" distinct on(firma_id)";
$qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung ";
$qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse ";
@@ -590,9 +597,9 @@ class firma extends basis_db
if($filter!='')
$qry.= " and ( lower(tbl_firma.name) like lower('%".$this->db_escape($filter)."%')
) ";
//if($filter=='' && $firmentyp_kurzbz=='')
// $qry.=" limit 500 ";
$qry.=") as a ORDER BY name;";
@@ -618,6 +625,7 @@ class firma extends basis_db
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
$fa->aktiv = $this->db_parse_bool($row->aktiv);
$fa->finanzamt = $row->finanzamt;
$fa->partner_code = $row->partner_code;
$fa->kurzbz = $row->kurzbz;
$fa->adresse_id = $row->adresse_id;
$fa->standort_id = $row->standort_id;
@@ -719,6 +727,7 @@ class firma extends basis_db
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
$fa->aktiv = $this->db_parse_bool($row->aktiv);
$fa->finanzamt = $row->finanzamt;
$fa->partner_code = $row->partner_code;
$fa->kurzbz = $row->kurzbz;
$fa->adresse_id = $row->adresse_id;
$fa->standort_id = $row->standort_id;
@@ -837,6 +846,7 @@ class firma extends basis_db
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
$fa->aktiv = $this->db_parse_bool($row->aktiv);
$fa->finanzamt = $row->finanzamt;
$fa->partner_code = $row->partner_code;
$fa->oe_kurzbz = $row->oe_kurzbz;
$fa->firma_organisationseinheit_id = $row->firma_organisationseinheit_id;
$fa->oe_parent_kurzbz = $row->oe_parent_kurzbz;
@@ -1103,6 +1113,7 @@ class firma extends basis_db
$fi->gesperrt = $this->db_parse_bool($row->gesperrt);
$fi->aktiv = $this->db_parse_bool($row->aktiv);
$fi->finanzamt = $row->finanzamt;
$fi->partner_code = $row->partner_code;
$this->result[] = $fi;
}
@@ -1115,5 +1126,48 @@ class firma extends basis_db
}
}
/**
* Laedt Firmen die eine PartnerCode haben
* @param $firma_id ID der zu ladenden Funktion
* @return true wenn ok, false im Fehlerfall
*/
public function getFirmaPartner()
{
$qry = "SELECT * FROM public.tbl_firma WHERE partner_code is not null;";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new stdClass();
$obj->firma_id = $row->firma_id;
$obj->name = $row->name;
$obj->anmerkung = $row->anmerkung;
$obj->lieferbedingungen = $row->lieferbedingungen;
$obj->firmentyp_kurzbz = $row->firmentyp_kurzbz;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->ext_id = $row->ext_id;
$obj->schule = $this->db_parse_bool($row->schule);
$obj->steuernummer = $row->steuernummer;
$obj->gesperrt = $this->db_parse_bool($row->gesperrt);
$obj->aktiv = $this->db_parse_bool($row->aktiv);
$obj->finanzamt = $row->finanzamt;
$obj->partner_code = $row->partner_code;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden des Datensatzes';
return false;
}
}
}
?>
+209
View File
@@ -0,0 +1,209 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
/**
* Klasse GSProgramm
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class gsprogramm extends basis_db
{
public $new=true; // boolean
public $result = array();
//Tabellenspalten
public $gsprogramm_id;
public $programm_code;
public $bezeichnung;
public $gsprogrammtyp_kurzbz;
public function getAll()
{
$qry ="SELECT
tbl_gsprogramm.*,
tbl_gsprogrammtyp.bezeichnung as gsprogrammtyp_bezeichnung
FROM
bis.tbl_gsprogramm
LEFT JOIN bis.tbl_gsprogrammtyp USING(gsprogrammtyp_kurzbz)
ORDER BY tbl_gsprogramm.bezeichnung";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new gsprogramm();
$obj->gsprogramm_id = $row->gsprogramm_id;
$obj->programm_code = $row->programm_code;
$obj->bezeichnung = $row->bezeichnung;
$obj->gsprogrammtyp_kurzbz = $row->gsprogrammtyp_kurzbz;
$obj->gsprogrammtyp_bezeichnung = $row->gsprogrammtyp_bezeichnung;
$this->result[]=$obj;
}
return true;
}
else
{
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
return false;
}
}
/**
* Lädt ein GSProgramm
* @param int $gsprogramm_id
* @return boolean
*/
public function load($gsprogramm_id)
{
$qry ="SELECT * FROM bis.tbl_gsprogramm where gsprogramm_id =".$this->db_add_param($gsprogramm_id, FHC_INTEGER).';';
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->gsprogramm_id = $row->gsprogramm_id;
$this->programm_code = $row->programm_code;
$this->bezeichnung = $row->bezeichnung;
$this->gsprogrammtyp_kurzbz = $row->gsprogrammtyp_kurzbz;
$this->new = false;
}
return true;
}
else
{
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
return false;
}
}
/**
* Laedt die GSProgrammTypen
* @return true wenn ok, false im Fehlerfall
*/
public function getTypen()
{
$qry = "SELECT * FROM bis.tbl_gsprogrammtyp ORDER BY bezeichnung";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->gsprogrammtyp_kurzbz = $row->gsprogrammtyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->programmtyp_code = $row->programmtyp_code;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Programmtypen';
return false;
}
}
public function save()
{
if($this->new)
{
$qry = 'BEGIN;INSERT INTO bis.tbl_gsprogramm(programm_code,
bezeichnung, gsprogrammtyp_kurzbz) VALUES('.
$this->db_add_param($this->programm_code).','.
$this->db_add_param($this->bezeichnung).','.
$this->db_add_param($this->gsprogrammtyp_kurzbz).');';
}
else
{
$qry = 'UPDATE bis.tbl_gsprogramm SET
bezeichnung='.$this->db_add_param($this->bezeichnung).',
gsprogrammtyp_kurzbz='.$this->db_add_param($this->gsprogrammtyp_kurzbz).',
programm_code='.$this->db_add_param($this->programm_code, FHC_INTEGER).'
WHERE gsprogramm_id='.$this->db_add_param($this->gsprogramm_id, FHC_INTEGER, false);
}
if($this->db_query($qry))
{
if($this->new)
{
//Sequence lesen
$qry="SELECT currval('bis.tbl_gsprogramm_gsprogramm_id_seq') as id;";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->gsprogramm_id = $row->id;
$this->db_query('COMMIT;');
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
else
{
return true;
}
}
else
{
$this->errormsg = 'Fehler beim Speichern der Daten';
return false;
}
}
/**
* Loescht ein GSProgramm
* @param $gsprogramm_id ID des Datensatzes
* @return boolean true wenn ok, false im Fehlerfall
*/
public function delete($gsprogramm_id)
{
$qry = "DELETE FROM bis.tbl_gsprogramm
WHERE gsprogramm_id=".$this->db_add_param($gsprogramm_id, FHC_INTEGER);
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen des Datensatzes';
return false;
}
}
}
+330
View File
@@ -0,0 +1,330 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class mobilitaet extends basis_db
{
public $new; // boolean
public $result = array(); // mobilitaet Objekt
//Tabellenspalten
public $mobilitaet_id; // integer
public $mobilitaetstyp_kurzbz; //varchar(32)
public $prestudent_id; // integer
public $studiensemester_kurzbz; // varchar(16)
public $mobilitaetsprogramm_code; // integer
public $gsprogramm_id; // integer
public $firma_id; // bigint
public $status_kurzbz; // varchar(20)
public $ausbildungssemester; // smallint
public $updateamum; // timestamp
public $updatevon; // string
public $insertamum; // timestamp
public $insertvon; // string
/**
* Konstruktor
* @param $mobilitaet_id ID der mobilitaet die geladen werden soll (Default=null)
*/
public function __construct($mobilitaet_id=null)
{
parent::__construct();
if(!is_null($mobilitaet_id))
$this->load($mobilitaet_id);
}
/**
* Laedt die mobilitaet mit der ID $mobilitaet_id
* @param $mobilitaet_id ID der zu ladenden mobilitaet
* @return true wenn ok, false im Fehlerfall
*/
public function load($mobilitaet_id)
{
//Pruefen ob id eine gueltige Zahl ist
if(!is_numeric($mobilitaet_id) || $mobilitaet_id == '')
{
$this->errormsg = 'mobilitaet_id muss eine Zahl sein';
return false;
}
//Daten aus der Datenbank lesen
$qry = "SELECT
*
FROM
bis.tbl_mobilitaet
WHERE
mobilitaet_id=".$this->db_add_param($mobilitaet_id, FHC_INTEGER, false);
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
if($row = $this->db_fetch_object())
{
$this->mobilitaet_id = $row->mobilitaet_id;
$this->prestudent_id = $row->prestudent_id;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->mobilitaetsprogramm_code = $row->mobilitaetsprogramm_code;
$this->gsprogramm_id = $row->gsprogramm_id;
$this->mobilitaetstyp_kurzbz = $row->mobilitaetstyp_kurzbz;
$this->firma_id = $row->firma_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->ausbildungssemester = $row->ausbildungssemester;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
return true;
}
else
{
$this->errormsg = 'Es ist kein Datensatz mit dieser ID vorhanden';
return false;
}
return true;
}
/**
* Laedt die mobilitaet eines Prestudenten
* @param $prestudent_id ID des Prestudenten dessen GS geladen werden soll
* @return true wenn ok, false im Fehlerfall
*/
public function loadPrestudent($prestudent_id)
{
//Pruefen ob id eine gueltige Zahl ist
if(!is_numeric($prestudent_id) || $prestudent_id == '')
{
$this->errormsg = 'prestudent_id muss eine Zahl sein';
return false;
}
//Daten aus der Datenbank lesen
$qry = "SELECT
*
FROM
bis.tbl_mobilitaet
WHERE
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER, false);
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
while($row = $this->db_fetch_object())
{
$obj = new mobilitaet();
$obj->mobilitaet_id = $row->mobilitaet_id;
$obj->prestudent_id = $row->prestudent_id;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->mobilitaetsprogramm_code = $row->mobilitaetsprogramm_code;
$obj->gsprogramm_id = $row->gsprogramm_id;
$obj->mobilitaetstyp_kurzbz = $row->mobilitaetstyp_kurzbz;
$obj->firma_id = $row->firma_id;
$obj->status_kurzbz = $row->status_kurzbz;
$obj->ausbildungssemester = $row->ausbildungssemester;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$this->result[] = $obj;
}
return true;
}
/**
* Prueft die Variablen auf Gueltigkeit
* @return true wenn ok, false im Fehlerfall
*/
protected function validate()
{
//Zahlenfelder pruefen
if(!is_numeric($this->prestudent_id))
{
$this->errormsg='prestudent_id enthaelt ungueltige Zeichen';
return false;
}
if(!is_numeric($this->ausbildungssemester))
{
$this->errormsg = 'Ausbildungssemester muss eine gueltige Zahl sein';
return false;
}
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
* andernfalls wird der Datensatz mit der ID in $mobilitaet_id aktualisiert
* @return true wenn ok, false im Fehlerfall
*/
public function save()
{
//Variablen pruefen
if(!$this->validate())
return false;
if($this->new)
{
//Neuen Datensatz einfuegen
$qry='BEGIN;INSERT INTO bis.tbl_mobilitaet (prestudent_id,
studiensemester_kurzbz, mobilitaetsprogramm_code, gsprogramm_id, mobilitaetstyp_kurzbz, firma_id,
status_kurzbz, ausbildungssemester, insertamum, insertvon, updateamum, updatevon) VALUES('.
$this->db_add_param($this->prestudent_id, FHC_INTEGER).', '.
$this->db_add_param($this->studiensemester_kurzbz).', '.
$this->db_add_param($this->mobilitaetsprogramm_code, FHC_INTEGER).', '.
$this->db_add_param($this->gsprogramm_id, FHC_INTEGER).', '.
$this->db_add_param($this->mobilitaetstyp_kurzbz).', '.
$this->db_add_param($this->firma_id, FHC_INTEGER).', '.
$this->db_add_param($this->status_kurzbz).', '.
$this->db_add_param($this->ausbildungssemester, FHC_INTEGER).', now(),'.
$this->db_add_param($this->insertvon).', now(), '.
$this->db_add_param($this->updatevon).');';
}
else
{
//Pruefen ob mobilitaet_id eine gueltige Zahl ist
if(!is_numeric($this->mobilitaet_id))
{
$this->errormsg = 'mobilitaet_id muss eine gueltige Zahl sein';
return false;
}
$qry='UPDATE bis.tbl_mobilitaet SET'.
' prestudent_id='.$this->db_add_param($this->prestudent_id, FHC_INTEGER).', '.
' studiensemester_kurzbz='.$this->db_add_param($this->studiensemester_kurzbz).', '.
' mobilitaetsprogramm_code='.$this->db_add_param($this->mobilitaetsprogramm_code).', '.
' gsprogramm_id='.$this->db_add_param($this->gsprogramm_id).', '.
' mobilitaetstyp_kurzbz='.$this->db_add_param($this->mobilitaetstyp_kurzbz).', '.
' firma_id='.$this->db_add_param($this->firma_id).', '.
' status_kurzbz='.$this->db_add_param($this->status_kurzbz).', '.
' ausbildungssemester='.$this->db_add_param($this->ausbildungssemester).', '.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).' '.
'WHERE mobilitaet_id='.$this->db_add_param($this->mobilitaet_id, FHC_INTEGER, false).';';
}
if($this->db_query($qry))
{
if($this->new)
{
//naechste ID aus der Sequence holen
$qry="SELECT currval('bis.tbl_mobilitaet_mobilitaet_id_seq') as id;";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->mobilitaet_id = $row->id;
$this->db_query('COMMIT');
}
else
{
$this->db_query('ROLLBACK');
$this->errormsg = "Fehler beim Auslesen der Sequence";
return false;
}
}
else
{
$this->db_query('ROLLBACK');
$this->errormsg = 'Fehler beim Auslesen der Sequence';
return false;
}
}
}
else
{
$this->errormsg = 'Fehler beim Speichern des Adress-Datensatzes';
return false;
}
return $this->mobilitaet_id;
}
/**
* Loescht den Datenensatz mit der ID die uebergeben wird
* @param $mobilitaet_id ID die geloescht werden soll
* @return true wenn ok, false im Fehlerfall
*/
public function delete($mobilitaet_id)
{
//Pruefen ob mobilitaet_id eine gueltige Zahl ist
if(!is_numeric($mobilitaet_id) || $mobilitaet_id == '')
{
$this->errormsg = 'mobilitaet_id muss eine gültige Zahl sein'."\n";
return false;
}
//loeschen des Datensatzes
$qry="DELETE FROM bis.tbl_mobilitaet WHERE mobilitaet_id=".$this->db_add_param($mobilitaet_id, FHC_INTEGER, false).";";
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen der Daten'."\n";
return false;
}
}
/**
* Laedt die vorhandenen Mobilitaetstypen
* @param boolean $aktiv gibt an ob nur aktive eintraege geladen werden sollen.default=true
* @return boolean truen wenn ok, false im Fehlerfall
*/
public function getMobilitaetstyp($aktiv=true)
{
$qry = "SELECT * FROM bis.tbl_mobilitaetstyp";
if($aktiv)
$qry .= " WHERE aktiv";
$qry.=" ORDER BY bezeichnung";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->mobilitaetstyp_kurzbz = $row->mobilitaetstyp_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+22 -24
View File
@@ -67,6 +67,7 @@ class prestudent extends person
public $zgvdoktorort;
public $zgvdoktordatum;
public $zgvdoktornation;
public $gsstudientyp_kurzbz='Intern';
public $status_kurzbz;
public $studiensemester_kurzbz;
@@ -155,6 +156,7 @@ class prestudent extends person
$this->zgvdoktorort = $row->zgvdoktorort;
$this->zgvdoktordatum = $row->zgvdoktordatum;
$this->zgvdoktornation = $row->zgvdoktornation;
$this->gsstudientyp_kurzbz = $row->gsstudientyp_kurzbz;
if(!person::load($row->person_id))
return false;
@@ -230,7 +232,7 @@ class prestudent extends person
zgvmas_code, zgvmaort, zgvmadatum, zgvmanation, aufnahmeschluessel, facheinschlberuf,
reihungstest_id, anmeldungreihungstest, reihungstestangetreten, rt_gesamtpunkte,
rt_punkte1, rt_punkte2, rt_punkte3, bismelden, insertamum, insertvon,
updateamum, updatevon, anmerkung, dual, ausstellungsstaat, mentor) VALUES('.
updateamum, updatevon, anmerkung, dual, ausstellungsstaat, mentor, gsstudientyp_kurzbz) VALUES('.
$this->db_add_param($this->aufmerksamdurch_kurzbz).",".
$this->db_add_param($this->person_id).",".
$this->db_add_param($this->studiengang_kz).",".
@@ -261,7 +263,8 @@ class prestudent extends person
$this->db_add_param($this->anmerkung).",".
$this->db_add_param($this->dual, FHC_BOOLEAN).",".
$this->db_add_param($this->ausstellungsstaat).",".
$this->db_add_param($this->mentor).");";
$this->db_add_param($this->mentor).",".
$this->db_add_param($this->gsstudientyp_kurzbz).");";
}
else
{
@@ -293,6 +296,7 @@ class prestudent extends person
' updatevon='.$this->db_add_param($this->updatevon).",".
' anmerkung='.$this->db_add_param($this->anmerkung).",".
' mentor='.$this->db_add_param($this->mentor).",".
' gsstudientyp_kurzbz='.$this->db_add_param($this->gsstudientyp_kurzbz).",".
' dual='.$this->db_add_param($this->dual, FHC_BOOLEAN).",".
' ausstellungsstaat='.$this->db_add_param($this->ausstellungsstaat).
" WHERE prestudent_id=".$this->db_add_param($this->prestudent_id).";";
@@ -335,24 +339,21 @@ class prestudent extends person
}
}
/**
* Falls ZGV vorhanden, setze Ausstellungsstaat (für BIS-Meldung)
* auf Nation der höchsten angegebenen ZGV
*/
private function checkAusstellungsstaat()
{
if ($this->zgvmas_code && $this->zgvmanation) {
$this->ausstellungsstaat = $this->zgvmanation;
} elseif ($this->zgv_code && $this->zgvnation) {
$this->ausstellungsstaat = $this->zgvnation;
}
}
/**
* Falls ZGV vorhanden, setze Ausstellungsstaat (für BIS-Meldung)
* auf Nation der höchsten angegebenen ZGV
*/
private function checkAusstellungsstaat()
{
if ($this->zgvmas_code && $this->zgvmanation)
{
$this->ausstellungsstaat = $this->zgvmanation;
}
elseif ($this->zgv_code && $this->zgvnation)
{
$this->ausstellungsstaat = $this->zgvnation;
}
}
/**
* Laden aller Prestudenten, die an $datum zum Reihungstest geladen sind.
@@ -703,6 +704,7 @@ class prestudent extends person
$ps->bismelden = $this->db_parse_bool($row->bismelden);
$ps->anmerkung = $row->anmerkung;
$ps->dual = $this->db_parse_bool($row->dual);
$ps->gsstudientyp_kurzbz = $row->gsstudientyp_kurzbz;
$ps->status_kurzbz = $row->status_kurzbz;
$ps->studiensemester_kurzbz = $row->studiensemester_kurzbz;
@@ -1413,10 +1415,6 @@ class prestudent extends person
}
}
/**
* Liefert ein Array mit den Interessentenzahlen
* @param $studiensemester_kurzbz (optional)
+5 -4
View File
@@ -77,9 +77,9 @@ $menu=array
(
'name'=>'Moodle', 'permissions'=>array('basis/moodle'),
'Account'=>array('name'=>'Accountverwaltung', 'link'=>'moodle/account_verwaltung24.php', 'target'=>'main'),
'Kursverwaltung'=>array('name'=>'Kurs entfernen', 'link'=>'moodle/kurs_verwaltung24.php', 'target'=>'main'),
'Rollenzuteilung'=>array('name'=>'Rollenzuteilung', 'link'=>'moodle/rollenzuteilung24.php', 'target'=>'main'),
'UserSync'=>array('name'=>'User Sync', 'link'=>'moodle/user_sync24.php', 'target'=>'main'),
'Kursverwaltung'=>array('name'=>'Kurs entfernen', 'link'=>'moodle/kurs_verwaltung24.php', 'target'=>'main'),
'Rollenzuteilung'=>array('name'=>'Rollenzuteilung', 'link'=>'moodle/rollenzuteilung24.php', 'target'=>'main'),
'UserSync'=>array('name'=>'User Sync', 'link'=>'moodle/user_sync24.php', 'target'=>'main'),
'UserMassCreate'=>array('name'=>'User Massenanlage', 'link'=>'moodle/account_masscreate24.php', 'target'=>'main'),
),
'Freifach'=>array
@@ -134,7 +134,7 @@ $menu=array
'AnwesenheitslistenBarcode'=>array('name'=>'Anwesenheitslisten mit Barcodes', 'link'=>'personen/anwesenheitslisten_barcode.php', 'target'=>'main','permissions'=>array('basis/person')),
'Preinteressenten'=>array('name'=>'Preinteressenten', 'link'=>'personen/preinteressent_frameset.html', 'target'=>'_blank','permissions'=>array('admin','preinteressent')),
'Incoming'=>array('name'=>'Incoming', 'link'=>'personen/incoming_frameset.php', 'target'=>'_blank','permissions'=>array('inout/incoming')),
'Outgoing'=>array('name'=>'Outgoing', 'link'=>'personen/outgoing_frameset.php', 'target'=>'_blank','permissions'=>array('inout/outgoing'))
'Outgoing'=>array('name'=>'Outgoing', 'link'=>'personen/outgoing_frameset.php', 'target'=>'_blank','permissions'=>array('inout/outgoing'))
),
'Stammdaten'=> array
(
@@ -166,6 +166,7 @@ $menu=array
'Ferien'=>array('name'=>'Ferien', 'link'=>'lehre/ferienverwaltung.php', 'target'=>'main','permissions'=>array('admin')),
'Service'=>array('name'=>'Service', 'link'=>'stammdaten/service_frameset.html', 'target'=>'main','permissions'=>array('basis/service')),
'Dokumentvorlagen'=>array('name'=>'Dokumentvorlagen', 'link'=>'stammdaten/dokumentvorlagen_verwaltung.php', 'target'=>'main','permissions'=>array('basis/dokumente')),
'GSProgramm'=>array('name'=>'GSProgramm', 'link'=>'stammdaten/gsprogramm.php', 'target'=>'main','permissions'=>array('inout/uebersicht')),
'FH Ausweis'=>array
(
'name'=>'FH Ausweis','permissions'=>array('basis/fhausweis'),
+15 -4
View File
@@ -35,19 +35,24 @@ require_once('../include/datum.class.php');
if(isset($_GET['firma_id']))
$firma_id = $_GET['firma_id'];
else
else
$firma_id = '';
if(isset($_GET['filter']))
$filter = $_GET['filter'];
else
else
$filter = '';
if(isset($_GET['firmentyp_kurzbz']))
$firmentyp_kurzbz = $_GET['firmentyp_kurzbz'];
else
else
$firmentyp_kurzbz='';
if(isset($_GET['partner']))
$partner = true;
else
$partner = false;
$datum = new datum();
$firma = new firma();
@@ -88,6 +93,12 @@ elseif($firmentyp_kurzbz!='' || $filter!='')
foreach ($firma->result as $row)
draw_rdf($row);
}
elseif($partner)
{
$firma->getFirmaPartner();
foreach ($firma->result as $row)
draw_rdf($row);
}
else
{
//$firma->getAll($firma_id);
@@ -98,7 +109,7 @@ else
function draw_rdf($row)
{
global $rdf_url;
echo '
<RDF:li>
<RDF:Description id="'.$row->firma_id.'" about="'.$rdf_url.'/'.$row->firma_id.'" >
+43
View File
@@ -0,0 +1,43 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/basis_db.class.php');
require_once('../include/gsprogramm.class.php');
$oRdf = new rdf('GSPROGRAMM','http://www.technikum-wien.at/gsprogramm');
$oRdf->sendHeader();
$gs = new gsprogramm();
if($gs->getAll())
{
foreach($gs->result as $row)
{
$i=$oRdf->newObjekt($row->gsprogramm_id);
$oRdf->obj[$i]->setAttribut('gsprogramm_id',$row->gsprogramm_id,true);
$oRdf->obj[$i]->setAttribut('bezeichnung',$row->bezeichnung,true);
$oRdf->obj[$i]->setAttribut('gsprogrammtyp_kurzbz',$row->gsprogrammtyp_kurzbz,true);
$oRdf->obj[$i]->setAttribut('gsprogrammtyp_bezeichnung',$row->gsprogrammtyp_bezeichnung,true);
$oRdf->addSequence($row->gsprogramm_id);
}
}
$oRdf->sendRdfText();
?>
+42
View File
@@ -0,0 +1,42 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/basis_db.class.php');
$oRdf = new rdf('GSSTUDIENTYP','http://www.technikum-wien.at/gsstudientyp');
$oRdf->sendHeader();
$qry = "SELECT * FROM bis.tbl_gsstudientyp ORDER BY bezeichnung";
$db = new basis_db();
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$i=$oRdf->newObjekt($row->gsstudientyp_kurzbz);
$oRdf->obj[$i]->setAttribut('gsstudientyp_kurzbz',$row->gsstudientyp_kurzbz,true);
$oRdf->obj[$i]->setAttribut('bezeichnung',$row->bezeichnung,true);
$oRdf->obj[$i]->setAttribut('studientyp_code',$row->studientyp_code,true);
$oRdf->addSequence($row->gsstudientyp_kurzbz);
}
}
$oRdf->sendRdfText();
?>
+58 -47
View File
@@ -43,12 +43,12 @@ if(!isset($_SERVER['REMOTE_USER']))
{
die('Wenn keine Authentifizierung stattfindet, muss eine studiengang_kz uebergeben werden');
}
else
else
{
$berechtigt_studiengang=array($_GET['studiengang_kz']);
}
}
else
else
{
$uid=get_uid();
$berechtigung->getBerechtigungen($uid);
@@ -63,8 +63,8 @@ $orgform_sequence=array();
if(isset($_GET['prestudent']) && $_GET['prestudent']=='false')
$berechtigt_studiengang = array_merge($berechtigt_studiengang, $berechtigung->getStgKz('lv-plan'));
else
$berechtigt_studiengang = array_merge($berechtigt_studiengang, $berechtigung->getStgKz('assistenz'));
else
$berechtigt_studiengang = array_merge($berechtigt_studiengang, $berechtigung->getStgKz('assistenz'));
//var_dump($berechtigung);
array_unique($berechtigt_studiengang);
@@ -78,14 +78,14 @@ if (count($berechtigt_studiengang)>0)
if (isset($_GET['studiengang_kz']))
$stg_kz_query='AND tbl_lehrverband.studiengang_kz='.$dbo->db_add_param($_GET['studiengang_kz'], FHC_INTEGER);
$sql_query="SELECT tbl_lehrverband.studiengang_kz, tbl_studiengang.bezeichnung, kurzbz,kurzbzlang, typ, tbl_lehrverband.semester, verband, gruppe, gruppe_kurzbz, tbl_lehrverband.bezeichnung AS lvb_bezeichnung, tbl_gruppe.bezeichnung AS grp_bezeichnung
FROM (public.tbl_studiengang JOIN public.tbl_lehrverband USING (studiengang_kz))
LEFT OUTER JOIN public.tbl_gruppe ON (tbl_lehrverband.studiengang_kz=tbl_gruppe.studiengang_kz AND tbl_lehrverband.semester=tbl_gruppe.semester AND (tbl_lehrverband.verband='') AND tbl_gruppe.lehre AND tbl_gruppe.aktiv)
WHERE tbl_lehrverband.aktiv $stg_kz_query
ORDER BY erhalter_kz,typ, kurzbz, semester,verband,gruppe, gruppe_kurzbz;";
}
else
else
{
die('Keine Berechtigung');
}
@@ -104,13 +104,13 @@ function draw_orgformpart($stg_kz)
{
global $orgform_sequence;
$stg_obj = new studiengang($stg_kz);
//Zusatzfilterung nur bei Mischformen anzeigen
if(!$stg_obj->mischform)
return true;
$orgform_sequence[$stg_kz]='';
$qry = "SELECT * FROM bis.tbl_orgform WHERE orgform_kurzbz not in('VBB','ZGS')";
if($stg_obj->db_query($qry))
{
@@ -124,10 +124,10 @@ function draw_orgformpart($stg_kz)
function draw_orgformsubmenu($stg_kz, $orgform)
{
global $stsem_obj, $rdf_url, $orgform_sequence;
$stg_obj = new studiengang($stg_kz);
$stg_kurzbz = $stg_obj->kuerzel;
echo '
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'" >
<VERBAND:name>'.$orgform.'</VERBAND:name>
@@ -137,7 +137,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
<VERBAND:orgform>'.$orgform.'</VERBAND:orgform>
</RDF:Description>
';
$orgform_sequence[$stg_kz].='
<RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'">
@@ -185,7 +185,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
<VERBAND:typ>bewerbungnichtabgeschickt</VERBAND:typ>
<VERBAND:orgform>'.$orgform.'</VERBAND:orgform>
</RDF:Description>
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/interessenten/bewerbungabgeschickt" >
<VERBAND:name>Bewerbung abgeschickt, Status unbestätigt</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -194,7 +194,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
<VERBAND:typ>bewerbungabgeschickt</VERBAND:typ>
<VERBAND:orgform>'.$orgform.'</VERBAND:orgform>
</RDF:Description>
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/interessenten/statusbestaetigt" >
<VERBAND:name>Status bestätigt</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -203,7 +203,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
<VERBAND:typ>statusbestaetigt</VERBAND:typ>
<VERBAND:orgform>'.$orgform.'</VERBAND:orgform>
</RDF:Description>
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/interessenten/zgv" >
<VERBAND:name>ZGV erfüllt</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -266,7 +266,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
<VERBAND:typ>absage</VERBAND:typ>
<VERBAND:orgform>'.$orgform.'</VERBAND:orgform>
</RDF:Description>
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$stsem->studiensemester_kurzbz.'/incoming" >
<VERBAND:name>Incoming</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -277,7 +277,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
</RDF:Description>
';
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li>\n\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz\">\n";
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li>";
$orgform_sequence[$stg_kz].= "\n\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/interessenten\">\n";
$orgform_sequence[$stg_kz].= "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$stsem->studiensemester_kurzbz/interessenten/bewerbungnichtabgeschickt\" />\n";
@@ -302,7 +302,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
</RDF:li>
';
}
$data = array();
$qry = "SELECT semester, verband, gruppe,'' as gruppe_kurzbz, bezeichnung, null as sort FROM public.tbl_lehrverband WHERE orgform_kurzbz=".$stg_obj->db_add_param($orgform)." AND studiengang_kz=".$stg_obj->db_add_param($stg_kz)." AND aktiv
UNION
@@ -336,9 +336,9 @@ function draw_orgformsubmenu($stg_kz, $orgform)
</RDF:li>
';
}
$sem=$row->semester;
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li>";
$orgform_sequence[$stg_kz].= "\n\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$orgform/$sem\">\n";
$qry_bez = "SELECT bezeichnung FROM public.tbl_lehrverband WHERE studiengang_kz=".$stg_obj->db_add_param($stg_kz)." AND semester=".$stg_obj->db_add_param($sem)." AND trim(verband)='' AND trim(gruppe)=''";
@@ -346,8 +346,8 @@ function draw_orgformsubmenu($stg_kz, $orgform)
if($result_bez = $stg_obj->db_query($qry_bez))
if($row_bez = $stg_obj->db_fetch_object($result_bez))
$bezeichnung = ($row_bez->bezeichnung!=''?'('.$row_bez->bezeichnung.')':'');
echo '
echo '
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$sem.'">
<VERBAND:name>'.$stg_kurzbz.'-'.$sem.' '.$bezeichnung.'</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -357,7 +357,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
</RDF:Description>
';
}
if($row->gruppe_kurzbz!='')
{
$orgform_sequence[$stg_kz].= "\t\t\t\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$row->semester/$row->gruppe_kurzbz\" />\n";
@@ -370,9 +370,9 @@ function draw_orgformsubmenu($stg_kz, $orgform)
<VERBAND:gruppe>'.$row->gruppe_kurzbz.'</VERBAND:gruppe>
<VERBAND:orgform>'.$orgform.'</VERBAND:orgform>
</RDF:Description>
';
';
}
else
else
{
//Wenn dieser Eintrag noch nicht geschrieben wurde
if($row->verband!='' && $row->verband!=' ' && trim($row->gruppe)=='')
@@ -386,11 +386,11 @@ function draw_orgformsubmenu($stg_kz, $orgform)
';
}
$ver=$row->verband;
$orgform_sequence[$stg_kz].= "\t\t\t<RDF:li>";
$orgform_sequence[$stg_kz].= "\n\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$orgform/$row->semester/$row->verband\">\n";
echo '
echo '
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$row->semester.'/'.$row->verband.'">
<VERBAND:name>'.$stg_kurzbz.'-'.$row->semester.$row->verband.($row->bezeichnung!=''?' ('.$row->bezeichnung.')':'').'</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -404,7 +404,7 @@ function draw_orgformsubmenu($stg_kz, $orgform)
else if ($row->gruppe!='' && $row->gruppe!=' ')
{
$orgform_sequence[$stg_kz].= "\t\t\t\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$orgform/$row->semester/$row->verband/$row->gruppe\" />\n";
echo '
echo '
<RDF:Description RDF:about="'.$rdf_url.$stg_kurzbz.'/'.$orgform.'/'.$row->semester.'/'.$row->verband.'/'.$row->gruppe.'">
<VERBAND:name>'.$stg_kurzbz.'-'.$row->semester.$row->verband.$row->gruppe.($row->bezeichnung!=''?' ('.$row->bezeichnung.')':'').'</VERBAND:name>
<VERBAND:stg>'.$stg_kurzbz.'</VERBAND:stg>
@@ -443,9 +443,9 @@ function draw_orgformsubmenu($stg_kz, $orgform)
}
?>
<RDF:RDF
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:VERBAND="<?php echo $rdf_url; ?>rdf#"
xmlns:VERBAND="<?php echo $rdf_url; ?>rdf#"
xmlns:NC="http://home.netscape.com/NC-rdf#">
<?php
@@ -466,7 +466,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stg_kz NC:parseType="Integer"><?php echo $row->studiengang_kz; ?></VERBAND:stg_kz>
</RDF:Description>
<?php
<?php
if(!(isset($_GET['prestudent']) && $_GET['prestudent']=='false'))
{
?>
@@ -487,7 +487,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>prestudent</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten'; ?>" >
<VERBAND:name>Interessenten</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -495,7 +495,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>interessenten</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten/bewerbungnichtabgeschickt'; ?>" >
<VERBAND:name>Bewerbung nicht abgeschickt</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -503,7 +503,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>bewerbungnichtabgeschickt</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten/bewerbungabgeschickt'; ?>" >
<VERBAND:name>Bewerbung abgeschickt, Status unbestätigt</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -511,7 +511,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>bewerbungabgeschickt</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten/statusbestaetigt'; ?>" >
<VERBAND:name>Status bestätigt</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -519,7 +519,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>statusbestaetigt</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten/zgv'; ?>" >
<VERBAND:name>ZGV erfüllt</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -527,7 +527,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>zgv</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten/reihungstestangemeldet'; ?>" >
<VERBAND:name>Reihungstest angemeldet</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -535,7 +535,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>reihungstestangemeldet</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/interessenten/reihungstestnichtangemeldet'; ?>" >
<VERBAND:name>Nicht zum Reihungstest angemeldet</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -543,7 +543,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>reihungstestnichtangemeldet</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/bewerber'; ?>" >
<VERBAND:name>Bewerber</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -551,7 +551,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>bewerber</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/aufgenommen'; ?>" >
<VERBAND:name>Aufgenommen</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -559,7 +559,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>aufgenommen</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/warteliste'; ?>" >
<VERBAND:name>Warteliste</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -567,7 +567,7 @@ while ($row=$dbo->db_fetch_object())
<VERBAND:stsem><?php echo $stsem->studiensemester_kurzbz; ?></VERBAND:stsem>
<VERBAND:typ>warteliste</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="<?php echo $rdf_url.$stg_kurzbz.'/'.$stsem->studiensemester_kurzbz.'/absage'; ?>" >
<VERBAND:name>Absage</VERBAND:name>
<VERBAND:stg><?php echo $stg_kurzbz; ?></VERBAND:stg>
@@ -586,7 +586,7 @@ while ($row=$dbo->db_fetch_object())
}
}
}
if ($sem!=$row->semester && ($row->verband!='' || $row->verband!=' '))
{
$sem=$row->semester;
@@ -687,6 +687,16 @@ if($show_inout_block)
<VERBAND:orgform></VERBAND:orgform>
<VERBAND:typ>outgoing</VERBAND:typ>
</RDF:Description>
<RDF:Description RDF:about="'.$rdf_url.'inout/gemeinsamestudien">
<VERBAND:name>Gemeinsame Studien</VERBAND:name>
<VERBAND:stg></VERBAND:stg>
<VERBAND:stg_kz></VERBAND:stg_kz>
<VERBAND:sem></VERBAND:sem>
<VERBAND:ver></VERBAND:ver>
<VERBAND:grp></VERBAND:grp>
<VERBAND:orgform></VERBAND:orgform>
<VERBAND:typ>gemeinsamestudien</VERBAND:typ>
</RDF:Description>
';
}
@@ -725,7 +735,7 @@ draw_orgformpart($stg_kz);
$stg_kurzbz=strtoupper($row->typ.$row->kurzbz);
//echo "\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz\" />\n";
echo "\t<RDF:li>\n\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz\">\n";
if(!(isset($_GET['prestudent']) && $_GET['prestudent']=='false'))
{
//Prestudent
@@ -734,7 +744,7 @@ draw_orgformpart($stg_kz);
foreach ($stsem_obj->studiensemester as $stsem)
{
echo "\t\t\t<RDF:li>\n\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz\">\n";
echo "\t\t\t<RDF:li>";
echo "\n\t\t\t\t<RDF:Seq RDF:about=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/interessenten\">\n";
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/interessenten/bewerbungnichtabgeschickt\" />\n";
@@ -745,13 +755,13 @@ draw_orgformpart($stg_kz);
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/interessenten/reihungstestnichtangemeldet\" />\n";
echo "\t\t\t\t</RDF:Seq>";
echo "\n\t\t\t</RDF:li>\n";
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/bewerber\" />\n";
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/aufgenommen\" />\n";
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/warteliste\" />\n";
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/absage\" />\n";
echo "\t\t\t\t<RDF:li RDF:resource=\"$rdf_url$stg_kurzbz/$stsem->studiensemester_kurzbz/incoming\" />\n";
echo "\t\t\t</RDF:Seq>\n\t\t\t</RDF:li>\n";
}
echo "\t\t\t</RDF:Seq>\n\t\t\t</RDF:li>\n";
@@ -817,6 +827,7 @@ draw_orgformpart($stg_kz);
<RDF:Seq RDF:about="http://www.technikum-wien.at/lehrverbandsgruppe/inout">
<RDF:li RDF:resource="http://www.technikum-wien.at/lehrverbandsgruppe/inout/incoming"/>
<RDF:li RDF:resource="http://www.technikum-wien.at/lehrverbandsgruppe/inout/outgoing"/>
<RDF:li RDF:resource="http://www.technikum-wien.at/lehrverbandsgruppe/inout/gemeinsamestudien"/>
</RDF:Seq>
</RDF:li>';
}
+89
View File
@@ -0,0 +1,89 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/functions.inc.php');
require_once('../include/basis_db.class.php');
require_once('../include/mobilitaet.class.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/mobilitaetsprogramm.class.php');
require_once('../include/gsprogramm.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('student/stammdaten', null, 's'))
die('Sie haben keine Berechtigung fuer diese Seite');
$oRdf = new rdf('MOB','http://www.technikum-wien.at/mobilitaet');
$oRdf->sendHeader();
$mobilitaet = new mobilitaet();
if(isset($_GET['prestudent_id']))
{
$mobilitaet->loadPrestudent($_GET['prestudent_id']);
}
elseif(isset($_GET['mobilitaet_id']))
{
if($mobilitaet->load($_GET['mobilitaet_id']))
$mobilitaet->result[] = $mobilitaet;
}
else
die('Invalid Parameter');
$mobprog = new mobilitaetsprogramm();
$mobprog->getAll();
$mob_arr=array();
foreach($mobprog->result as $rowmob)
$mob_arr[$rowmob->mobilitaetsprogramm_code]=$rowmob->kurzbz;
if(count($mobilitaet->result)>0)
{
foreach($mobilitaet->result as $row)
{
$i=$oRdf->newObjekt($row->mobilitaet_id);
$oRdf->obj[$i]->setAttribut('mobilitaet_id',$row->mobilitaet_id,true);
$oRdf->obj[$i]->setAttribut('prestudent_id',$row->prestudent_id,true);
$oRdf->obj[$i]->setAttribut('studiensemester_kurzbz',$row->studiensemester_kurzbz,true);
$oRdf->obj[$i]->setAttribut('mobilitaetsprogramm_code',$row->mobilitaetsprogramm_code,true);
if(isset($mob_arr[$row->mobilitaetsprogramm_code]))
$mob = $mob_arr[$row->mobilitaetsprogramm_code];
else
$mob = '';
$oRdf->obj[$i]->setAttribut('mobilitaetsprogramm',$mob,true);
$oRdf->obj[$i]->setAttribut('gsprogramm_id',$row->gsprogramm_id,true);
$gsprogramm = new gsprogramm();
$gsprogramm->load($row->gsprogramm_id);
$oRdf->obj[$i]->setAttribut('gsprogrammtyp_kurzbz',$gsprogramm->gsprogrammtyp_kurzbz,true);
$oRdf->obj[$i]->setAttribut('mobilitaetstyp_kurzbz',$row->mobilitaetstyp_kurzbz,true);
$oRdf->obj[$i]->setAttribut('firma_id',$row->firma_id,true);
$oRdf->obj[$i]->setAttribut('status_kurzbz',$row->status_kurzbz,true);
$oRdf->obj[$i]->setAttribut('ausbildungssemester',$row->ausbildungssemester,true);
$oRdf->addSequence($row->mobilitaet_id);
}
}
$oRdf->sendRdfText();
?>
+20 -9
View File
@@ -40,8 +40,19 @@ echo '
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:MOB="'.$rdf_url.'/rdf#"
>
<RDF:Seq about="'.$rdf_url.'/liste">';
<RDF:Seq about="'.$rdf_url.'/liste">';
if(isset($_GET['optional']))
{
echo '
<RDF:li>
<RDF:Description id="" about="'.$rdf_url.'/" >
<MOB:mobilitaetsprogramm_code><![CDATA[]]></MOB:mobilitaetsprogramm_code>
<MOB:kurzbz><![CDATA[]]></MOB:kurzbz>
<MOB:beschreibung><![CDATA[-- keine Auswahl --]]></MOB:beschreibung>
</RDF:Description>
</RDF:li>';
}
$qry = 'SELECT * FROM bis.tbl_mobilitaetsprogramm ORDER BY kurzbz';
$db = new basis_db();
@@ -49,14 +60,14 @@ if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
echo '
<RDF:li>
<RDF:Description id="'.$row->mobilitaetsprogramm_code.'" about="'.$rdf_url.'/'.$row->mobilitaetsprogramm_code.'" >
<MOB:mobilitaetsprogramm_code><![CDATA['.$row->mobilitaetsprogramm_code.']]></MOB:mobilitaetsprogramm_code>
<MOB:kurzbz><![CDATA['.$row->kurzbz.']]></MOB:kurzbz>
<MOB:beschreibung><![CDATA['.$row->beschreibung.']]></MOB:beschreibung>
</RDF:Description>
</RDF:li>';
echo '
<RDF:li>
<RDF:Description id="'.$row->mobilitaetsprogramm_code.'" about="'.$rdf_url.'/'.$row->mobilitaetsprogramm_code.'" >
<MOB:mobilitaetsprogramm_code><![CDATA['.$row->mobilitaetsprogramm_code.']]></MOB:mobilitaetsprogramm_code>
<MOB:kurzbz><![CDATA['.$row->kurzbz.']]></MOB:kurzbz>
<MOB:beschreibung><![CDATA['.$row->beschreibung.']]></MOB:beschreibung>
</RDF:Description>
</RDF:li>';
}
}
?>
+41
View File
@@ -0,0 +1,41 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/basis_db.class.php');
require_once('../include/mobilitaet.class.php');
$oRdf = new rdf('MOBTYP','http://www.technikum-wien.at/mobilitaetstyp');
$oRdf->sendHeader();
$mob = new mobilitaet();
if($mob->getMobilitaetstyp())
{
foreach($mob->result as $row)
{
$i=$oRdf->newObjekt($row->mobilitaetstyp_kurzbz);
$oRdf->obj[$i]->setAttribut('mobilitaetstyp_kurzbz',$row->mobilitaetstyp_kurzbz,true);
$oRdf->obj[$i]->setAttribut('bezeichnung',$row->bezeichnung,true);
$oRdf->addSequence($row->mobilitaetstyp_kurzbz);
}
}
$oRdf->sendRdfText();
?>
+41
View File
@@ -0,0 +1,41 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/basis_db.class.php');
$oRdf = new rdf('STATUS','http://www.technikum-wien.at/status');
$oRdf->sendHeader();
$qry = "SELECT * FROM public.tbl_status ORDER BY status_kurzbz";
$db = new basis_db();
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$i=$oRdf->newObjekt($row->status_kurzbz);
$oRdf->obj[$i]->setAttribut('status_kurzbz',$row->status_kurzbz,true);
$oRdf->obj[$i]->setAttribut('beschreibung',$row->beschreibung,true);
$oRdf->addSequence($row->status_kurzbz);
}
}
$oRdf->sendRdfText();
?>
+43 -3
View File
@@ -196,9 +196,10 @@ function draw_content_liste($row)
<STUDENT:dual_bezeichnung><![CDATA['.($row->dual=='t'?'Ja':'Nein').']]></STUDENT:dual_bezeichnung>
<STUDENT:matr_nr><![CDATA['.$row->matr_nr.']]></STUDENT:matr_nr>
<STUDENT:mentor><![CDATA['.$row->mentor.']]></STUDENT:mentor>
<STUDENT:gsstudientyp_kurzbz><![CDATA['.($row->gsstudientyp_kurzbz).']]></STUDENT:gsstudientyp_kurzbz>
<STUDENT:aktiv><![CDATA['.((isset($row->bnaktiv) && $row->bnaktiv=='t')?'true':'false').']]></STUDENT:aktiv>
</RDF:Description>
</RDF:li>';
</RDF:Description>
</RDF:li>';
}
function draw_content($row)
@@ -347,6 +348,7 @@ function draw_prestudent($row)
<STUDENT:dual_bezeichnung><![CDATA['.($row->dual?'Ja':'Nein').']]></STUDENT:dual_bezeichnung>
<STUDENT:anmerkungpre><![CDATA['.$row->anmerkung.']]></STUDENT:anmerkungpre>
<STUDENT:mentor><![CDATA['.$row->mentor.']]></STUDENT:mentor>
<STUDENT:gsstudientyp_kurzbz><![CDATA['.$row->gsstudientyp_kurzbz.']]></STUDENT:gsstudientyp_kurzbz>
</RDF:Description>
</RDF:li>';
}
@@ -468,7 +470,7 @@ if($xmlformat=='rdf')
(SELECT rt_punkte1 as punkte FROM public.tbl_prestudent WHERE prestudent_id=tbl_student.prestudent_id) as rt_punkte1,
(SELECT rt_punkte2 as punkte FROM public.tbl_prestudent WHERE prestudent_id=tbl_student.prestudent_id) as rt_punkte2,
(SELECT rt_punkte3 as punkte FROM public.tbl_prestudent WHERE prestudent_id=tbl_student.prestudent_id) as rt_punkte3,
tbl_prestudent.dual as dual, tbl_prestudent.reihungstest_id, tbl_prestudent.anmeldungreihungstest, p.matr_nr
tbl_prestudent.dual as dual, tbl_prestudent.reihungstest_id, tbl_prestudent.anmeldungreihungstest, p.matr_nr, tbl_prestudent.gsstudientyp_kurzbz
FROM public.tbl_student
JOIN public.tbl_benutzer ON (student_uid=uid) JOIN public.tbl_person p USING (person_id) JOIN public.tbl_prestudent USING(prestudent_id) ";
if($gruppe_kurzbz!=null)
@@ -539,6 +541,44 @@ if($xmlformat=='rdf')
}
}
}
elseif($typ=='gemeinsamestudien')
{
if($studiensemester_kurzbz=='')
$studiensemester_kurzbz=$semester_aktuell;
$qry = "SELECT prestudent_id
FROM
bis.tbl_mobilitaet
WHERE
studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz);
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$student=new student();
if($uid = $student->getUid($row->prestudent_id))
{
//Wenn kein Eintrag fuers aktuelle Studiensemester da ist, dann
//nochmal laden aber ohne studiensemester
if(!$student->load($uid, $studiensemester_kurzbz))
$student->load($uid);
}
$prestd = new prestudent();
$prestd->load($row->prestudent_id);
if($uid!='')
{
draw_content($student);
draw_prestudent($prestd);
}
else
{
draw_content($prestd);
draw_prestudent($prestd);
}
}
}
}
elseif(in_array($typ, array('prestudent', 'interessenten','bewerber','aufgenommen',
'warteliste','absage','zgv','reihungstestangemeldet',
'reihungstestnichtangemeldet','absolvent','diplomand','bewerbungnichtabgeschickt','bewerbungabgeschickt','statusbestaetigt')))
+5881 -2652
View File
File diff suppressed because it is too large Load Diff
+116 -3
View File
@@ -1229,6 +1229,114 @@ if($db->db_num_rows($result) < 1)
echo '<br>Neuen Eintrag "reports" in Tabelle system.tbl_webservicetyp eingefuegt<br>';
}
// Gemeinsame Studien
if(!$result = @$db->db_query("SELECT 1 FROM bis.tbl_mobilitaet LIMIT 1"))
{
$qry = "
CREATE TABLE bis.tbl_mobilitaetstyp
(
mobilitaetstyp_kurzbz varchar(32) NOT NULL,
bezeichnung varchar(255),
aktiv boolean NOT NULL DEFAULT true
);
ALTER TABLE bis.tbl_mobilitaetstyp ADD CONSTRAINT pk_mobilitaetstyp PRIMARY KEY (mobilitaetstyp_kurzbz);
GRANT SELECT, INSERT, UPDATE, DELETE ON bis.tbl_mobilitaetstyp TO vilesci;
CREATE TABLE bis.tbl_gsstudientyp
(
gsstudientyp_kurzbz varchar(32) NOT NULL,
bezeichnung varchar(255),
studientyp_code varchar(64)
);
ALTER TABLE bis.tbl_gsstudientyp ADD CONSTRAINT pk_gsstudientyp PRIMARY KEY (gsstudientyp_kurzbz);
GRANT SELECT, INSERT, UPDATE, DELETE ON bis.tbl_gsstudientyp TO vilesci;
INSERT INTO bis.tbl_gsstudientyp(gsstudientyp_kurzbz, bezeichnung, studientyp_code) VALUES('Intern','Interner Studierender','I');
INSERT INTO bis.tbl_gsstudientyp(gsstudientyp_kurzbz, bezeichnung, studientyp_code) VALUES('Extern','Externer Studierender','E');
ALTER TABLE public.tbl_prestudent ADD COLUMN gsstudientyp_kurzbz varchar(32) DEFAULT 'Intern';
ALTER TABLE public.tbl_prestudent ADD CONSTRAINT fk_prestudent_gsstudientyp FOREIGN KEY (gsstudientyp_kurzbz) REFERENCES bis.tbl_gsstudientyp (gsstudientyp_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
CREATE TABLE bis.tbl_gsprogrammtyp
(
gsprogrammtyp_kurzbz varchar(32) NOT NULL,
bezeichnung varchar(255),
programmtyp_code varchar(64)
);
ALTER TABLE bis.tbl_gsprogrammtyp ADD CONSTRAINT pk_gsprogrammtyp PRIMARY KEY (gsprogrammtyp_kurzbz);
GRANT SELECT, INSERT, UPDATE, DELETE ON bis.tbl_gsprogrammtyp TO vilesci;
CREATE TABLE bis.tbl_gsprogramm
(
gsprogramm_id integer NOT NULL,
bezeichnung varchar(255),
programm_code bigint,
gsprogrammtyp_kurzbz varchar(32)
);
ALTER TABLE bis.tbl_gsprogramm ADD CONSTRAINT pk_gsprogramm PRIMARY KEY (gsprogramm_id);
GRANT SELECT, INSERT, UPDATE, DELETE ON bis.tbl_gsprogramm TO vilesci;
ALTER TABLE bis.tbl_gsprogramm ADD CONSTRAINT fk_gsprogrammtyp_gsprogramm FOREIGN KEY (gsprogrammtyp_kurzbz) REFERENCES bis.tbl_gsprogrammtyp (gsprogrammtyp_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
CREATE SEQUENCE bis.tbl_gsprogramm_gsprogramm_id_seq
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;
ALTER TABLE bis.tbl_gsprogramm ALTER COLUMN gsprogramm_id SET DEFAULT nextval('bis.tbl_gsprogramm_gsprogramm_id_seq');
GRANT SELECT, UPDATE ON bis.tbl_gsprogramm_gsprogramm_id_seq TO vilesci;
ALTER TABLE public.tbl_firma ADD COLUMN partner_code varchar(20);
CREATE TABLE bis.tbl_mobilitaet
(
mobilitaet_id integer NOT NULL,
mobilitaetstyp_kurzbz varchar(32) NOT NULL,
prestudent_id integer NOT NULL,
studiensemester_kurzbz varchar(16) NOT NULL,
mobilitaetsprogramm_code integer,
gsprogramm_id integer,
firma_id integer,
status_kurzbz varchar(20),
ausbildungssemester smallint,
insertvon varchar(32),
insertamum timestamp,
updateamum timestamp,
updatevon varchar(32)
);
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT pk_mobilitaet PRIMARY KEY (mobilitaet_id);
GRANT SELECT, INSERT, UPDATE, DELETE ON bis.tbl_mobilitaet TO vilesci;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_prestudent_mobilitaet FOREIGN KEY (prestudent_id) REFERENCES public.tbl_prestudent (prestudent_id) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_studiensemester_mobilitaet FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester (studiensemester_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_mobilitaetsprogrammcode_mobilitaet FOREIGN KEY (mobilitaetsprogramm_code) REFERENCES bis.tbl_mobilitaetsprogramm (mobilitaetsprogramm_code) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_gsprogramm_mobilitaet FOREIGN KEY (gsprogramm_id) REFERENCES bis.tbl_gsprogramm (gsprogramm_id) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_firma_mobilitaet FOREIGN KEY (firma_id) REFERENCES public.tbl_firma (firma_id) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_status_mobilitaet FOREIGN KEY (status_kurzbz) REFERENCES public.tbl_status (status_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE bis.tbl_mobilitaet ADD CONSTRAINT fk_moblitaetstyp_mobilitaet FOREIGN KEY (mobilitaetstyp_kurzbz) REFERENCES bis.tbl_mobilitaetstyp (mobilitaetstyp_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;
CREATE SEQUENCE bis.tbl_mobilitaet_mobilitaet_id_seq
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;
ALTER TABLE bis.tbl_mobilitaet ALTER COLUMN mobilitaet_id SET DEFAULT nextval('bis.tbl_mobilitaet_mobilitaet_id_seq');
GRANT SELECT, UPDATE ON bis.tbl_mobilitaet_mobilitaet_id_seq TO vilesci;
INSERT INTO bis.tbl_gsprogrammtyp(gsprogrammtyp_kurzbz, bezeichnung, programmtyp_code) VALUES('Joint', 'Joint Degree','Joint');
INSERT INTO bis.tbl_gsprogrammtyp(gsprogrammtyp_kurzbz, bezeichnung, programmtyp_code) VALUES('Double', 'Double Degree','Double');
INSERT INTO bis.tbl_gsprogrammtyp(gsprogrammtyp_kurzbz, bezeichnung, programmtyp_code) VALUES('Multiple', 'Multiple Degree','Multiple');
INSERT INTO bis.tbl_mobilitaetstyp(mobilitaetstyp_kurzbz, bezeichnung, aktiv) VALUES('GS', 'Gemeinsame Studien',true);
INSERT INTO bis.tbl_mobilitaetstyp(mobilitaetstyp_kurzbz, bezeichnung, aktiv) VALUES('Incoming', 'Incoming',false);
INSERT INTO bis.tbl_mobilitaetstyp(mobilitaetstyp_kurzbz, bezeichnung, aktiv) VALUES('Outgoing', 'Outgoing',false);
";
if(!$db->db_query($qry))
echo '<strong>Gemeinsame Studien '.$db->db_last_error().'</strong><br>';
else
echo '<br>Neue Tabelle fuer Gemeinsame Studien/Mobilitaet hinzugefügt<br>';
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
@@ -1249,8 +1357,13 @@ $tabellen=array(
"bis.tbl_bundesland" => array("bundesland_code","kurzbz","bezeichnung"),
"bis.tbl_entwicklungsteam" => array("mitarbeiter_uid","studiengang_kz","besqualcode","beginn","ende","updateamum","updatevon","insertamum","insertvon","ext_id"),
"bis.tbl_gemeinde" => array("gemeinde_id","plz","name","ortschaftskennziffer","ortschaftsname","bulacode","bulabez","kennziffer"),
"bis.tbl_gsstudientyp" => array("gsstudientyp_kurzbz","bezeichnung","studientyp_code"),
"bis.tbl_gsprogrammtyp" => array("gsprogrammtyp_kurzbz","bezeichnung","programmtyp_code"),
"bis.tbl_gsprogramm" => array("gsprogramm_id","programm_code","bezeichnung","gsprogrammtyp_kurzbz"),
"bis.tbl_hauptberuf" => array("hauptberufcode","bezeichnung"),
"bis.tbl_lgartcode" => array("lgartcode","kurzbz","bezeichnung","beantragung","lgart_biscode"),
"bis.tbl_mobilitaet" => array("mobilitaet_id","prestudent_id","mobilitaetstyp_kurzbz","studiensemester_kurzbz","mobilitaetsprogramm_code","gsprogramm_id","firma_id","status_kurzbz","ausbildungssemester","insertvon","insertamum","updatevon","updateamum"),
"bis.tbl_mobilitaetstyp" => array("mobilitaetstyp_kurzbz","bezeichnung","aktiv"),
"bis.tbl_mobilitaetsprogramm" => array("mobilitaetsprogramm_code","kurzbz","beschreibung","sichtbar","sichtbar_outgoing"),
"bis.tbl_nation" => array("nation_code","entwicklungsstand","eu","ewr","kontinent","kurztext","langtext","engltext","sperre"),
"bis.tbl_orgform" => array("orgform_kurzbz","code","bezeichnung","rolle","bisorgform_kurzbz"),
@@ -1380,7 +1493,7 @@ $tabellen=array(
"lehre.tbl_zeugnisnote" => array("lehrveranstaltung_id","student_uid","studiensemester_kurzbz","note","uebernahmedatum","benotungsdatum","bemerkung","updateamum","updatevon","insertamum","insertvon","ext_id","punkte"),
"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"),
"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"),
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon","email","verpflichtend"),
"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"),
"public.tbl_aufmerksamdurch" => array("aufmerksamdurch_kurzbz","beschreibung","ext_id","bezeichnung", "aktiv"),
"public.tbl_aufnahmeschluessel" => array("aufnahmeschluessel"),
@@ -1398,7 +1511,7 @@ $tabellen=array(
"public.tbl_erhalter" => array("erhalter_kz","kurzbz","bezeichnung","dvr","logo","zvr"),
"public.tbl_fachbereich" => array("fachbereich_kurzbz","bezeichnung","farbe","studiengang_kz","aktiv","ext_id","oe_kurzbz"),
"public.tbl_filter" => array("filter_id","kurzbz","sql","valuename","showvalue","insertamum","insertvon","updateamum","updatevon","type","htmlattr"),
"public.tbl_firma" => array("firma_id","name","anmerkung","firmentyp_kurzbz","updateamum","updatevon","insertamum","insertvon","ext_id","schule","finanzamt","steuernummer","gesperrt","aktiv"),
"public.tbl_firma" => array("firma_id","name","anmerkung","firmentyp_kurzbz","updateamum","updatevon","insertamum","insertvon","ext_id","schule","finanzamt","steuernummer","gesperrt","aktiv","lieferbedingungen","partner_code"),
"public.tbl_firma_mobilitaetsprogramm" => array("firma_id","mobilitaetsprogramm_code","ext_id"),
"public.tbl_firma_organisationseinheit" => array("firma_organisationseinheit_id","firma_id","oe_kurzbz","bezeichnung","kundennummer","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_firmentyp" => array("firmentyp_kurzbz","beschreibung"),
@@ -1433,7 +1546,7 @@ $tabellen=array(
"public.tbl_preoutgoing_lehrveranstaltung" => array("preoutgoing_lehrveranstaltung_id","preoutgoing_id","bezeichnung","ects","endversion","insertamum","insertvon","updateamum","updatevon","wochenstunden","unitcode"),
"public.tbl_preoutgoing_preoutgoing_status" => array("status_id","preoutgoing_status_kurzbz","preoutgoing_id","datum","insertamum","insertvon","updateamum","updatevon"),
"public.tbl_preoutgoing_status" => array("preoutgoing_status_kurzbz","bezeichnung"),
"public.tbl_prestudent" => array("prestudent_id","aufmerksamdurch_kurzbz","person_id","studiengang_kz","berufstaetigkeit_code","ausbildungcode","zgv_code","zgvort","zgvdatum","zgvmas_code","zgvmaort","zgvmadatum","aufnahmeschluessel","facheinschlberuf","reihungstest_id","anmeldungreihungstest","reihungstestangetreten","rt_gesamtpunkte","rt_punkte1","rt_punkte2","bismelden","anmerkung","dual","insertamum","insertvon","updateamum","updatevon","ext_id","ausstellungsstaat","rt_punkte3", "zgvdoktor_code", "zgvdoktorort", "zgvdoktordatum","mentor","zgvnation","zgvmanation","zgvdoktornation"),
"public.tbl_prestudent" => array("prestudent_id","aufmerksamdurch_kurzbz","person_id","studiengang_kz","berufstaetigkeit_code","ausbildungcode","zgv_code","zgvort","zgvdatum","zgvmas_code","zgvmaort","zgvmadatum","aufnahmeschluessel","facheinschlberuf","reihungstest_id","anmeldungreihungstest","reihungstestangetreten","rt_gesamtpunkte","rt_punkte1","rt_punkte2","bismelden","anmerkung","dual","insertamum","insertvon","updateamum","updatevon","ext_id","ausstellungsstaat","rt_punkte3", "zgvdoktor_code", "zgvdoktorort", "zgvdoktordatum","mentor","zgvnation","zgvmanation","zgvdoktornation","gsstudientyp_kurzbz"),
"public.tbl_prestudentstatus" => array("prestudent_id","status_kurzbz","studiensemester_kurzbz","ausbildungssemester","datum","orgform_kurzbz","insertamum","insertvon","updateamum","updatevon","ext_id","studienplan_id","bestaetigtam","bestaetigtvon","fgm","faktiv", "anmerkung","bewerbung_abgeschicktamum"),
"public.tbl_raumtyp" => array("raumtyp_kurzbz","beschreibung","kosten"),
"public.tbl_reihungstest" => array("reihungstest_id","studiengang_kz","ort_kurzbz","anmerkung","datum","uhrzeit","updateamum","updatevon","insertamum","insertvon","ext_id","freigeschaltet","max_teilnehmer","oeffentlich","studiensemester_kurzbz"),
+159 -112
View File
@@ -22,12 +22,12 @@
*/
/**
* Studentenmeldung
*
*
* Erstellt ein XML File fuer die Studentenmeldung an den FHR
* Das XML-File wird im Filesystem abgelegt.
* Das XML-File wird im Filesystem abgelegt.
* Zusaetzlich wird eine Uebersichtsliste ueber die im File enthaltenen Daten erstellt und
* nicht plausible Daten
*
*
* Parameter: stg_kz ... Kennzahl des Studienganges
*/
require_once('../../config/vilesci.config.inc.php');
@@ -78,6 +78,7 @@ $usem=array();
$asem=array();
$absem=array();
$iosem=array();
$gssem=array();
$bewerbercount=array();
$orgform_kurzbz='';
$tabelle='';
@@ -146,6 +147,21 @@ if($result = $db->db_query($qry))
$orgform_code_array[$row->orgform_kurzbz]=$row->code;
}
}
$qry = 'SELECT * FROM bis.tbl_gsstudientyp';
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$kodex_studientyp_array[$row->gsstudientyp_kurzbz]=$row->studientyp_code;
}
}
// StudStatusCode
$kodex_studstatuscode_array['Student'] =1;
$kodex_studstatuscode_array['Unterbrecher']=2;
$kodex_studstatuscode_array['Absolvent'] =3;
$kodex_studstatuscode_array['Abbrecher'] =4;
//Studiengangsdaten auslesen
$stg_obj = new studiengang();
@@ -157,7 +173,7 @@ if($stg_obj->load($stg_kz))
echo "Die maximale Semesteranzahl des Studienganges ist nicht angegeben!";
exit;
}
$erhalter = sprintf('%03s',$stg_obj->erhalter_kz);
switch($stg_obj->typ)
@@ -177,29 +193,29 @@ if($stg_obj->load($stg_kz))
$orgform_code = $orgform_code_array[$stg_obj->orgform_kurzbz];
$orgform_kurzbz=$stg_obj->orgform_kurzbz;
}
else
else
die('Fehler:'.$stg_obj->errormsg);
//Ausgabe aktiver Studenten, die nicht gemeldet werden
$qry_akt="
SELECT
SELECT
DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id
FROM
FROM
public.tbl_student
JOIN public.tbl_benutzer ON(student_uid=uid)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
WHERE
WHERE
bismelden=FALSE
AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
AND (tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." AND status_kurzbz IN ('Student','Diplomand','Unterbrecher','Praktikant','Outgoing'))
AND tbl_prestudent.prestudent_id NOT IN
(
SELECT prestudent_id
FROM public.tbl_prestudentstatus
WHERE
SELECT prestudent_id
FROM public.tbl_prestudentstatus
WHERE
tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)."
AND (status_kurzbz='Abbrecher' OR status_kurzbz='Absolvent')
)
@@ -216,15 +232,15 @@ if($result_akt = $db->db_query($qry_akt))
//Incoming ohne I/O Datensatz anzeigen
$qry_in="
SELECT
SELECT
DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id
FROM
FROM
public.tbl_student
JOIN public.tbl_benutzer ON(student_uid=uid)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
WHERE
WHERE
bismelden=TRUE
AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
AND (status_kurzbz='Incoming' AND student_uid NOT IN (SELECT student_uid FROM bis.tbl_bisio))
@@ -242,15 +258,15 @@ if($result_in = $db->db_query($qry_in))
//Hauptselect
$qry="
SELECT
SELECT
DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat
FROM
FROM
public.tbl_student
JOIN public.tbl_benutzer ON(student_uid=uid)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
WHERE
WHERE
bismelden=TRUE
AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
AND (((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem).") AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
@@ -275,66 +291,25 @@ if($result = $db->db_query($qry))
<StudierendenBewerberMeldung>
<Studiengang>
<StgKz>".$stg_kz."</StgKz>";
/*
if($orgform_code==3) //Studiengang in Mischform organisiert
while($row = $db->db_fetch_object($result))
{
while($row = $db->db_fetch_object($result))
{
if($row->orgform_kurzbz=='' && $row->status_kurzbz=='Incoming')
{
$row->orgform_kurzbz=$orgform_kurzbz;
}
elseif($row->orgform_kurzbz=='')
{
echo 'Fehler: Keine Organisationsform fuer '.$row->uid.' '.$row->vorname.' '.$row->nachname.' eingetragen<br>';
continue;
}
if(!isset($student_data[$orgform_code_array[$row->orgform_kurzbz]]))
$student_data[$orgform_code_array[$row->orgform_kurzbz]]='';
//Plausichecks
$student_data[$orgform_code_array[$row->orgform_kurzbz]].= GenerateXMLStudentBlock($row);
}
foreach($student_data as $key=>$value)
{
$datei.="
<StudiengangDetail>
<OrgFormTeilCode>".$key."</OrgFormTeilCode>
<StgStartSemCode>1</StgStartSemCode>".$value;
$datei.= GenerateXMLBewerberBlock($key);
$datei.="
</StudiengangDetail>";
}
$datei.= GenerateXMLStudentBlock($row);
}
else
//Bewerberblock bei Ausserordentlichen nicht anzeigen
if($stg_kz!=('9'.$erhalter))
{
//orgform!='3'
//Stg mit einer Orgform
$datei.="
<StudiengangDetail>
<OrgFormTeilCode>".$orgform_code."</OrgFormTeilCode>
<StgStartSemCode>1</StgStartSemCode>
";*/
while($row = $db->db_fetch_object($result))
if($orgform_code==3)
{
$datei.= GenerateXMLStudentBlock($row);
$orgcodes = array_unique($orgform_code_array);
//Mischform
foreach($orgcodes as $code)
$datei.= GenerateXMLBewerberBlock($code);
}
//Bewerberblock bei Ausserordentlichen nicht anzeigen
if($stg_kz!=('9'.$erhalter))
{
if($orgform_code==3)
{
$orgcodes = array_unique($orgform_code_array);
//Mischform
foreach($orgcodes as $code)
$datei.= GenerateXMLBewerberBlock($code);
}
else
$datei.= GenerateXMLBewerberBlock();
}
//$datei.=" </StudiengangDetail>";
//}
else
$datei.= GenerateXMLBewerberBlock();
}
}
$datei.="
@@ -403,6 +378,9 @@ $absolventen="
$outgoing="
<tr align=center>
<td bgcolor='#AFFA49'>Outgoing ($orgformen)</td>";
$gemeinsamestudien="
<tr align=center>
<td bgcolor='#AFFA49'>GemeinsameStudien</td>";
foreach ($semester_arr as $semester)
{
$aktiv.='<td>&nbsp;';
@@ -410,7 +388,8 @@ foreach ($semester_arr as $semester)
$abbrecher.='<td>&nbsp;';
$absolventen.='<td>&nbsp;';
$outgoing.='<td>&nbsp;';
$gemeinsamestudien.='<td>&nbsp;';
$i=0;
foreach($verwendete_orgformen as $orgform)
{
@@ -422,13 +401,13 @@ foreach ($semester_arr as $semester)
$absolventen.=' / ';
$outgoing.=' / ';
}
$aktiv .= (isset($stsem[$orgform][$semester])?$stsem[$orgform][$semester]:'');
$unterbrecher .= (isset($usem[$orgform][$semester])?$usem[$orgform][$semester]:'');
$abbrecher .= (isset($asem[$orgform][$semester])?$asem[$orgform][$semester]:'');
$absolventen .= (isset($absem[$orgform][$semester])?$absem[$orgform][$semester]:'');
$outgoing .= (isset($iosem[$orgform][$semester])?$iosem[$orgform][$semester]:'');
$gemeinsamestudien .= (isset($gssem[$semester])?$gssem[$semester]:'');
$i++;
}
$aktiv.='</td>';
@@ -436,15 +415,17 @@ foreach ($semester_arr as $semester)
$abbrecher.='</td>';
$absolventen.='</td>';
$outgoing.='</td>';
$gemeinsamestudien.='</td>';
}
$aktiv.='</tr>';
$unterbrecher.='</tr>';
$abbrecher.='</tr>';
$absolventen.='</tr>';
$outgoing.='</tr>';
$gemeinsamestudien.='</tr>';
$tabelle.=$aktiv.$unterbrecher.$abbrecher.$absolventen.$outgoing.
$tabelle.=$aktiv.$unterbrecher.$abbrecher.$absolventen.$outgoing.$gemeinsamestudien.
"
<tr align=center style='border-top:1px solid black'>
<td bgcolor='#AFFA49'>Incoming</td>
@@ -469,7 +450,7 @@ for($i=0;$i<sizeof($verwendete_orgformen);$i++)
{
if($i!=0)
$tabelle.=' / ';
$tabelle.= isset($bewerbercount[$verwendete_orgformen[$i]])?$bewerbercount[$verwendete_orgformen[$i]]:'';
}
$tabelle.='</td>';
@@ -535,7 +516,7 @@ echo '<table border=1>
echo '</body></html>';
/**************************************************************************
* FUNKTIONEN
* FUNKTIONEN
**************************************************************************/
/**
@@ -547,19 +528,20 @@ function GenerateXMLStudentBlock($row)
global $ssem, $psem;
global $v;
global $stgart, $maxsemester, $orgform_kurzbz, $bisprevious,$anzahl_fehler;
global $iosem, $stsem, $usem, $asem, $absem, $stlist;
global $iosem, $stsem, $usem, $asem, $absem, $stlist, $gssem;
global $verwendete_orgformen, $datum_obj,$orgform_code_array,$standortcode;
global $kodex_studientyp_array, $kodex_studstatuscode_array;
$error_log='';
$error_log1='';
$datei = '';
$datumobj = new datum();
//Pruefen ob Ausserordnetlicher Studierender (4.Stelle in Personenkennzeichen = 9)
if(mb_substr($row->matrikelnr,3,1)=='9')
$ausserordentlich=true;
else
$ausserordentlich=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);
@@ -681,7 +663,7 @@ function GenerateXMLStudentBlock($row)
}
}
}
//StudStatusCode und Semester ermitteln
$qrystatus="SELECT * FROM public.tbl_prestudentstatus
WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND studiensemester_kurzbz=".$db->db_add_param($ssem)." AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
@@ -767,7 +749,7 @@ function GenerateXMLStudentBlock($row)
}
}
}
if($ausserordentlich)
{
$status=1;
@@ -799,7 +781,7 @@ function GenerateXMLStudentBlock($row)
//Wenn im Status keine Organisationsform eingetragen ist, wird die des Studienganges uebernommen
if($storgform=='')
$storgform=$orgform_kurzbz;
//bei Absolventen das Beendigungsdatum (Sponsion oder Abschlussprüfung) überprüfen
if($aktstatus=='Absolvent')
{
@@ -854,10 +836,10 @@ function GenerateXMLStudentBlock($row)
$error_log.=(!empty($error_log)?', ':'')."Heimat-Nation bei Incoming('".$nation."')";
}
}
$qryad="SELECT * FROM public.tbl_prestudentstatus
WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)."
AND (status_kurzbz='Student' OR status_kurzbz='Unterbrecher')
$qryad="SELECT * FROM public.tbl_prestudentstatus
WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)."
AND (status_kurzbz='Student' OR status_kurzbz='Unterbrecher')
AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).") ORDER BY datum asc;";
if($resultad = $db->db_query($qryad))
{
@@ -880,7 +862,7 @@ function GenerateXMLStudentBlock($row)
{
$error_log.=(!empty($error_log)?', ':'')."Ausstellungsstaat ist nicht eingetragen";
}
if($error_log!='' OR $error_log1!='')
{
$v.="<u>Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($row->status_kurzbz): </u>\n";
@@ -900,6 +882,48 @@ function GenerateXMLStudentBlock($row)
}
else
{
// **** GS Container ****/
$gsstatus='';
$gsblock='';
$gemeinsamestudien=false;
$qrygs="SELECT
tbl_mobilitaet.*,
tbl_gsprogramm.programm_code,
tbl_firma.partner_code
FROM
bis.tbl_mobilitaet
LEFT JOIN bis.tbl_gsprogramm USING(gsprogramm_id)
LEFT JOIN public.tbl_firma USING(firma_id)
WHERE
prestudent_id=".$db->db_add_param($row->prestudent_id)."
AND studiensemester_kurzbz=".$db->db_add_param($ssem).";";
if($resultgs = $db->db_query($qrygs))
{
while($rowgs = $db->db_fetch_object($resultgs))
{
$gsstatus = 'GS '.$rowgs->status_kurzbz.' '.$row->gsstudientyp_kurzbz;
$gemeinsamestudien=True;
$studtyp = $kodex_studientyp_array[$row->gsstudientyp_kurzbz];
$studstatuscode = $kodex_studstatuscode_array[$rowgs->status_kurzbz];
$gsblock.="
<GS>
<PersKz>".$row->matrikelnr."</PersKz>
<MobilitaetsProgrammCode>".$rowgs->mobilitaetsprogramm_code."</MobilitaetsProgrammCode>
<ProgrammNr>".$rowgs->programm_code."</ProgrammNr>
<StudTyp>".$studtyp."</StudTyp>
<PartnerCode>".$rowgs->partner_code."</PartnerCode>
<Ausbildungssemester>".$rowgs->ausbildungssemester."</Ausbildungssemester>
<StudStatusCode>".$studstatuscode."</StudStatusCode>
</GS>";
if(!isset($gssem[$rowgs->ausbildungssemester]))
{
$gssem[$rowgs->ausbildungssemester]=0;
}
$gssem[$rowgs->ausbildungssemester]++;
}
}
$datei.="
<StudentIn>
<PersKz>".trim($row->matrikelnr)."</PersKz>";
@@ -908,7 +932,7 @@ function GenerateXMLStudentBlock($row)
$datei.="
<OrgFormCode>".$orgform_code_array[$storgform]."</OrgFormCode>";
}
$datei.="
<GeburtsDatum>".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."</GeburtsDatum>
<Geschlecht>".strtoupper($row->geschlecht)."</Geschlecht>";
@@ -959,7 +983,7 @@ function GenerateXMLStudentBlock($row)
$datei.="
<ZugangMaStgDatum>".date("dmY", $datumobj->mktime_fromdate($row->zgvmadatum))."</ZugangMaStgDatum>";
}
if($aktstatus!='Incoming' && !$ausserordentlich)
{
if($row->zgvmanation!='' && $stgart=='2')
@@ -975,26 +999,35 @@ function GenerateXMLStudentBlock($row)
<Ausstellungsstaat>'.$ausstellungsstaat.'</Ausstellungsstaat>';
}
}
if($beginndatum!='' && !$ausserordentlich)
{
$datei.="
<BeginnDatum>".date("dmY", $datumobj->mktime_fromdate($beginndatum))."</BeginnDatum>";
}
if($aktstatus=='Absolvent' || $aktstatus=='Abbrecher')
{
$datei.="
<BeendigungsDatum>".date("dmY", $datumobj->mktime_fromdate($aktstatus_datum))."</BeendigungsDatum>";
}
if($aktstatus!='Incoming' && !$ausserordentlich)
/* Ausbildungssemester nicht anzeigen wenn
Incoming
Ausserordentlich Studierender
oder Externer Studierender eines gemeinsamen Studienprogramms
*/
if($aktstatus!='Incoming' && !$ausserordentlich && !($gemeinsamestudien && $kodex_studientyp_array[$row->gsstudientyp_kurzbz]=='E'))
{
$datei.="
<Ausbildungssemester>".$sem."</Ausbildungssemester>";
}
$datei.="
<StudStatusCode>".$status."</StudStatusCode>";
// StudStatusCode nicht anzeigen wenn externer Studierender eines gemeinsamen Studienprogramms
if(!($gemeinsamestudien && $kodex_studientyp_array[$row->gsstudientyp_kurzbz]=='E'))
$datei.="
<StudStatusCode>".$status."</StudStatusCode>";
if($orgform_code_array[$storgform]!=1 && !$ausserordentlich) // Wenn nicht Vollzeit und nicht Ausserordentlich
{
$datei.="
@@ -1008,18 +1041,23 @@ function GenerateXMLStudentBlock($row)
}
/*
* BMWFFoerderrung derzeit fuer alle Studierende auf Ja gesetzt
* Ausnahme: ausserordnetliche Studierende und Incoming
*
* Ausnahme:
* ausserordnetliche Studierende
* Incoming
* Externe Teilnehmer an Gemeinsamen Studien
*
* ToDo: sollte pro Studierenden konfigurierbar sein
*/
if($aktstatus=='Incoming' || $ausserordentlich)
if($aktstatus=='Incoming' || $ausserordentlich
|| ($gemeinsamestudien && $kodex_studientyp_array[$row->gsstudientyp_kurzbz]=='E'))
$bmwf='N';
else
$bmwf='J';
$datei.="
<BMWFWfoerderrelevant>".$bmwf."</BMWFWfoerderrelevant>";
// **** IO Container ****/
$qryio="SELECT * FROM bis.tbl_bisio WHERE student_uid=".$db->db_add_param($row->student_uid)."
AND (von>".$db->db_add_param($bisprevious)." OR bis IS NULL OR bis>".$db->db_add_param($bisprevious).")
AND von<=".$db->db_add_param($bisdatum).";";
@@ -1064,7 +1102,7 @@ function GenerateXMLStudentBlock($row)
}
}
}
$datei.= $gsblock;
$datei.="
</StudentIn>";
@@ -1103,9 +1141,18 @@ function GenerateXMLStudentBlock($row)
}
if(!in_array($storgform, $verwendete_orgformen))
$verwendete_orgformen[]=$storgform;
//Studentenliste
$stlist.="<tr><td align=center>".trim($row->student_uid)."</td><td align=center>".trim($row->matrikelnr)."</td><td>".trim($row->nachname)."</td><td>".trim($row->vorname)."</td><td>".trim($aktstatus)."</td><td align=center>".trim($sem)."</td><td align=center>".trim($storgform)."</td></tr>";
$stlist.="
<tr>
<td align=center>".trim($row->student_uid)."</td>
<td align=center>".trim($row->matrikelnr)."</td>
<td>".trim($row->nachname)."</td>
<td>".trim($row->vorname)."</td>
<td>".($gsstatus!=''?$gsstatus:trim($aktstatus))."</td>
<td align=center>".trim($sem)."</td>
<td align=center>".trim($storgform)."</td>
</tr>";
return $datei;
}
@@ -1125,7 +1172,7 @@ function GenerateXMLBewerberBlock($orgformcode=null)
$datei = '';
$bewerberM=array();
$bewerberW=array();
if(mb_strstr($ssem,"WS"))
{
//Bewerber
@@ -1139,7 +1186,7 @@ function GenerateXMLBewerberBlock($orgformcode=null)
";
if(!is_null($orgformcode))
$qrybw.=" AND tbl_orgform.code=".$db->db_add_param($orgformcode);
if($resultbw = $db->db_query($qrybw))
{
while($rowbw = $db->db_fetch_object($resultbw))
@@ -1185,16 +1232,16 @@ function GenerateXMLBewerberBlock($orgformcode=null)
}
}
$bworgform = ($rowbw->orgform_kurzbz!=''?$rowbw->orgform_kurzbz:$orgform_kurzbz);
if(isset($bewerbercount[0]))
$bewerbercount[0]++;
else
else
$bewerbercount[0]=1;
if(isset($bewerbercount[$bworgform]))
$bewerbercount[$bworgform]++;
else
else
$bewerbercount[$bworgform]=1;
$bwlist.='<tr><td>'.trim($rowbw->nachname).'</td><td>'.trim($rowbw->vorname).'</td><td>'.$bworgform.'</td></tr>';
}
}
@@ -1213,7 +1260,7 @@ function GenerateXMLBewerberBlock($orgformcode=null)
if($stgart==2)
$datei.='
<ZugangMaStgCode>'.$key.'</ZugangMaStgCode>';
else
else
$datei.='
<ZugangCode>'.$key.'</ZugangCode>';
+84 -81
View File
@@ -46,16 +46,16 @@ $firma_id = (isset($_REQUEST['firma_id'])?$_REQUEST['firma_id']:'');
$adresse_id = (isset($_REQUEST['adresse_id'])?$_REQUEST['adresse_id']:'');
$standort_id = (isset($_REQUEST['standort_id'])?$_REQUEST['standort_id']:'');
$oe_kurzbz = (isset($_REQUEST['oe_kurzbz'])?$_REQUEST['oe_kurzbz']:'');
$firma_organisationseinheit_id = (isset($_REQUEST['firma_organisationseinheit_id'])?$_REQUEST['firma_organisationseinheit_id']:'');
$firma_organisationseinheit_id = (isset($_REQUEST['firma_organisationseinheit_id'])?$_REQUEST['firma_organisationseinheit_id']:'');
$tag = (isset($_REQUEST['tag'])?$_REQUEST['tag']:'');
$mobilitaetsprogramm_code = (isset($_REQUEST['mobilitaetsprogramm_code'])?$_REQUEST['mobilitaetsprogramm_code']:'');
$save = (isset($_REQUEST['save'])?$_REQUEST['save']:null);
$work = (isset($_REQUEST['work'])?$_REQUEST['work']:(isset($_REQUEST['save'])?$_REQUEST['save']:null));
$ajax = (isset($_REQUEST['ajax'])?$_REQUEST['ajax']:null);
$save = (isset($_REQUEST['save'])?$_REQUEST['save']:null);
$work = (isset($_REQUEST['work'])?$_REQUEST['work']:(isset($_REQUEST['save'])?$_REQUEST['save']:null));
$ajax = (isset($_REQUEST['ajax'])?$_REQUEST['ajax']:null);
$neu = (isset($_REQUEST['neu'])?$_REQUEST['neu']:null);
// Defaultwerte
// Defaultwerte
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma',''=>'');
$errorstr='';
@@ -146,18 +146,18 @@ if(isset($_GET['deletetag']))
<html>
<head>
<title>Firma - Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../skin/styles/jquery.css" type="text/css">
<!-- <link rel="stylesheet" href="../../skin/styles/jquery-ui.css" type="text/css"> -->
<script src="../../include/js/mailcheck.js" type="text/javascript"></script>
<script src="../../include/js/datecheck.js" type="text/javascript"></script>
<!-- <script src="../../include/js/jquery.js" type="text/javascript"></script> -->
<!-- <script src="../../include/js/jquery-ui.js" type="text/javascript"></script> -->
<!-- <script src="../../include/js/jquery.autocomplete.min.js" type="text/javascript"></script> -->
<script type="text/javascript" src="../../include/js/jquery1.9.min.js"></script>
<link rel="stylesheet" type="text/css" href="../../skin/jquery-ui-1.9.2.custom.min.css"/>
@@ -167,7 +167,7 @@ if(isset($_GET['deletetag']))
if(confirm("Diesen Datensatz wirklich loeschen?"))
return true;
return false;
}
}
</script>
</head>
@@ -184,7 +184,7 @@ switch ($work)
case 'organisationliste':
echo getOrganisationsliste($firma_id,$adresstyp_arr,$user);
break;
case 'mobilitaetsprogramm':
echo getMobilitaetsprogrammliste($firma_id,$user);
break;
@@ -192,7 +192,7 @@ switch ($work)
saveMobilitaetsprogramm($firma_id, $mobilitaetsprogramm_code);
echo getFirmadetail($firma_id,$adresstyp_arr,$user,$neu);
$tabselect=2;
break;
break;
case 'anmerkungsfeld':
echo getAnmerkungen($firma_id,$user);
break;
@@ -202,9 +202,9 @@ switch ($work)
echo $status;
$tabselect=3;
break;
case 'saveFirma':
$status=saveFirma($user,$rechte); // Postdaten werden in der Funktion verarbeitet
$status=saveFirma($user,$rechte); // Postdaten werden in der Funktion verarbeitet
if (is_numeric($status))
$firma_id=$status;
if (!$ajax)
@@ -231,12 +231,12 @@ $(document).ready(function() {
</body>
</html>
<?php
<?php
/**
* Firmenliste - lt. Suchekriterien
* Firmenliste - lt. Suchekriterien
*/
function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
{
function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
{
global $rechte;
if($firma_id!='' || $neu=='true')
{
@@ -244,14 +244,14 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
// Init
$htmlstr='';
// Datenlesen zur Firma
// Datenlesen zur Firma
$firma = new firma();
if($firma_id!='' && is_numeric($firma_id))
{
if (!$firma->load($firma_id))
return '<br>Firma mit der ID <b>'.$firma_id.'</b> existiert nicht';
}
else
else
{
//Bei neuen Firmen wird standardmaessig Partnerfirma ausgewaehlt
$firma->firmentyp_kurzbz='Partnerfirma';
@@ -259,16 +259,16 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
$firma->gesperrt=false;
$firma->schule=false;
}
$htmlstr.="<form id='addFirma' name='addFirma' action='firma_details.php' method='POST'>\n";
$htmlstr.="<input type='hidden' name='work' value='saveFirma'>\n";
$htmlstr.="<input type='hidden' name='work' value='saveFirma'>\n";
$htmlstr.="<input type='hidden' name='firma_id' value='".$firma->firma_id."'>\n";
// Firma Detailanzeige
$htmlstr.="<table class='detail' style='padding-top:10px;'>\n";
$htmlstr.="<tr><td><table width='100%'><tr>\n";
$htmlstr.="<td>Typ: </td>";
$htmlstr.="<td>Typ: </td>";
$htmlstr.="<td><select name='typ'>\n";
$qry = "SELECT firmentyp_kurzbz FROM public.tbl_firmentyp ORDER BY firmentyp_kurzbz";
if($result = $db->db_query($qry))
{
@@ -278,7 +278,7 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
}
}
$htmlstr.="</select></td>";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>Name: </td>";
$htmlstr.="<td><input type='text' name='name' value='".$firma->name."' size='80' maxlength='128' /></td>\n";
@@ -286,45 +286,45 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
$htmlstr.="</tr></table></td>";
$htmlstr.="</tr>\n";
$htmlstr.="<tr><td><table><tr>\n";
$htmlstr.="<tr><td><table><tr>\n";
$htmlstr.="<td>Steuernummer: </td>";
$htmlstr.="<td><input size='32' maxlength='32' type='text' name='steuernummer' value='".$firma->steuernummer."'></td>\n";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>Finanzamt: </td>";
// Finanzamt anzeige und suche
$firma_finanzamt = new firma();
$firmentyp_finanzamt='Finanzamt';
$firma_finanzamt->searchFirma('',$firmentyp_finanzamt, true);
$firma_finanzamt->searchFirma('',$firmentyp_finanzamt, true);
$htmlstr.="<td><select name='finanzamt'>";
$htmlstr.="<option value=''>-- keine Auswahl --</option>";
foreach ($firma_finanzamt->result as $row_finanzamt)
{
if($firma->finanzamt==$row_finanzamt->standort_id)
$selected='selected="true"';
else
else
$selected='';
$htmlstr.=" <option value='".$row_finanzamt->standort_id ."' ".$selected.">".$row_finanzamt->name.' - '.$row_finanzamt->bezeichnung." </option>";
}
$htmlstr.="</select></td>\n";
$htmlstr.="<td>Aktiv: </td>";
$htmlstr.="<td><input ".($firma->aktiv?' style="background-color: #E3FDEE;" ':' style="background-color: #FFF4F4;" ')." type='checkbox' name='aktiv' ".($firma->aktiv?'checked':'')."></td>\n";
$htmlstr.="<td>&nbsp;</td>\n";
$htmlstr.="<td>Gesperrt: </td>";
$disabled='disabled=true';
//Gesperrt Hackerl darf nur gesetzt werden wenn die Berechtigung vorhanden ist
if($rechte->isBerechtigt('basis/firma',null, 'suid'))
{
$disabled='';
}
$htmlstr.="<td><input type='checkbox' name='gesperrt' ".($firma->gesperrt?'checked':'')." $disabled></td>\n";
$htmlstr.="<td>&nbsp;</td>\n";
$htmlstr.="<td>Schule:</td>";
$htmlstr.="<td><input ".($firma->schule?' style="background-color: #E3FDEE;" ':' style="background-color: #FFF4F4;" ')." type='checkbox' name='schule' ".($firma->schule?'checked':'')."> </td>";
$htmlstr.="<td>&nbsp;</td>";
@@ -333,7 +333,7 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
$htmlstr.="<tr>";
$htmlstr.="<td title='Trennung mehrerer Tags durch ;'>Tags:</td><td><input type='text' id='tags' name='tags' size='32'>";
/* $htmlstr.="<script type='text/javascript' language='JavaScript1.2'>
$('#tags').autocomplete('stammdaten_autocomplete.php',
$('#tags').autocomplete('stammdaten_autocomplete.php',
{
minChars:1,
matchSubset:1,matchContains:1,
@@ -347,7 +347,7 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
$(document).ready(function()
{
$('#tags').autocomplete({
source: 'stammdaten_autocomplete.php?work=tags',
source: 'stammdaten_autocomplete.php?work=tags',
minLength:1,
response: function(event, ui)
{
@@ -365,22 +365,24 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
});
</script>";
$htmlstr.="</td>";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td colspan='9'>";
$htmlstr.='<td>&nbsp;</td>';
$htmlstr.='<td>Partner Code:</td>';
$htmlstr.='<td><input type="text" name="partner_code" value="'.$db->convert_html_chars($firma->partner_code).'" maxlength="10" size="6" /></td>';
$htmlstr.="<td colspan='7'>";
foreach($firma->tags as $tag)
{
$htmlstr.= '&nbsp;'.$tag.'<a href="firma_details.php?firma_id='.$firma->firma_id.'&deletetag=true&tag='.urlencode($tag).'" title="entfernen"> <img src="../../skin/images/DeleteIcon.png" /></a>';
}
$htmlstr.="</td></tr></table></td>";
$htmlstr.="</td></tr></table></td>";
$htmlstr.="</tr>\n";
$htmlstr.=" </table>\n";
$htmlstr.="</form>\n";
$htmlstr.='<div id="addFirmaInfo"></div>';
$htmlstr.='
<!-- Tabs -->
<!-- Tabs -->
<div id="tabs" style="font-size:80%;">
<ul class="css-tabs">
<li><a href="#standort">Standorte</a></li>
@@ -401,7 +403,7 @@ function getFirmadetail($firma_id, $adresstyp_arr, $user, $neu)
'.getAnmerkungen($firma_id, $user).'
</div>
</div>
<div id="detailstandort"> </div>
';
@@ -427,10 +429,10 @@ function saveFirma($user,$rechte)
{
if(!$firma->load($firma_id))
return 'Firma '.$firma_id.' wurde nicht gefunden';
else
else
$firma->new = false;
}
else
else
{
$firma->insertamum = date('Y-m-d H:i:s');
$firma->insertvon = $user;
@@ -444,9 +446,10 @@ function saveFirma($user,$rechte)
$firma->steuernummer = (isset($_POST['steuernummer'])?$_POST['steuernummer']:'');
$firma->gesperrt = (isset($_POST['gesperrt'])?true:false);
$firma->aktiv = (isset($_POST['aktiv'])?true:false);
$firma->finanzamt = (isset($_POST['finanzamt'])?$_POST['finanzamt']:'');
$firma->finanzamt = (isset($_POST['finanzamt'])?$_POST['finanzamt']:'');
$firma->partner_code = (isset($_POST['partner_code'])?$_POST['partner_code']:'');
$tags = (isset($_POST['tags'])?$_POST['tags']:'');
if($firma->save())
{
if ($firma->new)
@@ -475,7 +478,7 @@ function getStandortliste($firma_id,$adresstyp_arr,$user)
{
// Init
$htmlstr='';
// Plausib
if (empty($firma_id) || !is_numeric($firma_id) )
return 'Firma fehlt.';
@@ -486,12 +489,12 @@ function getStandortliste($firma_id,$adresstyp_arr,$user)
if (!$standort_obj->load_firma($firma_id))
return $standort_obj->errormsg;
// Es gibt noch keinen Standort zur Firma - Neuanlage
// Es gibt noch keinen Standort zur Firma - Neuanlage
if ($firma_id && !$standort_obj->result)
{
$firma_obj = new firma();
$firma_obj->load($firma_id);
$standort_obj->new=true;
$standort_obj->standort_id=null;
$standort_obj->adresse_id=null;
@@ -506,7 +509,7 @@ function getStandortliste($firma_id,$adresstyp_arr,$user)
$standort_obj = new standort();
$standort_obj->load_firma($firma_id);
}
$htmlstr.= '<table class="liste">
<tr>
<th>Kurzbz</th>
@@ -517,14 +520,14 @@ function getStandortliste($firma_id,$adresstyp_arr,$user)
<th>Strasse</th>
<th>Typ</th>
<th><font size="0">Zustelladr.</font></th>
<td align="center" valign="top" colspan="2"><a target="detail_workfirma" href="firma_detailwork.php?showmenue=1&firma_id='.$firma_id.'"><input type="Button" value="Neuanlage" name="work"></a></td>
</tr>';
$i=1;
foreach ($standort_obj->result as $row)
{
if ($firma_id && $row->standort_id && !$row->adresse_id)
{
$adresse_obj = new adresse();
@@ -545,7 +548,7 @@ function getStandortliste($firma_id,$adresstyp_arr,$user)
$adresse_obj->updatvon = $user;
if(!$adresse_obj->save())
return 'Fehler Adresse '.$adresse_obj->errormsg;
$standort_obj = new standort($row->standort_id);
$standort_obj->updatevon=$user;
$standort_obj->adresse_id=$adresse_obj->adresse_id;
@@ -576,7 +579,7 @@ function getStandortliste($firma_id,$adresstyp_arr,$user)
else
{
$htmlstr.= '<td><a target="detail_workfirma" href="firma_detailwork.php?showmenue=1&firma_id='.$firma_id.'&standort_id='.$row->standort_id.'&adresse_id='.$row->adresse_id.'">'.$row->kurzbz.'</a></td>';
$htmlstr.= '<td colspan="10">'.$adresse_obj->errormsg.'</td>';
$htmlstr.= '<td colspan="10">'.$adresse_obj->errormsg.'</td>';
}
$htmlstr.= '</tr>';
}
@@ -594,18 +597,18 @@ function getOrganisationsliste($firma_id,$adresstyp_arr,$user)
// Plausib
if (empty($firma_id) || !is_numeric($firma_id) )
return 'Firma fehlt.';
$htmlstr.= '<table class="liste">
<tr>
<th width="30%">Organisationseinheit</th>
<th width="25%">Bezeichnung</th>
<th width="15%">Kundennummer</th>
<td width="15%" align="center" valign="top" colspan="2"><a target="detail_workfirma"
<td width="15%" align="center" valign="top" colspan="2"><a target="detail_workfirma"
href="firma_detailwork.php?work=eingabeOrganisationseinheit&firma_organisationseinheit_id=&oe_kurzbz=&firma_id='.$firma_id.'">
<input type="Button" value="Neuanlage" name="work"></a></td>
</tr>
';
// Datenlesen zur Firma
// Datenlesen zur Firma
$firma = new firma();
if (!$firma->get_firmaorganisationseinheit($firma_id))
return $htmlstr.'</table>';
@@ -621,7 +624,7 @@ function getOrganisationsliste($firma_id,$adresstyp_arr,$user)
$htmlstr.= "<td align='center'><a href='".$_SERVER['PHP_SELF']."?deleteorganisationseinheit=true&firma_organisationseinheit_id=".$row->firma_organisationseinheit_id."&oe_kurzbz=".$row->oe_kurzbz."&firma_id=".$firma_id."' onclick='return confdel()'><img src='../../skin/images/application_form_delete.png' alt='loeschen' title='loeschen'/></a></td>";
$htmlstr.= '</tr>';
}
$htmlstr.= '</table>';
return $htmlstr;
}
@@ -636,31 +639,31 @@ function getMobilitaetsprogrammliste($firma_id,$user)
// Plausib
if (empty($firma_id) || !is_numeric($firma_id) )
return 'Firma fehlt.';
$htmlstr.= '<table class="liste">
<tr>
<th width="45%">Mobilitätsprogramm</th>
<th width="5%"></th>
<td width="15%" align="center" valign="top" colspan="2">
<form action="'.$_SERVER['PHP_SELF'].'?firma_id='.$firma_id.'&work=saveMobilitaetsprogramm" METHOD="POST">
<SELECT name="mobilitaetsprogramm_code">';
$mob = new mobilitaetsprogramm();
$mob->getAll();
foreach($mob->result as $row)
{
$htmlstr.= '<OPTION value="'.$mob->convert_html_chars($row->mobilitaetsprogramm_code).'">'.$mob->convert_html_chars($row->kurzbz).'</OPTION>';
}
$htmlstr.='
$htmlstr.='
</SELECT>
<input type="submit" value="Hinzufügen">
</form>
</td>
</td>
</tr>
';
// Datenlesen zur Firma
// Datenlesen zur Firma
$mob = new mobilitaetsprogramm();
if (!$mob->getFirmaMobilitaetsprogramm($firma_id))
return $htmlstr.'</table>';
@@ -673,7 +676,7 @@ function getMobilitaetsprogrammliste($firma_id,$user)
$htmlstr.= '</tr>';
$i++;
}
$htmlstr.= '</table>';
return $htmlstr;
}
@@ -695,28 +698,28 @@ function getAnmerkungen($firma_id,$user)
// Plausib
if (empty($firma_id) || !is_numeric($firma_id) )
return 'Firma fehlt.';
// Datenlesen zur Firma
// Datenlesen zur Firma
$firma = new firma();
if($firma_id!='' && is_numeric($firma_id) )
{
if (!$firma->load($firma_id))
return '<br>Firma mit der ID <b>'.$firma_id.'</b> existiert nicht';
}
else
else
{
return false;
}
$htmlstr.="<form id='addAnmerkungen' name='addAnmerkung' action='firma_details.php' method='POST'>\n";
$htmlstr.="<input type='hidden' name='work' value='saveAnmerkungen'>\n";
$htmlstr.="<input type='hidden' name='work' value='saveAnmerkungen'>\n";
$htmlstr.="<input type='hidden' name='firma_id' value='".$firma->firma_id."'>\n";
$htmlstr.= "<table class='liste'>";
$htmlstr.= "<tr>";
$htmlstr.= "<td>Anmerkungen:</td>";
$htmlstr.="<td align='center' width='20%'><input type='submit' name='save' value='speichern'></td>\n";
$htmlstr.= "</tr><tr><td colspan='2'><textarea cols='40' rows='6' style='width:100%' name='anmerkung'>".$firma->anmerkung."</textarea></td></tr>";
$htmlstr.="</table></form>\n";
return $htmlstr;
@@ -728,20 +731,20 @@ function saveAnmerkungen($firma_id,$user, $rechte)
{
if(!$rechte->isBerechtigt('basis/firma:begrenzt',null, 'suid'))
return 'Sie haben keine Berechtigung';
$firma_obj = new firma();
if(!$firma_obj->load($firma_id))
return 'Firma konnte nicht geladen werden';
if(!isset($_REQUEST['anmerkung']))
return 'Anmerkung muss uebergeben werden';
$firma_obj->anmerkung = $_REQUEST['anmerkung'];
if(!$firma_obj->save())
return 'Fehler beim Speichern:'.$firma_obj->errormsg;
else
return 'Fehler beim Speichern:'.$firma_obj->errormsg;
else
return 'Anmerkung gespeichert!';
}
?>
+207
View File
@@ -0,0 +1,207 @@
<?php
/*
* Copyright 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/gsprogramm.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
$db = new basis_db();
if(!$rechte->isBerechtigt('inout/uebersicht', null, 'suid'))
die($rechte->errormsg);
if(isset($_GET['action']))
$action = $_GET['action'];
else
$action = '';
if($action=='save')
{
if(isset($_POST['gsprogramm_id']))
{
$gsprogramm = new gsprogramm();
if(isset($_POST['gsprogramm_id']) && $_POST['gsprogramm_id']!='')
{
if(!$gsprogramm->load($_POST['gsprogramm_id']))
die($gsprogramm->errormsg);
}
$gsprogramm->bezeichnung = $_POST['bezeichnung'];
$gsprogramm->gsprogrammtyp_kurzbz = $_POST['gsprogrammtyp_kurzbz'];
$gsprogramm->programm_code = $_POST['programm_code'];
if($gsprogramm->save())
echo '<span class="ok">Daten erfolgreich gespeichert</span>';
else
echo '<span class="error">'.$gsprogramm->errormsg.'</span>';
}
}
if($action=='delete')
{
$gsprogramm = new gsprogramm();
if($gsprogramm->delete($_GET['gsprogramm_id']))
echo '<span class="ok">Erfolgreich gelöscht</span>';
else
echo '<span class="error">'.$gsprogramm->errormsg.'</span>';
}
$gsprogramm = new gsprogramm();
$gsprogramm->getTypen();
$typ_arr = array();
foreach($gsprogramm->result as $row)
$typ_arr[$row->gsprogrammtyp_kurzbz]=$row->bezeichnung;
echo '<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/fhcomplete.css" rel="stylesheet" type="text/css">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css">
<script type="text/javascript" src="../../include/js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[2,0]],
widgets: ["zebra"],
headers: {0:{sorter:false},1:{sorter:false}}
});
});
function confdel()
{
return confirm("Wollen Sie diesen Eintrag wirklich löschen?");
}
</script>
<title>Gemeinsames Studienprogramm</title>
</head>
<body>';
echo '<h1>Gemeinsames Studienprogramm</h1>';
$gsprogramm = new gsprogramm();
$gsprogramm->getAll();
echo '
<form action="'.$_SERVER['PHP_SELF'].'">
<input type="submit" value="Neuen Eintrag hinzufügen" />
</form>
<table id="t1" class="tablesorter" style="width:auto">
<thead>
<th></th>
<th></th>
<th>Bezeichnung</th>
<th>Programmcode</th>
<th>Typ</th>
</thead>
<tbody>
';
foreach($gsprogramm->result as $row)
{
echo '<tr>
<td>
<a href="'.$_SERVER['PHP_SELF'].'?action=edit&gsprogramm_id='.$row->gsprogramm_id.'">
<img src="../../skin/images/edit.png" title="Bearbeiten" />
</a>
</td>
<td>
<a href="'.$_SERVER['PHP_SELF'].'?action=delete&gsprogramm_id='.$row->gsprogramm_id.'" onclick="return confdel()">
<img src="../../skin/images/cross.png" title="Löschen" />
</a>
</td>
<td>'.$row->bezeichnung.'</td>
<td>'.$row->programm_code.'</td>
<td>'.(isset($typ_arr[$row->gsprogrammtyp_kurzbz])?$typ_arr[$row->gsprogrammtyp_kurzbz]:$row->gsprogrammtyp_kurzbz).'</td>
</tr>';
}
echo '
</tbody>
</table>';
if($action=='edit')
{
$gsprogramm = new gsprogramm();
if(!$gsprogramm->load($_GET['gsprogramm_id']))
die($gsprogramm->errormsg);
}
else
{
$gsprogramm = new gsprogramm();
}
echo '
<form action="'.$_SERVER['PHP_SELF'].'?action=save" method="post">
<table>
<tr>
<td>ProgrammCode</td>
<td>
<input typ="text" id="programm_code" name="programm_code" maxlength="8" size="8" value="'.$gsprogramm->programm_code.'"/>
<input type="hidden" id="gsprogramm_id" name="gsprogramm_id" value="'.$gsprogramm->gsprogramm_id.'" />
</td>
</tr>
<tr>
<td>Bezeichnung</td>
<td>
<input type="text" id="bezeichnung" name="bezeichnung" size="50" maxlength="128" value="'.$db->convert_html_chars($gsprogramm->bezeichnung).'">
</td>
</tr>
<tr>
<td>Typ</td>
<td>
<select name="gsprogrammtyp_kurzbz">';
foreach($typ_arr as $key=>$val)
{
if($gsprogramm->gsprogrammtyp_kurzbz == $key)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$db->convert_html_chars($key).'" '.$selected.'>'.$db->convert_html_chars($val).'</option>';
}
echo '
</select>
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="save" value="Speichern"></td>
</tr>
</table>
</form><br><br><br><br><br><br><br><br><br><br><br><br>';
echo '
</body>
</html>';
?>