This commit is contained in:
Andreas Österreicher
2007-07-31 11:27:01 +00:00
parent 7f70ff88b1
commit 924ef8fe7a
3 changed files with 151 additions and 46 deletions
+30
View File
@@ -36,6 +36,7 @@ require_once('../include/log.class.php');
require_once('../include/adresse.class.php');
require_once('../include/kontakt.class.php');
require_once('../include/bankverbindung.class.php');
require_once('../include/variable.class.php');
$user = get_uid();
//header("Content-type: application/xhtml+xml");
@@ -259,6 +260,35 @@ if(!$error)
$errormsg = $bankverbindung->errormsg;
}
}
elseif(isset($_POST['type']) && $_POST['type']=='variablechange') /**********************SONSTIGES*****************/
{
// Aendert die Variable Studiensemester
if(isset($_POST['stsem']))
{
$variable = new variable($conn, null, null, true);
$variable->uid = $user;
$variable->name = 'semester_aktuell';
$variable->wert = $_POST['stsem'];
$variable->new = false;
if($variable->save())
{
$return = true;
$data = $variable->wert;
}
else
{
$return = false;
$errormsg = $variable->errormsg;
}
}
else
{
$return = false;
$errormsg = 'Falsche Paramenteruebergabe';
}
}
else
{
$return = false;
+18 -46
View File
@@ -88,52 +88,28 @@ function studiensemesterChange()
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// Request absetzen
var httpRequest = new XMLHttpRequest();
var url = "<?php echo APP_ROOT; ?>rdf/fas/db_dml.rdf.php";
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
httpRequest.open("POST", url, false, '','');
httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
var req = new phpRequest(url,'','');
var param = "type=variablechange";
param = param + "&stsem="+stsem;
req.add('type', 'variablechange');
req.add('stsem', stsem);
var response = req.executePOST();
//Parameter schicken
httpRequest.send(param);
var val = new ParseReturnValue(response)
// Bei status 4 ist sendung Ok
switch(httpRequest.readyState)
if (!val.dbdml_return)
{
case 1,2,3: alert('Bad Ready State: '+httpRequest.status);
return false;
break;
case 4: if(httpRequest.status !=200)
{
alert('The server respond with a bad status code: '+httpRequest.status);
return false;
}
else
{
var response = httpRequest.responseText;
}
break;
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
// Returnwerte aus RDF abfragen
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/dbdml');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var subject = rdfService.GetResource("http://www.technikum-wien.at/dbdml/0");
var predicateNS = "http://www.technikum-wien.at/dbdml/rdf";
var dbdml_return = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#return" ));
var dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" ));
if(dbdml_return=='true')
{
//Statusbar setzen
else
{
//Statusbar setzen
document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
document.getElementById("statusbarpanel-semester").label = stsem;
//MitarbeiterDetailStudiensemester_id = dbdml_errormsg;
@@ -141,18 +117,14 @@ function studiensemesterChange()
try
{
StudentTreeRefresh();
InteressentTreeRefresh();
LvTreeRefresh();
}
catch(e)
{
debug('catch: '+e);
}
}
else
{
alert("Fehler beim Speichern der Daten: "+dbdml_errormsg);
}
}
return true;
}
+103
View File
@@ -0,0 +1,103 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
class akadgrad
{
var $conn; // @var resource DB-Handle
var $new; // @var boolean
var $errormsg; // @var string
var $result = array(); // @var email Objekt
//Tabellenspalten
var $akadgrad_id;
var $akadgrad_kurzbz;
var $studiengang_kz;
var $titel;
var $geschlecht;
// ***********************************************
// * Konstruktor
// * @param conn Connection zur Datenbank
// * akadgrad_id ID des zu ladenden Datensatzes
// ***********************************************
function akadgrad($conn, $akadgrad_id=null, $unicode=false)
{
$this->conn = $conn;
if($unicode!=null)
{
if($unicode)
$qry = "SET CLIENT_ENCODING TO 'UNICODE';";
else
$qry = "SET CLIENT_ENCODING TO 'LATIN9';";
if(!pg_query($conn,$qry))
{
$this->errormsg = "Encoding konnte nicht gesetzt werden";
return false;
}
}
if($akadgrad_id != null)
$this->load($akadgrad_id);
}
// ***********************************************
// * Laedt einen Datensatz
// * @param akadgrad_id ID des zu ladenden Datensatzes
// ***********************************************
function load($akadgrad_id)
{
//akadgrad_id auf gueltigkeit pruefen
if(!is_numeric($akadgrad_id) || $akadgrad_id == '')
{
$this->errormsg = 'akadgrad_id muss eine gueltige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad WHERE akadgrad_id='$akadgrad_id';";
if($result = pg_query($this->conn,$qry))
{
if($row=pg_fetch_object($result))
{
$this->akadgrad_id = $row->akadgrad_id;
$this->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$this->studiengang_kz = $row->studiengang_kz;
$this->titel = $row->titel;
$this->geschlecht = $row->geschlecht;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
}
?>