mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
Dokumentvorlage Studienordnung (trunk)
This commit is contained in:
@@ -548,6 +548,41 @@ class lehrveranstaltung extends basis_db
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Zaehlt alle Lehrveranstaltungen einer Organisationsform in einem Studiengang
|
||||
* @param $studiengang_kz
|
||||
* @param $orgform_kurzbz
|
||||
* @return false im Fehlerfall, ansonsten das Ergebnis
|
||||
*/
|
||||
public function count_lva_orgform($studiengang_kz, $orgform_kurzbz=null)
|
||||
{
|
||||
if(!is_numeric($studiengang_kz) || $studiengang_kz=='')
|
||||
{
|
||||
$this->errormsg = 'studiengang_kz muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
/*
|
||||
if(is_null($orgform_kurzbz) || $orgform_kurzbz=='')
|
||||
{
|
||||
$this->errormsg = 'keine orgform_kurzbz uebergeben';
|
||||
return false;
|
||||
}*/
|
||||
|
||||
$qry='SELECT count(*) as count FROM lehre.tbl_lehrveranstaltung
|
||||
WHERE studiengang_kz='.$studiengang_kz.' AND orgform_kurzbz'.(is_null($orgform_kurzbz)?' is null':"='".$orgform_kurzbz."'");
|
||||
//echo $qry;
|
||||
$return=array();
|
||||
if($db_result=$this->db_query($qry))
|
||||
{
|
||||
if($row=$this->db_fetch_object($db_result))
|
||||
{
|
||||
return $row->count;
|
||||
}
|
||||
}
|
||||
$this->errormsg = 'Fehler bei der Datenbankabfrage';
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft die Gueltigkeit der Variablen
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
@@ -1804,5 +1839,64 @@ class lehrveranstaltung extends basis_db
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param type $lv_id
|
||||
* @param type $semester -> Ausbildungssemester
|
||||
* @return boolean
|
||||
*/
|
||||
public function getALVS($lv_id, $semester)
|
||||
{
|
||||
|
||||
if($semester=='')
|
||||
{
|
||||
$this->errormsg = "Kein Semester übergeben";
|
||||
return false;
|
||||
}
|
||||
|
||||
$ss = ($semester%2==0)?'SS':'WS';
|
||||
|
||||
$qry_ss = "SELECT studiensemester_kurzbz, start, ende
|
||||
FROM public.tbl_studiensemester
|
||||
WHERE substring(studiensemester_kurzbz from 1 for 2)='$ss'
|
||||
AND start < now() ORDER BY start DESC LIMIT 1";
|
||||
|
||||
if(!$result = $this->db_query($qry_ss))
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!$row= $this->db_fetch_object($result))
|
||||
{
|
||||
$this->errormsg = "Kein Semester gefunden";
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
$qry_alvs = "SELECT sum(lm.semesterstunden) as alvs
|
||||
FROM lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehreinheit USING (lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter lm USING (lehreinheit_id)
|
||||
WHERE lehrveranstaltung_id = ".$this->db_add_param($lv_id, FHC_STRING)."
|
||||
AND studiensemester_kurzbz = ".$this->db_add_param($row->studiensemester_kurzbz).";";
|
||||
|
||||
if(!$result_alvs=$this->db_query($qry_alvs))
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
|
||||
if($row_alvs = $this->db_fetch_object($result_alvs))
|
||||
{
|
||||
return $row_alvs->alvs;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = $qry_alvs;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
+117
-58
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2012 FH Technikum-Wien
|
||||
/* Copyright (C) 2012 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
|
||||
@@ -25,6 +25,7 @@ require_once('../include/studiengang.class.php');
|
||||
require_once('../include/lehrveranstaltung.class.php');
|
||||
require_once('../include/lvinfo.class.php');
|
||||
require_once('../include/mitarbeiter.class.php');
|
||||
require_once('../include/lehreinheitgruppe.class.php');
|
||||
|
||||
|
||||
header("Content-type: application/xhtml+xml");
|
||||
@@ -32,7 +33,9 @@ header("Content-type: application/xhtml+xml");
|
||||
if(isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
{
|
||||
if(isset($_REQUEST['stg_kz']))
|
||||
{
|
||||
{
|
||||
$orgform_array=array('VBB','BB','DL','VZ');
|
||||
|
||||
// Studiengangsdaten laden
|
||||
$stg_kz = $_REQUEST['stg_kz'];
|
||||
//$datum = new datum();
|
||||
@@ -41,25 +44,24 @@ if(isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
|
||||
if(!$objStg->load($stg_kz))
|
||||
die('Fehler beim laden des Studiengangs');
|
||||
$objLV = new lehrveranstaltung();
|
||||
$objLVInfo = new lvinfo();
|
||||
|
||||
$stg_typ=new studiengang();
|
||||
$stg_typ->getStudiengangTyp($objStg->typ);
|
||||
$stg_art=$stg_typ->bezeichnung;
|
||||
|
||||
switch($objStg->typ)
|
||||
{
|
||||
case 'b':
|
||||
$titel_kurzbz='BSc';
|
||||
$stg_art = 'Bachelor';
|
||||
break;
|
||||
case 'm':
|
||||
$titel_kurzbz='MSc';
|
||||
$titel_kurzbz = 'BSc';
|
||||
break;
|
||||
case 'm':
|
||||
$stg_art = 'Master';
|
||||
break;
|
||||
default:
|
||||
$titel_kurzbz='';
|
||||
$titel_kurzbz ='MSc';
|
||||
break;
|
||||
case 'd':
|
||||
$stg_art = 'Diplom';
|
||||
break;
|
||||
default:
|
||||
$stg_art ='';
|
||||
$titel_kurzbz = '';
|
||||
}
|
||||
|
||||
$stgleiter = $objStg->getLeitung($objStg->studiengang_kz);
|
||||
@@ -72,16 +74,22 @@ if(isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
|
||||
switch($objStg->orgform_kurzbz)
|
||||
{
|
||||
case 'VBB':
|
||||
$orgform_kurzbz_lang='Vollzeit und Berufsbegleitend';
|
||||
break;
|
||||
case 'VZ':
|
||||
$orgform_kurzbz_lang='Vollzeit';
|
||||
break;
|
||||
case 'BB':
|
||||
$orgform_kurzbz_lang='Berufsbegleitend';
|
||||
break;
|
||||
case 'DL':
|
||||
$orgform_kurzbz_lang='Distance Learning';
|
||||
break;
|
||||
default:
|
||||
$orgform_kurzbz_lang=$objStg->orgform_kurzbz;
|
||||
}
|
||||
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
echo '<studiengang>';
|
||||
echo ' <studiengang_kz><![CDATA['.$objStg->studiengang_kz.']]></studiengang_kz>';
|
||||
@@ -93,59 +101,110 @@ if(isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
|
||||
echo ' <bezeichnung_englisch><![CDATA['.$objStg->english.']]></bezeichnung_englisch>';
|
||||
echo ' <titel_kurzbz><![CDATA['.$titel_kurzbz.']]></titel_kurzbz>';
|
||||
echo ' <studiengangsleitung><![CDATA['.$stgl.']]></studiengangsleitung>';
|
||||
echo ' <orgform_kurzbz><![CDATA['.$objStg->orgform_kurzbz.']]></orgform_kurzbz>';
|
||||
echo ' <orgform_kurzbz_lang><![CDATA['.$orgform_kurzbz_lang.']]></orgform_kurzbz_lang>';
|
||||
/* echo ' <studienplan>';
|
||||
echo ' <regelstudiendauer><![CDATA['.$objStg->max_semester.']]></regelstudiendauer>';
|
||||
echo ' <bezeichnung><![CDATA['.$objStg->bezeichnung.']]></bezeichnung>';
|
||||
echo ' <bezeichnung_englisch><![CDATA['.$objStg->english.']]></bezeichnung_englisch>';
|
||||
echo ' <kurzbzlang><![CDATA['.$objStg->kurzbzlang.']]></kurzbzlang>'; */
|
||||
echo ' <orgform>';
|
||||
echo ' <orgform_kurzbz><![CDATA['.$objStg->orgform_kurzbz.']]></orgform_kurzbz>';
|
||||
echo ' <orgform_kurzbz_lang><![CDATA['.$orgform_kurzbz_lang.']]></orgform_kurzbz_lang>';
|
||||
echo ' <regelstudiendauer><![CDATA['.$objStg->max_semester.']]></regelstudiendauer>';
|
||||
echo ' <studienplaetze><![CDATA['.$objStg->studienplaetze.']]></studienplaetze>';
|
||||
|
||||
// ************ Lehrveranstaltungen ***************
|
||||
// for($i=1;$i<=$objStg->max_semester;$i++)
|
||||
$objLV = new lehrveranstaltung();
|
||||
if(!$objLV->load_lva($objStg->studiengang_kz, null,null,true,true,'orgform_kurzbz,semester,sort,bezeichnung'))
|
||||
die('Fehler beim laden der Lehrveranstaltungen');
|
||||
|
||||
// $count_arr=$objLV->count_lva($objStg->studiengang_kz,'orgform_kurzbz');
|
||||
foreach ($orgform_array as $orgform_kurzbz)
|
||||
{
|
||||
// if(!$objLV->load_lva($objStg->studiengang_kz, $i,null,true,true,'semester'))
|
||||
if(!$objLV->load_lva($objStg->studiengang_kz, null,null,true,true,'semester'))
|
||||
die('Fehler beim laden der Lehrveranstaltungen aus Semester '.$i);
|
||||
|
||||
// echo '<semester>';
|
||||
foreach($objLV->lehrveranstaltungen as $lv)
|
||||
$count=$objLV->count_lva_orgform($objStg->studiengang_kz,$orgform_kurzbz);
|
||||
|
||||
if($orgform_kurzbz==$objStg->orgform_kurzbz)
|
||||
{
|
||||
echo ' <lehrveranstaltung>';
|
||||
//
|
||||
echo ' <lv_semester><![CDATA['.$lv->semester.']]></lv_semester>';
|
||||
echo ' <lv_bezeichnung><![CDATA['.$lv->bezeichnung.']]></lv_bezeichnung>';
|
||||
echo ' <lv_kurzbz><![CDATA['.$lv->kurzbz.']]></lv_kurzbz>';
|
||||
echo ' <lv_lehrform_kurzbz><![CDATA['.$lv->lehrform_kurzbz.']]></lv_lehrform_kurzbz>';
|
||||
echo ' <lv_ects><![CDATA['.$lv->ects.']]></lv_ects>';
|
||||
echo ' <lv_semesterstunden><![CDATA['.$lv->semesterstunden.']]></lv_semesterstunden>';
|
||||
echo ' <lv_anmerkung><![CDATA['.clearHtmlTags($lv->anmerkung).']]></lv_anmerkung>';
|
||||
// ***************** LV-Info ***************
|
||||
if ($objLVInfo->exists($lv->lehrveranstaltung_id,'German'))
|
||||
{
|
||||
if(!$objLVInfo->load($lv->lehrveranstaltung_id,'German'))
|
||||
die('Fehler beim laden der Lehrveranstaltungen');
|
||||
//var_dump($objLVInfo);
|
||||
echo ' <lvinfo_sprache><![CDATA['.clearHtmlTags($objLVInfo->sprache).']]></lvinfo_sprache>';
|
||||
echo ' <lvinfo_titel><![CDATA['.clearHtmlTags($objLVInfo->titel).']]></lvinfo_titel>';
|
||||
echo ' <lvinfo_lehrziele><![CDATA['.clearHtmlTags($objLVInfo->lehrziele).']]></lvinfo_lehrziele>';
|
||||
echo ' <lvinfo_methodik><![CDATA['.clearHtmlTags($objLVInfo->methodik).']]></lvinfo_methodik>';
|
||||
echo ' <lvinfo_lehrinhalte><![CDATA['.clearHtmlTags($objLVInfo->lehrinhalte).']]></lvinfo_lehrinhalte>';
|
||||
echo ' <lvinfo_voraussetzungen><![CDATA['.clearHtmlTags($objLVInfo->voraussetzungen).']]></lvinfo_voraussetzungen>';
|
||||
echo ' <lvinfo_unterlagen><![CDATA['.clearHtmlTags($objLVInfo->unterlagen).']]></lvinfo_unterlagen>';
|
||||
echo ' <lvinfo_pruefungsordnung><![CDATA['.clearHtmlTags($objLVInfo->pruefungsordnung).']]></lvinfo_pruefungsordnung>';
|
||||
echo ' <lvinfo_kurzbeschreibung><![CDATA['.clearHtmlTags($objLVInfo->kurzbeschreibung).']]></lvinfo_kurzbeschreibung>';
|
||||
echo ' <lvinfo_anmerkungen><![CDATA['.clearHtmlTags($objLVInfo->anmerkungen).']]></lvinfo_anmerkungen>';
|
||||
}
|
||||
echo ' </lehrveranstaltung>';
|
||||
$orgform_match=true;
|
||||
$count+=$objLV->count_lva_orgform($objStg->studiengang_kz,null);
|
||||
// echo '<orgform>'.$orgform_kurzbz.' ('.$count.')</orgform>';
|
||||
}
|
||||
// echo '</semester>';
|
||||
// $i++;
|
||||
else
|
||||
{
|
||||
$orgform_match=false;
|
||||
}
|
||||
if($count<1)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
switch($orgform_kurzbz)
|
||||
{
|
||||
case 'VBB':
|
||||
$orgform_kurzbz_lang='Vollzeit und Berufsbegleitend';
|
||||
break;
|
||||
case 'VZ':
|
||||
$orgform_kurzbz_lang='Vollzeit';
|
||||
break;
|
||||
case 'BB':
|
||||
$orgform_kurzbz_lang='Berufsbegleitend';
|
||||
break;
|
||||
case 'DL':
|
||||
$orgform_kurzbz_lang='Distance Learning';
|
||||
break;
|
||||
default:
|
||||
$orgform_kurzbz_lang=$orgform_kurzbz;
|
||||
}
|
||||
|
||||
echo ' <orgform>';
|
||||
echo ' <orgform_kurzbz><![CDATA['.$orgform_kurzbz.']]></orgform_kurzbz>';
|
||||
echo ' <orgform_kurzbz_lang><![CDATA['.$orgform_kurzbz_lang.']]></orgform_kurzbz_lang>';
|
||||
echo ' <regelstudiendauer><![CDATA['.$objStg->max_semester.']]></regelstudiendauer>';
|
||||
echo ' <studienplaetze><![CDATA['.$objStg->studienplaetze.']]></studienplaetze>';
|
||||
|
||||
// ************ Lehrveranstaltungen ***************
|
||||
for($i=1;$i<=$objStg->max_semester;$i++)
|
||||
{
|
||||
echo ' <semester>';
|
||||
echo ' <semester_nr><![CDATA['.$i.']]></semester_nr>';
|
||||
foreach($objLV->lehrveranstaltungen as $lv)
|
||||
{
|
||||
if(!($lv->semester==$i && ($lv->orgform_kurzbz==$orgform_kurzbz || ($orgform_match && is_null($lv->orgform_kurzbz)))))
|
||||
continue;
|
||||
|
||||
$lv_alvs = new lehrveranstaltung();
|
||||
if(!$alvs = $lv_alvs->getALVS($lv->lehrveranstaltung_id, $i))
|
||||
$alvs = '';
|
||||
|
||||
echo ' <lehrveranstaltung>';
|
||||
echo ' <lv_semester><![CDATA['.$lv->semester.']]></lv_semester>';
|
||||
echo ' <lv_bezeichnung><![CDATA['.$lv->bezeichnung.']]></lv_bezeichnung>';
|
||||
echo ' <lv_kurzbz><![CDATA['.$lv->kurzbz.']]></lv_kurzbz>';
|
||||
echo ' <lv_lehrform_kurzbz><![CDATA['.$lv->lehrform_kurzbz.']]></lv_lehrform_kurzbz>';
|
||||
echo ' <lv_gruppen><![CDATA[]]></lv_gruppen>';
|
||||
echo ' <lv_ects><![CDATA['.$lv->ects.']]></lv_ects>';
|
||||
echo ' <lv_semesterstunden><![CDATA['.$lv->semesterstunden.']]></lv_semesterstunden>';
|
||||
echo ' <lv_alvs><![CDATA['.$alvs.']]></lv_alvs>';
|
||||
echo ' <lv_anmerkung><![CDATA['.clearHtmlTags($lv->anmerkung).']]></lv_anmerkung>';
|
||||
|
||||
// ***************** LV-Info ***************
|
||||
if ($objLVInfo->exists($lv->lehrveranstaltung_id,'German'))
|
||||
{
|
||||
if(!$objLVInfo->load($lv->lehrveranstaltung_id,'German'))
|
||||
die('Fehler beim laden der Lehrveranstaltungen');
|
||||
//var_dump($objLVInfo);
|
||||
echo ' <lvinfo_sprache><![CDATA['.clearHtmlTags($objLVInfo->sprache).']]></lvinfo_sprache>';
|
||||
echo ' <lvinfo_titel><![CDATA['.clearHtmlTags($objLVInfo->titel).']]></lvinfo_titel>';
|
||||
echo ' <lvinfo_lehrziele><![CDATA['.clearHtmlTags($objLVInfo->lehrziele).']]></lvinfo_lehrziele>';
|
||||
echo ' <lvinfo_methodik><![CDATA['.clearHtmlTags($objLVInfo->methodik).']]></lvinfo_methodik>';
|
||||
echo ' <lvinfo_lehrinhalte><![CDATA['.clearHtmlTags($objLVInfo->lehrinhalte).']]></lvinfo_lehrinhalte>';
|
||||
echo ' <lvinfo_voraussetzungen><![CDATA['.clearHtmlTags($objLVInfo->voraussetzungen).']]></lvinfo_voraussetzungen>';
|
||||
echo ' <lvinfo_unterlagen><![CDATA['.clearHtmlTags($objLVInfo->unterlagen).']]></lvinfo_unterlagen>';
|
||||
echo ' <lvinfo_pruefungsordnung><![CDATA['.clearHtmlTags($objLVInfo->pruefungsordnung).']]></lvinfo_pruefungsordnung>';
|
||||
echo ' <lvinfo_kurzbeschreibung><![CDATA['.clearHtmlTags($objLVInfo->kurzbeschreibung).']]></lvinfo_kurzbeschreibung>';
|
||||
echo ' <lvinfo_anmerkungen><![CDATA['.clearHtmlTags($objLVInfo->anmerkungen).']]></lvinfo_anmerkungen>';
|
||||
}
|
||||
echo ' </lehrveranstaltung>';
|
||||
}
|
||||
echo '</semester>';
|
||||
}
|
||||
echo ' </orgform>';
|
||||
}
|
||||
echo ' </orgform>';
|
||||
// echo ' </studienplan>';
|
||||
echo '</studiengang>';
|
||||
}
|
||||
|
||||
+2936
-209
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user