mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-23 01:42:17 +00:00
Erstversion Studienplan ansicht für Studierende
This commit is contained in:
+41
-1
@@ -160,7 +160,47 @@ class datum
|
||||
return false;
|
||||
}
|
||||
|
||||
public function DateDiff($datum1, $datum2)
|
||||
{
|
||||
$datetime1 = new DateTime($datum1);
|
||||
$datetime2 = new DateTime($datum2);
|
||||
$interval = $datetime1->diff($datetime2);
|
||||
return $interval->format('%R%d');
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob ein Datum / Datum und Uhrzeit zwischen 2 anderen liegt
|
||||
* Unterstuetzt auch offenes (leeres) Start und Ende Datum
|
||||
*
|
||||
* @param $start Startdatum
|
||||
* @param $ende Endedatum
|
||||
* @param $datum Datum das geprueft wird
|
||||
* @return true wenn dazwischen sonst false
|
||||
*/
|
||||
public function between($start, $ende, $datum)
|
||||
{
|
||||
$datestart = new DateTime($start);
|
||||
$dateende = new DateTime($ende);
|
||||
$dateref = new DateTime($datum);
|
||||
|
||||
// Start und Ende nicht gesetzt
|
||||
if($start=='' && $ende=='')
|
||||
return true;
|
||||
|
||||
// Start nicht gesetzt; Ende gesetzt
|
||||
if($start=='' && $ende!='' && $dateende>=$dateref)
|
||||
return true;
|
||||
|
||||
// Ende nicht gesetzt; Start gesetzt
|
||||
if($ende=='' && $start!='' && $datestart<=$dateref)
|
||||
return true;
|
||||
|
||||
// Start und Ende gesetzt
|
||||
if($ende!='' && $start!='' && $datestart<=$dateref && $dateende>=$dateref)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------------------------------------
|
||||
/**
|
||||
@@ -277,4 +317,4 @@ class datum
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -328,5 +328,51 @@ class lvangebot extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt das LV-Angebot eines gesammten Studienplanes
|
||||
* @param $studienplan_id ID des Studienplanes
|
||||
*/
|
||||
public function getLVAngebotFromStudienplan($studienplan_id, $studiensemester_arr=null)
|
||||
{
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_studienplan_lehrveranstaltung
|
||||
JOIN lehre.tbl_lvangebot USING(lehrveranstaltung_id)
|
||||
WHERE
|
||||
tbl_studienplan_lehrveranstaltung.studienplan_id=".$this->db_add_param($studienplan_id);
|
||||
|
||||
if(!is_null($studiensemester_arr))
|
||||
$qry.=" AND tbl_lvangebot.studiensemester_kurzbz IN(".$this->implode4SQL($studiensemester_arr).")";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$lvangebot=new lvangebot();
|
||||
$lvangebot->lvangebot_id=$row->lvangebot_id;
|
||||
$lvangebot->lehrveranstaltung_id=$row->lehrveranstaltung_id;
|
||||
$lvangebot->studiensemester_kurzbz=$row->studiensemester_kurzbz;
|
||||
$lvangebot->gruppe_kurzbz=$row->gruppe_kurzbz;
|
||||
$lvangebot->incomingplaetze=$row->incomingplaetze;
|
||||
$lvangebot->gesamtplaetze=$row->gesamtplaetze;
|
||||
$lvangebot->anmeldefenster_start=$row->anmeldefenster_start;
|
||||
$lvangebot->anmeldefenster_ende=$row->anmeldefenster_ende;
|
||||
$lvangebot->insertamum=$row->insertamum;
|
||||
$lvangebot->insertvon=$row->insertvon;
|
||||
$lvangebot->updatenamum=$row->updateamum;
|
||||
$lvangebot->updatevon=$row->updatevon;
|
||||
|
||||
$this->result[]=$lvangebot;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Datensätze konnten nicht geladen werden';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -483,6 +483,7 @@ class lvregel extends basis_db
|
||||
{
|
||||
return $this->TestRegeln($uid, $result, $studiensemester_kurzbz);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -572,7 +573,7 @@ class lvregel extends basis_db
|
||||
$prestudent = new prestudent();
|
||||
if($prestudent->getLastStatus($student->prestudent_id, $studiensemester_kurzbz))
|
||||
{
|
||||
$this->cache[$uid][$studiensemester_kurzbz]=$prestudent->semester;
|
||||
$this->cache[$uid][$studiensemester_kurzbz]=$prestudent->ausbildungssemester;
|
||||
}
|
||||
}
|
||||
$ausbildungssemester = $this->cache[$uid][$studiensemester_kurzbz];
|
||||
@@ -645,9 +646,40 @@ class lvregel extends basis_db
|
||||
return $retval;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob eine minimale Semesteranforderung für diese Lehrveranstaltungszuordnung benötigt wird
|
||||
* @param $studienplan_lehrveranstaltung_id
|
||||
* @param $semester
|
||||
* @return boolean
|
||||
*/
|
||||
public function checkSemester($studienplan_lehrveranstaltung_id, $semester)
|
||||
{
|
||||
$qry = "SELECT
|
||||
1
|
||||
FROM
|
||||
lehre.tbl_lvregel
|
||||
WHERE
|
||||
studienplan_lehrveranstaltung_id=".$this->db_add_param($studienplan_lehrveranstaltung_id)."
|
||||
AND lvregeltyp_kurzbz='ausbsemmin'
|
||||
AND parameter::integer>".$this->db_add_param($semester, FHC_INTEGER);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($this->db_num_rows($result)>0)
|
||||
return false;
|
||||
else
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function debug($msg)
|
||||
{
|
||||
echo ' '.$msg;
|
||||
//echo ' '.$msg;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -645,5 +645,40 @@ class studienplan extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Holt den aktiven Studienplan eines Studiensemester / Ausbildungssemesters
|
||||
* @param studiensemester_kurzbz
|
||||
* @param $ausbuldungssemester
|
||||
* @param $orgform_kurzbz
|
||||
*/
|
||||
function getStudienplan($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester, $orgform_kurzbz)
|
||||
{
|
||||
$qry = "SELECT
|
||||
tbl_studienplan.studienplan_id
|
||||
FROM
|
||||
lehre.tbl_studienplan
|
||||
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
|
||||
JOIN lehre.tbl_studienordnung_semester USING(studienordnung_id)
|
||||
WHERE
|
||||
tbl_studienplan.aktiv
|
||||
AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)."
|
||||
AND tbl_studienordnung_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)."
|
||||
AND tbl_studienordnung_semester.semester=".$this->db_add_param($ausbildungssemester);
|
||||
|
||||
if($orgform_kurzbz!='')
|
||||
{
|
||||
$qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz);
|
||||
}
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
return $row->studienplan_id;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user