Tempus - Tooltiptext bei Zeitsperren

This commit is contained in:
Andreas Österreicher
2010-02-23 10:07:49 +00:00
parent 74e12a421d
commit 874fc2085c
2 changed files with 79 additions and 6 deletions
+23 -6
View File
@@ -35,6 +35,7 @@ require_once(dirname(__FILE__).'/benutzerberechtigung.class.php');
require_once(dirname(__FILE__).'/studiengang.class.php');
require_once(dirname(__FILE__).'/mitarbeiter.class.php');
require_once(dirname(__FILE__).'/datum.class.php');
require_once(dirname(__FILE__).'/zeitsperre.class.php');
class wochenplan extends basis_db
{
@@ -927,10 +928,25 @@ class wochenplan extends basis_db
echo '</vbox>';
for ($k=0; $k<$num_rows_stunde; $k++)
{
$tooltip='';
$row = $this->db_fetch_object($result_stunde, $k);
$j=$row->stunde;
if (isset($wunsch[$i][$j]))
{
$index=$wunsch[$i][$j];
if($index==-3)
{
//Wenn eine Zeitsperre eingetragen ist, dann diese im Tooltiptext anzeigen
$zeitsperre = new zeitsperre();
$zeitsperre->getSperreByDate($this->pers_uid, date('Y-m-d',$datum), $j);
foreach($zeitsperre->result as $sperren)
{
if($tooltip!='')
$tooltip.=', ';
$tooltip.=$sperren->zeitsperretyp_kurzbz.' - '.$sperren->bezeichnung;
}
}
}
else
$index=1;
if ($index=='')
@@ -939,18 +955,19 @@ class wochenplan extends basis_db
if ($isferien)
{
$bgcolor='#FFFF55';
$ferienbezeichnung='';
//Wenn Ferien eingetragen sind, dann die Bezeichnung im Tooltiptext anzeigen
foreach($ferien->getFerien($datum) as $bezeichnung)
{
if($ferienbezeichnung!='')
$ferienbezeichnung.=', ';
$ferienbezeichnung .= $bezeichnung;
if($tooltip!='')
$tooltip.=', ';
$tooltip .= $bezeichnung;
}
}
echo '<vbox style="border:1px solid black; background-color:'.$bgcolor.'"';
if($isferien)
if($tooltip!='')
{
echo ' tooltiptext="'.str_replace('"','&quot;',$ferienbezeichnung).'"';
echo ' tooltiptext="'.str_replace('"','&quot;',$tooltip).'"';
}
echo '
ondragdrop="nsDragAndDrop.drop(event,boardObserver)"
+56
View File
@@ -339,5 +339,61 @@ class zeitsperre extends basis_db
}
return $erbk;
}
/**
* Liefert die Zeitsperren eines Users zu einem bestimmten Datum und Stunde
*
* @param $user
* @param $datum
* @param $stunde
* @return true wenn ok, false im Fehlerfall
*/
public function getSperreByDate($user, $datum, $stunde)
{
$qry = "SELECT
*
FROM
campus.tbl_zeitsperre
WHERE
vondatum<='$datum' AND bisdatum>='$datum' AND
(vonstunde<='$stunde' OR vonstunde is null) AND
(bisstunde>='$stunde' OR bisstunde is null) AND
mitarbeiter_uid='$user'";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new zeitsperre();
$obj->zeitsperre_id = $row->zeitsperre_id;
$obj->zeitsperretyp_kurzbz = $row->zeitsperretyp_kurzbz;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
$obj->bezeichnung = $row->bezeichnung;
$obj->vondatum = $row->vondatum;
$obj->vonstunde = $row->vonstunde;
$obj->bisdatum = $row->bisdatum;
$obj->bisstunde = $row->bisstunde;
$obj->erreichbarkeit_kurzbz = $row->erreichbarkeit_kurzbz;
$obj->vertretung_uid = $row->vertretung_uid;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->freigabeamum = $row->freigabeamum;
$obj->freigabevon = $row->freigabevon;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Zeitsperren';
return false;
}
}
}
?>