diff --git a/cis/ampel.php b/cis/ampel.php
index eeca6f603..27b4571d2 100755
--- a/cis/ampel.php
+++ b/cis/ampel.php
@@ -7,7 +7,20 @@ require_once('../include/phrasen.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
+?>
+
+
+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 ' ';
+
+ echo ' ';
+ }
+ if($rot>0)
echo ''.$p->t("tools/ampelsystem").' | ';
- if($gelb>0 && $rot==0)
+ elseif($gelb>0)
echo ''.$p->t("tools/ampelsystem").' | ';
- echo ' ';
}
}
else
diff --git a/cis/index.php b/cis/index.php
index ec8d08160..4d6453788 100644
--- a/cis/index.php
+++ b/cis/index.php
@@ -159,7 +159,7 @@ function loadampel()
|
- ';
diff --git a/cis/private/tools/ampelverwaltung.php b/cis/private/tools/ampelverwaltung.php
index d83c01765..b8132c55d 100755
--- a/cis/private/tools/ampelverwaltung.php
+++ b/cis/private/tools/ampelverwaltung.php
@@ -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 '
@@ -73,7 +78,8 @@ echo '
@@ -86,6 +92,10 @@ if(count($oes)!=0)
echo ' '.$p->t('tools/dasAmpelsystemIstEinErinnerungsystem').' ';
+if ($show == 'aktuell')
+ echo ''.$p->t('tools/ampelAlleAnzeigen').' ';
+else
+ echo ''.$p->t('tools/ampelNurAktuellesStudiensemester').' ';
$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 '
|
- '.$p->t('tools/ampelErledigt').' |
+ |
'.$p->t('tools/ampelBeschreibung').' |
'.$p->t('tools/ampelDeadline').' |
';
+$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 '';
- echo '';
- switch($ampelstatus)
+ //Nur Ampeln laden, die im aktuellen Studiensemester liegen
+ if ($show == 'aktuell' && $row->deadline>=$beginn->start)
{
- case 'rot':
- $status= ' ';
- break;
- case 'gelb':
- $status= ' ';
- break;
- case 'gruen':
- $status= ' ';
- break;
- default:
- $status= ' ';
- 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 ' | ';
+ echo '';
+ switch($ampelstatus)
+ {
+ case 'rot':
+ $status= ' ';
+ break;
+ case 'gelb':
+ $status= ' ';
+ break;
+ case 'gruen':
+ $status= ' ';
+ break;
+ default:
+ $status= ' ';
+ break;
+ }
+ echo $status;
+
+ echo ' | ';
+ if(!$bestaetigt)
+ echo '';
+ else
+ echo '';
+ echo ' | ';
+
+ echo '';
+ $beschreibung = $row->beschreibung[$sprache];
+ if($beschreibung=='' && isset($row->beschreibung[DEFAULT_LANGUAGE]))
+ $beschreibung = $row->beschreibung[DEFAULT_LANGUAGE];
+ echo 'verpflichtend=='t'?'style="background-color: #EF8A88"':'').'>'.$beschreibung.' | ';
+ echo ''.$datum_obj->formatDatum($row->deadline,'d.m.Y').' | ';
+
+ // echo "".date('d.m.Y',$ts_now)." | ";
+ // echo "".date('d.m.Y',$ts_vorlaufzeit)." | ";
+ // echo "".date('d.m.Y',$ts_deadline)." | ";
+ echo ' ';
}
- 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 '';
- if(!$bestaetigt)
- //echo ''.$p->t('tools/ampelBestaetigen').'';
- echo '';
- else
- //echo $p->t('tools/ampelBestaetigt');
- //echo ' ';
- echo '';
- echo ' | ';
+ 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 '';
+ echo '';
+ switch($ampelstatus)
+ {
+ case 'rot':
+ $status= ' ';
+ break;
+ case 'gelb':
+ $status= ' ';
+ break;
+ case 'gruen':
+ $status= ' ';
+ break;
+ default:
+ $status= ' ';
+ break;
+ }
+ echo $status;
+
+ echo ' | ';
+ if(!$bestaetigt)
+ echo '';
+ else
+ echo '';
+ echo ' | ';
+
+ echo '';
+ $beschreibung = $row->beschreibung[$sprache];
+ if($beschreibung=='' && isset($row->beschreibung[DEFAULT_LANGUAGE]))
+ $beschreibung = $row->beschreibung[DEFAULT_LANGUAGE];
+ echo 'verpflichtend=='t'?'style="background-color: #EF8A88"':'').'>'.$beschreibung.' | ';
+ echo ''.$datum_obj->formatDatum($row->deadline,'d.m.Y').' | ';
- echo '';
- $beschreibung = $row->beschreibung[$sprache];
- if($beschreibung=='' && isset($row->beschreibung[DEFAULT_LANGUAGE]))
- $beschreibung = $row->beschreibung[DEFAULT_LANGUAGE];
- echo ''.$beschreibung.' | ';
- echo ''.$datum_obj->formatDatum($row->deadline,'d.m.Y').' | ';
-
-// echo "".date('d.m.Y',$ts_now)." | ";
-// echo "".date('d.m.Y',$ts_vorlaufzeit)." | ";
-// echo "".date('d.m.Y',$ts_deadline)." | ";
- echo ' ';
+ // echo "".date('d.m.Y',$ts_now)." | ";
+ // echo "".date('d.m.Y',$ts_vorlaufzeit)." | ";
+ // echo "".date('d.m.Y',$ts_deadline)." | ";
+ echo '';
+ }
}
echo ' ';
diff --git a/include/ampel.class.php b/include/ampel.class.php
index 964a5c418..7473cca87 100755
--- a/include/ampel.class.php
+++ b/include/ampel.class.php
@@ -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-vorlaufzeitdb_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;
diff --git a/include/sprache.class.php b/include/sprache.class.php
index 74d866161..4bcc57212 100644
--- a/include/sprache.class.php
+++ b/include/sprache.class.php
@@ -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))
{
diff --git a/locale/de-AT/tools.php b/locale/de-AT/tools.php
index afbbb25ea..e312051e8 100755
--- a/locale/de-AT/tools.php
+++ b/locale/de-AT/tools.php
@@ -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 Center for International Relations (CIR).';
?>
diff --git a/locale/en-US/tools.php b/locale/en-US/tools.php
index ce65ed007..832c9a97e 100755
--- a/locale/en-US/tools.php
+++ b/locale/en-US/tools.php
@@ -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 Center for International Relations (CIR).';
?>
diff --git a/system/dbupdate_3.2.php b/system/dbupdate_3.2.php
index 9afc38257..44b5bcaab 100755
--- a/system/dbupdate_3.2.php
+++ b/system/dbupdate_3.2.php
@@ -1193,6 +1193,18 @@ if(!$result = @$db->db_query("SELECT studienplan_id FROM public.tbl_bewerbungste
echo ' Neue Spalte studienplan_id in Tabelle public.tbl_bewerbungstermine hinzugefügt ';
}
+// 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 'public.tbl_ampel '.$db->db_last_error().' ';
+ else
+ echo ' Neue Spalten "verpflichtend" und "buttontext" in Tabelle public.tbl_ampel hinzugefügt ';
+}
+
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo 'Pruefe Tabellen und Attribute!';
@@ -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"),
diff --git a/vilesci/stammdaten/ampel_details.php b/vilesci/stammdaten/ampel_details.php
index b42cd660f..a7d02704b 100755
--- a/vilesci/stammdaten/ampel_details.php
+++ b/vilesci/stammdaten/ampel_details.php
@@ -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();
?>
@@ -44,6 +44,18 @@ $datum_obj = new datum();
Ampel - Details
+
+
+
@@ -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();
';
diff --git a/vilesci/stammdaten/ampel_uebersicht.php b/vilesci/stammdaten/ampel_uebersicht.php
index feef9c311..2cdbfdc2d 100755
--- a/vilesci/stammdaten/ampel_uebersicht.php
+++ b/vilesci/stammdaten/ampel_uebersicht.php
@@ -93,6 +93,7 @@ echo '
| Deadline |
Vorlaufzeit |
Verfallszeit |
+ Verpflichtend |
Aktion |
@@ -106,6 +107,7 @@ foreach($ampel->result as $row)
echo '',$datum_obj->formatDatum($row->deadline,'d.m.Y'),' | ';
echo '',$row->vorlaufzeit,' | ';
echo '',$row->verfallszeit,' | ';
+ echo '',($row->verpflichtend=='t'?'Ja':'Nein'),' | ';
echo 'bearbeiten | ';
echo 'kopieren | ';
echo 'entfernen | ';
|