mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
param changes for rdfs
This commit is contained in:
@@ -41,21 +41,22 @@ if (!$db = new basis_db())
|
||||
$getuid=get_uid();
|
||||
$uid=$getuid;
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
// TODO EINE get_prestudent_id
|
||||
// WICHTIG TODO EINE: $uid und $getuid müssen im ganzen script noch umgeschrieben werden!
|
||||
|
||||
if(isset($_GET['prestudent_id']))
|
||||
{
|
||||
//Studentenansicht
|
||||
$uid = $_GET['uid'];
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
//Rechte Pruefen
|
||||
$allowed=false;
|
||||
|
||||
$student = new student(); // TODO EINE
|
||||
if(!$student->load($uid))
|
||||
die($p->t('global/fehlerBeimErmittelnDerUID'));
|
||||
|
||||
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
|
||||
$stg_obj = new studiengang();
|
||||
if(!$stg_obj->load($student->studiengang_kz))
|
||||
if(!$stg_obj->load($prestudent->studiengang_kz))
|
||||
die($p->t('global/fehlerBeimLesenAusDatenbank'));
|
||||
|
||||
|
||||
//Berechtigung ueber das Berechtigungssystem
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($getuid);
|
||||
@@ -69,7 +70,7 @@ if(isset($_GET['uid']))
|
||||
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
|
||||
JOIN campus.vw_benutzer on(vw_benutzer.person_id=tbl_projektbetreuer.person_id)
|
||||
WHERE
|
||||
tbl_projektarbeit.prestudent_id=".$db->db_add_param($student->prestudent_id, FHC_INTEGER)." AND
|
||||
tbl_projektarbeit.prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)." AND
|
||||
vw_benutzer.uid=".$db->db_add_param($getuid).";";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
@@ -90,8 +91,6 @@ $htmlstr1 = '';
|
||||
$vorname='';
|
||||
$nachname='';
|
||||
|
||||
if(!$student = new student($uid)) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
$sql_query = "SELECT (SELECT nachname FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS bnachname,
|
||||
(SELECT vorname FROM public.tbl_person WHERE person_id=tbl_projektbetreuer.person_id) AS bvorname,
|
||||
@@ -109,7 +108,7 @@ $sql_query = "SELECT (SELECT nachname FROM public.tbl_person WHERE person_id=tb
|
||||
LEFT JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz)
|
||||
WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom')
|
||||
AND (tbl_projektbetreuer.betreuerart_kurzbz='Betreuer' OR tbl_projektbetreuer.betreuerart_kurzbz='Begutachter' OR tbl_projektbetreuer.betreuerart_kurzbz='Erstbetreuer' OR tbl_projektbetreuer.betreuerart_kurzbz='Erstbegutachter')
|
||||
AND tbl_projektarbeit.prestudent_id=".$db->db_add_param($student->prestudent_id, FHC_INTEGER)."
|
||||
AND tbl_projektarbeit.prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
AND public.tbl_benutzer.aktiv
|
||||
AND lehre.tbl_projektarbeit.note IS NULL
|
||||
ORDER BY studiensemester_kurzbz desc, tbl_lehrveranstaltung.kurzbz";
|
||||
|
||||
@@ -114,20 +114,19 @@ if(!$rechte->isBerechtigt('admin',0) &&
|
||||
}
|
||||
}
|
||||
|
||||
function savenote($db,$lvid, $student_uid, $note, $punkte=null)
|
||||
function savenote($db,$lvid, $prestudent_id, $note, $punkte=null)
|
||||
{
|
||||
global $stsem, $user, $p, $noten_anmerkung;
|
||||
$jetzt = date("Y-m-d H:i:s");
|
||||
$punkte = str_replace(',','.',$punkte);
|
||||
//Ermitteln ob der Student diesem Kurs zugeteilt ist
|
||||
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE uid=".$db->db_add_param($student_uid)." AND lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
|
||||
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)." AND lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$student = new student();// TODO EINE
|
||||
$student->load($student_uid);
|
||||
return $p->t('benotungstool/studentIstLvNichtZugeordnet', array($student->nachname, $student->vorname, trim($student->matrikelnr)))."\n";
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
return $p->t('benotungstool/studentIstLvNichtZugeordnet', array($prestudent->nachname, $prestudent->vorname, trim($prestudent->perskz)))."\n";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -156,13 +155,11 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
|
||||
}
|
||||
|
||||
|
||||
$student = new student();
|
||||
$student->load($student_uid); // TODO EINE
|
||||
|
||||
$lvgesamtnote = new lvgesamtnote();
|
||||
if (!$lvgesamtnote->load($lvid, $student->prestudent_id, $stsem))
|
||||
if (!$lvgesamtnote->load($lvid, $prestudent_id, $stsem))
|
||||
{
|
||||
$lvgesamtnote->prestudent_id = $student->prestudent_id;
|
||||
$lvgesamtnote->prestudent_id = $prestudent_id;
|
||||
$lvgesamtnote->lehrveranstaltung_id = $lvid;
|
||||
$lvgesamtnote->studiensemester_kurzbz = $stsem;
|
||||
$lvgesamtnote->note = trim($note);
|
||||
@@ -202,13 +199,13 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
|
||||
if (isset($_REQUEST["submit"]))
|
||||
{
|
||||
$lvid = $_REQUEST["lvid"];
|
||||
if(isset($_REQUEST["student_uid"]) && $_REQUEST["student_uid"] != '')
|
||||
if(isset($_REQUEST["prestudent_id"]) && is_numeric($_REQUEST["prestudent_id"]))
|
||||
{
|
||||
$student_uid = $_REQUEST["student_uid"];
|
||||
$prestudent_id = $_REQUEST["prestudent_id"];
|
||||
$note = $_REQUEST["note"];
|
||||
$punkte = (isset($_REQUEST["punkte"])?$_REQUEST["punkte"]:'');
|
||||
|
||||
$response = savenote($db,$lvid, $student_uid, $note, $punkte);
|
||||
$response = savenote($db,$lvid, $prestudent_id, $note, $punkte);
|
||||
echo $response;
|
||||
}
|
||||
else
|
||||
@@ -235,8 +232,7 @@ if (isset($_REQUEST["submit"]))
|
||||
}
|
||||
$punkte=str_replace(',','.', $punkte);
|
||||
//UID ermitteln
|
||||
$student = new student();// TODO EINE? auf prestudent ändern?
|
||||
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer))
|
||||
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer)) // TODO EINE! hier brauchen wir für savenote eine prestudent_id!
|
||||
{
|
||||
$response.="\n".$p->t('benotungstool/studentMitMatrikelnummerExistiertNicht',array($matrikelnummer));
|
||||
continue;
|
||||
@@ -244,8 +240,7 @@ if (isset($_REQUEST["submit"]))
|
||||
|
||||
// Hole Zeugnisnote wenn schon eine eingetragen ist
|
||||
/*
|
||||
$student = new student($student_uid);// TODO EINE ändern?
|
||||
if ($zeugnisnote = new zeugnisnote($lvid, $student->prestudent_id, $stsem))
|
||||
if ($zeugnisnote = new zeugnisnote($lvid, $prestudent_id, $stsem))
|
||||
$znote = $zeugnisnote->note;
|
||||
else
|
||||
$znote = null;
|
||||
|
||||
@@ -325,13 +325,13 @@ foreach($noten_obj->result as $row)
|
||||
document.nachpruefung_form.note.value = "9";
|
||||
note = "9";
|
||||
}
|
||||
var uid = document.nachpruefung_form.uid.value;
|
||||
var prestudent_id = document.nachpruefung_form.prestudent_id.value;
|
||||
var lehreinheit_id = document.nachpruefung_form.le_id.value;
|
||||
|
||||
alert(prestudent_id + " TODO EINE pachpruefungeintragen.php");
|
||||
var jetzt = new Date();
|
||||
var ts = jetzt.getTime();
|
||||
var url= '<?php echo "nachpruefungeintragen.php?lvid=$lvid&stsem=$stsem"; ?>';
|
||||
url += '&submit=1&student_uid='+uid+'¬e='+note+'&datum='+datum+'&lehreinheit_id_pr='+lehreinheit_id+'&punkte='+punkte+'&typ='+typ+'&'+ts;
|
||||
url += '&submit=1&prestudent_id='+prestudent_id+'¬e='+note+'&datum='+datum+'&lehreinheit_id_pr='+lehreinheit_id+'&punkte='+punkte+'&typ='+typ+'&'+ts;
|
||||
|
||||
$.ajax({
|
||||
type:"GET",
|
||||
|
||||
@@ -40,7 +40,6 @@ require_once('../../../../include/pruefung.class.php');
|
||||
require_once('../../../../include/mail.class.php');
|
||||
require_once('../../../../include/benutzerfunktion.class.php');
|
||||
require_once('../../../../include/benutzer.class.php');
|
||||
require_once('../../../../include/student.class.php');
|
||||
require_once('../../../../include/notenschluessel.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
@@ -88,14 +87,14 @@ else
|
||||
$stsem = '';
|
||||
|
||||
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
|
||||
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
|
||||
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:'');
|
||||
|
||||
//Studiensemester laden
|
||||
$stsem_obj = new studiensemester();
|
||||
if($stsem=='')
|
||||
$stsem = $stsem_obj->getaktorNext();
|
||||
|
||||
$student_uid = $_REQUEST["student_uid"];
|
||||
$prestudent_id = $_REQUEST["prestudent_id"];
|
||||
|
||||
$note = $_REQUEST["note"];
|
||||
if(isset($_REQUEST['punkte']))
|
||||
@@ -135,7 +134,7 @@ if($note=='')
|
||||
$old_note = $note;
|
||||
|
||||
// lvgesamtnote für studenten speichern
|
||||
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
if (isset($_REQUEST["submit"]) && (is_numeric($_REQUEST["prestudent_id"])) )
|
||||
{
|
||||
// Die Pruefung muss einer Lehreinheit zugeordnet werden
|
||||
// deshalb wird hier versucht eine passende Lehreinheit zu ermitteln.
|
||||
@@ -143,11 +142,11 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN campus.vw_student using(uid)
|
||||
JOIN campus.vw_student using(prestudent_id)
|
||||
WHERE
|
||||
studiensemester_kurzbz = ".$db->db_add_param($stsem)."
|
||||
AND lehrveranstaltung_id = ".$db->db_add_param($lvid, FHC_INTEGER)."
|
||||
AND uid=".$db->db_add_param($student_uid)."
|
||||
AND prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
ORDER BY lehrform_kurzbz DESC";
|
||||
|
||||
if($result_stud = $db->db_query($qry_stud))
|
||||
@@ -166,18 +165,16 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
|
||||
$pr = new Pruefung();
|
||||
|
||||
$student = new student($student_uid);//TODO EINE
|
||||
// Wenn eine Pruefung angelegt wird, wird zuerst eine Pruefung mit 1. Termin angelegt
|
||||
// und dort die Zeugnisnote gespeichert
|
||||
if($pr->getPruefungen($student->prestudent_id, "Termin1", $lvid, $stsem))
|
||||
if($pr->getPruefungen($prestudent_id, "Termin1", $lvid, $stsem))
|
||||
{
|
||||
if ($pr->result)
|
||||
$termin1 = 1;
|
||||
else
|
||||
{
|
||||
$student = new student($student_uid); // TODO EINE
|
||||
$lvnote = new lvgesamtnote();
|
||||
if ($lvnote->load($lvid, $student->prestudent_id, $stsem))
|
||||
if ($lvnote->load($lvid, $prestudent_id, $stsem))
|
||||
{
|
||||
$pr_note = $lvnote->note;
|
||||
$pr_punkte = $lvnote->punkte;
|
||||
@@ -191,7 +188,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
|
||||
$pr_1 = new Pruefung();
|
||||
$pr_1->lehreinheit_id = $lehreinheit_id;
|
||||
$pr_1->student_uid = $student_uid;
|
||||
$pr_1->prestudent_id = $prestudent_id;
|
||||
$pr_1->mitarbeiter_uid = $user;
|
||||
$pr_1->note = $pr_note;
|
||||
$pr_1->punkte = $pr_punkte;
|
||||
@@ -212,9 +209,8 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
$prTermin2 = new Pruefung();
|
||||
$pr_2 = new Pruefung();
|
||||
|
||||
$student = new student($student_uid);//TODO EINE
|
||||
// Die Pruefung wird als Termin2 eingetragen
|
||||
if ($prTermin2->getPruefungen($student->prestudent_id, $typ, $lvid, $stsem))
|
||||
if ($prTermin2->getPruefungen($prestudent_id, $typ, $lvid, $stsem))
|
||||
{
|
||||
if ($prTermin2->result)
|
||||
{
|
||||
@@ -231,7 +227,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
else
|
||||
{
|
||||
$pr_2->lehreinheit_id = $lehreinheit_id;
|
||||
$pr_2->student_uid = $student_uid;
|
||||
$pr_2->prestudent_id = $prestudent_id;
|
||||
$pr_2->mitarbeiter_uid = $user;
|
||||
$pr_2->note = $note;
|
||||
$pr_2->punkte = $punkte;
|
||||
@@ -255,9 +251,8 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
|
||||
$lvid = $_REQUEST["lvid"];
|
||||
|
||||
$student = new student($student_uid);// TODO EINE
|
||||
$lvgesamtnote = new lvgesamtnote();
|
||||
if (!$lvgesamtnote->load($lvid, $student->prestudent_id, $stsem))
|
||||
if (!$lvgesamtnote->load($lvid, $prestudent_id, $stsem))
|
||||
{
|
||||
$lvgesamtnote->prestudent_id = $prestudent_id;
|
||||
$lvgesamtnote->lehrveranstaltung_id = $lvid;
|
||||
|
||||
@@ -17,8 +17,9 @@
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at>.
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
@@ -36,7 +37,7 @@ if (!$db = new basis_db())
|
||||
|
||||
$uid=get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
if(isset($_GET['uid'])) // TODO EINE get_uid / _GET['uid'] für studienerfolg.rdf.php wird die prestudent_id benötigt!
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Studienerfolgsbestätigung
|
||||
// von anderen Personen anzuzeigen
|
||||
@@ -111,4 +112,4 @@ if($result = $db->db_query($qry))
|
||||
echo '
|
||||
</body>
|
||||
</html>';
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -34,7 +34,6 @@ require_once('../../../include/lvregel.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
require_once('../../../include/student.class.php');
|
||||
require_once('../../../include/zeugnisnote.class.php');
|
||||
require_once('../../../include/lvangebot.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
@@ -47,8 +46,9 @@ require_once('../../../include/lvinfo.class.php');
|
||||
require_once('../../../include/addon.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
// TODO EINE get_uid auf get_prestudent_id!?!
|
||||
// TODO EINE strg + f "uid" im ganzen skript!
|
||||
if(isset($_GET['$prestudent']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um den Studienplan
|
||||
// von anderen Personen anzuzeigen
|
||||
@@ -105,8 +105,7 @@ if(isset($_GET['getAnmeldung']))
|
||||
//Pruefen ob genug Credit Points zur Verfuegung stehen zur Anmeldung
|
||||
|
||||
$konto = new konto();
|
||||
$student = new student($uid); // TODO EINE
|
||||
$cp = $konto->getCreditPoints($student->prestudent_id, $stsem);
|
||||
$cp = $konto->getCreditPoints($prestudent_id, $stsem);
|
||||
if($cp===false || $cp>=$lv->ects)
|
||||
echo '<br><input type="radio" value="'.$lvid.'" name="lv"/>'.$lv->bezeichnung.' (Anmeldung bis '.$datum->formatDatum($angebot->anmeldefenster_ende,"d.m.Y").')';
|
||||
else
|
||||
@@ -205,8 +204,7 @@ if(isset($_POST['action']) && $_POST['action']=='anmeldung')
|
||||
|
||||
// Pruefen ob genug CP zur Verfuegung stehen falls diese reduziert sind
|
||||
$konto = new konto();
|
||||
$student = new student($uid); // TODO EINE
|
||||
$cp = $konto->getCreditPoints($student->prestudent_id, $stsem);
|
||||
$cp = $konto->getCreditPoints($prestudent_id, $stsem);
|
||||
if($cp===false || $cp>=$lv->ects)
|
||||
{
|
||||
$bngruppe->uid = $uid;
|
||||
@@ -238,18 +236,15 @@ if(isset($_POST['action']) && $_POST['action']=='anmeldung')
|
||||
$db = new basis_db();
|
||||
$datum_obj = new datum();
|
||||
// Student Laden
|
||||
$student = new student(); // TODO EINE
|
||||
$student->load($uid);
|
||||
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
// ersten Status holen
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getFirstStatus($student->prestudent_id, 'Student');
|
||||
$prestudent->getFirstStatus($prestudent_id, 'Student');
|
||||
|
||||
$studiensemester_start = $prestudent->studiensemester_kurzbz;
|
||||
$ausbildungssemester_start = $prestudent->ausbildungssemester;
|
||||
$orgform_kurzbz = $prestudent->orgform_kurzbz;
|
||||
|
||||
$prestudent->getLastStatus($student->prestudent_id, 'Student');
|
||||
$prestudent->getLastStatus($prestudent_id, 'Student');
|
||||
$studienplan_id = $prestudent->studienplan_id;
|
||||
|
||||
$studienplan = new studienplan();
|
||||
@@ -304,7 +299,7 @@ if(!in_array($stsemToShow,$stsem_arr))
|
||||
// Noten des Studierenden holen
|
||||
$noten_arr=array();
|
||||
$zeugnisnote = new zeugnisnote();
|
||||
if($zeugnisnote->getZeugnisnoten('',$student->prestudent_id,''))
|
||||
if($zeugnisnote->getZeugnisnoten('',$prestudent_id,''))
|
||||
{
|
||||
foreach($zeugnisnote->result as $row_note)
|
||||
{
|
||||
@@ -333,7 +328,7 @@ $lv->loadLehrveranstaltungStudienplan($studienplan_id);
|
||||
foreach($lv->lehrveranstaltungen as $row_lva)
|
||||
$lv_arr[$row_lva->lehrveranstaltung_id]=$row_lva;
|
||||
|
||||
echo '<h1>'.$p->t('studienplan/studienplan').": $studienplan->bezeichnung ($studienplan_id) - $student->vorname $student->nachname ( $student->uid )</h1>";
|
||||
echo '<h1>'.$p->t('studienplan/studienplan').": $studienplan->bezeichnung ($studienplan_id) - $prestudent->vorname $prestudent->nachname ( $prestudent->uid )</h1>";
|
||||
|
||||
echo '<table style="border: 1px solid black">
|
||||
<thead>
|
||||
@@ -352,8 +347,7 @@ foreach($stsem_arr as $stsem)
|
||||
|
||||
echo $stsem;
|
||||
$konto = new konto();
|
||||
$student = new student($uid); // TODO EINE
|
||||
$cp = $konto->getCreditPoints($student->prestudent_id, $stsem);
|
||||
$cp = $konto->getCreditPoints($prestudent_id, $stsem);
|
||||
if($cp!==false)
|
||||
echo '<span title="'.$p->t('studienplan/reduzierteCP',array($cp)).'" ><br><img src="../../../skin/images/information.png" alt="Information"/></span>';
|
||||
echo '</th>';
|
||||
@@ -415,8 +409,7 @@ function drawTree($tree, $depth)
|
||||
$lvregel = new lvregel();
|
||||
if($lvregel->exists($row_tree->studienplan_lehrveranstaltung_id))
|
||||
{
|
||||
$student = new student($uid); // TODO EINE
|
||||
if($lvregel->isAbgeschlossen($student->prestudent_id, $row_tree->studienplan_lehrveranstaltung_id))
|
||||
if($lvregel->isAbgeschlossen($prestudent_id, $row_tree->studienplan_lehrveranstaltung_id))
|
||||
$abgeschlossen=true;
|
||||
else
|
||||
$abgeschlossen=false;
|
||||
@@ -579,8 +572,7 @@ function drawTree($tree, $depth)
|
||||
}
|
||||
else
|
||||
{
|
||||
$student = new student($uid);// TODO EINE
|
||||
if(!$lvregel->isZugangsberechtigt($student->prestudent_id, $row_tree->studienplan_lehrveranstaltung_id, $stsem))
|
||||
if(!$lvregel->isZugangsberechtigt($prestudent_id, $row_tree->studienplan_lehrveranstaltung_id, $stsem))
|
||||
{
|
||||
$regelerfuellt=false;
|
||||
}
|
||||
@@ -600,7 +592,7 @@ function drawTree($tree, $depth)
|
||||
{
|
||||
// Pruefen ob bereits angemeldet
|
||||
$bngruppe = new benutzergruppe();
|
||||
if($bngruppe->load($uid, $angebot->gruppe_kurzbz, $stsem))
|
||||
if($bngruppe->load($prestudent->uid, $angebot->gruppe_kurzbz, $stsem)) // TODO EINE gibts hier überhaupt einen prestudenten?
|
||||
{
|
||||
// Bereits angemeldet
|
||||
$angemeldet=true;
|
||||
|
||||
@@ -31,7 +31,7 @@ function loadanwesenheit(prestudent_id,lehrveranstaltung_id)
|
||||
|
||||
//anwesenheit laden
|
||||
url = "<?php echo APP_ROOT; ?>rdf/anwesenheit.rdf.php?ts="+gettimestamp();
|
||||
alert(prestudent_id); // TODO EINE
|
||||
|
||||
if(parseInt(prestudent_id) !== false)
|
||||
url=url+"&prestudent_id="+prestudent_id;
|
||||
if(lehrveranstaltung_id!='')
|
||||
|
||||
@@ -1838,7 +1838,7 @@ function LehrveranstaltungNotenAuswahl()
|
||||
var prestudent_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-studiensemester_kurzbz"] : "lehrveranstaltung-noten-tree-studiensemester_kurzbz";
|
||||
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
|
||||
alert(prestudent_id + " LVOVERLAY.JS");//TODO EINE (testen, ob prestudent_id eingetragen ist!)
|
||||
|
||||
//Daten holen
|
||||
var url = '<?php echo APP_ROOT ?>rdf/zeugnisnote.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+'&prestudent_id='+prestudent_id+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&'+gettimestamp();
|
||||
|
||||
@@ -2001,8 +2001,8 @@ function LehrveranstaltungFFZertifikatPrint(event)
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-prestudent_id"] : "lehrveranstaltung-noten-tree-prestudent_id";
|
||||
uid = tree.view.getCellText(v,col);
|
||||
paramList += ';'+uid;
|
||||
prestudent_id = tree.view.getCellText(v,col);
|
||||
paramList += ';'+prestudent_id;
|
||||
anzahl = anzahl+1;
|
||||
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-lehrveranstaltung_id"] : "lehrveranstaltung-noten-tree-lehrveranstaltung_id";
|
||||
lvid = tree.view.getCellText(v,col);
|
||||
@@ -2019,7 +2019,7 @@ function LehrveranstaltungFFZertifikatPrint(event)
|
||||
else
|
||||
var output='pdf';
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&stg_kz='+stg_kz+'&uid='+paramList+'&output='+output+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&stg_kz='+stg_kz+'&prestudent_id='+paramList+'&output='+output+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||
window.location.href = url;
|
||||
//prompt('test:',url);
|
||||
}
|
||||
|
||||
@@ -313,6 +313,7 @@ if(!$error)
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$prestudent->prestudent_id = $_POST['prestudent_id'];
|
||||
$prestudent->uid = $_POST['uid'];
|
||||
$prestudent->perskz = $_POST['perskz'];
|
||||
$prestudent->updateamum = date('Y-m-d H:i:s');
|
||||
@@ -399,14 +400,13 @@ if(!$error)
|
||||
|
||||
if(count($prestudentobj->result)>0)
|
||||
{
|
||||
$tmpStudent = new student($_POST['uid']); // TODO EINE
|
||||
|
||||
if($student_lvb->studentlehrverband_exists($tmpStudent->prestudent_id, $semester_aktuell))
|
||||
if($student_lvb->studentlehrverband_exists($_POST['prestudent_id'], $semester_aktuell))
|
||||
$student_lvb->new = false;
|
||||
else
|
||||
$student_lvb->new = true;
|
||||
|
||||
$student_lvb->uid = $_POST['uid'];
|
||||
$student_lvb->uid = $_POST['uid']; // TODO EINE
|
||||
$student_lvb->studiensemester_kurzbz = $semester_aktuell;
|
||||
$student_lvb->studiengang_kz = $_POST['studiengang_kz'];
|
||||
$student_lvb->semester = $_POST['semester'];
|
||||
@@ -808,11 +808,10 @@ if(!$error)
|
||||
//Unterbrecher und Abbrecher werden ins 0. Semester verschoben
|
||||
if($_POST['status_kurzbz']=='Unterbrecher' || $_POST['status_kurzbz']=='Abbrecher')
|
||||
{
|
||||
$student = new student();
|
||||
$uid = $student->getUid($prestudent_id);
|
||||
$student->load($uid);
|
||||
$student->studiensemester_kurzbz=$studiensemester;
|
||||
$student->semester = '0';
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
|
||||
$prestudent->studiensemester_kurzbz=$studiensemester;
|
||||
$student->semester = '0';// TODO EINE
|
||||
if($_POST['status_kurzbz']=='Abbrecher')
|
||||
{
|
||||
$student->verband='A';
|
||||
@@ -838,7 +837,7 @@ if(!$error)
|
||||
|
||||
//Nachschauen ob dieser Lehrverband schon existiert, falls nicht dann anlegen
|
||||
$lehrverband = new lehrverband();
|
||||
if(!$lehrverband->exists($student->studiengang_kz, $student->semester, $student->verband, ''))
|
||||
if(!$lehrverband->exists($prestudent->studiengang_kz, $student->semester, $student->verband, ''))
|
||||
{
|
||||
//Pruefen ob der uebergeordnete Lehrverband existiert, falls nicht dann anlegen
|
||||
if(!$lehrverband->exists($student->studiengang_kz, $student->semester, '', ''))
|
||||
@@ -877,15 +876,14 @@ if(!$error)
|
||||
//Verband und Gruppe wird entfernt.
|
||||
if($_POST['status_kurzbz']=='Student')
|
||||
{
|
||||
$student = new student();
|
||||
$uid = $student->getUid($prestudent_id);//TODO EINE
|
||||
$student->load($uid);
|
||||
$student->studiensemester_kurzbz=$semester_aktuell;
|
||||
$student->semester = $_POST['semester'];
|
||||
$student->verband = '';
|
||||
$student->gruppe = '';
|
||||
$student->save(false, false);
|
||||
$student->save_studentlehrverband(false);
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
|
||||
$prestudent->studiensemester_kurzbz=$semester_aktuell; // TODO EINE
|
||||
$prestudent->semester = $_POST['semester'];
|
||||
$prestudent->verband = '';
|
||||
$prestudent->gruppe = '';
|
||||
$prestudent->save(false, false);
|
||||
$prestudent->save_studentlehrverband(false);
|
||||
//Aktiv Status setzen
|
||||
$benutzer = new benutzer();
|
||||
if($benutzer->load($uid))
|
||||
@@ -900,11 +898,10 @@ if(!$error)
|
||||
//bei Abbrechern und Absolventen wird der Aktiv Status auf false gesetzt
|
||||
if($_POST['status_kurzbz']=='Abbrecher' || $_POST['status_kurzbz']=='Absolvent')
|
||||
{
|
||||
$student = new student();
|
||||
$uid = $student->getUid($prestudent_id);//TODO EINE
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
|
||||
$benutzer = new benutzer();
|
||||
if($benutzer->load($uid))
|
||||
if($benutzer->load($prestudent_uid))
|
||||
{
|
||||
$benutzer->updateamum = date('Y-m-d H:i:s');
|
||||
$benutzer->updatevon = $user;
|
||||
@@ -1149,28 +1146,28 @@ if(!$error)
|
||||
$stdsem_new = filter_input(INPUT_POST, "studiensemester_kurzbz");
|
||||
$semester = filter_input(INPUT_POST, "ausbildungssemester");
|
||||
|
||||
$prestudent_temp = new prestudent();
|
||||
$prestudent_temp->getLastStatus($rolle->prestudent_id, "", "Student");
|
||||
if($student->load_studentlehrverband($rolle->prestudent_id, $prestudent_temp->studiensemester_kurzbz))
|
||||
$student->new=false;
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
$prestudent->getLastStatus($rolle->prestudent_id, "", "Student");
|
||||
if($prestudent->load_studentlehrverband($prestudent->studiensemester_kurzbz))
|
||||
$prestudent->new=false;
|
||||
else
|
||||
$student->new=true;
|
||||
$prestudent->new=true;
|
||||
|
||||
$lehrverband = new lehrverband();
|
||||
if(!$lehrverband->exists($student->studiengang_kz, $semester, $student->verband, $student->gruppe))
|
||||
if(!$lehrverband->exists($prestudent->studiengang_kz, $semester, $prestudent->verband, $prestudent->gruppe))
|
||||
{
|
||||
$student->studiensemester_kurzbz = $stdsem_new;
|
||||
$prestudent->studiensemester_kurzbz = $stdsem_new;
|
||||
$return = false;
|
||||
$errormsg = $student->errormsg;
|
||||
}
|
||||
else
|
||||
{
|
||||
$student->studiensemester_kurzbz = $stdsem_new;
|
||||
$student->semester = $semester;
|
||||
$student->updatevon = $user;
|
||||
$prestudent->studiensemester_kurzbz = $stdsem_new;
|
||||
$prestudent->semester = $semester;
|
||||
$prestudent->updatevon = $user;
|
||||
}
|
||||
|
||||
$student->save_studentlehrverband();
|
||||
$prestudent->save_studentlehrverband();// TODO EINE
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1272,26 +1269,25 @@ if(!$error)
|
||||
$return = false;
|
||||
}
|
||||
|
||||
$student = new student();
|
||||
$temp_uid = $student->getUid($rolle->prestudent_id);
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$student->load_studentlehrverband($rolle->prestudent_id, $_POST["studiensemester_kurzbz"]);
|
||||
$prestudent->load_studentlehrverband($rolle->prestudent_id, $_POST["studiensemester_kurzbz"]);
|
||||
$lehrverband = new lehrverband();
|
||||
if(!$lehrverband->exists($student->studiengang_kz, $semester, $student->verband, $student->gruppe))
|
||||
if(!$lehrverband->exists($prestudent->studiengang_kz, $semester, $prestudent->verband, $prestudent->gruppe))
|
||||
{
|
||||
$student->studiensemester_kurzbz = $stdsem;
|
||||
$prestudent->studiensemester_kurzbz = $stdsem;
|
||||
$return = false;
|
||||
$errormsg = $student->errormsg;
|
||||
$errormsg = $prestudent->errormsg;
|
||||
}
|
||||
else
|
||||
{
|
||||
$student->studiensemester_kurzbz = $stdsem;
|
||||
$student->semester = $semester;
|
||||
$prestudent->studiensemester_kurzbz = $stdsem;
|
||||
$prestudent->semester = $semester;
|
||||
}
|
||||
|
||||
$student->save_studentlehrverband(true);
|
||||
$prestudent->save_studentlehrverband(true); // TODO EINE gibts beim prestudenten nicht!
|
||||
$rolle->ausbildungssemester = $semester;
|
||||
$rolle->studiensemester_kurzbz = $stdsem;
|
||||
$rolle->datum = date("Y-m-d");
|
||||
@@ -1604,7 +1600,7 @@ if(!$error)
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='gruppenzuteilung')
|
||||
{
|
||||
if(isset($_POST['uid']) && isset($_POST['gruppe_kurzbz']))
|
||||
if(isset($_POST['prestudent_id']) && isset($_POST['gruppe_kurzbz']))
|
||||
{
|
||||
$gruppe = new gruppe();
|
||||
if(!$gruppe->load($_POST['gruppe_kurzbz']))
|
||||
@@ -1624,19 +1620,20 @@ if(!$error)
|
||||
}
|
||||
$benutzergruppe = new benutzergruppe();
|
||||
|
||||
$uids = explode(';',$_POST['uid']);
|
||||
$prestudent_ids = explode(';',$_POST['prestudent_id']);
|
||||
$errormsg = '';
|
||||
foreach ($uids as $uid)
|
||||
foreach ($prestudent_ids as $prestudent_id)
|
||||
{
|
||||
if($uid!='')
|
||||
if(is_numeric($prestudent_id))
|
||||
{
|
||||
if($_POST['gruppe_kurzbz']!='')
|
||||
{
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
//Zuteilung zu einer Spezialgruppe
|
||||
|
||||
if(!$benutzergruppe->load($uid, $_POST['gruppe_kurzbz']))
|
||||
if(!$benutzergruppe->load($prestudent->uid, $_POST['gruppe_kurzbz']))
|
||||
{
|
||||
$benutzergruppe->uid = $uid;
|
||||
$benutzergruppe->uid = $prestudent->uid;
|
||||
$benutzergruppe->gruppe_kurzbz = $_POST['gruppe_kurzbz'];
|
||||
$benutzergruppe->studiensemester_kurzbz = $semester_aktuell;
|
||||
$benutzergruppe->insertamum = date('Y-m-d H:i:s');
|
||||
@@ -1645,11 +1642,11 @@ if(!$error)
|
||||
|
||||
if(!$benutzergruppe->save())
|
||||
{
|
||||
$errormsg .= "$uid konnte nicht hinzugefuegt werden\n";
|
||||
$errormsg .= "$prestudent->uid($prestudent->prestudent_id) konnte nicht hinzugefuegt werden\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
$errormsg .= "Der Student $uid ist bereits in dieser Gruppe\n";
|
||||
$errormsg .= "Der Student $prestudent->prestudent_id ist bereits in dieser Gruppe\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1673,16 +1670,16 @@ if(!$error)
|
||||
if($semester_aktuell == $stsem_kurzbz)
|
||||
{
|
||||
//Eintrag in der Tabelle Student aendern
|
||||
$student = new student();
|
||||
$prestudent = new prestudent();
|
||||
|
||||
if(!$student->load($uid))
|
||||
if(!$prestudent->load($prestudent_id))
|
||||
{
|
||||
$errormsg .= 'Fehler beim Laden des Studenten';
|
||||
$error = true;
|
||||
$return = false;
|
||||
}
|
||||
|
||||
if($student->studiengang_kz!=$_POST['stg_kz'])
|
||||
if($prestudent->studiengang_kz!=$_POST['stg_kz'])
|
||||
{
|
||||
$errormsg.='Ein Student kann nicht in eine Lehrverbandsgruppe eines anderen Studienganges verschoben werden';
|
||||
$return = false;
|
||||
@@ -1691,13 +1688,13 @@ if(!$error)
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$student->studiengang_kz = $_POST['stg_kz'];
|
||||
$student->semester = $_POST['semester'];
|
||||
$student->verband = ($_POST['verband']==''?' ':$_POST['verband']);
|
||||
$student->gruppe = ($_POST['gruppe']==''?' ':$_POST['gruppe']);
|
||||
$student->new=false;
|
||||
$prestudent->studiengang_kz = $_POST['stg_kz'];
|
||||
$prestudent->semester = $_POST['semester']; // TODO EINE
|
||||
$prestudent->verband = ($_POST['verband']==''?' ':$_POST['verband']);
|
||||
$prestudent->gruppe = ($_POST['gruppe']==''?' ':$_POST['gruppe']);
|
||||
$prestudent->new=false;
|
||||
|
||||
if(!$student->save())
|
||||
if(!$prestudent->save())
|
||||
{
|
||||
$errormsg .= 'Fehler beim Speichern des Studenteneintrages';
|
||||
$return = false;
|
||||
@@ -1709,16 +1706,16 @@ if(!$error)
|
||||
if(!$error)
|
||||
{
|
||||
//Eintrag in der Tabelle Student aendern
|
||||
$student = new student();
|
||||
$prestudent = new student();
|
||||
|
||||
if(!$student->load($uid))
|
||||
if(!$prestudent->load($prestudent_id))
|
||||
{
|
||||
$errormsg .= 'Fehler beim Laden des Studenten';
|
||||
$error = true;
|
||||
$return = false;
|
||||
}
|
||||
|
||||
if($student->studiengang_kz!=$_POST['stg_kz'])
|
||||
if($prestudent->studiengang_kz!=$_POST['stg_kz'])
|
||||
{
|
||||
$errormsg.='Ein Student kann nicht in eine Lehrverbandsgruppe eines anderen Studienganges verschoben werden';
|
||||
$return = false;
|
||||
@@ -1730,7 +1727,7 @@ if(!$error)
|
||||
//Eintrag in der Tabelle Studentlehrverband aendern
|
||||
$student_lvb = new student();
|
||||
|
||||
if($student_lvb->studentlehrverband_exists($student->prestudent_id, $semester_aktuell))
|
||||
if($student_lvb->studentlehrverband_exists($prestudent_id, $semester_aktuell))
|
||||
$student_lvb->new = false;
|
||||
else
|
||||
$student_lvb->new = true;
|
||||
@@ -2508,7 +2505,7 @@ if(!$error)
|
||||
$bmp->ausgegebenam = $_POST['ausgegebenam'];
|
||||
$bmp->retouram = $_POST['retouram'];
|
||||
if($bmp->new)
|
||||
$bmp->uid = $_POST['uid'];
|
||||
$bmp->uid = $_POST['uid']; // TODO EINE prestudent_id?
|
||||
|
||||
if($bmp->save())
|
||||
{
|
||||
|
||||
@@ -401,7 +401,7 @@ function StudentFFZertifikatPrint(event)
|
||||
var tree = document.getElementById('student-noten-tree');
|
||||
|
||||
col = tree.columns ? tree.columns["student-noten-tree-prestudent_id"] : "student-noten-tree-prestudent_id";
|
||||
uid = tree.view.getCellText(tree.currentIndex,col);
|
||||
prestudent_id = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
col = tree.columns ? tree.columns["student-noten-tree-lehrveranstaltung_id"] : "student-noten-tree-lehrveranstaltung_id";
|
||||
lvid = tree.view.getCellText(tree.currentIndex,col);
|
||||
@@ -419,7 +419,7 @@ function StudentFFZertifikatPrint(event)
|
||||
else
|
||||
var output='pdf';
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&stg_kz='+stg_kz+'&uid=;'+uid+'&output='+output+'&ss='+stsem+'&lvid='+lvid+'&'+gettimestamp();
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&stg_kz='+stg_kz+'&prestudent_id=;'+prestudent_id+'&output='+output+'&ss='+stsem+'&lvid='+lvid+'&'+gettimestamp();
|
||||
|
||||
// alert('url: '+url);
|
||||
window.location.href = url;
|
||||
@@ -435,7 +435,7 @@ function StudentLVZeugnisPrint(event)
|
||||
|
||||
col = tree.columns ? tree.columns["student-noten-tree-prestudent_id"] : "student-noten-tree-prestudent_id";
|
||||
prestudent_id = tree.view.getCellText(tree.currentIndex,col);
|
||||
alert(prestudent_id + " studentoverlay(studentlvzeugnisprint)");//TODO EINE
|
||||
|
||||
col = tree.columns ? tree.columns["student-noten-tree-lehrveranstaltung_id"] : "student-noten-tree-lehrveranstaltung_id";
|
||||
lvid = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
@@ -1530,12 +1530,12 @@ function StudentAuswahl()
|
||||
StudentAbschlusspruefungTreeLoad(prestudent_id);
|
||||
}
|
||||
|
||||
if(uid!='')
|
||||
if(parseInt(prestudent_id) !== false)
|
||||
{
|
||||
// ****** Projektarbeit ********* //
|
||||
StudentProjektarbeitDetailDisableFields(true);
|
||||
StudentProjektbetreuerDisableFields(true);
|
||||
StudentProjektarbeitTreeLoad(uid);
|
||||
StudentProjektarbeitTreeLoad(prestudent_id);
|
||||
}
|
||||
|
||||
|
||||
@@ -1565,8 +1565,8 @@ function StudentAuswahl()
|
||||
}
|
||||
|
||||
// ***** Anwesenheit *****
|
||||
if(document.getElementById('student-content-tabs').selectedItem==document.getElementById('student-tab-anwesenheit'))
|
||||
{alert(prestudent_id); // TODO EINE
|
||||
if(document.getElementById('student-content-tabs').selectedItem==document.getElementById('student-tab-anwesenheit')) // TODO EINE: PPPFAAAHH, is des schiach(id gibts nicht, wenn man keine berechtigungen hat!) (in content/student/studentenoverlay.xul.php)
|
||||
{
|
||||
document.getElementById('student-anwesenheit').setAttribute('src','anwesenheit.xul.php?prestudent_id='+prestudent_id);
|
||||
}
|
||||
|
||||
@@ -4091,9 +4091,8 @@ function StudentPruefungNeu()
|
||||
{
|
||||
//Lehrveranstaltung Drop Down laden
|
||||
var LVDropDown = document.getElementById('student-pruefung-menulist-lehrveranstaltung');
|
||||
var uid = document.getElementById('student-detail-textbox-uid').value;
|
||||
var prestudent_id = document.getElementById('student-detail-textbox-prestudent_id').value;
|
||||
url="<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?uid="+uid+"&"+gettimestamp();
|
||||
url="<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?prestudent_id="+prestudent_id+"&"+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = LVDropDown.database.GetDataSources();
|
||||
@@ -4350,9 +4349,8 @@ function StudentPruefungAuswahl()
|
||||
//Lehrveranstaltung Drop Down laden
|
||||
var LVDropDown = document.getElementById('student-pruefung-menulist-lehrveranstaltung');
|
||||
//url='<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?stg_kz='+stg_kz+"&"+gettimestamp();
|
||||
var uid = document.getElementById('student-detail-textbox-uid').value;
|
||||
var prestudent_id = document.getElementById('student-detail-textbox-prestudent_id').value;
|
||||
url="<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?uid="+uid+"&"+gettimestamp();
|
||||
url="<?php echo APP_ROOT;?>rdf/lehrveranstaltung.rdf.php?prestudent_id="+prestudent_id+"&"+gettimestamp();
|
||||
|
||||
|
||||
//Alte DS entfernen
|
||||
@@ -5152,9 +5150,9 @@ function StudentCreateDiplSupplement(event)
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
paramList += ';'+uid;
|
||||
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
|
||||
var prestudent_id=tree.view.getCellText(v,col);
|
||||
paramList += ';'+prestudent_id;
|
||||
stg_kz=getTreeCellText(tree,"student-treecol-studiengang_kz", v);
|
||||
}
|
||||
}
|
||||
@@ -5166,7 +5164,7 @@ function StudentCreateDiplSupplement(event)
|
||||
}
|
||||
if (event.shiftKey)
|
||||
{
|
||||
var output='odt';
|
||||
var output='odt';
|
||||
}
|
||||
else if (event.ctrlKey)
|
||||
{
|
||||
@@ -5177,7 +5175,7 @@ function StudentCreateDiplSupplement(event)
|
||||
var output='pdf';
|
||||
}
|
||||
//PDF erzeugen
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=diplomasupplement.xml.php&output='+output+'&xsl=DiplSupplement&xsl_stg_kz='+stg_kz+'&uid='+paramList,'DiplomaSupplement', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=diplomasupplement.xml.php&output='+output+'&xsl=DiplSupplement&xsl_stg_kz='+stg_kz+'&prestudent_id='+paramList,'DiplomaSupplement', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -5203,11 +5201,11 @@ function StudentDiplomasupplementArchivieren()
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
var col = tree.columns ? tree.columns["student-treecol-prestudent_id"] : "student-treecol-prestudent_id";
|
||||
var prestudent_id=tree.view.getCellText(v,col);
|
||||
stg_kz=getTreeCellText(tree,"student-treecol-studiengang_kz", v);
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=diplomasupplement.xml.php&output=pdf&xsl=DiplSupplement&xsl_stg_kz='+stg_kz+'&uid='+uid+'&archive=true';
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=diplomasupplement.xml.php&output=pdf&xsl=DiplSupplement&xsl_stg_kz='+stg_kz+'&prestudent_id='+prestudent_id+'&archive=true';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
var response = req.execute();
|
||||
@@ -5335,12 +5333,12 @@ function StudentCreateStudienerfolg(event, xsl, finanzamt, studiensemester, all)
|
||||
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
|
||||
var uid=tree.view.getCellText(v,col);
|
||||
paramList += ';'+uid;
|
||||
var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-prestudent_id";
|
||||
var prestudent_id=tree.view.getCellText(v,col);
|
||||
paramList += ';'+prestudent_id;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5363,7 +5361,7 @@ function StudentCreateStudienerfolg(event, xsl, finanzamt, studiensemester, all)
|
||||
|
||||
if (event.shiftKey)
|
||||
{
|
||||
var output='odt';
|
||||
var output='odt';
|
||||
}
|
||||
else if (event.ctrlKey)
|
||||
{
|
||||
@@ -5375,7 +5373,7 @@ function StudentCreateStudienerfolg(event, xsl, finanzamt, studiensemester, all)
|
||||
}
|
||||
|
||||
//PDF erzeugen
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=studienerfolg.rdf.php&xsl='+xsl+'&uid='+paramList+'&ss='+studiensemester+'&typ='+finanzamt+all+'&output='+output,'DiplomaSupplement', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=studienerfolg.rdf.php&xsl='+xsl+'&prestudent_id='+paramList+'&ss='+studiensemester+'&typ='+finanzamt+all+'&output='+output,'DiplomaSupplement', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
|
||||
}
|
||||
|
||||
// ************* FUNKTIONEN ***************** //
|
||||
@@ -5419,7 +5417,7 @@ function StudentAnwesenheitIFrameLoad()
|
||||
var uid = document.getElementById('student-detail-textbox-uid').value;
|
||||
var prestudent_id = document.getElementById('student-detail-textbox-prestudent_id').value;
|
||||
if(parseInt(prestudent_id) !== false)
|
||||
{alert(prestudent_id); // TODO EINE
|
||||
{
|
||||
url = 'anwesenheit.xul.php?prestudent_id='+prestudent_id+'&ts='+gettimestamp();
|
||||
document.getElementById('student-anwesenheit').setAttribute('src',url);
|
||||
}
|
||||
|
||||
@@ -121,10 +121,10 @@ var StudentProjektbetreuerTreeListener =
|
||||
// ****
|
||||
// * Laedt die Daten fuer den Projektarbeiten Tree
|
||||
// ****
|
||||
function StudentProjektarbeitTreeLoad(uid)
|
||||
function StudentProjektarbeitTreeLoad(prestudent_id)
|
||||
{
|
||||
var tree = document.getElementById('student-projektarbeit-tree');
|
||||
var url='<?php echo APP_ROOT;?>rdf/projektarbeit.rdf.php?student_uid='+uid+"&"+gettimestamp();
|
||||
var url='<?php echo APP_ROOT;?>rdf/projektarbeit.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp();
|
||||
|
||||
//Alte Observer entfernen
|
||||
try
|
||||
|
||||
@@ -1,484 +1,485 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
?>
|
||||
|
||||
<overlay id="StudentProjektarbeitOverlay"
|
||||
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/studentprojektarbeit.js.php" />
|
||||
|
||||
<!-- Projektarbeit DETAILS -->
|
||||
<vbox id="student-projektarbeit" style="overflow:auto;" flex="1">
|
||||
<popupset>
|
||||
<menupopup id="student-projektarbeit-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="StudentProjektarbeitLoeschen();" id="student-projektarbeit-tree-popup-delete" hidden="false"/>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
|
||||
<hbox>
|
||||
<tree id="student-projektarbeit-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/projektarbeit/liste"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
context="student-projektarbeit-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
|
||||
<treecols>
|
||||
<treecol id="student-projektarbeit-tree-projekttyp_kurzbz" label="Typ" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#bezeichnung"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-studiensemester" label="Studiensemester" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_stsem"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-titel" label="Titel" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#titel"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-note" label="Gesamtnote" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#note" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-beginn" label="Beginn" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#beginn" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-ende" label="Ende" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#ende" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-freigegeben" label="Freigegeben" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#freigegeben" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-gesperrtbis" label="Gesperrt bis" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#gesperrtbis" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-themenbereich" label="Themenbereich" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#themenbereich" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-anmerkung" label="Anmerkung" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#anmerkung" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-projektarbeit_id" label="ProjektarbeitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#projektarbeit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-lehreinheit_id" label="LehreinheitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-student_uid" label="StudentUID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#student_uid" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-firma_id" label="FirmaID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#firma_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_stsem"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#titel"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#note"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#beginn"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#ende"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#freigegeben"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#gesperrtbis"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#themenbereich"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#anmerkung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#projektarbeit_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#student_uid"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#firma_id"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<button id="student-projektarbeit-button-neu" label="Neu" oncommand="StudentProjektarbeitNeu();" disabled="true"/>
|
||||
<button id="student-projektarbeit-button-loeschen" label="Loeschen" oncommand="StudentProjektarbeitLoeschen();" disabled="true"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<vbox hidden="true">
|
||||
<label value="Neu"/>
|
||||
<checkbox id="student-projektarbeit-checkbox-neu" checked="true" />
|
||||
<label value="Projektarbeit ID"/>
|
||||
<textbox id="student-projektarbeit-textbox-projektarbeit_id" disabled="true"/>
|
||||
</vbox>
|
||||
<groupbox flex="1">
|
||||
<caption label="Details"/>
|
||||
<grid style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Titel" control="student-projektarbeit-textbox-titel"/>
|
||||
<textbox id="student-projektarbeit-textbox-titel" disabled="true" maxlength="1024" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Titel Englisch" control="student-projektarbeit-textbox-titel_english"/>
|
||||
<textbox id="student-projektarbeit-textbox-titel_english" disabled="true" maxlength="1024" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Themenbereich" control="student-projektarbeit-textbox-themenbereich"/>
|
||||
<textbox id="student-projektarbeit-textbox-themenbereich" disabled="true" maxlength="64"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Typ" control="student-projektarbeit-menulist-projekttyp"/>
|
||||
<menulist id="student-projektarbeit-menulist-projekttyp" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/projekttyp.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/projekttyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/projekttyp/rdf#projekttyp_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/projekttyp/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Firma" control="student-projektarbeit-menulist-firma"/>
|
||||
<box class="Firma" id="student-projektarbeit-menulist-firma" disabled="true"/>
|
||||
<!--
|
||||
<hbox>
|
||||
<menulist id="student-projektarbeit-menulist-firma" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/firma.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/firma/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/firma/rdf#firma_id"
|
||||
label="rdf:http://www.technikum-wien.at/firma/rdf#name"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<toolbarbutton id="student-projektarbeit-button-firma-refresh" image="../skin/images/refresh.png" tooltiptext="Liste neu laden" onclick="StudentProjektarbeitFirmaRefresh()"/>
|
||||
</hbox>
|
||||
-->
|
||||
</row>
|
||||
<row>
|
||||
<label value="Lehrveranstaltung" control="student-projektarbeit-menulist-lehrveranstaltung"/>
|
||||
<menulist id="student-projektarbeit-menulist-lehrveranstaltung" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/lehrveranstaltung/liste"
|
||||
oncommand="StudentProjektarbeitLVAChange()"
|
||||
>
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#lehrveranstaltung_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#orgform_kurzbz (rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#semester Sem)"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Lehreinheit" control="student-projektarbeit-menulist-lehreinheit"/>
|
||||
<menulist id="student-projektarbeit-menulist-lehreinheit" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/lehreinheit/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehreinheit/rdf#lehreinheit_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehreinheit/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehreinheit/rdf#studiensemester_kurzbz"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<grid style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<spacer />
|
||||
<spacer />
|
||||
<label value="Gesamtpunkte" control="student-projektarbeit-textbox-punkte" hidden="true"/>
|
||||
<hbox hidden="true">
|
||||
<textbox id="student-projektarbeit-textbox-punkte" maxlength="5" size="5" disabled="true"/>
|
||||
</hbox>
|
||||
<label value="Gesamtnote" control="student-projektarbeit-menulist-note"/>
|
||||
<menulist id="student-projektarbeit-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Beginn" control="student-projektarbeit-datum-beginn"/>
|
||||
<box class="Datum" id="student-projektarbeit-datum-beginn" disabled="true" />
|
||||
<label value="Ende" control="student-projektarbeit-datum-ende"/>
|
||||
<box class="Datum" id="student-projektarbeit-datum-ende" disabled="true" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Freigegeben" control="student-projektarbeit-checkbox-freigegeben"/>
|
||||
<checkbox id="student-projektarbeit-checkbox-freigegeben" disabled="true" />
|
||||
<label value="Gesperrt bis" control="student-projektarbeit-datum-gesperrtbis"/>
|
||||
<box class="Datum" id="student-projektarbeit-datum-gesperrtbis" disabled="true" onchange="StudentProjektarbeitGesperrtChanged()" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Anmerkung" control="student-projektarbeit-textbox-anmerkung"/>
|
||||
<textbox id="student-projektarbeit-textbox-anmerkung" disabled="true" maxlength="256"/>
|
||||
</row>
|
||||
<row>
|
||||
<spacer />
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-projektarbeit-button-speichern" oncommand="StudentProjektarbeitSpeichern()" label="Speichern" disabled="true"/>
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<vbox hidden="true">
|
||||
<!-- Stundensatz/Faktor und Gesamtstunden werden nicht mehr benoetigt -->
|
||||
<label value="Stundensatz" control="student-projektarbeit-textbox-stundensatz"/>
|
||||
<hbox>
|
||||
<textbox id="student-projektarbeit-textbox-stundensatz" disabled="true" maxlength="5" size="5"/>
|
||||
</hbox>
|
||||
<label value="Faktor" control="student-projektarbeit-textbox-faktor"/>
|
||||
<hbox>
|
||||
<textbox id="student-projektarbeit-textbox-faktor" disabled="true" maxlength="3" size="3"/>
|
||||
</hbox>
|
||||
|
||||
<label value="Gesamtstunden" control="student-projektarbeit-textbox-gesamtstunden"/>
|
||||
<hbox>
|
||||
<textbox id="student-projektarbeit-textbox-gesamtstunden" disabled="true" maxlength="8" size="8"/>
|
||||
</hbox>
|
||||
</vbox>
|
||||
</groupbox>
|
||||
<groupbox flex="1">
|
||||
<caption label="Betreuer"/>
|
||||
<hbox>
|
||||
<tree id="student-projektbetreuer-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/projektbetreuer/liste"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
context="student-projektbetreuer-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
<!--onselect="StudentProjektbetreuerAuswahl()" - wird jetzt per JS gesetzt-->
|
||||
<treecols>
|
||||
<treecol id="student-projektbetreuer-tree-nachname" label="Nachname" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_nachname"/>
|
||||
<treecol id="student-projektbetreuer-tree-vorname" label="Vorname" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_vorname"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-name" label="Name" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#name"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-note" label="Note" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#note"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-faktor" label="Faktor" flex="2" ignoreincolumnpicker="true" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#faktor" /><!-- Faktor wird nicht mehr benoetigt und deshalb ausgeblendet -->
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-punkte" label="Punkte" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#punkte" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-stunden" label="Stunden" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stunden" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-stundensatz" label="Stundensatz" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stundensatz" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-betreuerart_kurzbz" label="Art" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#betreuerart_kurzbz" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-person_id" label="Person_id" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-projektarbeit_id" label="ProjektarbeitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#projektarbeit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_nachname"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_vorname"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#name"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#note"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#faktor"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#punkte"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stunden"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stundensatz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#betreuerart_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#projektarbeit_id"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<button id="student-projektbetreuer-button-neu" label="Neu" oncommand="StudentProjektbetreuerNeu();" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-loeschen" label="Loeschen" oncommand="StudentProjektbetreuerLoeschen();" disabled="true"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<vbox hidden="true">
|
||||
<textbox id="student-projektbetreuer-textbox-person_id" />
|
||||
<textbox id="student-projektbetreuer-textbox-betreuerart_kurzbz_old" />
|
||||
<checkbox id="student-projektbetreuer-checkbox-neu" />
|
||||
<label value="Name" control="student-projektbetreuer-textbox-name"/>
|
||||
<textbox id="student-projektbetreuer-textbox-name" disabled="true" maxlength="32"/>
|
||||
</vbox>
|
||||
<grid style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Betreuer" control="student-projektbetreuer-menulist-person" />
|
||||
<menulist id="student-projektbetreuer-menulist-person"
|
||||
editable="true" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/person/liste"
|
||||
oninput="StudentProjektbetreuerMenulistPersonLoad(this)"
|
||||
oncommand="StudentProjektbetreuerLoadMitarbeiterDaten()">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/person/rdf#person_id"
|
||||
label="rdf:http://www.technikum-wien.at/person/rdf#anzeigename ( rdf:http://www.technikum-wien.at/person/rdf#status )"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<button id="student-projektbetreuer-button-neueperson" label="Neue Person anlegen" oncommand="StudentProjektbetreuerNeuePerson()" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-kontaktdaten" label="Kontakttdaten bearbeiten" oncommand="StudentProjektbetreuerKontaktdaten()" disabled="true"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Art" control="student-projektbetreuer-menulist-betreuerart"/>
|
||||
<menulist id="student-projektbetreuer-menulist-betreuerart" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/betreuerart.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/betreuerart" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/betreuerart/rdf#betreuerart_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/betreuerart/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Note" control="student-projektbetreuer-menulist-note"/>
|
||||
<menulist id="student-projektbetreuer-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Punkte" control="student-projektbetreuer-textbox-punkte"/>
|
||||
<textbox id="student-projektbetreuer-textbox-punkte" disabled="true" maxlength="6"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Stunden" control="student-projektbetreuer-textbox-stunden"/>
|
||||
<textbox id="student-projektbetreuer-textbox-stunden" disabled="true" maxlength="8"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Stundensatz" control="student-projektbetreuer-textbox-stundensatz"/>
|
||||
<textbox id="student-projektbetreuer-textbox-stundensatz" disabled="true" maxlength="5"/>
|
||||
</row>
|
||||
<row hidden="true"><!-- Faktor wird nicht mehr benoetigt -->
|
||||
<label value="Faktor" control="student-projektbetreuer-textbox-faktor"/>
|
||||
<textbox id="student-projektbetreuer-textbox-faktor" disabled="true" maxlength="3"/>
|
||||
</row>
|
||||
<row>
|
||||
<spacer />
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-projektbetreuer-button-speichern" label="Speichern" oncommand="StudentProjektbetreuerSpeichern()" />
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
</hbox>
|
||||
|
||||
<spacer flex="1" />
|
||||
</vbox>
|
||||
|
||||
</overlay>
|
||||
<?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>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@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="StudentProjektarbeitOverlay"
|
||||
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/studentprojektarbeit.js.php" />
|
||||
|
||||
<!-- Projektarbeit DETAILS -->
|
||||
<vbox id="student-projektarbeit" style="overflow:auto;" flex="1">
|
||||
<popupset>
|
||||
<menupopup id="student-projektarbeit-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="StudentProjektarbeitLoeschen();" id="student-projektarbeit-tree-popup-delete" hidden="false"/>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
|
||||
<hbox>
|
||||
<tree id="student-projektarbeit-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/projektarbeit/liste"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
context="student-projektarbeit-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
|
||||
<treecols>
|
||||
<treecol id="student-projektarbeit-tree-projekttyp_kurzbz" label="Typ" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#bezeichnung"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-studiensemester" label="Studiensemester" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_stsem"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-titel" label="Titel" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#titel"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-note" label="Gesamtnote" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#note" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-beginn" label="Beginn" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#beginn" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-ende" label="Ende" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#ende" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-freigegeben" label="Freigegeben" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#freigegeben" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-gesperrtbis" label="Gesperrt bis" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#gesperrtbis" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-themenbereich" label="Themenbereich" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#themenbereich" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-anmerkung" label="Anmerkung" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#anmerkung" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-projektarbeit_id" label="ProjektarbeitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#projektarbeit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-lehreinheit_id" label="LehreinheitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-prestudent_id" label="PrestudentID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#prestudent_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektarbeit-tree-firma_id" label="FirmaID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektarbeit/rdf#firma_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_stsem"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#titel"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#note"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#beginn"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#ende"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#freigegeben"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#gesperrtbis"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#themenbereich"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#anmerkung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#projektarbeit_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#lehreinheit_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#prestudent_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektarbeit/rdf#firma_id"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<button id="student-projektarbeit-button-neu" label="Neu" oncommand="StudentProjektarbeitNeu();" disabled="true"/>
|
||||
<button id="student-projektarbeit-button-loeschen" label="Loeschen" oncommand="StudentProjektarbeitLoeschen();" disabled="true"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<vbox hidden="true">
|
||||
<label value="Neu"/>
|
||||
<checkbox id="student-projektarbeit-checkbox-neu" checked="true" />
|
||||
<label value="Projektarbeit ID"/>
|
||||
<textbox id="student-projektarbeit-textbox-projektarbeit_id" disabled="true"/>
|
||||
</vbox>
|
||||
<groupbox flex="1">
|
||||
<caption label="Details"/>
|
||||
<grid style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Titel" control="student-projektarbeit-textbox-titel"/>
|
||||
<textbox id="student-projektarbeit-textbox-titel" disabled="true" maxlength="1024" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Titel Englisch" control="student-projektarbeit-textbox-titel_english"/>
|
||||
<textbox id="student-projektarbeit-textbox-titel_english" disabled="true" maxlength="1024" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Themenbereich" control="student-projektarbeit-textbox-themenbereich"/>
|
||||
<textbox id="student-projektarbeit-textbox-themenbereich" disabled="true" maxlength="64"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Typ" control="student-projektarbeit-menulist-projekttyp"/>
|
||||
<menulist id="student-projektarbeit-menulist-projekttyp" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/projekttyp.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/projekttyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/projekttyp/rdf#projekttyp_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/projekttyp/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Firma" control="student-projektarbeit-menulist-firma"/>
|
||||
<box class="Firma" id="student-projektarbeit-menulist-firma" disabled="true"/>
|
||||
<!--
|
||||
<hbox>
|
||||
<menulist id="student-projektarbeit-menulist-firma" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/firma.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/firma/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/firma/rdf#firma_id"
|
||||
label="rdf:http://www.technikum-wien.at/firma/rdf#name"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<toolbarbutton id="student-projektarbeit-button-firma-refresh" image="../skin/images/refresh.png" tooltiptext="Liste neu laden" onclick="StudentProjektarbeitFirmaRefresh()"/>
|
||||
</hbox>
|
||||
-->
|
||||
</row>
|
||||
<row>
|
||||
<label value="Lehrveranstaltung" control="student-projektarbeit-menulist-lehrveranstaltung"/>
|
||||
<menulist id="student-projektarbeit-menulist-lehrveranstaltung" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/lehrveranstaltung/liste"
|
||||
oncommand="StudentProjektarbeitLVAChange()"
|
||||
>
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#lehrveranstaltung_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#orgform_kurzbz (rdf:http://www.technikum-wien.at/lehrveranstaltung/rdf#semester Sem)"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Lehreinheit" control="student-projektarbeit-menulist-lehreinheit"/>
|
||||
<menulist id="student-projektarbeit-menulist-lehreinheit" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/lehreinheit/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/lehreinheit/rdf#lehreinheit_id"
|
||||
label="rdf:http://www.technikum-wien.at/lehreinheit/rdf#bezeichnung rdf:http://www.technikum-wien.at/lehreinheit/rdf#studiensemester_kurzbz"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<grid style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<spacer />
|
||||
<spacer />
|
||||
<label value="Gesamtpunkte" control="student-projektarbeit-textbox-punkte" hidden="true"/>
|
||||
<hbox hidden="true">
|
||||
<textbox id="student-projektarbeit-textbox-punkte" maxlength="5" size="5" disabled="true"/>
|
||||
</hbox>
|
||||
<label value="Gesamtnote" control="student-projektarbeit-menulist-note"/>
|
||||
<menulist id="student-projektarbeit-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Beginn" control="student-projektarbeit-datum-beginn"/>
|
||||
<box class="Datum" id="student-projektarbeit-datum-beginn" disabled="true" />
|
||||
<label value="Ende" control="student-projektarbeit-datum-ende"/>
|
||||
<box class="Datum" id="student-projektarbeit-datum-ende" disabled="true" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Freigegeben" control="student-projektarbeit-checkbox-freigegeben"/>
|
||||
<checkbox id="student-projektarbeit-checkbox-freigegeben" disabled="true" />
|
||||
<label value="Gesperrt bis" control="student-projektarbeit-datum-gesperrtbis"/>
|
||||
<box class="Datum" id="student-projektarbeit-datum-gesperrtbis" disabled="true" onchange="StudentProjektarbeitGesperrtChanged()" />
|
||||
</row>
|
||||
<row>
|
||||
<label value="Anmerkung" control="student-projektarbeit-textbox-anmerkung"/>
|
||||
<textbox id="student-projektarbeit-textbox-anmerkung" disabled="true" maxlength="256"/>
|
||||
</row>
|
||||
<row>
|
||||
<spacer />
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-projektarbeit-button-speichern" oncommand="StudentProjektarbeitSpeichern()" label="Speichern" disabled="true"/>
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<vbox hidden="true">
|
||||
<!-- Stundensatz/Faktor und Gesamtstunden werden nicht mehr benoetigt -->
|
||||
<label value="Stundensatz" control="student-projektarbeit-textbox-stundensatz"/>
|
||||
<hbox>
|
||||
<textbox id="student-projektarbeit-textbox-stundensatz" disabled="true" maxlength="5" size="5"/>
|
||||
</hbox>
|
||||
<label value="Faktor" control="student-projektarbeit-textbox-faktor"/>
|
||||
<hbox>
|
||||
<textbox id="student-projektarbeit-textbox-faktor" disabled="true" maxlength="3" size="3"/>
|
||||
</hbox>
|
||||
|
||||
<label value="Gesamtstunden" control="student-projektarbeit-textbox-gesamtstunden"/>
|
||||
<hbox>
|
||||
<textbox id="student-projektarbeit-textbox-gesamtstunden" disabled="true" maxlength="8" size="8"/>
|
||||
</hbox>
|
||||
</vbox>
|
||||
</groupbox>
|
||||
<groupbox flex="1">
|
||||
<caption label="Betreuer"/>
|
||||
<hbox>
|
||||
<tree id="student-projektbetreuer-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/projektbetreuer/liste"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
context="student-projektbetreuer-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
<!--onselect="StudentProjektbetreuerAuswahl()" - wird jetzt per JS gesetzt-->
|
||||
<treecols>
|
||||
<treecol id="student-projektbetreuer-tree-nachname" label="Nachname" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_nachname"/>
|
||||
<treecol id="student-projektbetreuer-tree-vorname" label="Vorname" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_vorname"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-name" label="Name" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#name"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-note" label="Note" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#note"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-faktor" label="Faktor" flex="2" ignoreincolumnpicker="true" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#faktor" /><!-- Faktor wird nicht mehr benoetigt und deshalb ausgeblendet -->
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-punkte" label="Punkte" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#punkte" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-stunden" label="Stunden" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stunden" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-stundensatz" label="Stundensatz" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stundensatz" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-betreuerart_kurzbz" label="Art" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#betreuerart_kurzbz" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-person_id" label="Person_id" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-projektbetreuer-tree-projektarbeit_id" label="ProjektarbeitID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#projektarbeit_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_nachname"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_vorname"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#name"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#note"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#faktor"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#punkte"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stunden"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#stundensatz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#betreuerart_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#person_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/projektbetreuer/rdf#projektarbeit_id"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<button id="student-projektbetreuer-button-neu" label="Neu" oncommand="StudentProjektbetreuerNeu();" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-loeschen" label="Loeschen" oncommand="StudentProjektbetreuerLoeschen();" disabled="true"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<vbox hidden="true">
|
||||
<textbox id="student-projektbetreuer-textbox-person_id" />
|
||||
<textbox id="student-projektbetreuer-textbox-betreuerart_kurzbz_old" />
|
||||
<checkbox id="student-projektbetreuer-checkbox-neu" />
|
||||
<label value="Name" control="student-projektbetreuer-textbox-name"/>
|
||||
<textbox id="student-projektbetreuer-textbox-name" disabled="true" maxlength="32"/>
|
||||
</vbox>
|
||||
<grid style="margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Betreuer" control="student-projektbetreuer-menulist-person" />
|
||||
<menulist id="student-projektbetreuer-menulist-person"
|
||||
editable="true" disabled="true"
|
||||
datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/person/liste"
|
||||
oninput="StudentProjektbetreuerMenulistPersonLoad(this)"
|
||||
oncommand="StudentProjektbetreuerLoadMitarbeiterDaten()">
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/person/rdf#person_id"
|
||||
label="rdf:http://www.technikum-wien.at/person/rdf#anzeigename ( rdf:http://www.technikum-wien.at/person/rdf#status )"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<button id="student-projektbetreuer-button-neueperson" label="Neue Person anlegen" oncommand="StudentProjektbetreuerNeuePerson()" disabled="true"/>
|
||||
<button id="student-projektbetreuer-button-kontaktdaten" label="Kontakttdaten bearbeiten" oncommand="StudentProjektbetreuerKontaktdaten()" disabled="true"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Art" control="student-projektbetreuer-menulist-betreuerart"/>
|
||||
<menulist id="student-projektbetreuer-menulist-betreuerart" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/betreuerart.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/betreuerart" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/betreuerart/rdf#betreuerart_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/betreuerart/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Note" control="student-projektbetreuer-menulist-note"/>
|
||||
<menulist id="student-projektbetreuer-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php?optional=true" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/note/rdf#note"
|
||||
label="rdf:http://www.technikum-wien.at/note/rdf#bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Punkte" control="student-projektbetreuer-textbox-punkte"/>
|
||||
<textbox id="student-projektbetreuer-textbox-punkte" disabled="true" maxlength="6"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Stunden" control="student-projektbetreuer-textbox-stunden"/>
|
||||
<textbox id="student-projektbetreuer-textbox-stunden" disabled="true" maxlength="8"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Stundensatz" control="student-projektbetreuer-textbox-stundensatz"/>
|
||||
<textbox id="student-projektbetreuer-textbox-stundensatz" disabled="true" maxlength="5"/>
|
||||
</row>
|
||||
<row hidden="true"><!-- Faktor wird nicht mehr benoetigt -->
|
||||
<label value="Faktor" control="student-projektbetreuer-textbox-faktor"/>
|
||||
<textbox id="student-projektbetreuer-textbox-faktor" disabled="true" maxlength="3"/>
|
||||
</row>
|
||||
<row>
|
||||
<spacer />
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-projektbetreuer-button-speichern" label="Speichern" oncommand="StudentProjektbetreuerSpeichern()" />
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
</hbox>
|
||||
|
||||
<spacer flex="1" />
|
||||
</vbox>
|
||||
|
||||
</overlay>
|
||||
|
||||
@@ -480,88 +480,82 @@ class anwesenheit extends basis_db
|
||||
*/
|
||||
public function loadAnwesenheitStudiensemester($studiensemester_kurzbz, $prestudent_id=null, $lehrveranstaltung_id=null)
|
||||
{
|
||||
if(!is_null($prestudent_id) && !is_numeric($prestudent_id))
|
||||
|
||||
$qry = "SELECT lehrveranstaltung_id, bezeichnung, vorname, nachname, uid, prestudent_id, sum(anwesend) as anwesend, sum(nichtanwesend) as nichtanwesend, sum(gesamtstunden) as gesamtstunden FROM (
|
||||
SELECT
|
||||
lehrveranstaltung_id, bezeichnung, vorname, nachname, uid, prestudent_id,
|
||||
(
|
||||
SELECT
|
||||
sum(einheiten)
|
||||
FROM
|
||||
campus.tbl_anwesenheit
|
||||
WHERE
|
||||
lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
|
||||
AND uid=vw_student_lehrveranstaltung.uid
|
||||
AND anwesend
|
||||
) as anwesend,
|
||||
(
|
||||
SELECT
|
||||
sum(einheiten)
|
||||
FROM
|
||||
campus.tbl_anwesenheit
|
||||
WHERE
|
||||
lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
|
||||
AND uid=vw_student_lehrveranstaltung.uid
|
||||
AND NOT anwesend
|
||||
) as nichtanwesend,
|
||||
(
|
||||
SELECT count(*) anzahl FROM
|
||||
(SELECT datum, stunde FROM campus.vw_stundenplan
|
||||
WHERE lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
|
||||
AND (vw_stundenplan.titel not like '%Nebenprüfung%' OR vw_stundenplan.titel is null) GROUP BY datum, stunde) as a
|
||||
) as gesamtstunden
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE
|
||||
studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if(!is_numeric($lehrveranstaltung_id))
|
||||
$qry.=" AND lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id);
|
||||
if(is_numeric($prestudent_id))
|
||||
$qry.=" AND prestudent_id=".$this->db_add_param($prestudent_id);
|
||||
|
||||
$qry.=") as b GROUP BY lehrveranstaltung_id, bezeichnung, vorname, nachname, prestudent_id, uid";
|
||||
|
||||
if($lehrveranstaltung_id!='')
|
||||
$qry.=" order by nachname, vorname ";
|
||||
elseif(is_numeric($prestudent_id))
|
||||
$qry.=" order by bezeichnung";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
$this->errormsg = "Prestudent_id ist ungueltig";
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$obj->anwesend = $row->anwesend;
|
||||
$obj->nichtanwesend = $row->nichtanwesend;
|
||||
$obj->gesamtstunden = $row->gesamtstunden;
|
||||
|
||||
$obj->erfassteanwesenheit = $row->anwesend+$row->nichtanwesend;
|
||||
if($row->gesamtstunden=='' || $obj->erfassteanwesenheit=='')
|
||||
$obj->prozent=100;
|
||||
else
|
||||
$obj->prozent = number_format(100-(100/$obj->gesamtstunden*$row->nichtanwesend),2);
|
||||
$obj->vorname = $row->vorname;
|
||||
$obj->nachname = $row->nachname;
|
||||
$obj->uid = $row->uid;
|
||||
$obj->prestudent_id = $row->prestudent_id;
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "SELECT lehrveranstaltung_id, bezeichnung, vorname, nachname, uid, prestudent_id, sum(anwesend) as anwesend, sum(nichtanwesend) as nichtanwesend, sum(gesamtstunden) as gesamtstunden FROM (
|
||||
SELECT
|
||||
lehrveranstaltung_id, bezeichnung, vorname, nachname, uid, prestudent_id,
|
||||
(
|
||||
SELECT
|
||||
sum(einheiten)
|
||||
FROM
|
||||
campus.tbl_anwesenheit
|
||||
WHERE
|
||||
lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
|
||||
AND uid=vw_student_lehrveranstaltung.uid
|
||||
AND anwesend
|
||||
) as anwesend,
|
||||
(
|
||||
SELECT
|
||||
sum(einheiten)
|
||||
FROM
|
||||
campus.tbl_anwesenheit
|
||||
WHERE
|
||||
lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
|
||||
AND uid=vw_student_lehrveranstaltung.uid
|
||||
AND NOT anwesend
|
||||
) as nichtanwesend,
|
||||
(
|
||||
SELECT count(*) anzahl FROM
|
||||
(SELECT datum, stunde FROM campus.vw_stundenplan
|
||||
WHERE lehreinheit_id=vw_student_lehrveranstaltung.lehreinheit_id
|
||||
AND (vw_stundenplan.titel not like '%Nebenprüfung%' OR vw_stundenplan.titel is null) GROUP BY datum, stunde) as a
|
||||
) as gesamtstunden
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE
|
||||
studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if(!is_null($lehrveranstaltung_id))
|
||||
$qry.=" AND lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id);
|
||||
if(!is_null($prestudent_id))
|
||||
$qry.=" AND prestudent_id=".$this->db_add_param($prestudent_id);
|
||||
|
||||
$qry.=") as b GROUP BY lehrveranstaltung_id, bezeichnung, vorname, nachname, prestudent_id, uid";
|
||||
|
||||
if($lehrveranstaltung_id!='')
|
||||
$qry.=" order by nachname, vorname ";
|
||||
elseif(is_numeric($prestudent_id))
|
||||
$qry.=" order by bezeichnung";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$obj->anwesend = $row->anwesend;
|
||||
$obj->nichtanwesend = $row->nichtanwesend;
|
||||
$obj->gesamtstunden = $row->gesamtstunden;
|
||||
|
||||
$obj->erfassteanwesenheit = $row->anwesend+$row->nichtanwesend;
|
||||
if($row->gesamtstunden=='' || $obj->erfassteanwesenheit=='')
|
||||
$obj->prozent=100;
|
||||
else
|
||||
$obj->prozent = number_format(100-(100/$obj->gesamtstunden*$row->nichtanwesend),2);
|
||||
$obj->vorname = $row->vorname;
|
||||
$obj->nachname = $row->nachname;
|
||||
$obj->uid = $row->uid;
|
||||
$obj->prestudent_id = $row->prestudent_id;
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler beim Laden der Daten';
|
||||
}
|
||||
$this->errormsg='Fehler beim Laden der Daten';
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -233,8 +233,11 @@ class lehrstunde extends basis_db
|
||||
* @param ver
|
||||
* @param grp
|
||||
* @param gruppe_kurzbz
|
||||
*
|
||||
* TODO EINE:
|
||||
* Dickes Problem: uid kann hier ein MA, oder ein Student sein. Für den späteren join auf tbl_studentlehrverband
|
||||
* wird jedoch eine prestudent_id benötigt, welche nicht eindeutig ist, wenn sie per uid geholt wird.
|
||||
*/
|
||||
|
||||
public function load_lehrstunden($type, $datum_von, $datum_bis, $uid, $ort_kurzbz=NULL, $studiengang_kz=NULL, $sem=NULL, $ver=NULL, $grp=NULL, $gruppe_kurzbz=NULL, $stpl_view='stundenplan', $idList=null, $fachbereich_kurzbz=null, $lva=NULL, $alle_unr_mitladen=false)
|
||||
{
|
||||
$num_rows_einheit=0;
|
||||
|
||||
@@ -25,7 +25,6 @@
|
||||
* - Vollstaendigkeit von Modulen etc
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
require_once(dirname(__FILE__).'/student.class.php');
|
||||
require_once(dirname(__FILE__).'/prestudent.class.php');
|
||||
require_once(dirname(__FILE__).'/studiensemester.class.php');
|
||||
require_once(dirname(__FILE__).'/studienplan.class.php');
|
||||
@@ -592,8 +591,6 @@ class lvregel extends basis_db
|
||||
// Ausbildungssemester wird nur beim 1. durchlauf ermittelt
|
||||
if(!isset($this->cache[$prestudent_id]) && !isset($this->cache[$prestudent_id][$studiensemester_kurzbz]))
|
||||
{
|
||||
$student = new student($prestudent_id); // TODO EINE
|
||||
|
||||
// Ausbildungssemester aus dem Status holen
|
||||
$prestudent = new prestudent();
|
||||
if($prestudent->getLastStatus($prestudent_id, $studiensemester_kurzbz))
|
||||
|
||||
+208
-207
@@ -1,207 +1,208 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class stunde extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $stunden = array(); // stunde Objekt
|
||||
|
||||
//Tabellenspalten
|
||||
public $stunde; // smalint
|
||||
public $beginn; // time without timezone
|
||||
public $ende; // time without timezone
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
*/
|
||||
public function __construct($load=false)
|
||||
{
|
||||
parent::__construct();
|
||||
if (is_numeric($load))
|
||||
$this->load($load);
|
||||
elseif($load)
|
||||
$this->loadAll();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Prueft die Variablen vor dem Speichern
|
||||
* auf Gueltigkeit.
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
protected function validate()
|
||||
{
|
||||
if(!is_numeric($this->stunde))
|
||||
{
|
||||
$this->errormsg = 'Stunde muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert eine Stunde in die Datenbank
|
||||
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz
|
||||
* angelegt, ansonsten der Datensatz mit $lehrfach_nr upgedated
|
||||
* @return true wenn erfolgreich, false im Fehlerfall
|
||||
*/
|
||||
public function save()
|
||||
{
|
||||
//Variablen auf Gueltigkeit pruefen
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($this->new)
|
||||
{
|
||||
$qry = "INSERT INTO lehre.tbl_stunde (stunde, beginn, ende)
|
||||
VALUES(".$this->db_add_param($this->stunde).",".
|
||||
$this->db_add_param($this->beginn).','.
|
||||
$this->db_add_param($this->ende).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = 'UPDATE lehre.tbl_stunde SET'.
|
||||
' beginn='.$this->db_add_param($this->beginn).','.
|
||||
' ende='.$this->db_add_param($this->ende).
|
||||
" WHERE stunde=".$this->db_add_param($this->stunde);
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Stunde';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Liefert die Stunden innerhalb der uebergebenen Uhrzeiten
|
||||
* @param $uhrzeit_start
|
||||
* @param $uhrzeit_ende
|
||||
* @return array $stunden
|
||||
*/
|
||||
public function getStunden($uhrzeit_start, $uhrzeit_ende)
|
||||
{
|
||||
$stunden=array();
|
||||
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_stunde
|
||||
WHERE
|
||||
(beginn BETWEEN ".$this->db_add_param($uhrzeit_start)." AND ".$this->db_add_param($uhrzeit_ende).")
|
||||
OR (ende BETWEEN ".$this->db_add_param($uhrzeit_start)." AND ".$this->db_add_param($uhrzeit_ende).");";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$stunden[] = $row->stunde;
|
||||
}
|
||||
}
|
||||
return $stunden;
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt eine Stunde
|
||||
* @param $stunde
|
||||
*/
|
||||
public function load($stunde)
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_stunde WHERE stunde=".$this->db_add_param($stunde, FHC_INTEGER).";";
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->beginn = $row->beginn;
|
||||
$this->ende = $row->ende;
|
||||
$this->stunde = $row->stunde;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Stunde wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg ='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Stunden
|
||||
*/
|
||||
public function loadAll()
|
||||
{
|
||||
$qry = 'SELECT * FROM lehre.tbl_stunde ORDER BY stunde;';
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$stunde = new stunde();
|
||||
$beginn = date_create('2001-01-01');
|
||||
$ende = date_create('2001-01-01');
|
||||
date_time_set($beginn,substr($row->beginn,0,2), substr($row->beginn,3,2));
|
||||
date_time_set($ende,substr($row->ende,0,2), substr($row->ende,3,2));
|
||||
$stunde->beginn = $beginn;
|
||||
$stunde->ende = $ende;
|
||||
$stunde->stunde = $row->stunde;
|
||||
$this->stunden[] = $stunde;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg ='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Liefert die Stunde einer uebergebenen Uhrzeiten
|
||||
* @param $uhrzeit
|
||||
* @return integer $stunde->stunde
|
||||
*/
|
||||
public function getStundeByTime($uhrzeit)
|
||||
{
|
||||
$time = date_create('2001-01-01');
|
||||
if (!date_time_set($time,substr($uhrzeit,0,2), substr($uhrzeit,3,2)))
|
||||
return false;
|
||||
foreach($this->stunden as $stunde)
|
||||
{
|
||||
if($time >= $stunde->beginn && $time < $stunde->ende)
|
||||
{
|
||||
return $stunde->stunde;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?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> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class stunde extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $stunden = array(); // stunde Objekt
|
||||
|
||||
//Tabellenspalten
|
||||
public $stunde; // smalint
|
||||
public $beginn; // time without timezone
|
||||
public $ende; // time without timezone
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
*/
|
||||
public function __construct($load=false)
|
||||
{
|
||||
parent::__construct();
|
||||
if (is_numeric($load))
|
||||
$this->load($load);
|
||||
elseif($load)
|
||||
$this->loadAll();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Prueft die Variablen vor dem Speichern
|
||||
* auf Gueltigkeit.
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
protected function validate()
|
||||
{
|
||||
if(!is_numeric($this->stunde))
|
||||
{
|
||||
$this->errormsg = 'Stunde muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert eine Stunde in die Datenbank
|
||||
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz
|
||||
* angelegt, ansonsten der Datensatz mit $lehrfach_nr upgedated
|
||||
* @return true wenn erfolgreich, false im Fehlerfall
|
||||
*/
|
||||
public function save()
|
||||
{
|
||||
//Variablen auf Gueltigkeit pruefen
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($this->new)
|
||||
{
|
||||
$qry = "INSERT INTO lehre.tbl_stunde (stunde, beginn, ende)
|
||||
VALUES(".$this->db_add_param($this->stunde).",".
|
||||
$this->db_add_param($this->beginn).','.
|
||||
$this->db_add_param($this->ende).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = 'UPDATE lehre.tbl_stunde SET'.
|
||||
' beginn='.$this->db_add_param($this->beginn).','.
|
||||
' ende='.$this->db_add_param($this->ende).
|
||||
" WHERE stunde=".$this->db_add_param($this->stunde);
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Stunde';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Liefert die Stunden innerhalb der uebergebenen Uhrzeiten
|
||||
* @param $uhrzeit_start
|
||||
* @param $uhrzeit_ende
|
||||
* @return array $stunden
|
||||
*/
|
||||
public function getStunden($uhrzeit_start, $uhrzeit_ende)
|
||||
{
|
||||
$stunden=array();
|
||||
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_stunde
|
||||
WHERE
|
||||
(beginn BETWEEN ".$this->db_add_param($uhrzeit_start)." AND ".$this->db_add_param($uhrzeit_ende).")
|
||||
OR (ende BETWEEN ".$this->db_add_param($uhrzeit_start)." AND ".$this->db_add_param($uhrzeit_ende).");";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$stunden[] = $row->stunde;
|
||||
}
|
||||
}
|
||||
return $stunden;
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt eine Stunde
|
||||
* @param $stunde
|
||||
*/
|
||||
public function load($stunde)
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_stunde WHERE stunde=".$this->db_add_param($stunde, FHC_INTEGER).";";
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->beginn = $row->beginn;
|
||||
$this->ende = $row->ende;
|
||||
$this->stunde = $row->stunde;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Stunde wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg ='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Stunden
|
||||
*/
|
||||
public function loadAll()
|
||||
{
|
||||
$qry = 'SELECT * FROM lehre.tbl_stunde ORDER BY stunde;';
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$stunde = new stunde();
|
||||
$beginn = date_create('2001-01-01');
|
||||
$ende = date_create('2001-01-01');
|
||||
date_time_set($beginn,substr($row->beginn,0,2), substr($row->beginn,3,2));
|
||||
date_time_set($ende,substr($row->ende,0,2), substr($row->ende,3,2));
|
||||
$stunde->beginn = $beginn;
|
||||
$stunde->ende = $ende;
|
||||
$stunde->stunde = $row->stunde;
|
||||
$this->stunden[] = $stunde;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg ='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Liefert die Stunde einer uebergebenen Uhrzeiten
|
||||
* @param $uhrzeit
|
||||
* @return integer $stunde->stunde
|
||||
*/
|
||||
public function getStundeByTime($uhrzeit)
|
||||
{
|
||||
$time = date_create('2001-01-01');
|
||||
if (!date_time_set($time,substr($uhrzeit,0,2), substr($uhrzeit,3,2)))
|
||||
return false;
|
||||
foreach($this->stunden as $stunde)
|
||||
{
|
||||
if($time >= $stunde->beginn && $time < $stunde->ende)
|
||||
{
|
||||
return $stunde->stunde;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -359,7 +359,7 @@ class zeugnisnote extends basis_db
|
||||
LEFT JOIN lehre.tbl_note USING(note)
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id)
|
||||
WHERE
|
||||
prestudent_id=".$this->db_add_param($prestudent_id)."
|
||||
lehre.tbl_zeugnisnote.prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
AND vw_student_lehrveranstaltung.studiensemester_kurzbz IN(".$stsem.")
|
||||
AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id, FHC_INTEGER)."
|
||||
UNION
|
||||
@@ -372,7 +372,7 @@ class zeugnisnote extends basis_db
|
||||
JOIN lehre.tbl_note USING(note)
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung USING(lehrveranstaltung_id)
|
||||
WHERE
|
||||
prestudent_id=".$this->db_add_param($prestudent_id)."
|
||||
lehre.tbl_zeugnisnote.prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
AND studiensemester_kurzbz IN(".$stsem.")
|
||||
AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id, FHC_INTEGER)."
|
||||
UNION ALL
|
||||
@@ -391,7 +391,7 @@ class zeugnisnote extends basis_db
|
||||
tbl_note.bezeichnung as note_bezeichnung, tbl_zeugnisnote.bemerkung, tbl_lehrveranstaltung.lvnr, tbl_studienplan_lehrveranstaltung.sort as studienplan_lehrveranstaltung_sort
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.prestudent_id=".$this->db_add_param($prestudent_id)." AND tbl_zeugnisnote.studiensemester_kurzbz IN(".$stsem."))
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)." AND tbl_zeugnisnote.studiensemester_kurzbz IN(".$stsem."))
|
||||
LEFT JOIN lehre.tbl_studienplan_lehrveranstaltung ON(tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id AND tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id).")
|
||||
LEFT JOIN lehre.tbl_note USING(note)
|
||||
WHERE
|
||||
|
||||
@@ -58,7 +58,6 @@ if(is_numeric($prestudent_id))
|
||||
elseif($lehrveranstaltung_id!='')
|
||||
{
|
||||
$anwesenheit->loadAnwesenheitStudiensemester($studiensemester_kurzbz,null,$lehrveranstaltung_id);
|
||||
var_dump("TODO EINE");// TODO EINE TOTEST!
|
||||
}
|
||||
|
||||
$i=0;
|
||||
|
||||
@@ -41,19 +41,19 @@ $db = new basis_db();
|
||||
if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
{
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
$uid = $_GET['uid'];
|
||||
if(isset($_GET['prestudent_id']))
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
else
|
||||
$uid = null;
|
||||
$prestudent_id = null;
|
||||
|
||||
$uid_arr = explode(";",$uid);
|
||||
$prestudent_id_arr = explode(";",$prestudent_id);
|
||||
|
||||
echo "<?xml version='1.0' encoding='UTF-8' standalone='yes'?> ";
|
||||
echo "<supplements>";
|
||||
|
||||
for ($i = 0; $i < sizeof($uid_arr); $i++)
|
||||
for ($i = 0; $i < sizeof($prestudent_id_arr); $i++)
|
||||
{
|
||||
if($uid_arr[$i]=='')
|
||||
if($prestudent_id_arr[$i]=='')
|
||||
continue;
|
||||
$query = "SELECT
|
||||
vw_student.vorname, vw_student.nachname, vw_student.vornamen, vw_student.gebdatum,
|
||||
@@ -64,15 +64,15 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
FROM
|
||||
campus.vw_student JOIN public.tbl_studiengang USING(studiengang_kz)
|
||||
WHERE
|
||||
uid = ".$db->db_add_param($uid_arr[$i]);
|
||||
prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER);
|
||||
|
||||
if($db->db_query($query))
|
||||
{
|
||||
if(!$row = $db->db_fetch_object())
|
||||
die('Student not found: '.$uid_arr[$i]);
|
||||
die('Student not found: '.$prestudent_id_arr[$i]);
|
||||
}
|
||||
else
|
||||
die('Student not found: '.$uid_arr[$i]);
|
||||
die('Student not found: '.$prestudent_id_arr[$i]);
|
||||
|
||||
//Bei DEW und DPW werden 60 ECTS angerechnet
|
||||
if($row->studiengang_kz==92 || $row->studiengang_kz==91)
|
||||
@@ -236,7 +236,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
}
|
||||
|
||||
if($row->typ=='d')
|
||||
{
|
||||
{
|
||||
echo ' <niveau_code>UNESCO ISCED 5A</niveau_code>';
|
||||
echo ' <zulassungsvoraussetzungen_deutsch><![CDATA[Allgemeine Universitätsreife (vgl. §4 Abs. 3 FHStG idgF), Berufsreifeprüfung bzw. Studienberechtigungsprüfung oder einschlägige berufliche Qualifikation (Lehrabschluss bzw. Abschluss einer berufsbildenden mittleren Schule mit Zusatzprüfungen). Die Aufnahme erfolgt auf Basis eines Auswahlverfahrens (Werdegang, Eignungstest, Bewerbungsgespräch).]]></zulassungsvoraussetzungen_deutsch>';
|
||||
echo ' <zulassungsvoraussetzungen_englisch><![CDATA[Austrian or equivalent foreign school leaving certificate (Reifeprüfung), university entrance examination certificate (Studienberechtigungsprüfung), certificate or equivalent relevant professional qualification (Berufsreifeprüfung) plus entrance examination equal to the university entrance examination. Admission is on the basis of a selection process (including entrance exam and interview, professional background is considered).]]></zulassungsvoraussetzungen_englisch>';
|
||||
@@ -291,11 +291,9 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
|
||||
}
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
$akadgrad_id='';
|
||||
$qry = "SELECT bezeichnung, akadgrad_id, bezeichnung_english FROM lehre.tbl_abschlusspruefung JOIN lehre.tbl_abschlussbeurteilung USING(abschlussbeurteilung_kurzbz) WHERE prestudent_id=".$db->db_add_param($student->prestudent_id, FHC_INTEGER)." ORDER BY datum DESC LIMIT 1";
|
||||
$qry = "SELECT bezeichnung, akadgrad_id, bezeichnung_english FROM lehre.tbl_abschlusspruefung JOIN lehre.tbl_abschlussbeurteilung USING(abschlussbeurteilung_kurzbz) WHERE prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)." ORDER BY datum DESC LIMIT 1";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($row1 = $db->db_fetch_object())
|
||||
@@ -330,10 +328,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$praktikum = false;
|
||||
$auslandssemester = false;
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die($student->errormsg);
|
||||
|
||||
$qry = "SELECT projektarbeit_id FROM lehre.tbl_projektarbeit WHERE prestudent_id=".$db->db_add_param($student->prestudent_id)." AND (projekttyp_kurzbz='Praxis' OR projekttyp_kurzbz='Praktikum')";
|
||||
$qry = "SELECT projektarbeit_id FROM lehre.tbl_projektarbeit WHERE prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)." AND (projekttyp_kurzbz='Praxis' OR projekttyp_kurzbz='Praktikum')";
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($row1 = $db->db_fetch_object())
|
||||
@@ -344,10 +339,8 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
}
|
||||
|
||||
|
||||
if(!$std = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
$qry = "SELECT von, bis FROM bis.tbl_bisio WHERE prestudent_id=".$db->db_add_param($std->prestudent_id);
|
||||
$qry = "SELECT von, bis FROM bis.tbl_bisio WHERE prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows()>0)
|
||||
@@ -383,12 +376,10 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
echo " <stgl>$stgl</stgl>";
|
||||
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden!");
|
||||
|
||||
$abschlussbeurteilung='';
|
||||
// Hole Datum der Sponsion -> wenn keine vorhanden nimm aktuelles datum
|
||||
$qry = "SELECT sponsion, tbl_abschlussbeurteilung.bezeichnung_english,datum FROM lehre.tbl_abschlusspruefung JOIN lehre.tbl_abschlussbeurteilung USING(abschlussbeurteilung_kurzbz) WHERE prestudent_id=".$db->db_add_param($student->prestudent_id)." ORDER BY datum DESC LIMIT 1";
|
||||
$qry = "SELECT sponsion, tbl_abschlussbeurteilung.bezeichnung_english,datum FROM lehre.tbl_abschlusspruefung JOIN lehre.tbl_abschlussbeurteilung USING(abschlussbeurteilung_kurzbz) WHERE prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)." ORDER BY datum DESC LIMIT 1";
|
||||
$sponsion_datum = date('d.m.Y');
|
||||
$abschlusspruefungsdatum = '';
|
||||
$abschlussbeurteilung='';
|
||||
@@ -420,11 +411,8 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
/*
|
||||
* Hole Notendurchschnitt vom Jahr nach dem letzten Status und 2 Jahre davor,
|
||||
*/
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
|
||||
$prestudent->getLastStatus($prestudent_id_arr[$i], null, 'Student');
|
||||
|
||||
$lastStatusSemester = $prestudent->studiensemester_kurzbz;
|
||||
$studiensemester = new studiensemester();
|
||||
@@ -520,14 +508,11 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
echo " <gradePrevLastYearNb>".sprintf("%01.1f",($noteArrayPrev[7]/$noten_anzahl*100))."</gradePrevLastYearNb>";
|
||||
echo " <gradePrevLastYearEa>".sprintf("%01.1f",($noteArrayPrev[12]/$noten_anzahl*100))."</gradePrevLastYearEa>";
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
//Projektarbeiten
|
||||
$qry_projektarbeit = "SELECT lehrveranstaltung_id, titel, themenbereich, note, titel_english
|
||||
FROM lehre.tbl_projektarbeit
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE prestudent_id=".$db->db_add_param($student->prestudent_id)."
|
||||
WHERE prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)."
|
||||
AND projekttyp_kurzbz in('Bachelor', 'Diplom')
|
||||
ORDER BY beginn ASC, projektarbeit_id ASC;";
|
||||
|
||||
@@ -555,7 +540,6 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$semester_ects = 0;
|
||||
//$thesis_beschreibung = '';
|
||||
echo "<semesters>";
|
||||
$student = new student($uid_arr[$i]); // TODO EINE
|
||||
|
||||
// alle semester für das ausbildungssemester holen
|
||||
// Semester wo Unterbrecher nicht holen
|
||||
@@ -564,7 +548,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
join lehre.tbl_note note using(note)
|
||||
join lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
|
||||
join public.tbl_prestudentstatus status USING(prestudent_id)
|
||||
where prestudent_id = ".$db->db_add_param($student->prestudent_id, FHC_INTEGER)." AND
|
||||
where prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)." AND
|
||||
zeugnis = true AND
|
||||
status.ausbildungssemester = ".$db->db_add_param($start)." AND
|
||||
status.status_kurzbz NOT IN('Unterbrecher', 'Interessent','Bewerber','Aufgenommener','Abgewiesener','Wartender')
|
||||
@@ -594,8 +578,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$helpyear = sprintf("%02d",$helpyear);
|
||||
$semester_kurzbz = 'Winter Semester '.$year.'/'.$helpyear;
|
||||
}
|
||||
|
||||
$sqlStudent = new student($uid_arr[$i]); // TODO EINE
|
||||
$sqlStudent = new student();
|
||||
|
||||
echo " <semesterKurzbz>Semester $start | $semester_kurzbz</semesterKurzbz>";
|
||||
|
||||
@@ -608,7 +591,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
from lehre.tbl_zeugnisnote zeugnis
|
||||
join lehre.tbl_note note using(note)
|
||||
join lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
|
||||
where prestudent_id = ".$db->db_add_param($sqlStudent->prestudent_id, FHC_INTEGER)." AND zeugnis = true AND
|
||||
where prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)." AND zeugnis = true AND
|
||||
studiensemester_kurzbz in (".$sqlStudent->implode4SQL($aktuellesSemester).")
|
||||
ORDER BY sort, tbl_lehrveranstaltung.bezeichnung;";
|
||||
|
||||
@@ -747,12 +730,12 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
}
|
||||
$arrayLvAusbildungssemester[$row_stud->lehrveranstaltung_id]['lehrform_kurzbz']= $lehrform_kurzbz;
|
||||
// echo " <lehrform_kurzbz>$lehrform_kurzbz</lehrform_kurzbz>";
|
||||
$student = new student($uid_arr[$i]); // TODO EINE
|
||||
|
||||
// hole benotungsdatum von aktueller LV
|
||||
$qry_benotung = "SELECT benotungsdatum FROM
|
||||
lehre.tbl_zeugnisnote WHERE lehrveranstaltung_id = ".$db->db_add_param($row_stud->lehrveranstaltung_id)."
|
||||
AND studiensemester_kurzbz = ".$db->db_add_param($row_stud->studiensemester_kurzbz)."
|
||||
AND prestudent_id = ".$db->db_add_param($student->prestudent_id, FHC_INTEGER).";";
|
||||
AND prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER).";";
|
||||
if($result_benotung = $db->db_query($qry_benotung))
|
||||
{
|
||||
if($row_benotung = $db->db_fetch_object($result_benotung))
|
||||
@@ -768,8 +751,6 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$bezeichnung_englisch = $row_stud->bezeichnung_english;
|
||||
$bezeichnung = $row_stud->bezeichnung;
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
// Check ob Lehrveranstaltung ein Praktikum mit eingetragener Firma besitzt
|
||||
$qry = "
|
||||
@@ -780,7 +761,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
JOIN public.tbl_firma USING(firma_id)
|
||||
WHERE
|
||||
prestudent_id=".$db->db_add_param($student->prestudent_id)."
|
||||
prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)."
|
||||
AND projekttyp_kurzbz in('Praktikum', 'Praxis')
|
||||
AND tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($row_stud->lehrveranstaltung_id)."
|
||||
ORDER BY beginn ASC, projektarbeit_id ASC;";
|
||||
@@ -794,14 +775,12 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
}
|
||||
}
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
// Check ob an Lehrveranstaltung eine Thesis hängt
|
||||
$qry = "SELECT lehrveranstaltung_id, titel, themenbereich, note, titel_english
|
||||
FROM lehre.tbl_projektarbeit
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE prestudent_id=".$db->db_add_param($student->prestudent_id)."
|
||||
WHERE prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)."
|
||||
AND projekttyp_kurzbz in('Bachelor', 'Diplom')
|
||||
AND lehrveranstaltung_id=".$db->db_add_param($row_stud->lehrveranstaltung_id)."
|
||||
ORDER BY beginn DESC, projektarbeit_id DESC LIMIT 1;";
|
||||
@@ -876,15 +855,13 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
</lv>';
|
||||
}
|
||||
|
||||
if(!$student = new student($uid_arr[$i])) // TODO EINE
|
||||
die("Student nicht gefunden");
|
||||
|
||||
// Ist er Outgoing in diesem semester
|
||||
$qry_outgoing = "SELECT studiensemester_kurzbz, ort, ects, semesterstunden, von, bis, universitaet, lehrveranstaltung_id
|
||||
FROM bis.tbl_bisio
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
|
||||
WHERE prestudent_id = ".$db->db_add_param($student->prestudent_id);
|
||||
WHERE prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER);
|
||||
|
||||
if($result_outgoing = $db->db_query($qry_outgoing))
|
||||
{
|
||||
@@ -896,13 +873,12 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$note_outgoing = 'ar';
|
||||
$benotungsdatum_outgoing = '';
|
||||
$lehrform_kurzbz_outgoing = '';
|
||||
$student = new student($uid_arr[$i]); // TODO EINE
|
||||
|
||||
$qry_outgoing_note = "SELECT anmerkung, benotungsdatum, lehrform_kurzbz
|
||||
FROM lehre.tbl_zeugnisnote
|
||||
JOIN tbl_lehrveranstaltung using(lehrveranstaltung_id)
|
||||
JOIN tbl_note using(note)
|
||||
WHERE lehrveranstaltung_id = ".$db->db_add_param($row_outgoing->lehrveranstaltung_id)." and prestudent_id = ".$db->db_add_param($student->prestudent_id, FHC_INTEGER);
|
||||
WHERE lehrveranstaltung_id = ".$db->db_add_param($row_outgoing->lehrveranstaltung_id)." and prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER);
|
||||
|
||||
|
||||
if($result_outgoing_note = $db->db_query($qry_outgoing_note))
|
||||
|
||||
+24
-28
@@ -29,7 +29,6 @@ require_once('../include/mitarbeiter.class.php');
|
||||
require_once('../include/studiensemester.class.php');
|
||||
require_once('../include/studienordnung.class.php');
|
||||
require_once('../include/studienplan.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
|
||||
$datum = new datum();
|
||||
@@ -37,17 +36,17 @@ $db = new basis_db();
|
||||
|
||||
$lehrveranstaltungen = array();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
$uid = $_GET['uid'];
|
||||
if(isset($_GET['prestudent_id']))
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
else
|
||||
$uid = null;
|
||||
$prestudent_id = null;
|
||||
|
||||
$uid_arr = explode(";",$uid);
|
||||
$prestudent_id_arr = explode(";",$prestudent_id);
|
||||
|
||||
if ($uid_arr[0] == "")
|
||||
if ($prestudent_id_arr[0] == "")
|
||||
{
|
||||
unset($uid_arr[0]);
|
||||
$uid_arr = array_values($uid_arr);
|
||||
unset($prestudent_id_arr[0]);
|
||||
$prestudent_id_arr = array_values($prestudent_id_arr);
|
||||
}
|
||||
|
||||
// Noten laden
|
||||
@@ -77,14 +76,12 @@ $lehrveranstaltungen = array();
|
||||
$xml = "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>";
|
||||
$xml .= "<zeugnisse>";
|
||||
|
||||
foreach($uid_arr as $uid)
|
||||
foreach($prestudent_id_arr as $prestudent_id)
|
||||
{
|
||||
$student = new student();// TODO EINE in der query weiter unten sollte prestudent_id nicht eindeutig sein!
|
||||
if(!$student->load($uid))
|
||||
die($student->errormsg);
|
||||
|
||||
$prestudent = new prestudent($prestudent_id);
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$stgleiter = $studiengang->getLeitung($student->studiengang_kz);
|
||||
$stgleiter = $studiengang->getLeitung($prestudent->studiengang_kz);
|
||||
$stgl='';
|
||||
foreach ($stgleiter as $stgleiter_uid)
|
||||
{
|
||||
@@ -98,7 +95,7 @@ $lehrveranstaltungen = array();
|
||||
//damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint
|
||||
$qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id=".$db->db_add_param($student->prestudent_id)." AND
|
||||
prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)." AND
|
||||
studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
|
||||
status_kurzbz not in('Incoming','Aufgenommener','Bewerber','Wartender', 'Interessent')
|
||||
ORDER BY DATUM DESC LIMIT 1";
|
||||
@@ -112,7 +109,7 @@ $lehrveranstaltungen = array();
|
||||
|
||||
$qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id=".$db->db_add_param($student->prestudent_id)." AND
|
||||
prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER)." AND
|
||||
studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz2)." AND
|
||||
status_kurzbz not in('Incoming','Aufgenommener','Bewerber','Wartender', 'Interessent')
|
||||
ORDER BY DATUM DESC LIMIT 1";
|
||||
@@ -138,14 +135,13 @@ $lehrveranstaltungen = array();
|
||||
$studienjahr = ($jahr1>$jahr2?$jahr2.'/'.$jahr1:$jahr1.'/'.$jahr2);
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($student->studiengang_kz);
|
||||
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getLastStatus($student->prestudent_id, $studiensemester_kurzbz);
|
||||
|
||||
$studiengang->load($prestudent->studiengang_kz);
|
||||
|
||||
$prestudent->getLastStatus($prestudent_id, $studiensemester_kurzbz);
|
||||
|
||||
if($prestudent->studienplan_id=='')
|
||||
{
|
||||
die('keine Studienplan Zuordnung fuer '.$student->nachname);
|
||||
die('keine Studienplan Zuordnung fuer '.$prestudent->nachname);
|
||||
}
|
||||
$studienplan = new studienplan();
|
||||
if(!$studienplan->loadStudienplan($prestudent->studienplan_id))
|
||||
@@ -164,13 +160,13 @@ $lehrveranstaltungen = array();
|
||||
$xml .= "\n <studiengang_englisch>".$studienordnung->studiengangbezeichnung_englisch."</studiengang_englisch>";
|
||||
$xml .= "\n <studiengang_typ>".$studiengang->typ."</studiengang_typ>";
|
||||
$xml .= "\n <studiengang_kz>".sprintf('%04s', abs($studiengang->studiengang_kz))."</studiengang_kz>";
|
||||
$xml .= "\n <anrede>".$student->anrede."</anrede>";
|
||||
$xml .= "\n <vorname>".$student->vorname."</vorname>";
|
||||
$xml .= "\n <nachname>".$student->nachname."</nachname>";
|
||||
$xml .= "\n <name>".trim($student->titelpre.' '.trim($student->vorname.' '.$student->vornamen).' '.mb_strtoupper($student->nachname).($student->titelpost!=''?', '.$student->titelpost:''))."</name>";
|
||||
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
|
||||
$xml .= "\n <anrede>".$prestudent->anrede."</anrede>";
|
||||
$xml .= "\n <vorname>".$prestudent->vorname."</vorname>";
|
||||
$xml .= "\n <nachname>".$prestudent->nachname."</nachname>";
|
||||
$xml .= "\n <name>".trim($prestudent->titelpre.' '.trim($prestudent->vorname.' '.$prestudent->vornamen).' '.mb_strtoupper($prestudent->nachname).($prestudent->titelpost!=''?', '.$prestudent->titelpost:''))."</name>";
|
||||
$gebdatum = date('d.m.Y',strtotime($prestudent->gebdatum));
|
||||
$xml .= "\n <gebdatum>".$gebdatum."</gebdatum>";
|
||||
$xml .= "\n <personenkennzeichen>".$student->matrikelnr."</personenkennzeichen>";
|
||||
$xml .= "\n <personenkennzeichen>".$prestudent->perskz."</personenkennzeichen>";
|
||||
$xml .= "\n <studiengangsleiter>".$stgl."</studiengangsleiter>";
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$xml .= "\n <datum_aktuell>".$datum_aktuell."</datum_aktuell>";
|
||||
|
||||
+5
-3
@@ -16,8 +16,9 @@
|
||||
* 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>.
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
// header für no cache
|
||||
header("Cache-Control: no-cache");
|
||||
@@ -97,6 +98,7 @@ if($db->db_query($qry))
|
||||
<GRP:bezeichnung><![CDATA['.$row->bezeichnung.']]></GRP:bezeichnung>
|
||||
<GRP:generiert><![CDATA['.($row->generiert=='t'?'Ja':'Nein').']]></GRP:generiert>
|
||||
<GRP:uid><![CDATA['.$row->uid.']]></GRP:uid>
|
||||
<GRP:prestudent_id><![CDATA['.$row->prestudent_id.']]></GRP:prestudent_id>
|
||||
<GRP:studiensemester_kurzbz><![CDATA['.$row->studiensemester_kurzbz.']]></GRP:studiensemester_kurzbz>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
@@ -105,5 +107,5 @@ if($db->db_query($qry))
|
||||
}
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
|
||||
@@ -16,7 +16,8 @@
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Karl Burkhart <burkhart@technikum-wien.at>
|
||||
* Authors: Karl Burkhart <burkhart@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
@@ -53,15 +54,15 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
|
||||
if(!$student->load($preoutgoing->uid))
|
||||
die('Konnte Student nicht laden!');
|
||||
|
||||
$projektarbeittitel = $preoutgoing->projektarbeittitel;
|
||||
|
||||
$projektarbeittitel = $preoutgoing->projektarbeittitel;
|
||||
$studiengang->load($student->studiengang_kz);
|
||||
$preoutgoingFirma = new preoutgoing();
|
||||
$preoutgoingFirma->loadAuswahl($preoutgoing_id);
|
||||
$preoutgoing_firma = $preoutgoingFirma->firma_id;
|
||||
$prestudent->getLastStatus($student->prestudent_id); // TODO EINE NICHT EINDEUTIG
|
||||
|
||||
$firma = new firma();
|
||||
|
||||
$firma = new firma();
|
||||
$nation = new nation();
|
||||
if($preoutgoing_firma != '')
|
||||
{
|
||||
|
||||
@@ -16,8 +16,9 @@
|
||||
* 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>.
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
/*
|
||||
* Created on 02.12.2004
|
||||
@@ -58,10 +59,10 @@ if (isset($_GET['sem']) && is_numeric($_GET['sem']))
|
||||
$sem=$_GET['sem'];
|
||||
else
|
||||
$sem=null;
|
||||
if(isset($_GET['uid']))
|
||||
$student_uid = $_GET['uid'];
|
||||
if(isset($_GET['prestudent_id']))
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
else
|
||||
$student_uid=null;
|
||||
$prestudent_id=null;
|
||||
|
||||
if(isset($_GET['lehrveranstaltung_kompatibel_id']))
|
||||
{
|
||||
@@ -73,11 +74,9 @@ else
|
||||
|
||||
$lehrveranstaltung=new lehrveranstaltung();
|
||||
|
||||
if($student_uid!='')
|
||||
if($prestudent_id!='')
|
||||
{
|
||||
//TODO EINE
|
||||
$student = new student($student_uid);
|
||||
$lehrveranstaltung->load_lva_student($student->prestudent_id);
|
||||
$lehrveranstaltung->load_lva_student($prestudent_id);
|
||||
}
|
||||
elseif($lehrveranstaltung_kompatibel_id!='')
|
||||
{
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at> and
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>.
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
// content type setzen
|
||||
header("Content-type: application/xhtml+xml");
|
||||
@@ -64,17 +64,17 @@ function breaktext($text, $zeichen)
|
||||
if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
{
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
$uid = $_GET['uid'];
|
||||
if(isset($_GET['prestudent_id']))
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
else
|
||||
$uid = null;
|
||||
$prestudent_id = null;
|
||||
|
||||
$uid_arr = explode(";",$uid);
|
||||
$prestudent_id_arr = explode(";",$prestudent_id);
|
||||
|
||||
if ($uid_arr[0] == "")
|
||||
if ($prestudent_id_arr[0] == "")
|
||||
{
|
||||
unset($uid_arr[0]);
|
||||
$uid_arr = array_values($uid_arr);
|
||||
unset($prestudent_id_arr[0]);
|
||||
$prestudent_id_arr = array_values($prestudent_id_arr);
|
||||
}
|
||||
|
||||
$note_arr = array();
|
||||
@@ -179,14 +179,14 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$studiensemester = new studiensemester();
|
||||
$studiensemester->load($studiensemester_kurzbz);
|
||||
|
||||
for ($i = 0; $i < sizeof($uid_arr); $i++)
|
||||
for ($i = 0; $i < sizeof($prestudent_id_arr); $i++)
|
||||
{
|
||||
$anzahl_fussnoten=0;
|
||||
$studiengang_typ='';
|
||||
$xml_fussnote='';
|
||||
|
||||
$query = " SELECT tbl_student.matrikelnr,
|
||||
tbl_student.studiengang_kz,
|
||||
$query = " SELECT tbl_prestudent.perskz,
|
||||
tbl_prestudent.studiengang_kz,
|
||||
tbl_studiengang.typ,
|
||||
tbl_studiengang.bezeichnung,
|
||||
tbl_person.vorname,
|
||||
@@ -196,13 +196,13 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
tbl_person.titelpost,
|
||||
tbl_person.geschlecht
|
||||
FROM tbl_person,
|
||||
tbl_student,
|
||||
tbl_prestudent,
|
||||
tbl_studiengang,
|
||||
tbl_benutzer
|
||||
WHERE tbl_student.studiengang_kz = tbl_studiengang.studiengang_kz
|
||||
AND tbl_student.student_uid = tbl_benutzer.uid
|
||||
WHERE tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz
|
||||
AND tbl_prestudent.uid = tbl_benutzer.uid
|
||||
AND tbl_benutzer.person_id = tbl_person.person_id
|
||||
AND tbl_student.student_uid = '".$uid_arr[$i]."'";
|
||||
AND tbl_prestudent.prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER);
|
||||
|
||||
if($db->db_query($query))
|
||||
{
|
||||
@@ -228,15 +228,14 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$gebdatum = date('d.m.Y',strtotime($row->gebdatum));
|
||||
$xml .= "\n <gebdatum>".$gebdatum."</gebdatum>";
|
||||
$xml .= "\n <geschlecht>".$row->geschlecht."</geschlecht>";
|
||||
$xml .= "\n <matrikelnr>".trim($row->matrikelnr)."</matrikelnr>";
|
||||
$xml .= "\n <matrikelnr>".trim($row->perskz)."</matrikelnr>";
|
||||
$xml .= "\n <studiengangsleiter>".$stgl."</studiengangsleiter>";
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$xml .= "\n <ort_datum>Wien, am ".$datum_aktuell."</ort_datum>";
|
||||
|
||||
$student = new student($uid_arr[$i]); // TODO EINE
|
||||
|
||||
$obj = new zeugnisnote();
|
||||
$obj->load($lehrveranstaltung_id, $student->prestudent_id, $studiensemester_kurzbz);
|
||||
$obj->load($lehrveranstaltung_id, $prestudent_id_arr[$i], $studiensemester_kurzbz);
|
||||
|
||||
if ($obj->note)
|
||||
{
|
||||
|
||||
+93
-92
@@ -1,92 +1,93 @@
|
||||
<?php
|
||||
/* Copyright (C) 2004 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
// header for no cache
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
// content type setzen
|
||||
header("Content-type: application/xhtml+xml");
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/datum.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$datum = new datum();
|
||||
|
||||
loadVariables($user);
|
||||
|
||||
if(isset($_GET['filter']))
|
||||
$filter = $_GET['filter'];
|
||||
else
|
||||
die('Filter muss uebergeben werden');
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/person';
|
||||
|
||||
echo '
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:NC="http://home.netscape.com/NC-rdf#"
|
||||
xmlns:PERSON="'.$rdf_url.'/rdf#"
|
||||
>
|
||||
|
||||
|
||||
<RDF:Seq RDF:about="'.$rdf_url.'/liste">
|
||||
';
|
||||
//$filter = utf8_encode($filter);
|
||||
$qry = "SELECT
|
||||
distinct person_id, vorname, nachname, titelpre, titelpost,
|
||||
CASE
|
||||
WHEN (SELECT count(*) FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) WHERE person_id=tbl_person.person_id)>0 THEN 'Mitarbeiter'
|
||||
WHEN (SELECT count(*) FROM public.tbl_benutzer JOIN public.tbl_student ON(uid=student_uid) WHERE person_id=tbl_person.person_id)>0 THEN 'Student'
|
||||
ELSE 'Person'
|
||||
END as status
|
||||
FROM public.tbl_person WHERE nachname ~* '".addslashes($filter).".*' ORDER BY nachname, vorname, titelpre, titelpost";
|
||||
|
||||
if(isset($_GET['nurmittitel']))
|
||||
{
|
||||
$qry.=" AND (titelpre<>'' OR titelpost<>'')";
|
||||
}
|
||||
$db = new basis_db();
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description RDF:about="'.$rdf_url.'/'.$row->person_id.'" >
|
||||
<PERSON:person_id NC:parseType="Integer"><![CDATA['.$row->person_id.']]></PERSON:person_id>
|
||||
<PERSON:vorname><![CDATA['.$row->vorname.']]></PERSON:vorname>
|
||||
<PERSON:nachname><![CDATA['.$row->nachname.']]></PERSON:nachname>
|
||||
<PERSON:anzeigename><![CDATA['.$row->nachname.' '.$row->vorname.' '.$row->titelpre.' '.$row->titelpost.']]></PERSON:anzeigename>
|
||||
<PERSON:status><![CDATA['.$row->status.']]></PERSON:status>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
<?php
|
||||
/* Copyright (C) 2004 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>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien>.
|
||||
*/
|
||||
// header for no cache
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
// content type setzen
|
||||
header("Content-type: application/xhtml+xml");
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/datum.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$datum = new datum();
|
||||
|
||||
loadVariables($user);
|
||||
|
||||
if(isset($_GET['filter']))
|
||||
$filter = $_GET['filter'];
|
||||
else
|
||||
die('Filter muss uebergeben werden');
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/person';
|
||||
|
||||
echo '
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:NC="http://home.netscape.com/NC-rdf#"
|
||||
xmlns:PERSON="'.$rdf_url.'/rdf#"
|
||||
>
|
||||
|
||||
|
||||
<RDF:Seq RDF:about="'.$rdf_url.'/liste">
|
||||
';
|
||||
//$filter = utf8_encode($filter);
|
||||
$qry = "SELECT
|
||||
distinct person_id, vorname, nachname, titelpre, titelpost,
|
||||
CASE
|
||||
WHEN (SELECT count(*) FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) WHERE person_id=tbl_person.person_id)>0 THEN 'Mitarbeiter'
|
||||
WHEN (SELECT count(*) FROM public.tbl_benutzer JOIN public.tbl_prestudent USING(uid) WHERE tbl_prestudent.person_id=tbl_person.person_id)>0 THEN 'Student'
|
||||
ELSE 'Person'
|
||||
END as status
|
||||
FROM public.tbl_person WHERE nachname ~* '".addslashes($filter).".*' ORDER BY nachname, vorname, titelpre, titelpost";
|
||||
|
||||
if(isset($_GET['nurmittitel']))
|
||||
{
|
||||
$qry.=" AND (titelpre<>'' OR titelpost<>'')";
|
||||
}
|
||||
$db = new basis_db();
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description RDF:about="'.$rdf_url.'/'.$row->person_id.'" >
|
||||
<PERSON:person_id NC:parseType="Integer"><![CDATA['.$row->person_id.']]></PERSON:person_id>
|
||||
<PERSON:vorname><![CDATA['.$row->vorname.']]></PERSON:vorname>
|
||||
<PERSON:nachname><![CDATA['.$row->nachname.']]></PERSON:nachname>
|
||||
<PERSON:anzeigename><![CDATA['.$row->nachname.' '.$row->vorname.' '.$row->titelpre.' '.$row->titelpost.']]></PERSON:anzeigename>
|
||||
<PERSON:status><![CDATA['.$row->status.']]></PERSON:status>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
|
||||
@@ -50,12 +50,12 @@ echo '
|
||||
$datum_obj = new datum();
|
||||
$projektarbeit = new projektarbeit();
|
||||
|
||||
if(isset($_GET['student_uid']))
|
||||
if(isset($_GET['prestudent_id']))
|
||||
{
|
||||
|
||||
$student = new student($_GET['student_uid']); // TODO EINE
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
|
||||
$projektarbeit->getProjektarbeit($student->prestudent_id);
|
||||
$projektarbeit->getProjektarbeit($prestudent_id);
|
||||
|
||||
foreach ($projektarbeit->result as $row)
|
||||
draw_content($row);
|
||||
@@ -68,15 +68,13 @@ elseif(isset($_GET['projektarbeit_id']) && is_numeric($_GET['projektarbeit_id'])
|
||||
die('Eintrag wurde nicht gefunden');
|
||||
}
|
||||
else
|
||||
die('Student_uid oder Projektarbeit_id muss uebergeben werden');
|
||||
die('Prestudent_id oder Projektarbeit_id muss uebergeben werden');
|
||||
|
||||
|
||||
function draw_content($row)
|
||||
{
|
||||
global $rdf_url, $datum_obj;
|
||||
$lehreinheit = new lehreinheit($row->lehreinheit_id);
|
||||
$stud = new student();//EINE_UID TODO
|
||||
$uid = $stud->getUid($row->prestudent_id);
|
||||
|
||||
echo '
|
||||
<RDF:li>
|
||||
@@ -89,7 +87,7 @@ function draw_content($row)
|
||||
<PROJEKTARBEIT:lehreinheit_id><![CDATA['.$row->lehreinheit_id.']]></PROJEKTARBEIT:lehreinheit_id>
|
||||
<PROJEKTARBEIT:lehreinheit_stsem><![CDATA['.$lehreinheit->studiensemester_kurzbz.']]></PROJEKTARBEIT:lehreinheit_stsem>
|
||||
<PROJEKTARBEIT:lehrveranstaltung_id><![CDATA['.$lehreinheit->lehrveranstaltung_id.']]></PROJEKTARBEIT:lehrveranstaltung_id>
|
||||
<PROJEKTARBEIT:student_uid><![CDATA['.$uid.']]></PROJEKTARBEIT:student_uid>
|
||||
<PROJEKTARBEIT:prestudent_id><![CDATA['.$row->prestudent_id.']]></PROJEKTARBEIT:prestudent_id>
|
||||
<PROJEKTARBEIT:firma_id><![CDATA['.$row->firma_id.']]></PROJEKTARBEIT:firma_id>
|
||||
<PROJEKTARBEIT:note><![CDATA['.$row->note.']]></PROJEKTARBEIT:note>
|
||||
<PROJEKTARBEIT:punkte><![CDATA['.$row->punkte.']]></PROJEKTARBEIT:punkte>
|
||||
|
||||
+5
-1
@@ -403,7 +403,11 @@ if($xmlformat=='rdf')
|
||||
|
||||
if(isset($uid))
|
||||
{
|
||||
$student=new student(); // TODO EINE eindeutig?
|
||||
/* TODO EINE
|
||||
* Hier wird der Student und der Prestudent gezeichnet
|
||||
* der Student ist aber nicht eindeutig!
|
||||
*/
|
||||
$student=new student();
|
||||
$student->load($uid, $studiensemester_kurzbz);
|
||||
$prestd = new prestudent();
|
||||
|
||||
|
||||
+19
-21
@@ -31,12 +31,11 @@ require_once('../include/studiensemester.class.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/mitarbeiter.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
|
||||
$datum = new datum();
|
||||
$db = new basis_db();
|
||||
|
||||
function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
function draw_studienerfolg($prestudent_id, $studiensemester_kurzbz)
|
||||
{
|
||||
global $xml, $note_arr, $datum, $note_wert;
|
||||
|
||||
@@ -55,7 +54,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz
|
||||
and tbl_prestudent.uid = tbl_benutzer.uid
|
||||
and tbl_benutzer.person_id = tbl_person.person_id
|
||||
and tbl_prestudent.uid = ".$db->db_add_param($uid)."
|
||||
and tbl_prestudent.prestudent_id = ".$db->db_add_param($prestudent_id, FHC_INTEGER)."
|
||||
and tbl_studentlehrverband.prestudent_id=tbl_prestudent.prestudent_id
|
||||
and tbl_studiensemester.studiensemester_kurzbz = tbl_studentlehrverband.studiensemester_kurzbz
|
||||
and tbl_studentlehrverband.studiensemester_kurzbz = ".$db->db_add_param($studiensemester_kurzbz);
|
||||
@@ -70,10 +69,8 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$studiensemester_aktuell = $studiensemester->getNearest();
|
||||
$student = new student(); // TODO EINE
|
||||
$student->load($uid);
|
||||
$prestudentstatus = new prestudent();
|
||||
$prestudentstatus->getLastStatus($student->prestudent_id,'','Student');
|
||||
$prestudentstatus->getLastStatus($prestudent_id,'','Student');
|
||||
|
||||
if($studiensemester_aktuell!=$prestudentstatus->studiensemester_kurzbz)
|
||||
$studiensemester_aktuell = $prestudentstatus->studiensemester_kurzbz;
|
||||
@@ -85,7 +82,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
WHERE tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id
|
||||
AND tbl_prestudentstatus.status_kurzbz in('Student','Incoming','Outgoing','Praktikant','Diplomand')
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_aktuell)."
|
||||
AND tbl_prestudent.uid = ".$db->db_add_param($uid);
|
||||
AND tbl_prestudent.prestudent_id = ".$db->db_add_param($prestudent_id, FHC_INTEGER);
|
||||
|
||||
if($db->db_query($qry_semester))
|
||||
if($row_semester = $db->db_fetch_object())
|
||||
@@ -98,7 +95,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
WHERE tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id
|
||||
AND tbl_prestudentstatus.status_kurzbz in('Student','Incoming','Outgoing','Praktikant','Diplomand')
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
|
||||
AND tbl_prestudent.uid = ".$db->db_add_param($uid);
|
||||
AND tbl_prestudent.prestudent_id = ".$db->db_add_param($prestudent_id, FHC_INTEGER);
|
||||
|
||||
$orgform='';
|
||||
if($db->db_query($qry_semester))
|
||||
@@ -167,7 +164,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
|
||||
$obj = new zeugnisnote();
|
||||
|
||||
if(!$obj->getZeugnisnoten($lehrveranstaltung_id=null, $student->prestudent_id, $studiensemester_kurzbz))
|
||||
if(!$obj->getZeugnisnoten($lehrveranstaltung_id=null, $prestudent_id, $studiensemester_kurzbz))
|
||||
die('Fehler beim Laden der Noten:'.$obj->errormsg);
|
||||
|
||||
|
||||
@@ -240,17 +237,18 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
|
||||
if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
{
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
$uid = $_GET['uid'];
|
||||
if(isset($_GET['prestudent_id']))
|
||||
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
else
|
||||
$uid = null;
|
||||
$prestudent_id = null;
|
||||
|
||||
$uid_arr = explode(";",$uid);
|
||||
$prestudent_id_arr = explode(";",$prestudent_id);
|
||||
|
||||
if ($uid_arr[0] == "")
|
||||
if ($prestudent_id_arr[0] == "")
|
||||
{
|
||||
unset($uid_arr[0]);
|
||||
$uid_arr = array_values($uid_arr);
|
||||
unset($prestudent_id_arr[0]);
|
||||
$prestudent_id_arr = array_values($prestudent_id_arr);
|
||||
}
|
||||
|
||||
$note_arr = array();
|
||||
@@ -275,26 +273,26 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
|
||||
if(isset($_GET['all']))
|
||||
{
|
||||
for ($i = 0; $i < sizeof($uid_arr); $i++)
|
||||
for ($i = 0; $i < sizeof($prestudent_id_arr); $i++)
|
||||
{
|
||||
//Studienbestaetigung fuer alle Semester dieses Studenten
|
||||
$qry = "SELECT * FROM public.tbl_studiensemester
|
||||
WHERE studiensemester_kurzbz in(
|
||||
SELECT studiensemester_kurzbz
|
||||
FROM public.tbl_prestudentstatus JOIN public.tbl_prestudent USING(prestudent_id)
|
||||
WHERE uid='".addslashes($uid_arr[$i])."')
|
||||
WHERE tbl_prestudent.prestudent_id=".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER).")
|
||||
ORDER BY start";
|
||||
if($db->db_query($qry))
|
||||
while($row = $db->db_fetch_object())
|
||||
draw_studienerfolg($uid_arr[$i], $row->studiensemester_kurzbz);
|
||||
draw_studienerfolg($prestudent_id_arr[$i], $row->studiensemester_kurzbz);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Studienbestaetigung fuer ein bestimmtes Semester
|
||||
for ($i = 0; $i < sizeof($uid_arr); $i++)
|
||||
for ($i = 0; $i < sizeof($prestudent_id_arr); $i++)
|
||||
{
|
||||
draw_studienerfolg($uid_arr[$i], $studiensemester_kurzbz);
|
||||
draw_studienerfolg($prestudent_id_arr[$i], $studiensemester_kurzbz);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+10
-11
@@ -64,17 +64,17 @@ function breaktext($text, $zeichen)
|
||||
if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
{
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
$uid = $_GET['uid'];
|
||||
if(isset($_GET['prestudent_id']))
|
||||
$prestudent_id = $_GET['prestudent_id'];
|
||||
else
|
||||
$uid = null;
|
||||
$prestudent_id = null;
|
||||
|
||||
$uid_arr = explode(";",$uid);
|
||||
$prestudent_id_arr = explode(";",$prestudent_id);
|
||||
|
||||
if ($uid_arr[0] == "")
|
||||
if ($prestudent_id_arr[0] == "")
|
||||
{
|
||||
unset($uid_arr[0]);
|
||||
$uid_arr = array_values($uid_arr);
|
||||
unset($prestudent_id_arr[0]);
|
||||
$prestudent_id_arr = array_values($prestudent_id_arr);
|
||||
}
|
||||
|
||||
$note_arr = array();
|
||||
@@ -179,13 +179,13 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$studiensemester = new studiensemester();
|
||||
$studiensemester->load($studiensemester_kurzbz);
|
||||
|
||||
for ($i = 0; $i < sizeof($uid_arr); $i++)
|
||||
for ($i = 0; $i < sizeof($prestudent_id_arr); $i++)
|
||||
{
|
||||
$anzahl_fussnoten=0;
|
||||
$studiengang_typ='';
|
||||
$xml_fussnote='';
|
||||
|
||||
$query = "SELECT tbl_prestudent.perskz, tbl_prestudent.studiengang_kz, tbl_studiengang.typ, tbl_studiengang.bezeichnung, tbl_person.vorname, tbl_person.nachname,tbl_person.gebdatum,tbl_person.titelpre, tbl_person.titelpost, tbl_person.geschlecht FROM tbl_person, tbl_prestudent, tbl_studiengang, tbl_benutzer WHERE tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz and tbl_prestudent.uid = tbl_benutzer.uid and tbl_benutzer.person_id = tbl_person.person_id and tbl_prestudent.uid = '".$uid_arr[$i]."'";
|
||||
$query = "SELECT tbl_prestudent.perskz, tbl_prestudent.studiengang_kz, tbl_studiengang.typ, tbl_studiengang.bezeichnung, tbl_person.vorname, tbl_person.nachname,tbl_person.gebdatum,tbl_person.titelpre, tbl_person.titelpost, tbl_person.geschlecht FROM tbl_person, tbl_prestudent, tbl_studiengang, tbl_benutzer WHERE tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz and tbl_prestudent.uid = tbl_benutzer.uid and tbl_benutzer.person_id = tbl_person.person_id and tbl_prestudent.prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER);
|
||||
|
||||
if($db->db_query($query))
|
||||
{
|
||||
@@ -218,10 +218,9 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
$datum_aktuell = date('d.m.Y');
|
||||
$xml .= "\n <ort_datum>Wien, am ".$datum_aktuell."</ort_datum>";
|
||||
|
||||
$student = new student($uid_arr[$i]);// TODO EINE
|
||||
|
||||
$obj = new zeugnisnote();
|
||||
$obj->load($lehrveranstaltung_id, $student->prestudent_id, $studiensemester_kurzbz);
|
||||
$obj->load($lehrveranstaltung_id, $prestudent_id_arr[$i], $studiensemester_kurzbz);
|
||||
|
||||
if ($obj->note)
|
||||
{
|
||||
|
||||
@@ -79,7 +79,7 @@ echo '
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:NOTE="'.$rdf_url.'/rdf#"
|
||||
>
|
||||
<RDF:Seq about="'.$rdf_url.'/liste">
|
||||
<RDF:Seq about="'.$rdf_url.'/liste">
|
||||
';
|
||||
|
||||
//Daten holen
|
||||
@@ -100,8 +100,8 @@ foreach ($obj->result as $row)
|
||||
$zeugnis='';
|
||||
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description id="'.$row->lehrveranstaltung_id.'/'.$row->prestudent_id.'/'.$row->studiensemester_kurzbz.'" about="'.$rdf_url.'/'.$row->lehrveranstaltung_id.'/'.$row->prestudent_id.'/'.$row->studiensemester_kurzbz.'" >
|
||||
<RDF:li>
|
||||
<RDF:Description id="'.$row->lehrveranstaltung_id.'/'.$row->prestudent_id.'/'.$row->studiensemester_kurzbz.'" about="'.$rdf_url.'/'.$row->lehrveranstaltung_id.'/'.$row->prestudent_id.'/'.$row->studiensemester_kurzbz.'" >
|
||||
<NOTE:lehrveranstaltung_id><![CDATA['.$row->lehrveranstaltung_id.']]></NOTE:lehrveranstaltung_id>
|
||||
<NOTE:prestudent_id><![CDATA['.$row->prestudent_id.']]></NOTE:prestudent_id>
|
||||
<NOTE:studiensemester_kurzbz><![CDATA['.$row->studiensemester_kurzbz.']]></NOTE:studiensemester_kurzbz>
|
||||
@@ -124,8 +124,8 @@ foreach ($obj->result as $row)
|
||||
<NOTE:student_semester><![CDATA['.$prestudent->semester.']]></NOTE:student_semester>
|
||||
<NOTE:punkte><![CDATA['.($row->punkte!=''?(float)$row->punkte:'').']]></NOTE:punkte>
|
||||
<NOTE:zeugnis><![CDATA['.$zeugnis.']]></NOTE:zeugnis>
|
||||
</RDF:Description>
|
||||
</RDF:li>';
|
||||
</RDF:Description>
|
||||
</RDF:li>';
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
|
||||
+3
-3
@@ -209,9 +209,9 @@ class stip extends basis_db
|
||||
$qry = "SELECT
|
||||
prestudent_id, vorname, nachname, svnr, perskz
|
||||
FROM
|
||||
public.tbl_student student
|
||||
JOIN public.tbl_benutzer benutzer on(benutzer.uid=student.student_uid)
|
||||
JOIN public.tbl_person person using(person_id)
|
||||
public.tbl_prestudent prestudent
|
||||
JOIN public.tbl_benutzer benutzer on(benutzer.uid=prestudent.uid)
|
||||
JOIN public.tbl_person person on(benutzer.person_id=person.person_id)
|
||||
WHERE
|
||||
person.vorname = ".$this->db_add_param($Vorname)."
|
||||
AND person.nachname = ".$this->db_add_param($Nachname).";";
|
||||
|
||||
@@ -17,8 +17,9 @@
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at> and
|
||||
* Andreas Moik <moik@technikum-wien.at>.
|
||||
*/
|
||||
// ************************************
|
||||
// * Script zur Pruefung und Korrektur
|
||||
@@ -38,63 +39,11 @@ require_once(dirname(__FILE__).'/../include/mail.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
$anzahl_neue_prestudent_id=0;
|
||||
$anzahl_fehler_prestudent=0;
|
||||
$anzahl_gruppenaenderung=0;
|
||||
$anzahl_gruppenaenderung_fehler=0;
|
||||
$text='';
|
||||
$statistik ='';
|
||||
$abunterbrecher_verschoben_error=0;
|
||||
$abunterbrecher_verschoben=0;
|
||||
|
||||
// ****
|
||||
// * Bei Studenten mit fehlener Prestudent_id wird die passende id ermittelt und Eingetragen
|
||||
// ****
|
||||
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE prestudent_id is null";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
$text.="Suche Studenten mit fehlender Prestudent_id ...\n\n";
|
||||
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid=".$db->db_add_param($row->student_uid)." AND tbl_prestudent.studiengang_kz=".$db->db_add_param($row->studiengang_kz);
|
||||
if($result_id = $db->db_query($qry_id))
|
||||
{
|
||||
if($db->db_num_rows($result_id)==1)
|
||||
{
|
||||
if($row_id = $db->db_fetch_object($result_id))
|
||||
{
|
||||
$qry_upd = "UPDATE public.tbl_student SET prestudent_id=".$db->db_add_param($row_id->prestudent_id)." WHERE student_uid=".$db->db_add_param($row->student_uid);
|
||||
if($db->db_query($qry_upd))
|
||||
{
|
||||
$text .= "Prestudent_id von $row->student_uid wurde auf $row_id->prestudent_id gesetzt\n";
|
||||
$anzahl_neue_prestudent_id++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$text .= "unbekannter Fehler\n";
|
||||
$anzahl_fehler_prestudent++;
|
||||
}
|
||||
}
|
||||
elseif($db->db_num_rows($result_id)>1)
|
||||
{
|
||||
$text .= "Student $row->student_uid hat keine Prestudent_id und MEHRERE passende Prestudenteintraege\n";
|
||||
$anzahl_fehler_prestudent++;
|
||||
}
|
||||
elseif($db->db_num_rows($result_id)==0)
|
||||
{
|
||||
$text .= "Student $row->student_uid hat keine Prestudent_id und KEINE passenden Prestudenteintraege\n";
|
||||
$anzahl_fehler_prestudent++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.="Fehler bei Abfrage:".$db->db_last_error()."\n";
|
||||
$anzahl_fehler_prestudent++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// *****
|
||||
// * Gruppenzuteilung von Abbrechern und Unterbrechern korrigieren.
|
||||
@@ -105,17 +54,15 @@ $text.="\n\nKorrigiere Gruppenzuteilungen von Ab-/Unterbrechern\n";
|
||||
|
||||
//Alle Ab-/Unterbrecher holen die nicht im 0. Semester sind
|
||||
$qry = "SELECT
|
||||
student_uid,
|
||||
tbl_student.studiengang_kz,
|
||||
uid,
|
||||
tbl_prestudent.studiengang_kz,
|
||||
tbl_prestudent.prestudent_id,
|
||||
status_kurzbz,
|
||||
studiensemester_kurzbz
|
||||
FROM
|
||||
public.tbl_student,
|
||||
public.tbl_prestudent,
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
tbl_student.prestudent_id=tbl_prestudent.prestudent_id AND
|
||||
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND
|
||||
(
|
||||
tbl_prestudentstatus.status_kurzbz='Unterbrecher' OR
|
||||
@@ -127,7 +74,7 @@ $qry = "SELECT
|
||||
FROM
|
||||
public.tbl_studentlehrverband
|
||||
WHERE
|
||||
prestudent_id=tbl_student.prestudent_id AND
|
||||
tbl_studentlehrverband.prestudent_id=tbl_prestudent.prestudent_id AND
|
||||
studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz AND
|
||||
semester<>0
|
||||
)
|
||||
@@ -154,7 +101,7 @@ if($result = $db->db_query($qry))
|
||||
$student->insertvon = 'chkstudentlvb';
|
||||
}
|
||||
|
||||
$student->uid = $row->student_uid;
|
||||
$student->uid = $row->uid;
|
||||
$student->studiensemester_kurzbz=$row->studiensemester_kurzbz;
|
||||
$student->studiengang_kz = $row->studiengang_kz;
|
||||
$student->semester = '0';
|
||||
@@ -183,70 +130,15 @@ if($result = $db->db_query($qry))
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.="Fehler biem Speichern des Lehrverbandeintrages bei $student->student_uid:".$student->errormsg."\n";
|
||||
$text.="Fehler biem Speichern des Lehrverbandeintrages bei $student->uid:".$student->errormsg."\n";
|
||||
$abunterbrecher_verschoben_error++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// *****
|
||||
// * Unterschiedliche Gruppenzuteilungen in tbl_studentlehrverband - tbl_student korrigieren
|
||||
// *****
|
||||
|
||||
$stsem = new studiensemester();
|
||||
|
||||
$stsem = $stsem->getNearest();
|
||||
|
||||
$text.="\n\nKorrigiere Inkonsitenzen in den Tabellen tbl_studentlehrverband, tbl_student (Verwendetes Studiensemester: $stsem)\n\n";
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_student.studiengang_kz as studiengang_kz_old,
|
||||
tbl_student.semester as semester_old,
|
||||
tbl_student.verband as verband_old,
|
||||
tbl_student.gruppe as gruppe_old,
|
||||
tbl_student.student_uid,
|
||||
tbl_studentlehrverband.studiengang_kz,
|
||||
tbl_studentlehrverband.semester,
|
||||
tbl_studentlehrverband.verband,
|
||||
tbl_studentlehrverband.gruppe
|
||||
FROM
|
||||
public.tbl_student JOIN public.tbl_studentlehrverband USING(prestudent_id)
|
||||
WHERE
|
||||
tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND
|
||||
(
|
||||
tbl_student.studiengang_kz<>tbl_studentlehrverband.studiengang_kz OR
|
||||
tbl_student.semester<>tbl_studentlehrverband.semester OR
|
||||
tbl_student.verband<>tbl_studentlehrverband.verband OR
|
||||
tbl_student.gruppe<>tbl_studentlehrverband.gruppe
|
||||
)";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$qry = "UPDATE public.tbl_student SET studiengang_kz=".$db->db_add_param($row->studiengang_kz).", semester=".$db->db_add_param($row->semester).", verband=".$db->db_add_param($row->verband).", gruppe=".$db->db_add_param($row->gruppe)." WHERE student_uid=".$db->db_add_param($row->student_uid);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$text .= "Bei Student $row->student_uid wurde die Gruppenzuordnung von $row->studiengang_kz_old/$row->semester_old/$row->verband_old/$row->gruppe_old auf $row->studiengang_kz/$row->semester/$row->verband/$row->gruppe geaendert\n";
|
||||
$anzahl_gruppenaenderung++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.="Fehler beim Aendern der Gruppe: ".$db->db_last_error()."\n";
|
||||
$anzahl_gruppenaenderung_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
$text.="Fehler bei Abfrage".$db->db_last_error();
|
||||
|
||||
$statistik .= "Prestudent_id wurde bei $anzahl_neue_prestudent_id Studenten korrigiert\n";
|
||||
$statistik .= "$anzahl_fehler_prestudent Fehler sind bei der Korrektur der Prestudent_id aufgetreten\n";
|
||||
$statistik .= "$abunterbrecher_verschoben Studenten wurden ins 0. Semester verschoben\n ";
|
||||
$statistik .= "$abunterbrecher_verschoben_error Fehler sind beim Verschieben aufgetreten\n ";
|
||||
$statistik .= "Bei $anzahl_gruppenaenderung Studenten wurde die Gruppenzuordnung korrigiert\n";
|
||||
$statistik .= "$anzahl_gruppenaenderung_fehler Fehler sind bei der Korrektur der Gruppenzuordnung aufgetreten\n";
|
||||
$statistik .= "\n\n";
|
||||
|
||||
$mail = new mail(MAIL_ADMIN, 'vilesci@'.DOMAIN, 'CHECK Studentlehrverband', $statistik.$text);
|
||||
|
||||
+254
-269
@@ -18,18 +18,41 @@
|
||||
* Authors: Andreas Moik <moik@technikum-wien.at>,
|
||||
*
|
||||
* Beschreibung:
|
||||
* Dieses Skript prueft die Datenbank auf Aenderungen bezueglich eine_uid, dabei werden fehlende Attribute angelegt.
|
||||
* Dieses Skript prueft die Datenbank auf Aenderungen bezueglich eine_uid, dabei werden fehlende Attribute, usw angelegt.
|
||||
*/
|
||||
require_once('../config/system.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
$db = new basis_db();
|
||||
echo '<html>
|
||||
?>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>CS-EineUid</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<link rel="stylesheet" href="../skin/vilesci.css" type="text/css" />
|
||||
|
||||
<script>
|
||||
function startScript()
|
||||
{
|
||||
document.getElementById('startButton').disabled = true;
|
||||
var form = document.createElement('form');
|
||||
form.setAttribute('method', 'POST');
|
||||
form.setAttribute('action', 'dbupdate_eine_uid.php');
|
||||
|
||||
var hiddenField = document.createElement('input');
|
||||
hiddenField.setAttribute('type', 'hidden');
|
||||
hiddenField.setAttribute('value', 'Starten');
|
||||
hiddenField.setAttribute('name', 'action');
|
||||
form.appendChild(hiddenField);
|
||||
|
||||
document.body.appendChild(form);
|
||||
form.submit();
|
||||
}
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body>';
|
||||
<body>
|
||||
<?php
|
||||
|
||||
$all_tables_to_update =
|
||||
array
|
||||
@@ -87,9 +110,9 @@ if(!isset($_POST["action"]))
|
||||
|
||||
echo "</p>";
|
||||
echo "
|
||||
<form action='dbupdate_eine_uid.php' method='POST' name='startform'>
|
||||
<input type='submit' value='Starten' name='action'>
|
||||
</form>";
|
||||
<h1 style='margin-top:50px;color:#F44'>ACHTUNG: Dieser Vorgang kann mehrere Minuten dauern!</h1>
|
||||
|
||||
<input id='startButton' type='button' value='Starten' onclick='startScript()'>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -117,8 +140,8 @@ else if($_POST["action"] == "Starten")
|
||||
{
|
||||
echo "<p>Could not ADD COLUMN uid TO public.tbl_prestudent: " . $db->db_last_error()."</p>";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
$prestudent_qry = "ALTER TABLE public.tbl_prestudent ADD COLUMN perskz character(15);
|
||||
UPDATE public.tbl_prestudent SET perskz = (SELECT matrikelnr FROM public.tbl_student WHERE tbl_student.prestudent_id = tbl_prestudent.prestudent_id);
|
||||
";
|
||||
@@ -141,78 +164,231 @@ else if($_POST["action"] == "Starten")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//********************************DROP ALL VIEWS********************************
|
||||
//bis.vw_bisio
|
||||
if($result = @$db->db_query("SELECT 1 FROM bis.vw_bisio LIMIT 1;"))
|
||||
{
|
||||
if(!$db->db_query("DROP VIEW bis.vw_bisio"))
|
||||
{
|
||||
echo "<p>Could not DROP view bis.vw_bisio: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
//campus.vw_student_lehrveranstaltung
|
||||
if($result = @$db->db_query("SELECT 1 FROM campus.vw_student_lehrveranstaltung LIMIT 1;"))
|
||||
{
|
||||
if(!$db->db_query("DROP VIEW campus.vw_student_lehrveranstaltung"))
|
||||
{
|
||||
echo "<p>Could not DROP view campus.vw_student_lehrveranstaltung: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
//lehre.vw_stundenplandev_student_unr
|
||||
if($result = @$db->db_query("SELECT 1 FROM lehre.vw_stundenplandev_student_unr LIMIT 1;"))
|
||||
{
|
||||
if(!$db->db_query("DROP VIEW lehre.vw_stundenplandev_student_unr"))
|
||||
{
|
||||
echo "<p>Could not DROP view lehre.vw_stundenplandev_student_unr: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
//public.vw_gruppen
|
||||
if($result = @$db->db_query("SELECT 1 FROM public.vw_gruppen LIMIT 1;"))
|
||||
{
|
||||
if(!$db->db_query("DROP VIEW public.vw_gruppen"))
|
||||
{
|
||||
echo "<p>Could not DROP view public.vw_gruppen: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
//lehre.vw_zeugnisnote
|
||||
if($result = @$db->db_query("SELECT 1 FROM lehre.vw_zeugnisnote LIMIT 1;"))
|
||||
{
|
||||
if(!$db->db_query("DROP VIEW lehre.vw_zeugnisnote"))
|
||||
{
|
||||
echo "<p>Could not DROP view lehre.vw_zeugnisnote: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
//testtool.vw_reihungstest_zeugnisnoten
|
||||
if($result = @$db->db_query("SELECT 1 FROM testtool.vw_reihungstest_zeugnisnoten LIMIT 1;"))
|
||||
{
|
||||
if(!$db->db_query("DROP VIEW testtool.vw_reihungstest_zeugnisnoten"))
|
||||
{
|
||||
echo "<p>Could not DROP view testtool.vw_reihungstest_zeugnisnoten: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
dropViews($db);
|
||||
|
||||
//modify all tables
|
||||
foreach($all_tables_to_update as $t)
|
||||
modifyOneTable($db, $t);
|
||||
|
||||
createViews($db);
|
||||
}
|
||||
|
||||
|
||||
|
||||
echo '</body></html>';
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* FUNCTIONS */
|
||||
function describeOneChange($db, $table)
|
||||
{
|
||||
|
||||
if(!$result = @$db->db_query('SELECT '.$table["to"].' FROM '.$table["schema"].'.'.$table["name"].' LIMIT 1;'))
|
||||
{
|
||||
echo "<div>".$table["schema"].".".$table["name"].": ".$table["from"]." wird <strong style='color:red;'>gelöscht</strong>!</div>";
|
||||
echo "<div>".$table["schema"].".".$table["name"].": ".$table["to"]." wird <strong style='color:green;'>eingefügt</strong>!</div>";
|
||||
}
|
||||
}
|
||||
|
||||
function checkForUpdates($db, $table)
|
||||
{
|
||||
if(!$result = @$db->db_query('SELECT '.$table["to"].' FROM '.$table["schema"].'.'.$table["name"].' LIMIT 1;'))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function modifyOneTable($db, $table)
|
||||
{
|
||||
if(!$result = @$db->db_query('SELECT '.$table["to"].' FROM '.$table["schema"].'.'.$table["name"].' LIMIT 1;'))
|
||||
{
|
||||
$db->db_query("BEGIN;");
|
||||
|
||||
$indices = array();
|
||||
$primary_keys = array();
|
||||
|
||||
|
||||
$index_search_result = $db->db_query("SELECT * FROM pg_indexes WHERE schemaname=".$db->db_add_param($table["schema"])." AND tablename=".$db->db_add_param($table["name"]));
|
||||
while($row = $db->db_fetch_object($index_search_result))
|
||||
{
|
||||
if(strpos($row->indexdef, $table["from"]) !== false) //only if the pk is affected
|
||||
{
|
||||
$check_if_pk_result = $db->db_query("select * from pg_constraint where conname=".$db->db_add_param($row->indexname));
|
||||
|
||||
if($db->db_num_rows($check_if_pk_result) == 1)
|
||||
{
|
||||
$get_definition_result = $db->db_query(
|
||||
"SELECT conrelid::regclass AS table_from
|
||||
,conname
|
||||
,pg_get_constraintdef(c.oid)
|
||||
FROM pg_constraint c
|
||||
JOIN pg_namespace n ON n.oid = c.connamespace
|
||||
WHERE contype IN ('f', 'p ')
|
||||
AND n.nspname = ".$db->db_add_param($row->schemaname)."
|
||||
AND conname = ".$db->db_add_param($row->indexname)."
|
||||
ORDER BY conrelid::regclass::text, contype DESC;");
|
||||
$def = $db->db_fetch_object($get_definition_result);
|
||||
|
||||
if(!$pk_drop_result = $db->db_query('ALTER TABLE '.$table["schema"].".".$table["name"].' DROP CONSTRAINT '.$row->indexname))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> DROPPEN von PRIMARY KEY ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
|
||||
$constraint_add_query = str_replace ($table["from"], $table["to"], $def->pg_get_constraintdef );
|
||||
$primary_keys[] = 'ALTER TABLE '.$table["schema"].".".$table["name"].' ADD CONSTRAINT '.$row->indexname.' '.$constraint_add_query;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!$index_drop_result = $db->db_query('DROP INDEX '.$table["schema"].".".$row->indexname))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> DROPPEN von INDEX ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
|
||||
$index_add_query = str_replace ($table["from"], $table["to"], $row->indexdef );
|
||||
$indices[] = $index_add_query;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//spalte einfuegen
|
||||
$alter_update_qry = 'ALTER TABLE '.$table["schema"].'.'.$table["name"].' ADD COLUMN '.$table["to"].' '.$table["datatype"].';
|
||||
UPDATE '.$table["schema"].".".$table["name"].' SET '.$table["to"].' = (SELECT '.$table["to"].' FROM '.$table["newTargetSchema"].'.'.$table["pickDataFrom"].' WHERE '.$table["pickDataFromCol"].'='.$table["schema"].'.'.$table["name"].'.'.$table["from"].');';
|
||||
$db->db_query($alter_update_qry);
|
||||
|
||||
$constraint_qry = "";
|
||||
|
||||
//constraints: $TO FK, $TO
|
||||
if($table["constraint"] != "")
|
||||
$constraint_qry = 'ALTER TABLE '.$table["schema"].".".$table["name"].' ALTER COLUMN '.$table["to"].' '.$table["constraint"].";";
|
||||
|
||||
$constraint_qry.=' ALTER TABLE '.$table["schema"].".".$table["name"].' ADD CONSTRAINT fk_'.$table["name"].'_'.$table["newTarget"].'_'.$table["to"].' FOREIGN KEY ('.$table["to"].') REFERENCES '.$table["newTargetSchema"].'.'.$table["newTarget"].' ('.$table["to"].');';
|
||||
|
||||
if(!$db->db_query($constraint_qry))
|
||||
{
|
||||
echo '<strong>'.$table["schema"].".".$table["name"].': '.$db->db_last_error().'</strong><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["to"].' hinzugefuegt!<br>';
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["from"].' auf '.$table["to"].' geändert!<br>';
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["to"].' constraints eingefuegt!<br>';
|
||||
|
||||
//FROM löschen
|
||||
$qry = 'ALTER TABLE '.$table["schema"].".".$table["name"].' DROP COLUMN '.$table["from"].';';
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
echo '<strong>'.$table["schema"].".".$table["name"].': '.$db->db_last_error().'</strong><br>';
|
||||
echo '<strong>'.$table["schema"].".".$table["name"].': ACHTUNG! In diesem Fall sollte '.$table["to"].' ordnungsgemäß eingetragen sein, jedoch '.$table["from"].' nicht gelöscht worden sein. Das Skript erneut zu starten wird nicht funktionieren!</strong><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["from"].' gelöscht!<br>';
|
||||
|
||||
foreach( $primary_keys as $pk)
|
||||
{
|
||||
if(!$pk_add_result = $db->db_query($pk))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> ADDEN von PRIMARY KEY ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
}
|
||||
foreach( $indices as $ind)
|
||||
{
|
||||
if(!$index_add_result = $db->db_query($ind))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> ADDEN von INDEX ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
$db->db_query("COMMIT;");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function dropViews($db)
|
||||
{
|
||||
//********************************DROP ALL VIEWS********************************
|
||||
//bis.vw_bisio
|
||||
|
||||
if(!$db->db_query("DROP VIEW bis.vw_bisio"))
|
||||
{
|
||||
echo "<p>Could not DROP view bis.vw_bisio: " . $create_view_qry."</p>";
|
||||
}
|
||||
|
||||
//campus.vw_student_lehrveranstaltung
|
||||
|
||||
if(!$db->db_query("DROP VIEW campus.vw_student_lehrveranstaltung"))
|
||||
{
|
||||
echo "<p>Could not DROP view campus.vw_student_lehrveranstaltung: " . $create_view_qry."</p>";
|
||||
}
|
||||
|
||||
//lehre.vw_stundenplandev_student_unr
|
||||
if(!$db->db_query("DROP VIEW lehre.vw_stundenplandev_student_unr"))
|
||||
{
|
||||
echo "<p>Could not DROP view lehre.vw_stundenplandev_student_unr: " . $create_view_qry."</p>";
|
||||
}
|
||||
|
||||
//public.vw_gruppen
|
||||
if(!$db->db_query("DROP VIEW public.vw_gruppen"))
|
||||
{
|
||||
echo "<p>Could not DROP view public.vw_gruppen: " . $create_view_qry."</p>";
|
||||
}
|
||||
|
||||
//lehre.vw_zeugnisnote
|
||||
if(!$db->db_query("DROP VIEW lehre.vw_zeugnisnote"))
|
||||
{
|
||||
echo "<p>Could not DROP view lehre.vw_zeugnisnote: " . $create_view_qry."</p>";
|
||||
}
|
||||
|
||||
//testtool.vw_reihungstest_zeugnisnoten
|
||||
if(!$db->db_query("DROP VIEW testtool.vw_reihungstest_zeugnisnoten"))
|
||||
{
|
||||
echo "<p>Could not DROP view testtool.vw_reihungstest_zeugnisnoten: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
function createViews($db)
|
||||
{
|
||||
|
||||
//********************************CREATE ALL VIEWS********************************
|
||||
|
||||
//bis.vw_bisio
|
||||
@@ -401,8 +577,8 @@ else if($_POST["action"] == "Starten")
|
||||
FROM lehre.tbl_stundenplandev stpl
|
||||
JOIN tbl_benutzergruppe USING (gruppe_kurzbz)
|
||||
WHERE tbl_benutzergruppe.studiensemester_kurzbz::text = ((( SELECT tbl_studiensemester.studiensemester_kurzbz
|
||||
FROM tbl_studiensemester
|
||||
WHERE stpl.datum <= tbl_studiensemester.ende AND stpl.datum >= tbl_studiensemester.start))::text)
|
||||
FROM tbl_studiensemester
|
||||
WHERE stpl.datum <= tbl_studiensemester.ende AND stpl.datum >= tbl_studiensemester.start))::text)
|
||||
GROUP BY stpl.unr, stpl.datum, stpl.stunde, tbl_benutzergruppe.uid, tbl_benutzergruppe.prestudent_id
|
||||
UNION
|
||||
SELECT stpl.unr,
|
||||
@@ -414,8 +590,8 @@ else if($_POST["action"] == "Starten")
|
||||
JOIN tbl_studentlehrverband ON stpl.gruppe_kurzbz IS NULL AND stpl.studiengang_kz = tbl_studentlehrverband.studiengang_kz AND stpl.semester = tbl_studentlehrverband.semester AND (stpl.verband = tbl_studentlehrverband.verband OR stpl.verband = ' '::bpchar AND stpl.verband <> tbl_studentlehrverband.verband) AND (stpl.gruppe = tbl_studentlehrverband.gruppe OR stpl.gruppe = ' '::bpchar AND stpl.gruppe <> tbl_studentlehrverband.gruppe)
|
||||
JOIN tbl_prestudent on(tbl_prestudent.prestudent_id = tbl_studentlehrverband.prestudent_id)
|
||||
WHERE tbl_studentlehrverband.studiensemester_kurzbz::text = ((( SELECT tbl_studiensemester.studiensemester_kurzbz
|
||||
FROM tbl_studiensemester
|
||||
WHERE stpl.datum <= tbl_studiensemester.ende AND stpl.datum >= tbl_studiensemester.start))::text)
|
||||
FROM tbl_studiensemester
|
||||
WHERE stpl.datum <= tbl_studiensemester.ende AND stpl.datum >= tbl_studiensemester.start))::text)
|
||||
GROUP BY stpl.unr, stpl.datum, stpl.stunde, tbl_studentlehrverband.prestudent_id, tbl_prestudent.uid) sub_stpl_uid
|
||||
GROUP BY sub_stpl_uid.unr, sub_stpl_uid.datum, sub_stpl_uid.stunde, sub_stpl_uid.uid;
|
||||
";
|
||||
@@ -531,9 +707,9 @@ else if($_POST["action"] == "Starten")
|
||||
CREATE VIEW testtool.vw_reihungstest_zeugnisnoten AS
|
||||
SELECT tbl_zeugnisnote.studiensemester_kurzbz,
|
||||
CASE
|
||||
WHEN tbl_zeugnisnote.note IS NULL THEN 5
|
||||
WHEN tbl_zeugnisnote.note = ANY (ARRAY[7, 13, 14, 15]) THEN 5
|
||||
ELSE tbl_zeugnisnote.note::integer
|
||||
WHEN tbl_zeugnisnote.note IS NULL THEN 5
|
||||
WHEN tbl_zeugnisnote.note = ANY (ARRAY[7, 13, 14, 15]) THEN 5
|
||||
ELSE tbl_zeugnisnote.note::integer
|
||||
END AS note,
|
||||
tbl_zeugnisnote.lehrveranstaltung_id,
|
||||
tbl_zeugnisnote.benotungsdatum,
|
||||
@@ -573,7 +749,7 @@ else if($_POST["action"] == "Starten")
|
||||
tbl_prestudent.rt_gesamtpunkte,
|
||||
tbl_studiensemester.ende
|
||||
FROM tbl_student
|
||||
JOIN lehre.tbl_zeugnisnote USING (student_uid)
|
||||
JOIN lehre.tbl_zeugnisnote USING (prestudent_id)
|
||||
JOIN tbl_benutzer ON tbl_student.student_uid::text = tbl_benutzer.uid::text
|
||||
JOIN tbl_person USING (person_id)
|
||||
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
|
||||
@@ -586,200 +762,9 @@ else if($_POST["action"] == "Starten")
|
||||
echo "<p>Could not CREATE view testtool.vw_reihungstest_zeugnisnoten: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
/* TODO:SCHEMA.TODO:VIEW TEMPLATE
|
||||
//SCHEMA.TODO:VIEW
|
||||
if(!$result = @$db->db_query("SELECT 1 FROM TODO:SCHEMA.TODO:VIEW LIMIT 1;"))
|
||||
{
|
||||
$create_view_qry = "
|
||||
CREATE VIEW TODO:SCHEMA.TODO:VIEW AS
|
||||
TODO:DEFINITION
|
||||
";
|
||||
if(!$db->db_query($create_view_qry))
|
||||
{
|
||||
echo "<p>Could not CREATE view TODO:SCHEMA.TODO:VIEW: " . $create_view_qry."</p>";
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
echo '</body></html>';
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* FUNCTIONS */
|
||||
function describeOneChange($db, $table)
|
||||
{
|
||||
|
||||
if(!$result = @$db->db_query('SELECT '.$table["to"].' FROM '.$table["schema"].'.'.$table["name"].' LIMIT 1;'))
|
||||
{
|
||||
echo "<div>".$table["schema"].".".$table["name"].": ".$table["from"]." wird <strong style='color:red;'>gelöscht</strong>!</div>";
|
||||
echo "<div>".$table["schema"].".".$table["name"].": ".$table["to"]." wird <strong style='color:green;'>eingefügt</strong>!</div>";
|
||||
}
|
||||
}
|
||||
|
||||
function checkForUpdates($db, $table)
|
||||
{
|
||||
if(!$result = @$db->db_query('SELECT '.$table["to"].' FROM '.$table["schema"].'.'.$table["name"].' LIMIT 1;'))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function modifyOneTable($db, $table)
|
||||
{
|
||||
if(!$result = @$db->db_query('SELECT '.$table["to"].' FROM '.$table["schema"].'.'.$table["name"].' LIMIT 1;'))
|
||||
{
|
||||
$db->db_query("BEGIN;");
|
||||
|
||||
$indices = array();
|
||||
$primary_keys = array();
|
||||
|
||||
|
||||
$index_search_result = $db->db_query("SELECT * FROM pg_indexes WHERE schemaname=".$db->db_add_param($table["schema"])." AND tablename=".$db->db_add_param($table["name"]));
|
||||
while($row = $db->db_fetch_object($index_search_result))
|
||||
{
|
||||
if(strpos($row->indexdef, $table["from"]) !== false) //only if the pk is affected
|
||||
{
|
||||
$check_if_pk_result = $db->db_query("select * from pg_constraint where conname=".$db->db_add_param($row->indexname));
|
||||
|
||||
if($db->db_num_rows($check_if_pk_result) == 1)
|
||||
{
|
||||
$get_definition_result = $db->db_query(
|
||||
"SELECT conrelid::regclass AS table_from
|
||||
,conname
|
||||
,pg_get_constraintdef(c.oid)
|
||||
FROM pg_constraint c
|
||||
JOIN pg_namespace n ON n.oid = c.connamespace
|
||||
WHERE contype IN ('f', 'p ')
|
||||
AND n.nspname = ".$db->db_add_param($row->schemaname)."
|
||||
AND conname = ".$db->db_add_param($row->indexname)."
|
||||
ORDER BY conrelid::regclass::text, contype DESC;");
|
||||
$def = $db->db_fetch_object($get_definition_result);
|
||||
|
||||
if(!$pk_drop_result = $db->db_query('ALTER TABLE '.$table["schema"].".".$table["name"].' DROP CONSTRAINT '.$row->indexname))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> DROPPEN von PRIMARY KEY ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
|
||||
$constraint_add_query = str_replace ($table["from"], $table["to"], $def->pg_get_constraintdef );
|
||||
$primary_keys[] = 'ALTER TABLE '.$table["schema"].".".$table["name"].' ADD CONSTRAINT '.$row->indexname.' '.$constraint_add_query;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!$index_drop_result = $db->db_query('DROP INDEX '.$table["schema"].".".$row->indexname))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> DROPPEN von INDEX ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
|
||||
$index_add_query = str_replace ($table["from"], $table["to"], $row->indexdef );
|
||||
$indices[] = $index_add_query;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//spalte einfuegen
|
||||
$alter_update_qry = 'ALTER TABLE '.$table["schema"].'.'.$table["name"].' ADD COLUMN '.$table["to"].' '.$table["datatype"].';
|
||||
UPDATE '.$table["schema"].".".$table["name"].' SET '.$table["to"].' = (SELECT '.$table["to"].' FROM '.$table["newTargetSchema"].'.'.$table["pickDataFrom"].' WHERE '.$table["pickDataFromCol"].'='.$table["schema"].'.'.$table["name"].'.'.$table["from"].');';
|
||||
$db->db_query($alter_update_qry);
|
||||
|
||||
$constraint_qry = "";
|
||||
|
||||
//constraints: $TO FK, $TO
|
||||
if($table["constraint"] != "")
|
||||
$constraint_qry = 'ALTER TABLE '.$table["schema"].".".$table["name"].' ALTER COLUMN '.$table["to"].' '.$table["constraint"].";";
|
||||
|
||||
$constraint_qry.=' ALTER TABLE '.$table["schema"].".".$table["name"].' ADD CONSTRAINT fk_'.$table["name"].'_'.$table["newTarget"].'_'.$table["to"].' FOREIGN KEY ('.$table["to"].') REFERENCES '.$table["newTargetSchema"].'.'.$table["newTarget"].' ('.$table["to"].');';
|
||||
|
||||
if(!$db->db_query($constraint_qry))
|
||||
{
|
||||
echo '<strong>'.$table["schema"].".".$table["name"].': '.$db->db_last_error().'</strong><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["to"].' hinzugefuegt!<br>';
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["from"].' auf '.$table["to"].' geändert!<br>';
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["to"].' constraints eingefuegt!<br>';
|
||||
|
||||
//FROM löschen
|
||||
$qry = 'ALTER TABLE '.$table["schema"].".".$table["name"].' DROP COLUMN '.$table["from"].';';
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
{
|
||||
echo '<strong>'.$table["schema"].".".$table["name"].': '.$db->db_last_error().'</strong><br>';
|
||||
echo '<strong>'.$table["schema"].".".$table["name"].': ACHTUNG! In diesem Fall sollte '.$table["to"].' ordnungsgemäß eingetragen sein, jedoch '.$table["from"].' nicht gelöscht worden sein. Das Skript erneut zu starten wird nicht funktionieren!</strong><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' '.$table["schema"].".".$table["name"].': Spalte '.$table["from"].' gelöscht!<br>';
|
||||
|
||||
foreach( $primary_keys as $pk)
|
||||
{
|
||||
if(!$pk_add_result = $db->db_query($pk))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> ADDEN von PRIMARY KEY ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
}
|
||||
foreach( $indices as $ind)
|
||||
{
|
||||
if(!$index_add_result = $db->db_query($ind))
|
||||
{
|
||||
echo "<p><span style='color:red;'>ACHTUNG:</span> ADDEN von INDEX ".$row->indexname." fehlgeschlagen</p>";
|
||||
$db->db_query("ROLLBACK;");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
$db->db_query("COMMIT;");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user