mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
Ampelsystem - diverse Bugfixes
This commit is contained in:
@@ -59,6 +59,7 @@ $datum_obj = new datum();
|
||||
|
||||
$type = isset($_GET['type'])?$_GET['type']:'';
|
||||
$ampel_id = isset($_GET['ampel_id'])?$_GET['ampel_id']:'';
|
||||
$message='';
|
||||
|
||||
if($type=='bestaetigen' && is_numeric($ampel_id))
|
||||
{
|
||||
@@ -69,7 +70,9 @@ if($type=='bestaetigen' && is_numeric($ampel_id))
|
||||
{
|
||||
if($ampel->bestaetigen($user, $ampel_id))
|
||||
{
|
||||
$message = '<span class="ok">OK</span>';
|
||||
//$message = '<span class="ok">OK</span>';
|
||||
//Ampel Ansicht im Seiten-Header aktualisieren
|
||||
$message='<script type="text/javascript">window.parent.loadampel()</script>';
|
||||
}
|
||||
else
|
||||
$message = '<span class="error">'.$ampel->errormsg.'</span>';
|
||||
@@ -81,9 +84,10 @@ if($type=='bestaetigen' && is_numeric($ampel_id))
|
||||
$message = '<span class="error">'.$p->t('tools/ampelNichtGefunden').'</span>';
|
||||
}
|
||||
|
||||
echo $message;
|
||||
|
||||
$ampel = new ampel();
|
||||
$ampel->loadUserAmpel($user, true);
|
||||
$ampel->loadUserAmpel($user, true, true);
|
||||
|
||||
echo '
|
||||
<table id="myTable" class="tablesorter">
|
||||
@@ -112,30 +116,41 @@ foreach($ampel->result as $row)
|
||||
elseif($ts_now<$ts_deadline && $ts_vorlaufzeit>=$ts_now)
|
||||
$ampelstatus='gruen';
|
||||
|
||||
if($bestaetigt = $ampel->isBestaetigt($user,$row->ampel_id))
|
||||
$ampelstatus='';
|
||||
|
||||
echo '<tr>';
|
||||
echo '<td align="center">';
|
||||
switch($ampelstatus)
|
||||
{
|
||||
case 'rot':
|
||||
echo '<img src="../../../skin/images/ampel_rot.png">';
|
||||
$status= '<img src="../../../skin/images/ampel_rot.png">';
|
||||
break;
|
||||
case 'gelb':
|
||||
echo '<img src="../../../skin/images/ampel_gelb.png">';
|
||||
$status= '<img src="../../../skin/images/ampel_gelb.png">';
|
||||
break;
|
||||
case 'gruen':
|
||||
echo '<img src="../../../skin/images/ampel_gruen.png">';
|
||||
$status= '<img src="../../../skin/images/ampel_gruen.png">';
|
||||
break;
|
||||
default:
|
||||
$status= '-';
|
||||
break;
|
||||
}
|
||||
echo $status;
|
||||
|
||||
echo '</td>';
|
||||
echo '<td>'.$row->beschreibung[$sprache].'</td>';
|
||||
$beschreibung = $row->beschreibung[$sprache];
|
||||
if($beschreibung=='' && isset($row->beschreibung[DEFAULT_LANGUAGE]))
|
||||
$beschreibung = $row->beschreibung[DEFAULT_LANGUAGE];
|
||||
echo '<td>'.$beschreibung.'</td>';
|
||||
echo '<td>'.$datum_obj->formatDatum($row->deadline,'d.m.Y').'</td>';
|
||||
|
||||
if(!$ampel->isBestaetigt($user,$row->ampel_id))
|
||||
echo '<td><a href="'.$_SERVER['PHP_SELF'].'?ampel_id='.$row->ampel_id.'&type=bestaetigen">bestätigen</a></td>';
|
||||
echo '<td>';
|
||||
if(!$bestaetigt)
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?ampel_id='.$row->ampel_id.'&type=bestaetigen">'.$p->t('tools/ampelBestaetigen').'</a>';
|
||||
else
|
||||
echo '<td></td>';
|
||||
echo $p->t('tools/ampelBestaetigt');
|
||||
echo '</td>';
|
||||
|
||||
// echo "<td>".date('d.m.Y',$ts_now)."</td>";
|
||||
// echo "<td align=\"center\">".date('d.m.Y',$ts_vorlaufzeit)."</td>";
|
||||
|
||||
+34
-3
@@ -203,6 +203,12 @@ class ampel extends basis_db
|
||||
/**
|
||||
* Laedt alle aktuellen Ampeln eines Users
|
||||
* @param $user
|
||||
* @param $zukuenftige_anzeigen
|
||||
* wenn true, werden alle zukuenftigen Ampeln geladen
|
||||
* wenn false, werden nur die Ampeln geladen die innerhalb der vorlaufzeit liegen
|
||||
* @param $bestaetigt
|
||||
* wenn true, werden alle Ampeln geladen
|
||||
* wenn false, werden nur die Ampeln geladen die noch nicht bestaetigt wurden
|
||||
*/
|
||||
public function loadUserAmpel($user, $zukuenftige_anzeigen=false, $bestaetigt=false)
|
||||
{
|
||||
@@ -252,6 +258,28 @@ class ampel extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft die Daten vor dem Speichern
|
||||
* @return boolean
|
||||
*/
|
||||
public function validate()
|
||||
{
|
||||
$benutzer_select = mb_strtolower($this->benutzer_select);
|
||||
|
||||
if(mb_strstr($benutzer_select, 'update ') || mb_strstr($benutzer_select, 'insert '))
|
||||
{
|
||||
$this->errormsg = 'Der Benutzer Select darf nur Selects beinhalten';
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!mb_strstr($benutzer_select,'select '))
|
||||
{
|
||||
$this->errormsg = 'Der Benutzer Select muss einen Select-Befehl beinhalten';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert eine Ampel
|
||||
* @param $new
|
||||
@@ -261,6 +289,9 @@ class ampel extends basis_db
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
$sprache = new sprache();
|
||||
$sprache->loadIndexArray();
|
||||
|
||||
@@ -277,9 +308,9 @@ class ampel extends basis_db
|
||||
$qry.=" benutzer_select, deadline,
|
||||
vorlaufzeit, verfallszeit, insertamum, insertvon , updateamum, updatevon) VALUES(".
|
||||
$this->addslashes($this->kurzbz).',';
|
||||
|
||||
reset($this->beschreibung);
|
||||
foreach($this->beschreibung as $key=>$value)
|
||||
$this->addslashes($value).',';
|
||||
$qry.=$this->addslashes($value).',';
|
||||
|
||||
$qry .= $this->addslashes($this->benutzer_select).','.
|
||||
$this->addslashes($this->deadline).','.
|
||||
@@ -294,7 +325,7 @@ class ampel extends basis_db
|
||||
{
|
||||
$qry = 'UPDATE public.tbl_ampel SET'.
|
||||
' kurzbz = '.$this->addslashes($this->kurzbz).',';
|
||||
|
||||
reset($this->beschreibung);
|
||||
foreach($this->beschreibung as $key=>$value)
|
||||
{
|
||||
$idx = $sprache->index_arr[$key];
|
||||
|
||||
@@ -33,5 +33,7 @@ $this->phrasen['tools/ampelStatus']='Status';
|
||||
$this->phrasen['tools/ampelBeschreibung']='Beschreibung';
|
||||
$this->phrasen['tools/ampelDeadline']='Deadline';
|
||||
$this->phrasen['tools/ampelAktion']='Aktion';
|
||||
$this->phrasen['tools/ampelBestaetigen']='bestätigen';
|
||||
$this->phrasen['tools/ampelBestaetigt']='bestätigt';
|
||||
|
||||
?>
|
||||
|
||||
@@ -33,4 +33,6 @@ $this->phrasen['tools/ampelStatus']='Status';
|
||||
$this->phrasen['tools/ampelBeschreibung']='Description';
|
||||
$this->phrasen['tools/ampelDeadline']='Deadline';
|
||||
$this->phrasen['tools/ampelAktion']='Action';
|
||||
$this->phrasen['tools/ampelBestaetigen']='confirm';
|
||||
$this->phrasen['tools/ampelBestaetigt']='confirmed';
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user