Anpassungen für KU Linz; Studienblatt, LV Zeugnis, Anzeige von Noten

kompatibler LVs im Studienplan
This commit is contained in:
Stefan Puraner
2016-04-07 10:57:03 +02:00
parent 874dd6652f
commit 80c35f4b6b
9 changed files with 481 additions and 365 deletions
+1
View File
@@ -7,3 +7,4 @@ documents/
.settings
.project
.buildpath
bin
+27 -19
View File
@@ -373,7 +373,7 @@ function showPruefungsDetails(prfId, lvId)
{
var p = e.pruefung;
var l = e.lehrveranstaltung
$("#prfTyp").html(p.pruefungstyp_kurzbz);
// $("#prfTyp").html(p.pruefungstyp_kurzbz);
$("#prfMethode").html(p.methode);
$("#prfBeschreibung").html(p.beschreibung);
if(p.einzeln === true)
@@ -689,6 +689,7 @@ function showAnmeldungen(pruefungstermin_id, lehrveranstaltung_id)
function writeAnmeldungen(data)
{
console.log(data);
if(data.error === 'false')
{
var terminId = data.result.anmeldungen[0].pruefungstermin_id;
@@ -755,6 +756,7 @@ function writeAnmeldungen(data)
$("#kommentar").empty();
$("#kommentarSpeichernButton").empty();
$("#raumLink").empty();
$("#listeDrucken").empty();
messageBox("message", data.errormsg, "red", "highlight", 1000);
}
}
@@ -1091,7 +1093,7 @@ function savePruefungstermin()
unmarkMissingFormEntry();
var studiensemester_kurzbz = $("#studiensemester").val();
var pruefungsfenster_id = $("#pruefungsfenster").val();
var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
// var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
var titel = $("#titel").val();
var beschreibung = $("#beschreibung").val();
var methode = $("#methode").val();
@@ -1168,11 +1170,11 @@ function savePruefungstermin()
error = true;
markMissingFormEntry("pruefungsfenster");
}
if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
{
error = true;
markMissingFormEntry("pruefungsTyp");
}
// if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
// {
// error = true;
// markMissingFormEntry("pruefungsTyp");
// }
if(is_null(titel) || is_undefined(titel) || is_empty_String(titel))
{
error = true;
@@ -1188,12 +1190,18 @@ function savePruefungstermin()
error = true;
markMissingFormEntry("methode");
}
if(lehrveranstaltungen.length === 0)
{
error = true;
markMissingFormEntry("lvDropdowns");
}
if(is_null(termine) || is_undefined(termine) || is_empty_String(termine))
{
error = true;
markMissingFormEntry("prfTermin");
}
if(error)
{
@@ -1209,7 +1217,7 @@ function savePruefungstermin()
method: "savePruefungstermin",
studiensemester_kurzbz: studiensemester_kurzbz,
pruefungsfenster_id: pruefungsfenster_id,
pruefungstyp_kurzbz: pruefungstyp_kurzbz,
// pruefungstyp_kurzbz: pruefungstyp_kurzbz,
titel: titel,
beschreibung: beschreibung,
methode: methode,
@@ -1378,7 +1386,7 @@ function loadPruefungsDetails(prfId)
$("#beschreibung").val(result.pruefung.beschreibung);
$("#studiensemester").val(result.pruefung.studiensemester_kurzbz);
$("#pruefungsfenster").val(result.pruefung.pruefungsfenster_id);
$("#pruefungsTyp").val(result.pruefung.pruefungstyp_kurzbz);
// $("#pruefungsTyp").val(result.pruefung.pruefungstyp_kurzbz);
$("#methode").val(result.pruefung.methode);
var i = 0;
$("#termin1").closest("tr").remove();
@@ -1491,7 +1499,7 @@ function updatePruefung(prfId)
unmarkMissingFormEntry();
var studiensemester_kurzbz = $("#studiensemester").val();
var pruefungsfenster_id = $("#pruefungsfenster").val();
var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
// var pruefungstyp_kurzbz = $("#pruefungsTyp").val();
var titel = $("#titel").val();
var beschreibung = $("#beschreibung").val();
var methode = $("#methode").val();
@@ -1602,11 +1610,11 @@ function updatePruefung(prfId)
error = true;
markMissingFormEntry("pruefungsfenster");
}
if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
{
error = true;
markMissingFormEntry("pruefungsTyp");
}
// if(is_null(pruefungstyp_kurzbz) || is_undefined(pruefungstyp_kurzbz) || is_empty_String(pruefungstyp_kurzbz) || (pruefungstyp_kurzbz === "undefiniert"))
// {
// error = true;
// markMissingFormEntry("pruefungsTyp");
// }
if(is_null(titel) || is_undefined(titel) || is_empty_String(titel))
{
error = true;
@@ -1643,7 +1651,7 @@ function updatePruefung(prfId)
pruefung_id: prfId,
studiensemester_kurzbz: studiensemester_kurzbz,
pruefungsfenster_id: pruefungsfenster_id,
pruefungstyp_kurzbz: pruefungstyp_kurzbz,
// pruefungstyp_kurzbz: pruefungstyp_kurzbz,
titel: titel,
beschreibung: beschreibung,
methode: methode,
@@ -1807,7 +1815,7 @@ function loadAllPruefungen()
});
tableRow+="</td>";
tableRow += "<td>"+e.methode+"</td>";
tableRow += "<td>"+e.pruefungstyp_kurzbz+"</td>";
// tableRow += "<td>"+e.pruefungstyp_kurzbz+"</td>";
tableRow += "<td>"+e.einzeln+"</td>";
tableRow += "<td>"+e.mitarbeiter_uid+"</td>";
tableRow += "<td>"+e.storniert+"</td>";
@@ -1896,7 +1904,7 @@ function resetPruefungsverwaltung()
loadAllPruefungen();
$("#titel").val("");
$("#beschreibung").val("");
loadPruefungstypen("false");
// loadPruefungstypen("false");
loadStudiensemester();
$("#methode").val("");
resetLehrveranstaltungen();
@@ -208,7 +208,7 @@ $rechte->getBerechtigungen($uid);
$einzeln = TRUE;
$pruefungsintervall = $pruefung->pruefungsintervall;
}
}
?>
<span class="bold">Lehrveranstaltung: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
<span class="bold">Studiensemester: </span><span><?=$stdsem->bezeichnung?></span><br/>
@@ -255,6 +255,14 @@ $rechte->getBerechtigungen($uid);
?>
</tbody>
<?php
}
else
{
?>
<span>Keine bestätigten Anmeldungen vorhanden.</span><br/>
<?php
}
}
?>
</table>
@@ -199,14 +199,14 @@ if(empty($lehrveranstaltung->lehrveranstaltungen) && !$rechte->isBerechtigt('leh
</select>
</td>
</tr>
<tr>
<!--<tr>
<td>Prüfungstyp:</td>
<td>
<select id='pruefungsTyp' name="pruefungsTyp">
<!-- Daten werden per JavaScript geladen-->
</select>
</td>
</tr>
</tr>-->
<tr>
<td style="vertical-align: top;">Methode:</td>
<td><textarea id='methode' placeholder="Multiple Choice, etc." rows="5" cols="20" name="methode"></textarea></td>
+39 -1
View File
@@ -431,7 +431,7 @@ function drawTree($tree, $depth)
echo $icon." ".$termine." <a href=\"#\" class='Item' onClick=\"javascript:window.open('../lehre/ects/preview.php?lv=$row_tree->lehrveranstaltung_id&language=$sprache','Lehrveranstaltungsinformation','width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes');\">".$row_tree->kurzbz.' - '.$row_tree->bezeichnung."</a>";
else
// Bezeichnung der Lehrveranstaltung
echo $icon." ".$termine." ".$row_tree->kurzbz.' - '.$row_tree->bezeichnung;
echo $icon." ".$termine." ".$row_tree->kurzbz.' - '.$row_tree->bezeichnung.'('.$row_tree->lehrveranstaltung_id.')';
echo $bende.'</td>';
// Semester
@@ -445,6 +445,10 @@ function drawTree($tree, $depth)
echo '<td>';
// Note zu dieser LV vorhanden?
$lv_kompatibel = new lehrveranstaltung();
$kompatibleLVs = $lv_kompatibel->loadLVkompatibel($row_tree->lehrveranstaltung_id);
if(isset($noten_arr[$row_tree->lehrveranstaltung_id]))
{
// Positive Note fuer diese LV vorhanden?
@@ -460,6 +464,27 @@ function drawTree($tree, $depth)
else
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
//check if compatible course has grade
elseif(count($kompatibleLVs) > 0)
{
foreach($kompatibleLVs as $komp)
{
if(isset($noten_arr[$komp]))
{
$positiv=false;
foreach($noten_arr[$komp] as $note)
{
if($note_pruef_arr[$note]->positiv)
$positiv=true;
}
if($positiv)
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
else
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
}
}
}
else
{
if($abgeschlossen)
@@ -495,6 +520,19 @@ function drawTree($tree, $depth)
else
$tdinhalt .= '<span class="error">'.$note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->anmerkung.'</span>';
}
elseif(count($kompatibleLVs) > 0)
{
foreach($kompatibleLVs as $komp)
{
if(isset($noten_arr[$komp][$stsem]))
{
if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv)
$tdinhalt .= '<span class="ok">'.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.'</span>';
else
$tdinhalt .= '<span class="error">'.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.'</span>';
}
}
}
else
{
// Angebot der LV und der Kompatiblen pruefen
+2 -1
View File
@@ -1766,6 +1766,7 @@ function PrintZutrittskarte()
function PrintStudienblatt(event)
{
var tree = document.getElementById('student-prestudent-tree-rolle');
var ss = document.getElementById('statusbarpanel-semester').label;
try
{
@@ -1838,7 +1839,7 @@ function PrintStudienblatt(event)
{
if(error>0)
alert(error+' der ausgewaehlten Personen haben keinen Account');
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&&uid='+data;
action = '<?php echo APP_ROOT; ?>content/pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&output='+output+'&&uid='+data+"&ss="+ss;
window.open(action,'Studienblatt','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
else
+13 -1
View File
@@ -186,13 +186,25 @@ class anrechnung extends basis_db
* @param $prestudent_id
* @return true wenn ok, false im Fehlerfall
*/
public function getAnrechnungPrestudent($prestudent_id)
public function getAnrechnungPrestudent($prestudent_id, $lehrveranstaltung_id=null, $lehrveranstaltung_id_kompatibel=null)
{
$qry = "SELECT anrechnung_id, prestudent_id, lehrveranstaltung_id, begruendung_id, bezeichnung AS begruendung, "
. "lehrveranstaltung_id_kompatibel, genehmigt_von , insertamum, insertvon, updateamum, updatevon "
. "FROM lehre.tbl_anrechnung "
. "JOIN lehre.tbl_anrechnung_begruendung USING (begruendung_id) "
. "WHERE prestudent_id = " . $this->db_add_param($prestudent_id);
if($lehrveranstaltung_id != NULL)
{
$qry .= " AND lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id);
}
if($lehrveranstaltung_id_kompatibel != NULL)
{
$qry .= " AND lehrveranstaltung_id_kompatibel=".$this->db_add_param($lehrveranstaltung_id_kompatibel);
}
$qry .= ";";
if ($this->db_query($qry))
{
+48 -1
View File
@@ -36,6 +36,7 @@ require_once('../include/studienplan.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/organisationseinheit.class.php');
require_once('../include/anrechnung.class.php');
$datum = new datum();
$db = new basis_db();
@@ -314,14 +315,60 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= " <lvleiter>".$leiter_titel." ".$leiter_vorname." ".$leiter_nachname.($leiter_titelpost!=''?', '.$leiter_titelpost:'')."</lvleiter>";
$xml .= " <lehrinhalte><![CDATA[".clearHtmlTags($lehrinhalte)."]]></lehrinhalte>";
$xml .= " <kompatible_lvs>";
$lehrveranstaltung->getLVkompatibel($lehrveranstaltung_id);
foreach($lehrveranstaltung->lehrveranstaltungen as $lv_kompatibel)
{
$xml .= "<lv>".$lv_kompatibel->bezeichnung."</lv>";
}
$xml .= " </kompatible_lvs>";
$return = $lehrveranstaltung->getLVFromStudienplanByLehrtyp($studienplan_id, "modul");
$anrechnung = new anrechnung();
// var_dump($lehrveranstaltung_id);
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, null, $lehrveranstaltung_id);
$xml .= "<studienverpflichtung>";
$lehrveranstaltung_id_kompatibel = "";
if(count($anrechnung->result) === 1)
{
$lehrveranstaltung_id_kompatibel = $anrechnung->result[0]->lehrveranstaltung_id;
$xml .= $anrechnung->result[0]->lehrveranstaltung_bez;
}
$xml .= "</studienverpflichtung>";
$lehrveranstaltung->loadLehrveranstaltungStudienplan($studienplan_id);
$studienplan_lehrveranstaltung_id = "";
foreach($lehrveranstaltung->lehrveranstaltungen as $lv)
{
if(($lv->lehrveranstaltung_id == $lehrveranstaltung_id) || ($lv->lehrveranstaltung_id == $lehrveranstaltung_id_kompatibel))
{
$studienplan_lehrveranstaltung_id = $lv->studienplan_lehrveranstaltung_id;
break;
}
}
$studienplan = new studienplan();
if($studienplan_lehrveranstaltung_id != "")
{
$studienplan->loadStudienplanLehrveranstaltung($studienplan_lehrveranstaltung_id);
$lv = new lehrveranstaltung();
while($lv->lehrtyp_kurzbz != "modul")
{
$lv->load($studienplan->lehrveranstaltung_id);
$studienplan->loadStudienplanLehrveranstaltung($studienplan->studienplan_lehrveranstaltung_id_parent);
}
$lehrveranstaltung->lehrveranstaltungen = array(0 => $lv);
}
else
{
$lehrveranstaltung->lehrveranstaltungen = array();
}
// $return = $lehrveranstaltung->getLVFromStudienplanByLehrtyp($studienplan_id, "modul");
$xml .= " <module>";
//Variable wird zur korrekten Darstellung im Dokument benötigt
+339 -338
View File
@@ -1,339 +1,340 @@
<?php
/* Copyright (C) 2013 FH fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
* Karl Burkhart <burkhart@technikum-wien.at>
* Manfred Kindl <kindlm@technikum-wien.at>
*/
header("Content-type: application/xhtml+xml");
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/studiengang.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/adresse.class.php');
require_once('../include/lehrveranstaltung.class.php');
require_once('../include/akadgrad.class.php');
require_once('../include/studiensemester.class.php');
require_once('../include/nation.class.php');
require_once('../include/studienordnung.class.php');
require_once('../include/studienplan.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/organisationsform.class.php');
require_once('../include/zgv.class.php');
require_once('../include/konto.class.php');
$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null);
$uid_arr = explode(";",$uid_arr);
echo "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>\n";
echo "<studienblaetter>\n";
$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0];
$konto = new konto();
$student_help = new student();
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
if($student_help->load($uid))
{
$studiengang = new studiengang();
$studiengang->load($student_help->studiengang_kz);
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
}
foreach($uid_arr as $uid)
{
if($uid=='')
continue;
echo "\t<studienblatt>\n";
$student = new student();
if($student->load($uid))
{
$datum_aktuell = date('d.m.Y');
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
$prestudent = new prestudent($student->prestudent_id);
$prestudent->getLastStatus($student->prestudent_id,null,'Student');
$studienordnung = new studienordnung();
$studienordnung->getStudienordnungFromStudienplan($prestudent->studienplan_id);
$studiengang = new studiengang();
$studiengang->load($studienordnung->studiengang_kz);
$studienplan = new studienplan();
$studienplan->loadStudienplan($prestudent->studienplan_id);
$staatsbuergerschaft = new nation();
$staatsbuergerschaft->load($student->staatsbuergerschaft);
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
switch($student->geschlecht)
{
case 'm':
$geschlecht = 'Männlich';
break;
case 'w':
$geschlecht = 'Weiblich';
break;
case 'u':
$geschlecht = 'Unbekannt';
break;
default:
$geschlecht ='';
}
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
if ($studienordnung->studiengang_kz<0)
{
$stg = new studiengang();
$stg->load($studienordnung->studiengang_kz);
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studienordnung->studiengang_kz));
}
else
$studiengang_kz = sprintf("%04s", abs($studienordnung->studiengang_kz));
echo "\t\t<quote>1</quote>\n";
echo "\t\t<personenkz>".$uid."</personenkz>\n";
echo "\t\t<geschlecht>".$geschlecht."</geschlecht>\n";
echo "\t\t<anrede>".$student->anrede."</anrede>\n";
echo "\t\t<vorname>".$student->vorname." ".$student->vornamen."</vorname>\n";
echo "\t\t<vornamen>".$student->vornamen."</vornamen>\n";
echo "\t\t<nachname>".$student->nachname."</nachname>\n";
echo "\t\t<titelpre>".$student->titelpre."</titelpre>\n";
echo "\t\t<titelpost>".$student->titelpost."</titelpost>\n";
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
echo "\t\t<gebort>".$student->gebort."</gebort>\n";
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
echo "\t\t<svnr>".$svnr."</svnr>\n";
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
echo "\t\t<studiengang>".$studienordnung->studiengangbezeichnung."</studiengang>\n";
echo "\t\t<studiengang_englisch>".$studienordnung->studiengangbezeichnung_englisch."</studiengang_englisch>\n";
echo "\t\t<studiengang_kurzbz>".$studienordnung->studiengangkurzbzlang."</studiengang_kurzbz>\n";
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
echo "\t\t<studiengangSprache>".$studienplan->sprache."</studiengangSprache>";
echo "\t\t<ects_gesamt>".$studienordnung->ects."</ects_gesamt>";
echo "\t\t<ects_pro_semester>".($studienplan->regelstudiendauer!=0?$studienordnung->ects/$studienplan->regelstudiendauer:0)."</ects_pro_semester>";
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
echo "\t\t<ausbildungssemester_aktuell>".$prestudent->ausbildungssemester."</ausbildungssemester_aktuell>";
$studiensemester_aktuell = new studiensemester();
$studiensemester_aktuell->load($prestudent->studiensemester_kurzbz);
echo "\t\t<studiensemester_aktuell>".$studiensemester_aktuell->bezeichnung."</studiensemester_aktuell>";
// check ob Oeh-Beitrag bezahlt wurde
$oehbeitrag = $konto->getOehBeitragGesamt($uid, $studiensemester_aktuell->studiensemester_kurzbz);
echo "\t\t<oehbeitrag>".str_replace('.', ',', $oehbeitrag)."</oehbeitrag>";
// check ob Quereinsteiger
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'';
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
$studiensemester_beginn = new studiensemester();
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
$studiensemester_beginn->load($studienbeginn);
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
echo "\t\t<studiensemester_beginndatum>".date('d.m.Y',strtotime($studiensemester_beginn->start))."</studiensemester_beginndatum>";
$prestudent->getLastStatus($student->prestudent_id,null,'Student');
$studiensemester_abschluss = new studiensemester();
$abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester);
$studiensemester_abschluss->load($abschluss);
echo "\t\t<voraussichtlichLetztesStudiensemester>".$studiensemester_abschluss->bezeichnung."</voraussichtlichLetztesStudiensemester>";
echo "\t\t<voraussichtlichLetztesStudiensemester_datum>".date('d.m.Y',strtotime($studiensemester_abschluss->ende))."</voraussichtlichLetztesStudiensemester_datum>";
$studiensemester_endedatum = new studiensemester();
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
$status_aktuell = ($prestudent->getLastStatus($student->prestudent_id,null,null))?$prestudent->status_kurzbz:'';
switch($status_aktuell)
{
case 'Student':
$studierendenstatus_aktuell = 'Aktive/r StudentIn';
break;
case 'Unterbrecher':
$studierendenstatus_aktuell = 'UnterbrecherIn';
break;
case 'Absolvent':
$studierendenstatus_aktuell = 'AbsolventIn';
break;
case 'Diplomand':
$studierendenstatus_aktuell = 'DiplomandIn';
break;
case 'Abbrecher':
$studierendenstatus_aktuell = 'AbbrecherIn';
break;
default:
$studierendenstatus_aktuell ='';
}
echo "\t\t<studierendenstatus_aktuell>".$studierendenstatus_aktuell."</studierendenstatus_aktuell>\n";
echo "\t\t<datum_reifepruefung>".$prestudent->zgvdatum."</datum_reifepruefung>\n";
$zgv = new zgv($prestudent->zgv_code);
echo "\t\t<schulform_zgv>".$zgv->zgv_kurzbz."</schulform_zgv>\n";
echo "\t\t<studienplan_bezeichnung>".$studienplan->bezeichnung."</studienplan_bezeichnung>\n";
echo "\t\t<anmerkungpre><![CDATA[$prestudent->anmerkung]]></anmerkungpre>\n";
$titel_kurzbz = '';
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t\t<studienplan_sprache>".$studienplan->sprache."</studienplan_sprache>\n";
echo "\t\t<regelstudiendauer>".$studienplan->regelstudiendauer."</regelstudiendauer>\n";
$akadgrad = new akadgrad();
$akadgrad->getAkadgradStudent($student->uid);
echo "\t\t<akadgrad>".$akadgrad->titel."</akadgrad>\n";
echo "\t\t<akadgrad_kurzbz>".$akadgrad->akadgrad_kurzbz."</akadgrad_kurzbz>\n";
//für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen
$lv_studiengang_kz='';
$lv_studiengang_bezeichnung='';
$lv_studiengang_typ='';
$stg_typ=new studiengang();
$lv=new lehrveranstaltung();
$lv->load_lva_student($student->uid);
if(count($lv->lehrveranstaltungen)>0)
{
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
$lv_studiengang=new studiengang();
$lv_studiengang->load($lv_studiengang_kz);
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
$lv_studiengang_typ=$stg_typ->bezeichnung;
}
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
echo "\t\t<lv_studiengang_typ>$lv_studiengang_typ</lv_studiengang_typ>";
echo "\t\t<lv_studiengang_bezeichnung>$lv_studiengang_bezeichnung</lv_studiengang_bezeichnung>";
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
$adresse = new adresse();
$adresse->load_pers($student->person_id);
foreach($adresse->result as $row_adresse)
{
if($row_adresse->zustelladresse)
{
echo "\t\t<strasse><![CDATA[$row_adresse->strasse]]></strasse>\n";
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
break;
}
}
foreach($adresse->result as $row_adresse)
{
if($row_adresse->heimatadresse)
{
echo "\t\t<heimat_strasse><![CDATA[$row_adresse->strasse]]></heimat_strasse>\n";
echo "\t\t<heimat_plz>".$row_adresse->plz." ".$row_adresse->ort."</heimat_plz>\n";
echo "\t\t<heimat_nation>".$row_adresse->nation."</heimat_nation>\n";
break;
}
}
$prestudent = new prestudent();
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
if($prestudent->orgform_kurzbz!='')
$orgform = $prestudent->orgform_kurzbz;
else
$orgform = $studienplan->orgform_kurzbz;
$orgform_bez = new organisationsform();
$orgform_bez->load($orgform);
echo "\t\t<orgform>".$orgform."</orgform>\n";
echo "\t\t<orgform_bezeichnung>".$orgform_bez->bezeichnung."</orgform_bezeichnung>\n";
//Studiengangsleiter auslesen
$stg_oe_obj = new studiengang($studienordnung->studiengang_kz);
if ($studienordnung->studiengang_kz=='')
$stgleiter = $stg_oe_obj->getLeitung($student_help->studiengang_kz);
else
$stgleiter = $stg_oe_obj->getLeitung($studienordnung->studiengang_kz);
$stgl='';
foreach ($stgleiter as $stgleiter_uid)
{
$stgl_ma = new mitarbeiter($stgleiter_uid);
$stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost);
}
echo "\t\t<stgl>$stgl</stgl>\n";
}
echo "\t</studienblatt>\n";
}
echo "</studienblaetter>";
<?php
/* Copyright (C) 2013 FH fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
* Karl Burkhart <burkhart@technikum-wien.at>
* Manfred Kindl <kindlm@technikum-wien.at>
*/
header("Content-type: application/xhtml+xml");
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/studiengang.class.php');
require_once('../include/student.class.php');
require_once('../include/prestudent.class.php');
require_once('../include/adresse.class.php');
require_once('../include/lehrveranstaltung.class.php');
require_once('../include/akadgrad.class.php');
require_once('../include/studiensemester.class.php');
require_once('../include/nation.class.php');
require_once('../include/studienordnung.class.php');
require_once('../include/studienplan.class.php');
require_once('../include/mitarbeiter.class.php');
require_once('../include/organisationsform.class.php');
require_once('../include/zgv.class.php');
require_once('../include/konto.class.php');
$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null);
$studiensemester = (isset($_REQUEST['ss'])?$_REQUEST['ss']:null);
$uid_arr = explode(";",$uid_arr);
echo "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>\n";
echo "<studienblaetter>\n";
$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0];
$konto = new konto();
$student_help = new student();
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
if($student_help->load($uid))
{
$studiengang = new studiengang();
$studiengang->load($student_help->studiengang_kz);
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t<studiengang>".$studiengang->bezeichnung."</studiengang>\n";
}
foreach($uid_arr as $uid)
{
if($uid=='')
continue;
echo "\t<studienblatt>\n";
$student = new student();
if($student->load($uid))
{
$datum_aktuell = date('d.m.Y');
$gebdatum = date('d.m.Y',strtotime($student->gebdatum));
$prestudent = new prestudent($student->prestudent_id);
$prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student');
$studienordnung = new studienordnung();
$studienordnung->getStudienordnungFromStudienplan($prestudent->studienplan_id);
$studiengang = new studiengang();
$studiengang->load($studienordnung->studiengang_kz);
$studienplan = new studienplan();
$studienplan->loadStudienplan($prestudent->studienplan_id);
$staatsbuergerschaft = new nation();
$staatsbuergerschaft->load($student->staatsbuergerschaft);
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
switch($student->geschlecht)
{
case 'm':
$geschlecht = 'Männlich';
break;
case 'w':
$geschlecht = 'Weiblich';
break;
case 'u':
$geschlecht = 'Unbekannt';
break;
default:
$geschlecht ='';
}
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
if ($studienordnung->studiengang_kz<0)
{
$stg = new studiengang();
$stg->load($studienordnung->studiengang_kz);
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studienordnung->studiengang_kz));
}
else
$studiengang_kz = sprintf("%04s", abs($studienordnung->studiengang_kz));
echo "\t\t<quote>1</quote>\n";
echo "\t\t<personenkz>".$uid."</personenkz>\n";
echo "\t\t<geschlecht>".$geschlecht."</geschlecht>\n";
echo "\t\t<anrede>".$student->anrede."</anrede>\n";
echo "\t\t<vorname>".$student->vorname." ".$student->vornamen."</vorname>\n";
echo "\t\t<vornamen>".$student->vornamen."</vornamen>\n";
echo "\t\t<nachname>".$student->nachname."</nachname>\n";
echo "\t\t<titelpre>".$student->titelpre."</titelpre>\n";
echo "\t\t<titelpost>".$student->titelpost."</titelpost>\n";
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
echo "\t\t<gebort>".$student->gebort."</gebort>\n";
echo "\t\t<staatsbuergerschaft>".$staatsbuergerschaft->langtext."</staatsbuergerschaft>\n";
echo "\t\t<svnr>".$svnr."</svnr>\n";
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
echo "\t\t<studiengang>".$studienordnung->studiengangbezeichnung."</studiengang>\n";
echo "\t\t<studiengang_englisch>".$studienordnung->studiengangbezeichnung_englisch."</studiengang_englisch>\n";
echo "\t\t<studiengang_kurzbz>".$studienordnung->studiengangkurzbzlang."</studiengang_kurzbz>\n";
echo "\t\t<studiengang_kz>".$studiengang_kz."</studiengang_kz>\n";
echo "\t\t<studiengangSprache>".$studienplan->sprache."</studiengangSprache>";
echo "\t\t<ects_gesamt>".$studienordnung->ects."</ects_gesamt>";
echo "\t\t<ects_pro_semester>".($studienplan->regelstudiendauer!=0?$studienordnung->ects/$studienplan->regelstudiendauer:0)."</ects_pro_semester>";
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
echo "\t\t<ausbildungssemester_aktuell>".$prestudent->ausbildungssemester."</ausbildungssemester_aktuell>";
$studiensemester_aktuell = new studiensemester();
$studiensemester_aktuell->load($studiensemester);
echo "\t\t<studiensemester_aktuell>".$studiensemester_aktuell->bezeichnung."</studiensemester_aktuell>";
// check ob Oeh-Beitrag bezahlt wurde
$oehbeitrag = $konto->getOehBeitragGesamt($uid, $studiensemester_aktuell->studiensemester_kurzbz);
echo "\t\t<oehbeitrag>".str_replace('.', ',', $oehbeitrag)."</oehbeitrag>";
// check ob Quereinsteiger
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'';
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
$studiensemester_beginn = new studiensemester();
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
$studiensemester_beginn->load($studienbeginn);
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
echo "\t\t<studiensemester_beginndatum>".date('d.m.Y',strtotime($studiensemester_beginn->start))."</studiensemester_beginndatum>";
$prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student');
$studiensemester_abschluss = new studiensemester();
$abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester);
$studiensemester_abschluss->load($abschluss);
echo "\t\t<voraussichtlichLetztesStudiensemester>".$studiensemester_abschluss->bezeichnung."</voraussichtlichLetztesStudiensemester>";
echo "\t\t<voraussichtlichLetztesStudiensemester_datum>".date('d.m.Y',strtotime($studiensemester_abschluss->ende))."</voraussichtlichLetztesStudiensemester_datum>";
$studiensemester_endedatum = new studiensemester();
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
$status_aktuell = ($prestudent->getLastStatus($student->prestudent_id,null,null))?$prestudent->status_kurzbz:'';
switch($status_aktuell)
{
case 'Student':
$studierendenstatus_aktuell = 'Aktive/r StudentIn';
break;
case 'Unterbrecher':
$studierendenstatus_aktuell = 'UnterbrecherIn';
break;
case 'Absolvent':
$studierendenstatus_aktuell = 'AbsolventIn';
break;
case 'Diplomand':
$studierendenstatus_aktuell = 'DiplomandIn';
break;
case 'Abbrecher':
$studierendenstatus_aktuell = 'AbbrecherIn';
break;
default:
$studierendenstatus_aktuell ='';
}
echo "\t\t<studierendenstatus_aktuell>".$studierendenstatus_aktuell."</studierendenstatus_aktuell>\n";
echo "\t\t<datum_reifepruefung>".$prestudent->zgvdatum."</datum_reifepruefung>\n";
$zgv = new zgv($prestudent->zgv_code);
echo "\t\t<schulform_zgv>".$zgv->zgv_kurzbz."</schulform_zgv>\n";
echo "\t\t<studienplan_bezeichnung>".$studienplan->bezeichnung."</studienplan_bezeichnung>\n";
echo "\t\t<anmerkungpre><![CDATA[$prestudent->anmerkung]]></anmerkungpre>\n";
$titel_kurzbz = '';
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t\t<titel_kurzbz>".$titel_kurzbz."</titel_kurzbz>\n";
echo "\t\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t\t<studienplan_sprache>".$studienplan->sprache."</studienplan_sprache>\n";
echo "\t\t<regelstudiendauer>".$studienplan->regelstudiendauer."</regelstudiendauer>\n";
$akadgrad = new akadgrad();
$akadgrad->getAkadgradStudent($student->uid);
echo "\t\t<akadgrad>".$akadgrad->titel."</akadgrad>\n";
echo "\t\t<akadgrad_kurzbz>".$akadgrad->akadgrad_kurzbz."</akadgrad_kurzbz>\n";
//für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen
$lv_studiengang_kz='';
$lv_studiengang_bezeichnung='';
$lv_studiengang_typ='';
$stg_typ=new studiengang();
$lv=new lehrveranstaltung();
$lv->load_lva_student($student->uid);
if(count($lv->lehrveranstaltungen)>0)
{
$lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz;
$lv_studiengang=new studiengang();
$lv_studiengang->load($lv_studiengang_kz);
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
$lv_studiengang_typ=$stg_typ->bezeichnung;
}
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
echo "\t\t<lv_studiengang_typ>$lv_studiengang_typ</lv_studiengang_typ>";
echo "\t\t<lv_studiengang_bezeichnung>$lv_studiengang_bezeichnung</lv_studiengang_bezeichnung>";
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
$adresse = new adresse();
$adresse->load_pers($student->person_id);
foreach($adresse->result as $row_adresse)
{
if($row_adresse->zustelladresse)
{
echo "\t\t<strasse><![CDATA[$row_adresse->strasse]]></strasse>\n";
echo "\t\t<plz>".$row_adresse->plz." ".$row_adresse->ort."</plz>\n";
echo "\t\t<nation>".$row_adresse->nation."</nation>\n";
break;
}
}
foreach($adresse->result as $row_adresse)
{
if($row_adresse->heimatadresse)
{
echo "\t\t<heimat_strasse><![CDATA[$row_adresse->strasse]]></heimat_strasse>\n";
echo "\t\t<heimat_plz>".$row_adresse->plz." ".$row_adresse->ort."</heimat_plz>\n";
echo "\t\t<heimat_nation>".$row_adresse->nation."</heimat_nation>\n";
break;
}
}
$prestudent = new prestudent();
$prestudent->getLastStatus($student->prestudent_id, null, 'Student');
if($prestudent->orgform_kurzbz!='')
$orgform = $prestudent->orgform_kurzbz;
else
$orgform = $studienplan->orgform_kurzbz;
$orgform_bez = new organisationsform();
$orgform_bez->load($orgform);
echo "\t\t<orgform>".$orgform."</orgform>\n";
echo "\t\t<orgform_bezeichnung>".$orgform_bez->bezeichnung."</orgform_bezeichnung>\n";
//Studiengangsleiter auslesen
$stg_oe_obj = new studiengang($studienordnung->studiengang_kz);
if ($studienordnung->studiengang_kz=='')
$stgleiter = $stg_oe_obj->getLeitung($student_help->studiengang_kz);
else
$stgleiter = $stg_oe_obj->getLeitung($studienordnung->studiengang_kz);
$stgl='';
foreach ($stgleiter as $stgleiter_uid)
{
$stgl_ma = new mitarbeiter($stgleiter_uid);
$stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost);
}
echo "\t\t<stgl>$stgl</stgl>\n";
}
echo "\t</studienblatt>\n";
}
echo "</studienblaetter>";
?>