mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-22 01:12:17 +00:00
Ampelsystem: New attribute "verpflichtend"
- New attributes "verpflichtend"(mandatory) and "buttontext" in the
ampelsystem
- Verpflichtende Ampeln are shown as div-popup on the CIS every time the
page refreshes till the notification is confirmed.
- Text of the confirm-button is changeable (fallback to default-phrase)
- Only the notifications of the current semester are shown by default
("show all" as button)
This commit is contained in:
+63
-5
@@ -7,7 +7,20 @@ require_once('../include/phrasen.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
?>
|
||||
<script src="../include/js/jquery.min.1.11.1.js"></script>
|
||||
<script>
|
||||
$(document).ready(function()
|
||||
{
|
||||
$('#ampel_div').html('');
|
||||
});
|
||||
function hide_ampel_div()
|
||||
{
|
||||
document.getElementById("ampel_div").style.display="none";
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
if(is_user_logged_in())
|
||||
{
|
||||
$user = get_uid();
|
||||
@@ -16,6 +29,7 @@ if(is_user_logged_in())
|
||||
$ampel->loadUserAmpel($user);
|
||||
$rot=0;
|
||||
$gelb=0;
|
||||
$verpflichtend = false;
|
||||
$datum = new datum();
|
||||
foreach($ampel->result as $row)
|
||||
{
|
||||
@@ -23,16 +37,19 @@ if(is_user_logged_in())
|
||||
$vlz = "-".$row->vorlaufzeit." day";
|
||||
$ts_vorlaufzeit = strtotime($vlz, $ts_deadline);
|
||||
$ts_now = $datum->mktime_fromdate(date('Y-m-d'));
|
||||
|
||||
if($ts_deadline < $ts_now)
|
||||
{
|
||||
$rot++;
|
||||
if ($row->verpflichtend == 't')
|
||||
$verpflichtend = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if($ts_vorlaufzeit<=$ts_now && $ts_now<=$ts_deadline)
|
||||
{
|
||||
$gelb++;
|
||||
if ($row->verpflichtend == 't')
|
||||
$verpflichtend = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -41,12 +58,53 @@ if(is_user_logged_in())
|
||||
|
||||
if($rot>0 || $gelb>0)
|
||||
{
|
||||
echo '';
|
||||
if($rot>0 && $gelb==0)
|
||||
// Wenn es eine verpflichtende Ampel gibt, das Pupup im CIS anzeigen
|
||||
if ($verpflichtend == true)
|
||||
{
|
||||
echo ' <script>
|
||||
$(document).ready(function()
|
||||
{
|
||||
var html_content = \'<iframe src="'.APP_ROOT.'cis/private/tools/ampelverwaltung.php" name="ampel" frameborder="0" width="95%" height="95%"></iframe><button id="close_button" onclick="hide_ampel_div()">Close</button>\';
|
||||
$("#ampel_div").html(html_content);
|
||||
});
|
||||
</script>';
|
||||
|
||||
echo ' <style type="text/css">
|
||||
#ampel_div
|
||||
{
|
||||
position:absolute;
|
||||
top: 20%;
|
||||
left: 15%;
|
||||
width: 70%;
|
||||
height: 60%;
|
||||
z-index: 1003;
|
||||
background-color: #fefefe;
|
||||
margin: auto;
|
||||
text-align: center;
|
||||
padding-top: 20px;
|
||||
border: 3px solid black;
|
||||
-webkit-box-shadow: 0px 0px 0px 2000px rgba(0,0,0,0.47);
|
||||
-moz-box-shadow: 0px 0px 0px 2000px rgba(0,0,0,0.47);
|
||||
box-shadow: 0px 0px 0px 2000px rgba(0,0,0,0.47);
|
||||
-webkit-animation-name: animatetop;
|
||||
-webkit-animation-duration: 0.4s;
|
||||
animation-name: animatetop;
|
||||
animation-duration: 0.4s
|
||||
}
|
||||
#close_button
|
||||
{
|
||||
position: relative;
|
||||
top: 5px;
|
||||
font-size: 150%;
|
||||
height: 50px;
|
||||
width: 100%;
|
||||
}
|
||||
</style>';
|
||||
}
|
||||
if($rot>0)
|
||||
echo '<a href="private/tools/ampelverwaltung.php" target="content" title="'.$p->t("tools/ampelsystem").'"><span style="color: red;">'.$p->t("tools/ampelsystem").'</span></a> <span style="color: #A5AFB6">|</span> ';
|
||||
if($gelb>0 && $rot==0)
|
||||
elseif($gelb>0)
|
||||
echo '<a href="private/tools/ampelverwaltung.php" target="content" title="'.$p->t("tools/ampelsystem").'"><span style="color: orange;">'.$p->t("tools/ampelsystem").'</span></a> <span style="color: #A5AFB6">|</span> ';
|
||||
echo ' ';
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
+9
-7
@@ -159,7 +159,7 @@ function loadampel()
|
||||
<tr>
|
||||
<td class="rand"></td>
|
||||
<td class="boxshadow">
|
||||
<table cellspacing="0" cellpadding="0" class="header">
|
||||
<table cellspacing="0" cellpadding="0" class="header" style="position: relative">
|
||||
<tr>
|
||||
<td valign="top" align="left" style="background-image: url(<?php echo APP_ROOT.'skin/styles/'.DEFAULT_STYLE.'/header.png'; ?>); background-position: top; background-repeat: repeat-x;">
|
||||
<a href="index.php"><img class="header_logo" src="<?php echo APP_ROOT.'skin/styles/'.DEFAULT_STYLE.'/logo_250x130.png'; ?>" alt="logo"></a>
|
||||
@@ -192,12 +192,14 @@ function loadampel()
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" align="left">
|
||||
<iframe id="menue" src="<?php echo $db->convert_html_chars($menu); ?>" name="menu" frameborder="0">
|
||||
No iFrames
|
||||
</iframe>
|
||||
<iframe id="content" src="<?php echo $db->convert_html_chars($content); ?>" name="content" frameborder="0">
|
||||
No iFrames
|
||||
</iframe>
|
||||
|
||||
<iframe id="menue" src="<?php echo $db->convert_html_chars($menu); ?>" name="menu" frameborder="0">
|
||||
No iFrames
|
||||
</iframe>
|
||||
<iframe id="content" src="<?php echo $db->convert_html_chars($content); ?>" name="content" frameborder="0">
|
||||
No iFrames
|
||||
</iframe>
|
||||
<div id="ampel_div"></div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -99,6 +99,25 @@ if(isset($_POST['ampel_id']))
|
||||
else
|
||||
$ampel_id = '';
|
||||
|
||||
if (isset($_GET['ampel_benutzer_bestaetigt_id']) && isset($_GET['delete']))
|
||||
{
|
||||
if ($rechte->isBerechtigt('admin', null, 'suid'))
|
||||
{
|
||||
$delete_bestaetigung = new ampel();
|
||||
if($delete_bestaetigung->deleteAmpelBenutzer($_GET['ampel_benutzer_bestaetigt_id']))
|
||||
{
|
||||
echo '<span class="ok">Ampelbestaetigung erfolgreich geloescht</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$action='new';
|
||||
echo '<span class="error">'.$delete_bestaetigung->errormsg.'</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '<p><a href="ampelverwaltung.php">'.($p->t('tools/ampelsystem')).'</a></p>';
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">';
|
||||
echo $p->t('global/organisationseinheit').': <SELECT name="oe_kurzbz">';
|
||||
echo '<OPTION value="">'.$p->t('global/alle').'</OPTION>';
|
||||
@@ -161,8 +180,10 @@ echo '
|
||||
<th>'.$p->t('global/organisationseinheit').'</th>
|
||||
<th>'.$p->t('tools/ampelBestaetigtAm').'</th>
|
||||
<th>'.$p->t('tools/ampelDeadline').'</th>
|
||||
<th>'.$p->t('tools/ampelRestdauer').'</th>
|
||||
</tr>
|
||||
<th>'.$p->t('tools/ampelRestdauer').'</th>';
|
||||
if ($rechte->isBerechtigt('admin', null, 'suid'))
|
||||
echo '<th>'.$p->t('global/loeschen').'</th>';
|
||||
echo ' </tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
';
|
||||
@@ -228,6 +249,17 @@ foreach($ampel->result as $row)
|
||||
echo '<td></td>';
|
||||
else
|
||||
echo '<td>'.(($ts_deadline-$ts_now)/86400).'</td>';
|
||||
if ($rechte->isBerechtigt('admin', null, 'suid'))
|
||||
{
|
||||
if($bestaetigt)
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?ampel_benutzer_bestaetigt_id='.$row->ampel_benutzer_bestaetigt_id.'&delete" method="POST"><td>
|
||||
<input type="hidden" name="oe_kurzbz" value="'.$_POST['oe_kurzbz'].'">
|
||||
<input type="hidden" name="ampel_id" value="'.$_POST['ampel_id'].'">
|
||||
<button type="submit">'.$p->t('global/loeschen').'</button></td></form>';
|
||||
else
|
||||
echo '<td></td>';
|
||||
|
||||
}
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
|
||||
@@ -25,11 +25,14 @@ require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/benutzerfunktion.class.php');
|
||||
require_once('../../../include/organisationseinheit.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
$show = (isset($_GET['show'])?$_GET['show']:'aktuell');
|
||||
|
||||
//Leiter OEs holen
|
||||
$benutzerfunktion = new benutzerfunktion();
|
||||
$benutzerfunktion->getBenutzerFunktionen('Leitung', '', '', $user);
|
||||
@@ -54,6 +57,8 @@ if($rechte->isBerechtigt('basis/ampeluebersicht'))
|
||||
|
||||
array_unique($oes);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$ss_akt = $studiensemester->getakt();
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||
"http://www.w3.org/TR/html4/strict.dtd">
|
||||
@@ -73,7 +78,8 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||
$("#myTable").tablesorter(
|
||||
{
|
||||
sortList: [[0,1],[3,0]],
|
||||
widgets: [\'zebra\']
|
||||
widgets: [\'zebra\'],
|
||||
headers: {1:{sorter:false}}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -86,6 +92,10 @@ if(count($oes)!=0)
|
||||
|
||||
echo '<p>'.$p->t('tools/dasAmpelsystemIstEinErinnerungsystem').'</p>';
|
||||
|
||||
if ($show == 'aktuell')
|
||||
echo '<p><a href="ampelverwaltung.php?show=alle">'.$p->t('tools/ampelAlleAnzeigen').'</a></p>';
|
||||
else
|
||||
echo '<p><a href="ampelverwaltung.php?show=aktuell">'.$p->t('tools/ampelNurAktuellesStudiensemester').'</a></p>';
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
@@ -126,78 +136,135 @@ if($type=='bestaetigen' && is_numeric($ampel_id))
|
||||
echo $message;
|
||||
|
||||
$ampel = new ampel();
|
||||
$ampel->loadUserAmpel($user, true, true);
|
||||
$ampel->loadUserAmpel($user, false, true);
|
||||
|
||||
echo '
|
||||
<table id="myTable" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>'.$p->t('tools/ampelErledigt').'</th>
|
||||
<th></th>
|
||||
<th>'.$p->t('tools/ampelBeschreibung').'</th>
|
||||
<th>'.$p->t('tools/ampelDeadline').'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
';
|
||||
$beginn = new studiensemester($ss_akt);
|
||||
|
||||
foreach($ampel->result as $row)
|
||||
{
|
||||
$ts_deadline = $datum_obj->mktime_fromdate($row->deadline);
|
||||
$vlz = "-".$row->vorlaufzeit." day";
|
||||
$ts_vorlaufzeit = strtotime($vlz, $ts_deadline);
|
||||
$ts_now = $datum_obj->mktime_fromdate(date('Y-m-d'));
|
||||
|
||||
if($ts_vorlaufzeit<=$ts_now && $ts_now<=$ts_deadline)
|
||||
$ampelstatus='gelb';
|
||||
elseif($ts_now>$ts_deadline)
|
||||
$ampelstatus='rot';
|
||||
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)
|
||||
//Nur Ampeln laden, die im aktuellen Studiensemester liegen
|
||||
if ($show == 'aktuell' && $row->deadline>=$beginn->start)
|
||||
{
|
||||
case 'rot':
|
||||
$status= '<img name="C" src="../../../skin/images/ampel_rot.png" >';
|
||||
break;
|
||||
case 'gelb':
|
||||
$status= '<img name="B" src="../../../skin/images/ampel_gelb.png" >';
|
||||
break;
|
||||
case 'gruen':
|
||||
$status= '<img name="A" src="../../../skin/images/ampel_gruen.png" >';
|
||||
break;
|
||||
default:
|
||||
$status= '<img name="A" src="../../../skin/images/ampel_gruen.png" >';
|
||||
break;
|
||||
$ts_deadline = $datum_obj->mktime_fromdate($row->deadline);
|
||||
$vlz = "-".$row->vorlaufzeit." day";
|
||||
$ts_vorlaufzeit = strtotime($vlz, $ts_deadline);
|
||||
$ts_now = $datum_obj->mktime_fromdate(date('Y-m-d'));
|
||||
|
||||
if($ts_vorlaufzeit<=$ts_now && $ts_now<=$ts_deadline)
|
||||
$ampelstatus='gelb';
|
||||
elseif($ts_now>$ts_deadline)
|
||||
$ampelstatus='rot';
|
||||
elseif($ts_now<$ts_deadline && $ts_vorlaufzeit>=$ts_now)
|
||||
$ampelstatus='gruen';
|
||||
|
||||
if($bestaetigt = $ampel->isBestaetigt($user,$row->ampel_id))
|
||||
$ampelstatus='';
|
||||
|
||||
echo '<tr>';
|
||||
echo '<td style="text-align: center; vertical-align: middle">';
|
||||
switch($ampelstatus)
|
||||
{
|
||||
case 'rot':
|
||||
$status= '<img name="C" src="../../../skin/images/ampel_rot.png" >';
|
||||
break;
|
||||
case 'gelb':
|
||||
$status= '<img name="B" src="../../../skin/images/ampel_gelb.png" >';
|
||||
break;
|
||||
case 'gruen':
|
||||
$status= '<img name="A" src="../../../skin/images/ampel_gruen.png" >';
|
||||
break;
|
||||
default:
|
||||
$status= '<img name="A" src="../../../skin/images/ampel_gruen.png" >';
|
||||
break;
|
||||
}
|
||||
echo $status;
|
||||
|
||||
echo '<td align="center">';
|
||||
if(!$bestaetigt)
|
||||
echo '<form method="POST" action="'.$_SERVER['PHP_SELF'].'?ampel_id='.$row->ampel_id.'&type=bestaetigen"><button name="type" type="submit">'.($row->buttontext[$sprache]!=''?$row->buttontext[$sprache]:$p->t('tools/ampelErledigt')).'</button></form>';
|
||||
else
|
||||
echo '<button disabled="disabled" name="type" type="submit">'.($row->buttontext[$sprache]!=''?$row->buttontext[$sprache]:$p->t('tools/ampelErledigt')).'</button>';
|
||||
echo '</td>';
|
||||
|
||||
echo '</td>';
|
||||
$beschreibung = $row->beschreibung[$sprache];
|
||||
if($beschreibung=='' && isset($row->beschreibung[DEFAULT_LANGUAGE]))
|
||||
$beschreibung = $row->beschreibung[DEFAULT_LANGUAGE];
|
||||
echo '<td '.(!$bestaetigt && $row->verpflichtend=='t'?'style="background-color: #EF8A88"':'').'>'.$beschreibung.'</td>';
|
||||
echo '<td>'.$datum_obj->formatDatum($row->deadline,'d.m.Y').'</td>';
|
||||
|
||||
// echo "<td>".date('d.m.Y',$ts_now)."</td>";
|
||||
// echo "<td align=\"center\">".date('d.m.Y',$ts_vorlaufzeit)."</td>";
|
||||
// echo "<td>".date('d.m.Y',$ts_deadline)."</td>";
|
||||
echo '</tr>';
|
||||
}
|
||||
echo $status;
|
||||
elseif ($show == 'alle')
|
||||
{
|
||||
$ts_deadline = $datum_obj->mktime_fromdate($row->deadline);
|
||||
$vlz = "-".$row->vorlaufzeit." day";
|
||||
$ts_vorlaufzeit = strtotime($vlz, $ts_deadline);
|
||||
$ts_now = $datum_obj->mktime_fromdate(date('Y-m-d'));
|
||||
|
||||
echo '<td align="center">';
|
||||
if(!$bestaetigt)
|
||||
//echo '<a href="'.$_SERVER['PHP_SELF'].'?ampel_id='.$row->ampel_id.'&type=bestaetigen">'.$p->t('tools/ampelBestaetigen').'</a>';
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?ampel_id='.$row->ampel_id.'&type=bestaetigen" style="text-decoration: none"><input type="button" value="'.$p->t('tools/ampelErledigt').'"></a>';
|
||||
else
|
||||
//echo $p->t('tools/ampelBestaetigt');
|
||||
//echo '<img src="../../../skin/images/true.png" height="15px">';
|
||||
echo '';
|
||||
echo '</td>';
|
||||
if($ts_vorlaufzeit<=$ts_now && $ts_now<=$ts_deadline)
|
||||
$ampelstatus='gelb';
|
||||
elseif($ts_now>$ts_deadline)
|
||||
$ampelstatus='rot';
|
||||
elseif($ts_now<$ts_deadline && $ts_vorlaufzeit>=$ts_now)
|
||||
$ampelstatus='gruen';
|
||||
|
||||
if($bestaetigt = $ampel->isBestaetigt($user,$row->ampel_id))
|
||||
$ampelstatus='';
|
||||
|
||||
echo '<tr>';
|
||||
echo '<td style="text-align: center; vertical-align: middle">';
|
||||
switch($ampelstatus)
|
||||
{
|
||||
case 'rot':
|
||||
$status= '<img name="C" src="../../../skin/images/ampel_rot.png" >';
|
||||
break;
|
||||
case 'gelb':
|
||||
$status= '<img name="B" src="../../../skin/images/ampel_gelb.png" >';
|
||||
break;
|
||||
case 'gruen':
|
||||
$status= '<img name="A" src="../../../skin/images/ampel_gruen.png" >';
|
||||
break;
|
||||
default:
|
||||
$status= '<img name="A" src="../../../skin/images/ampel_gruen.png" >';
|
||||
break;
|
||||
}
|
||||
echo $status;
|
||||
|
||||
echo '<td align="center">';
|
||||
if(!$bestaetigt)
|
||||
echo '<form method="POST" action="'.$_SERVER['PHP_SELF'].'?ampel_id='.$row->ampel_id.'&type=bestaetigen"><button name="type" type="submit">'.($row->buttontext[$sprache]!=''?$row->buttontext[$sprache]:$p->t('tools/ampelErledigt')).'</button></form>';
|
||||
else
|
||||
echo '<button disabled="disabled" name="type" type="submit">'.($row->buttontext[$sprache]!=''?$row->buttontext[$sprache]:$p->t('tools/ampelErledigt')).'</button>';
|
||||
echo '</td>';
|
||||
|
||||
echo '</td>';
|
||||
$beschreibung = $row->beschreibung[$sprache];
|
||||
if($beschreibung=='' && isset($row->beschreibung[DEFAULT_LANGUAGE]))
|
||||
$beschreibung = $row->beschreibung[DEFAULT_LANGUAGE];
|
||||
echo '<td '.(!$bestaetigt && $row->verpflichtend=='t'?'style="background-color: #EF8A88"':'').'>'.$beschreibung.'</td>';
|
||||
echo '<td>'.$datum_obj->formatDatum($row->deadline,'d.m.Y').'</td>';
|
||||
|
||||
echo '</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>';
|
||||
|
||||
// echo "<td>".date('d.m.Y',$ts_now)."</td>";
|
||||
// echo "<td align=\"center\">".date('d.m.Y',$ts_vorlaufzeit)."</td>";
|
||||
// echo "<td>".date('d.m.Y',$ts_deadline)."</td>";
|
||||
echo '</tr>';
|
||||
// echo "<td>".date('d.m.Y',$ts_now)."</td>";
|
||||
// echo "<td align=\"center\">".date('d.m.Y',$ts_vorlaufzeit)."</td>";
|
||||
// echo "<td>".date('d.m.Y',$ts_deadline)."</td>";
|
||||
echo '</tr>';
|
||||
}
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
|
||||
|
||||
+63
-10
@@ -38,6 +38,8 @@ class ampel extends basis_db
|
||||
public $vorlaufzeit; // smallint
|
||||
public $verfallszeit; // smallint
|
||||
public $email; // boolean
|
||||
public $verpflichtend; // boolean
|
||||
public $buttontext; // varchar(64)[]
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(32)
|
||||
public $updateamum; // timestamp
|
||||
@@ -74,8 +76,9 @@ class ampel extends basis_db
|
||||
|
||||
$sprache = new sprache();
|
||||
$beschreibung = $sprache->getSprachQuery('beschreibung');
|
||||
$buttontext = $sprache->getSprachQuery('buttontext');
|
||||
|
||||
$qry = "SELECT *,".$beschreibung." FROM public.tbl_ampel WHERE ampel_id=".$this->db_add_param($ampel_id, FHC_INTEGER);
|
||||
$qry = "SELECT *,".$beschreibung.", ".$buttontext." FROM public.tbl_ampel WHERE ampel_id=".$this->db_add_param($ampel_id, FHC_INTEGER);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
@@ -89,6 +92,8 @@ class ampel extends basis_db
|
||||
$this->vorlaufzeit = $row->vorlaufzeit;
|
||||
$this->verfallszeit = $row->verfallszeit;
|
||||
$this->email = $row->email;
|
||||
$this->verpflichtend = $row->verpflichtend;
|
||||
$this->buttontext = $sprache->parseSprachResult('buttontext', $row);
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->updateamum = $row->updateamum;
|
||||
@@ -117,8 +122,9 @@ class ampel extends basis_db
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$beschreibung = $sprache->getSprachQuery('beschreibung');
|
||||
$buttontext = $sprache->getSprachQuery('buttontext');
|
||||
|
||||
$qry = "SELECT *,".$beschreibung." FROM public.tbl_ampel";
|
||||
$qry = "SELECT *,".$beschreibung.", ".$buttontext." FROM public.tbl_ampel";
|
||||
if($aktiv)
|
||||
{
|
||||
$qry .= " WHERE (NOW()>(deadline-(vorlaufzeit || ' days')::interval)::date)";
|
||||
@@ -140,6 +146,8 @@ class ampel extends basis_db
|
||||
$obj->vorlaufzeit = $row->vorlaufzeit;
|
||||
$obj->verfallszeit = $row->verfallszeit;
|
||||
$obj->email = $this->db_parse_bool($row->email);
|
||||
$obj->verpflichtend = $this->db_parse_bool($row->verpflichtend);
|
||||
$obj->buttontext = $sprache->parseSprachResult('buttontext', $row);
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
|
||||
@@ -212,20 +220,21 @@ class ampel extends basis_db
|
||||
|
||||
/**
|
||||
* Laedt alle aktuellen Ampeln eines Users
|
||||
* @param $user
|
||||
* @param $zukuenftige_anzeigen
|
||||
* @param string $user User, dessen Ampeln geladen werden sollen
|
||||
* @param boolean $zukuenftige_anzeigen Default false
|
||||
* wenn true, werden alle zukuenftigen Ampeln geladen
|
||||
* wenn false, werden nur die Ampeln geladen die innerhalb der vorlaufzeit liegen
|
||||
* @param $bestaetigt
|
||||
* @param boolean $bestaetigt Default false
|
||||
* wenn true, werden alle Ampeln geladen
|
||||
* wenn false, werden nur die Ampeln geladen die noch nicht bestaetigt wurden
|
||||
* wenn false, werden nur die Ampeln geladen die noch NICHT bestaetigt wurden
|
||||
*/
|
||||
public function loadUserAmpel($user, $zukuenftige_anzeigen=false, $bestaetigt=false)
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$beschreibung = $sprache->getSprachQuery('beschreibung');
|
||||
$buttontext = $sprache->getSprachQuery('buttontext');
|
||||
|
||||
$qry = "SELECT *,".$beschreibung." FROM public.tbl_ampel WHERE deadline+verfallszeit>now()";
|
||||
$qry = "SELECT *,".$beschreibung.", ".$buttontext." FROM public.tbl_ampel WHERE deadline+verfallszeit>now()";
|
||||
|
||||
if(!$zukuenftige_anzeigen)
|
||||
$qry.=" AND deadline-vorlaufzeit<now()";
|
||||
@@ -237,7 +246,7 @@ class ampel extends basis_db
|
||||
FROM public.tbl_ampel_benutzer_bestaetigt
|
||||
WHERE uid=".$this->db_add_param($user)." AND ampel_id=tbl_ampel.ampel_id)";
|
||||
}
|
||||
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
@@ -254,6 +263,8 @@ class ampel extends basis_db
|
||||
$obj->vorlaufzeit = $row->vorlaufzeit;
|
||||
$obj->verfallszeit = $row->verfallszeit;
|
||||
$obj->email = $row->email;
|
||||
$obj->verpflichtend = $row->verpflichtend;
|
||||
$obj->buttontext = $sprache->parseSprachResult('buttontext', $row);
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
|
||||
@@ -315,19 +326,28 @@ class ampel extends basis_db
|
||||
$idx = sprache::$index_arr[$key];
|
||||
$qry.=" beschreibung[$idx],";
|
||||
}
|
||||
foreach($this->buttontext as $key=>$value)
|
||||
{
|
||||
$idx = sprache::$index_arr[$key];
|
||||
$qry.=" buttontext[$idx],";
|
||||
}
|
||||
|
||||
$qry.=" benutzer_select, deadline,
|
||||
vorlaufzeit, verfallszeit, email, insertamum, insertvon , updateamum, updatevon) VALUES(".
|
||||
vorlaufzeit, verfallszeit, email, verpflichtend, insertamum, insertvon , updateamum, updatevon) VALUES(".
|
||||
$this->db_add_param($this->kurzbz).',';
|
||||
reset($this->beschreibung);
|
||||
foreach($this->beschreibung as $key=>$value)
|
||||
$qry.=$this->db_add_param($value).',';
|
||||
reset($this->buttontext);
|
||||
foreach($this->buttontext as $key=>$value)
|
||||
$qry.=$this->db_add_param($value).',';
|
||||
|
||||
$qry .= $this->db_add_param($this->benutzer_select).','.
|
||||
$this->db_add_param($this->deadline).','.
|
||||
$this->db_add_param($this->vorlaufzeit).','.
|
||||
$this->db_add_param($this->verfallszeit).','.
|
||||
$this->db_add_param($this->email, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->verpflichtend, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->insertamum).','.
|
||||
$this->db_add_param($this->insertvon).','.
|
||||
$this->db_add_param($this->updateamum).','.
|
||||
@@ -343,12 +363,19 @@ class ampel extends basis_db
|
||||
$idx = sprache::$index_arr[$key];
|
||||
$qry.=' beschreibung['.$idx.'] = '.$this->db_add_param($value).',';
|
||||
}
|
||||
reset($this->buttontext);
|
||||
foreach($this->buttontext as $key=>$value)
|
||||
{
|
||||
$idx = sprache::$index_arr[$key];
|
||||
$qry.=' buttontext['.$idx.'] = '.$this->db_add_param($value).',';
|
||||
}
|
||||
|
||||
$qry.= ' benutzer_select = '.$this->db_add_param($this->benutzer_select).','.
|
||||
' deadline = '.$this->db_add_param($this->deadline).','.
|
||||
' vorlaufzeit = '.$this->db_add_param($this->vorlaufzeit).','.
|
||||
' verfallszeit = '.$this->db_add_param($this->verfallszeit).','.
|
||||
' email = '.$this->db_add_param($this->email, FHC_BOOLEAN).','.
|
||||
' verpflichtend = '.$this->db_add_param($this->verpflichtend, FHC_BOOLEAN).','.
|
||||
' updateamum ='.$this->db_add_param($this->updateamum).','.
|
||||
' updatevon ='.$this->db_add_param($this->updatevon).
|
||||
' WHERE ampel_id='.$this->db_add_param($this->ampel_id, FHC_INTEGER).';';
|
||||
@@ -414,6 +441,29 @@ class ampel extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loescht eine Bestaetigung einer Ampel
|
||||
|
||||
* @param $ampel_id
|
||||
*/
|
||||
public function deleteAmpelBenutzer($ampel_benutzer_bestaetigt_id)
|
||||
{
|
||||
if(!is_numeric($ampel_benutzer_bestaetigt_id))
|
||||
{
|
||||
$this->errormsg='ID ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
$qry = "DELETE FROM public.tbl_ampel_benutzer_bestaetigt WHERE ampel_benutzer_bestaetigt_id=".$this->db_add_param($ampel_benutzer_bestaetigt_id);
|
||||
|
||||
if($this->db_query($qry))
|
||||
return true;
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Loeschen der Bestaetigung';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Bestaetigt die Ampel eines Users
|
||||
* @param $user
|
||||
@@ -446,6 +496,7 @@ class ampel extends basis_db
|
||||
{
|
||||
$sprache = new sprache();
|
||||
$beschreibung = $sprache->getSprachQuery('beschreibung');
|
||||
$buttontext = $sprache->getSprachQuery('buttontext');
|
||||
|
||||
if(!is_numeric($ampel_id) && $ampel_id!='')
|
||||
{
|
||||
@@ -454,7 +505,7 @@ class ampel extends basis_db
|
||||
}
|
||||
|
||||
// Ampeln holen
|
||||
$qry = "SELECT *,".$beschreibung." FROM public.tbl_ampel";
|
||||
$qry = "SELECT *,".$beschreibung.", ".$buttontext." FROM public.tbl_ampel";
|
||||
if($ampel_id!='')
|
||||
$qry.=" WHERE ampel_id=".$this->db_add_param($ampel_id, FHC_INTEGER);
|
||||
|
||||
@@ -500,6 +551,8 @@ class ampel extends basis_db
|
||||
$obj->vorlaufzeit = $row->vorlaufzeit;
|
||||
$obj->verfallszeit = $row->verfallszeit;
|
||||
$obj->email = $row->email;
|
||||
$obj->verpflichtend = $row->verpflichtend;
|
||||
$obj->buttontext = $sprache->parseSprachResult('buttontext', $row);
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
|
||||
|
||||
@@ -85,15 +85,17 @@ class sprache extends basis_db
|
||||
/**
|
||||
*
|
||||
* Lädt alle verfügbaren Sprachen
|
||||
* @param boolean $content Default:null Ist die Sprache relevant fuer die Sprachauswahl
|
||||
* @param string $order Default:sprache Spalte, nach der die Ergebnisse sortiert werden
|
||||
* @return true bei Erfolg, false wenn ein Fehler aufgetreten ist.
|
||||
*/
|
||||
public function getAll($content=null)
|
||||
public function getAll($content=null, $order='sprache')
|
||||
{
|
||||
$qry = "SELECT *,".$this->getSprachQuery('bezeichnung')." FROM public.tbl_sprache";
|
||||
|
||||
if(!is_null($content))
|
||||
$qry.= " WHERE content=".$this->db_add_param($content, FHC_BOOLEAN);
|
||||
$qry.=" ORDER BY sprache";
|
||||
$qry.=" ORDER BY ".$order;
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
|
||||
@@ -49,6 +49,8 @@ $this->phrasen['tools/ampelBereitsBestaetigt']='Diese Ampel wurde bereits bestä
|
||||
$this->phrasen['tools/dasAmpelsystemIstEinErinnerungsystem']='Das Ampelsystem ist ein ERINNERUNGS- und BESTÄTIGUNGSSYSTEM, welches Sie auf ausstehende Aufgaben aufmerksam machen soll.';
|
||||
$this->phrasen['tools/waehlenSieEineOEoderAmpel']='Bitte wählen Sie ein Organisationseinheit und/oder eine Ampel aus dem Dropdown';
|
||||
$this->phrasen['tools/uebersichtLeitung']='Ampel-Übersicht für LeiterInnen';
|
||||
$this->phrasen['tools/ampelAlleAnzeigen']='Alle anzeigen';
|
||||
$this->phrasen['tools/ampelNurAktuellesStudiensemester']='Nur aktuelles Studiensemester anzeigen';
|
||||
|
||||
//Software fuer Lehre -> Softgrid
|
||||
$this->phrasen['tools/applikationsliste']='Applikationsliste';
|
||||
@@ -76,4 +78,5 @@ $this->phrasen['tools/esWurdenKeineErgebnisseGefunden']='Es wurden keine Ergebni
|
||||
//Partnerhochschulen
|
||||
$this->phrasen['tools/partnerhochschulenUebersicht']='Übersicht der Partnerhochschulen';
|
||||
$this->phrasen['tools/partnerhochschulenKeinEintrag']='Für diesen Studiengang ist keine Partnerhochschule zugeordnet';
|
||||
$this->phrasen['tools/partnerhochschulenEinleitung']='Sollten Sie an einer Partnerhochschule studieren wollen, die sich nicht auf dieser Liste befindet, kontaktieren Sie bitte das <a href="../../../cms/content.php?content_id=6952">Center for International Relations (CIR)</a>.';
|
||||
?>
|
||||
|
||||
@@ -49,6 +49,8 @@ $this->phrasen['tools/ampelBereitsBestaetigt']='This notification has already be
|
||||
$this->phrasen['tools/dasAmpelsystemIstEinErinnerungsystem']='The notification system is a REMINDER and CONFIRMATION SYSTEM that is provided to remind you of outstanding tasks.';
|
||||
$this->phrasen['tools/waehlenSieEineOEoderAmpel']='Please select an organizational unit and/or a notification from the drop down menu.';
|
||||
$this->phrasen['tools/uebersichtLeitung']='Overview of notifications for Heads of Departments';
|
||||
$this->phrasen['tools/alleAnzeigen']='Show all';
|
||||
$this->phrasen['tools/nurAktuellesStudiensemester']='Show current semester only';
|
||||
|
||||
//Software fuer Lehre -> Softgrid
|
||||
$this->phrasen['tools/applikationsliste']='List of Applications';
|
||||
@@ -76,4 +78,5 @@ $this->phrasen['tools/esWurdenKeineErgebnisseGefunden']='Your search did not ret
|
||||
//Partnerhochschulen
|
||||
$this->phrasen['tools/partnerhochschulenUebersicht']='Partner Universities';
|
||||
$this->phrasen['tools/partnerhochschulenKeinEintrag']='No entry found';
|
||||
$this->phrasen['tools/partnerhochschulenEinleitung']='In case you would like to study at a partner university that isn´t listed - please contact the <a href="../../../cms/content.php?content_id=6952">Center for International Relations (CIR)</a>.';
|
||||
?>
|
||||
|
||||
+13
-1
@@ -1193,6 +1193,18 @@ if(!$result = @$db->db_query("SELECT studienplan_id FROM public.tbl_bewerbungste
|
||||
echo '<br>Neue Spalte studienplan_id in Tabelle public.tbl_bewerbungstermine hinzugefügt<br>';
|
||||
}
|
||||
|
||||
// Attribute verpflichtend und buttontext in public.tbl_ampel
|
||||
if(!$result = @$db->db_query("SELECT verpflichtend FROM public.tbl_ampel LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_ampel ADD COLUMN verpflichtend boolean NOT NULL DEFAULT FALSE;
|
||||
ALTER TABLE public.tbl_ampel ADD COLUMN buttontext varchar(64)[];";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_ampel '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Neue Spalten "verpflichtend" und "buttontext" in Tabelle public.tbl_ampel hinzugefügt<br>';
|
||||
}
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
@@ -1344,7 +1356,7 @@ $tabellen=array(
|
||||
"lehre.tbl_zeugnisnote" => array("lehrveranstaltung_id","student_uid","studiensemester_kurzbz","note","uebernahmedatum","benotungsdatum","bemerkung","updateamum","updatevon","insertamum","insertvon","ext_id","punkte"),
|
||||
"public.tbl_adresse" => array("adresse_id","person_id","name","strasse","plz","ort","gemeinde","nation","typ","heimatadresse","zustelladresse","firma_id","updateamum","updatevon","insertamum","insertvon","ext_id"),
|
||||
"public.tbl_akte" => array("akte_id","person_id","dokument_kurzbz","uid","inhalt","mimetype","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id","dms_id","nachgereicht","anmerkung","titel_intern","anmerkung_intern"),
|
||||
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon","email"),
|
||||
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon","email","verpflichtend"),
|
||||
"public.tbl_ampel_benutzer_bestaetigt" => array("ampel_benutzer_bestaetigt_id","ampel_id","uid","insertamum","insertvon"),
|
||||
"public.tbl_aufmerksamdurch" => array("aufmerksamdurch_kurzbz","beschreibung","ext_id","bezeichnung", "aktiv"),
|
||||
"public.tbl_aufnahmeschluessel" => array("aufnahmeschluessel"),
|
||||
|
||||
@@ -34,7 +34,7 @@ $rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/ampel'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
die($rechte->errormsg);
|
||||
|
||||
$datum_obj = new datum();
|
||||
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
@@ -44,6 +44,18 @@ $datum_obj = new datum();
|
||||
<title>Ampel - Details</title>
|
||||
<link rel="stylesheet" href="../../skin/fhcomplete.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/jquery-ui-1.9.2.custom.min.css" type="text/css">
|
||||
<script src="../../include/js/jquery1.9.min.js" type="text/javascript"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$( ".datepicker_datum" ).datepicker({
|
||||
changeMonth: true,
|
||||
changeYear: true,
|
||||
dateFormat: 'dd.mm.yy',
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
@@ -55,7 +67,8 @@ $datum_obj = new datum();
|
||||
if($action=='save')
|
||||
{
|
||||
$kurzbz = (isset($_POST['kurzbz'])?$_POST['kurzbz']:die('Kurzbz fehlt'));
|
||||
|
||||
$beschreibung = '';
|
||||
$buttontext = '';
|
||||
foreach ($_POST as $key=>$value)
|
||||
{
|
||||
if(mb_strstr($key,'beschreibung'))
|
||||
@@ -63,12 +76,18 @@ $datum_obj = new datum();
|
||||
$idx = mb_substr($key, mb_strlen('beschreibung'));
|
||||
$beschreibung[$idx] = $value;
|
||||
}
|
||||
elseif(mb_strstr($key,'buttontext'))
|
||||
{
|
||||
$idx = mb_substr($key, mb_strlen('buttontext'));
|
||||
$buttontext[$idx] = $value;
|
||||
}
|
||||
}
|
||||
$benutzer_select = (isset($_POST['benutzer_select'])?$_POST['benutzer_select']:die('Benutzer_select fehlt'));
|
||||
$deadline = (isset($_POST['deadline'])?$_POST['deadline']:die('Deadline fehlt'));
|
||||
$vorlaufzeit = (isset($_POST['vorlaufzeit'])?$_POST['vorlaufzeit']:die('Vorlaufzeit fehlt'));
|
||||
$verfallszeit = (isset($_POST['verfallszeit'])?$_POST['verfallszeit']:die('verfallszeit fehlt'));
|
||||
$email = isset($_POST['email']);
|
||||
$verpflichtend = isset($_POST['verpflichtend']);
|
||||
$new = (isset($_POST['new'])?$_POST['new']:'true');
|
||||
if($new=='true')
|
||||
{
|
||||
@@ -91,6 +110,8 @@ $datum_obj = new datum();
|
||||
$ampel->vorlaufzeit = $vorlaufzeit;
|
||||
$ampel->verfallszeit = $verfallszeit;
|
||||
$ampel->email = $email;
|
||||
$ampel->verpflichtend = $verpflichtend;
|
||||
$ampel->buttontext = $buttontext;
|
||||
$ampel->updateamum = date('Y-m-d H:i:s');
|
||||
$ampel->updatevon = $user;
|
||||
|
||||
@@ -140,46 +161,63 @@ $datum_obj = new datum();
|
||||
<input type="hidden" name="ampel_id" value="'.htmlspecialchars($ampel->ampel_id).'">
|
||||
<table>
|
||||
<tr>
|
||||
<td>Kurzbz</td>
|
||||
<td><input type="text" name="kurzbz" size="30" maxlength="64" value="'.htmlspecialchars($ampel->kurzbz).'"></td>
|
||||
<td>Kurzbz (64)</td>
|
||||
<td><input type="text" name="kurzbz" size="60" maxlength="64" value="'.htmlspecialchars($ampel->kurzbz).'" required></td>
|
||||
<td></td>
|
||||
<td>Deadline</td>
|
||||
<td><input type="text" name="deadline" size="10" maxlength="10" value="'.htmlspecialchars($datum_obj->formatDatum($ampel->deadline,'d.m.Y')).'"></td>
|
||||
<td><input type="text" class="datepicker_datum" name="deadline" size="10" maxlength="10" value="'.htmlspecialchars($datum_obj->formatDatum($ampel->deadline,'d.m.Y')).'" required></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td rowspan="3">Benutzer Select</td>
|
||||
<td rowspan="3"><textarea name="benutzer_select" cols="60" rows="5">'.htmlspecialchars($ampel->benutzer_select).'</textarea></td>
|
||||
<td rowspan="3"><textarea name="benutzer_select" cols="60" rows="5" required>'.htmlspecialchars($ampel->benutzer_select).'</textarea></td>
|
||||
<td></td>
|
||||
<td valign="middle">Vorlaufzeit (in Tagen)</td>
|
||||
<td valign="middle"><input type="text" name="vorlaufzeit" size="4" maxlength="4" value="'.htmlspecialchars($ampel->vorlaufzeit).'"></td>
|
||||
<td valign="middle"><input type="text" name="vorlaufzeit" size="4" maxlength="4" value="'.htmlspecialchars($ampel->vorlaufzeit).'" required></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td></td>
|
||||
<td>Verfallszeit (in Tagen)</td>
|
||||
<td><input type="text" name="verfallszeit" size="4" maxlength="4" value="'.htmlspecialchars($ampel->verfallszeit).'"></td>
|
||||
<td><input type="text" name="verfallszeit" size="4" maxlength="4" value="'.htmlspecialchars($ampel->verfallszeit).'" required></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td></td>
|
||||
<td>Erinnerung per Email</td>
|
||||
<td><input type="checkbox" name="email" '.($db->db_parse_bool($ampel->email)?'checked':'').'></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td>Verpflichtend</td>
|
||||
<td><input type="checkbox" name="verpflichtend" '.($db->db_parse_bool($ampel->verpflichtend)?'checked':'').'></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Beschreibung</td>
|
||||
<td> </td>
|
||||
<td>Buttonbeschriftung (64)</td>
|
||||
<td> </td>
|
||||
</tr>';
|
||||
|
||||
|
||||
$sprache = new sprache();
|
||||
$sprache->getAll();
|
||||
$sprache->getAll(null, 'index');
|
||||
foreach($sprache->result as $lang)
|
||||
{
|
||||
echo '
|
||||
<tr valign="top">
|
||||
<td>Beschreibung '.$lang->sprache.'</td>
|
||||
<td>'.$lang->sprache.'</td>
|
||||
<td><textarea name="beschreibung'.$lang->sprache.'" cols="60" rows="5">'.htmlspecialchars((isset($ampel->beschreibung[$lang->sprache])?$ampel->beschreibung[$lang->sprache]:'')).'</textarea></td>
|
||||
<td></td>
|
||||
<td colspan="2"><input size="70" maxlength="64" name="buttontext'.$lang->sprache.'" value="'.htmlspecialchars((isset($ampel->buttontext[$lang->sprache])?$ampel->buttontext[$lang->sprache]:'')).'"></td>
|
||||
</tr>';
|
||||
}
|
||||
echo '
|
||||
<tr valign="bottom">
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td><input type="submit" value="Speichern" name="save"></td>
|
||||
<td colspan="5"><input type="submit" value="Speichern" name="save"></td>
|
||||
</tr>
|
||||
</table></form>';
|
||||
|
||||
|
||||
@@ -93,6 +93,7 @@ echo '<table class="tablesorter" id="myTable">
|
||||
<th>Deadline</th>
|
||||
<th>Vorlaufzeit</th>
|
||||
<th>Verfallszeit</th>
|
||||
<th>Verpflichtend</th>
|
||||
<th colspan="3">Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -106,6 +107,7 @@ foreach($ampel->result as $row)
|
||||
echo '<td>',$datum_obj->formatDatum($row->deadline,'d.m.Y'),'</td>';
|
||||
echo '<td>',$row->vorlaufzeit,'</td>';
|
||||
echo '<td>',$row->verfallszeit,'</td>';
|
||||
echo '<td>',($row->verpflichtend=='t'?'Ja':'Nein'),'</td>';
|
||||
echo '<td><a href="ampel_details.php?action=update&el_id=',$row->ampel_id,' " target="detail_ampel">bearbeiten</a></td>';
|
||||
echo '<td><a href="ampel_details.php?action=copy&el_id=',$row->ampel_id,' " target="detail_ampel">kopieren</a></td>';
|
||||
echo '<td><a href="ampel_uebersicht.php?action=delete&el_id=',$row->ampel_id,' " onclick="return confdel()">entfernen</a></td>';
|
||||
|
||||
Reference in New Issue
Block a user