This commit is contained in:
Andreas Österreicher
2007-09-12 07:14:33 +00:00
parent ea6f8be018
commit 39667974ef
5 changed files with 117 additions and 16 deletions
+2 -2
View File
@@ -52,7 +52,7 @@ Woletz Kurt<br>
<b><br>
VertreterInnen der Lehrenden</b><br>
Maderdonner Otto<br>
Teschl Susanne<br>
<!--Teschl Susanne<br>-->
Lehner Martin<br>
Sommer Thomas<br>
Paminger Christian<br>
@@ -78,7 +78,7 @@ Horvath Martin<br>
Mischling Barbara<br>
Lowatschek Karl<br>
Steinbrecher Helmut<br>
N.N.<br>
Brandl Richard<br>
</td>
</tr>
</tbody></table></td><td class="tdwidth30">&nbsp;</td>
+40 -2
View File
@@ -44,6 +44,7 @@ var StudentPruefungTreeDatasource; //Datasource des Pruefung Trees
var StudentPruefungSelectID=null; //ID der Pruefung die nach dem Refresh markiert werden soll
var StudentDetailRolleTreeDatasource=null; //Datasource fuer denn PrestudentRolleTree
var StudentAkteTreeDatasource=null;
var doublerebuildkonto='false';
// ********** Observer und Listener ************* //
// ****
@@ -136,7 +137,7 @@ var StudentKontoTreeListener =
//timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
window.setTimeout(StudentKontoTreeSelectBuchung,10);
window.setTimeout(StudentKontoTreeSelectBuchung,10);
}
};
@@ -1644,6 +1645,40 @@ function StudentKontoTreeSelectBuchung()
}
}
function StudentKontoLoad()
{
person_id = document.getElementById('student-detail-textbox-person_id').value;
kontotree = document.getElementById('student-konto-tree');
filter = document.getElementById('student-konto-button-filter').value;
studienang_kz_prestudent = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
url='<?php echo APP_ROOT;?>rdf/konto.rdf.php?person_id='+person_id+"&filter="+filter+"&studiengang_kz="+studiengang_kz_prestudent+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = kontotree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
kontotree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
kontotree.builder.rebuild();
try
{
StudentKontoTreeDatasource.removeXMLSinkObserver(StudentKontoTreeSinkObserver);
kontotree.builder.removeListener(StudentKontoTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
StudentKontoTreeDatasource = rdfService.GetDataSource(url);
StudentKontoTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
StudentKontoTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
kontotree.database.AddDataSource(StudentKontoTreeDatasource);
StudentKontoTreeDatasource.addXMLSinkObserver(StudentKontoTreeSinkObserver);
kontotree.builder.addListener(StudentKontoTreeListener);
}
// ****
// * Wenn eine buchung Ausgewaehlt wird, dann werden
// * die Details geladen und angezeigt
@@ -1961,7 +1996,10 @@ function StudentKontoGegenbuchung()
{
//StudentKontoSelectBuchung=val.dbdml_data;
StudentKontoSelectBuchung=null;
StudentKontoTreeDatasource.Refresh(false); //non blocking
//StudentKontoTreeDatasource.Refresh(false); //non blocking
//Hier wird der ganze Konto Tree Neu geladen da bei ein
//normales Refresh hier nicht immer funktioniert
StudentKontoLoad();
SetStatusBarText('Daten wurden gespeichert');
}
}
+73 -10
View File
@@ -682,19 +682,82 @@ class lehreinheit
}
else
{
//Gruppenzuteilung, Mitarbeiterzuteilung und Lehreinheit loeschen
$qry = "BEGIN;
DELETE FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehreinheit_id='$lehreinheit_id';
DELETE FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='$lehreinheit_id';
DELETE FROM lehre.tbl_lehreinheit WHERE lehreinheit_id='$lehreinheit_id';
COMMIT;";
if(pg_query($this->conn, $qry))
return true;
else
pg_query($this->conn, 'BEGIN');
//UNDO Befehl zusammenbauen
$undosql='';
//LehreinheitMitarbeiter
$qry = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehreinheit_id='$lehreinheit_id'";
if($result = pg_query($this->conn, $qry))
{
$this->errormsg = pg_last_error($this->conn);
while($row = pg_fetch_object($result))
{
$undosql.=" INSERT INTO lehre.tbl_lehreinheitmitarbeiter(lehreinheit_id, mitarbeiter_uid, lehrfunktion_kurzbz, planstunden, stundensatz, faktor, anmerkung, bismelden, updateamum, updatevon, insertamum, insertvon, semesterstunden)
VALUES(".$this->addslashes($row->lehreinheit_id).",".$this->addslashes($row->mitarbeiter_uid).",".$this->addslashes($row->lehrfunktion_kurzbz).",".$this->addslashes($row->planstunden).",".$this->addslashes($row->stundensatz).",".$this->addslashes($row->faktor).",".
$this->addslashes($row->anmerkung).",".($row->bismelden=='t'?'true':'false').",".$this->addslashes($row->updateamum).",".$this->addslashes($row->updatevon).",".$this->addslashes($row->insertamum).",".$this->addslashes($row->insertvon).",".$this->addslashes($row->semesterstunden).");";
}
}
//LehreinheitGruppe
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='$lehreinheit_id'";
if($result = pg_query($this->conn, $qry))
{
while($row = pg_fetch_object($result))
{
$undosql.=" INSERT INTO lehre.tbl_lehreinheitgruppe(lehreinheitgruppe_id, lehreinheit_id, studiengang_kz, semester, verband, gruppe, gruppe_kurzbz, updateamum, updatevon, insertamum, insertvon)
VALUES(".$this->addslashes($row->lehreinheitgruppe_id).",".$this->addslashes($row->lehreinheit_id).",".$this->addslashes($row->studiengang_kz).",'".addslashes($row->semester)."','".addslashes($row->verband)."','".addslashes($row->gruppe)."',".
$this->addslashes($row->gruppe_kurzbz).",".$this->addslashes($row->updateamum).",".$this->addslashes($row->updatevon).",".$this->addslashes($row->insertamum).",".$this->addslashes($row->insertvon).");";
}
}
//Lehreinheit
$qry = "SELECT * FROM lehre.tbl_lehreinheit WHERE lehreinheit_id='$lehreinheit_id'";
if($result = pg_query($this->conn, $qry))
{
while($row = pg_fetch_object($result))
{
$undosql.=" INSERT INTO lehre.tbl_lehreinheit(lehreinheit_id, lehrveranstaltung_id, studiensemester_kurzbz, lehrfach_id, lehrform_kurzbz, stundenblockung, wochenrythmus, start_kw, raumtyp, raumtypalternativ, sprache, lehre, anmerkung, unr, lvnr, updateamum, updatevon, insertamum, insertvon)
VALUES(".$this->addslashes($row->lehreinheit_id).",".$this->addslashes($row->lehrveranstaltung_id).",".$this->addslashes($row->studiensemester_kurzbz).",".$this->addslashes($row->lehrfach_id).",".$this->addslashes($row->lehrform_kurzbz).",".$this->addslashes($row->stundenblockung).",".
$this->addslashes($row->wochenrythmus).",".$this->addslashes($row->startkw).",".$this->addslashes($row->raumtyp).",".$this->addslashes($row->raumtypalternativ).",".$this->addslashes($row->sprache).",".($row->wochenrythmus=='t'?'true':'false').",".
$this->addslashes($row->anmerkung).",".$this->addslashes($row->unr).",".$this->addslashes($row->lvnr).",".$this->addslashes($row->updateamum).",".$this->addslashes($row->updatevon).",".$this->addslashes($row->insertamum).",".$this->addslashes($row->insertvon).");";
}
}
$log = new log($this->conn);
//Gruppenzuteilung, Mitarbeiterzuteilung und Lehreinheit loeschen
$qry = "DELETE FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehreinheit_id='$lehreinheit_id';
DELETE FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='$lehreinheit_id';
DELETE FROM lehre.tbl_lehreinheit WHERE lehreinheit_id='$lehreinheit_id';";
$log->new = true;
$log->sql = $qry;
$log->sqlundo = $undosql;
$log->executetime = date('Y-m-d H:i:s');
$log->mitarbeiter_uid = get_uid();
$log->beschreibung = "Lehreinheit loeschen - $lehreinheit_id";
if(!$log->save())
{
$this->errormsg = 'Fehler beim Schreiben des Log-Eintrages';
pg_query($this->conn, 'ROLLBACK');
return false;
}
else
{
if(pg_query($this->conn, $qry))
{
pg_query($this->conn, 'COMMIT');
return true;
}
else
{
pg_query($this->conn, 'ROLLBACK');
$this->errormsg = pg_last_error($this->conn);
return false;
}
}
}
}
else
+1 -1
View File
@@ -26,7 +26,7 @@
* Window - Preferences - PHPeclipse - PHP - Code Templates
*/
// header fuer no cache
header("Cache-Control: no-cache, must-revalidate");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
+1 -1
View File
@@ -527,7 +527,7 @@ else
$studiengbeginn = '';
$studiensemester_kurzbz='';
$qry = "SELECT * FROM public.tbl_prestudentrolle JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
WHERE prestudent_id='$student->prestudent_id' ORDER BY datum LIMIT 1";
WHERE prestudent_id='$student->prestudent_id' AND rolle_kurzbz in('Student','Incoming') ORDER BY datum LIMIT 1";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))