This commit is contained in:
Christian Paminger
2007-08-27 16:31:25 +00:00
parent 3acc55ccb8
commit 955a00f584
2 changed files with 39 additions and 8 deletions
+6 -1
View File
@@ -18,6 +18,8 @@
*****************************************************************************/
// include_once('mitarbeiter.class.php');
require_once('studiensemester.class.php');
class lehrstunde
{
@@ -52,6 +54,7 @@ class lehrstunde
var $lehrstunden=array(); // @brief Objekt der eigenen Klasse
var $anzahl; // @brief Gesamte Anzahl der Stunden im Array
var $ss=null; // @brief Studiensemester
/** Konstruktor
@@ -287,7 +290,9 @@ class lehrstunde
$grp=$row->gruppe;
// Gruppen ermitteln
$sql_query="SELECT gruppe_kurzbz FROM public.tbl_benutzergruppe WHERE uid='$uid'";
if (is_null($this->ss))
$this->ss=studiensemester::getNearest();
$sql_query="SELECT gruppe_kurzbz FROM public.tbl_benutzergruppe WHERE uid='$uid' AND studiensemester_kurzbz='$this->ss'";
//echo $sql_query;
if (! $result_einheit=pg_query($this->conn, $sql_query) )
{
+33 -7
View File
@@ -233,19 +233,19 @@ class studiensemester
return $stsem;
else
{
//$qry = "SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE ende >= now() ORDER BY ende";
$qry = "SELECT studiensemester_kurzbz FROM public.vw_studiensemester ";
$qry = "SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE 1";
//$qry = "SELECT studiensemester_kurzbz FROM public.vw_studiensemester ";
if($semester!='')
{
if($semester%2==0)
$ss='SS';
else
else
$ss='WS';
$qry.= " WHERE substring(studiensemester_kurzbz from 1 for 2)='$ss' ";
$qry.= " AND substring(studiensemester_kurzbz from 1 for 2)='$ss' ";
}
$qry.= " ORDER BY delta LIMIT 1";
$qry.= " AND ende >= now() ORDER BY ende LIMIT 1";
if(!$res=pg_exec($this->conn,$qry))
{
$this->errormsg = pg_errormessage($this->conn);
@@ -265,6 +265,32 @@ class studiensemester
}
}
/**
* Liefert das naechstgelegenste Studiensemester
* @return Studiensemester oder false wenn es keines gibt
*/
function getNearest()
{
$qry = "SELECT studiensemester_kurzbz FROM public.vw_studiensemester ORDER BY delta LIMIT 1";
if(!$res=pg_exec($this->conn,$qry))
{
$this->errormsg = pg_errormessage($this->conn);
return false;
}
if(pg_num_rows($res)>0)
{
$erg = pg_fetch_object($res);
return $erg->studiensemester_kurzbz;
}
else
{
$this->errormsg = "Kein aktuelles Studiensemester vorhanden";
return false;
}
}
function getAll()
{
$qry = "SELECT * FROM public.tbl_studiensemester ORDER BY ende";