diff --git a/cis/private/lvplan/stpl_week.php b/cis/private/lvplan/stpl_week.php index fec76259f..c0ac5f152 100644 --- a/cis/private/lvplan/stpl_week.php +++ b/cis/private/lvplan/stpl_week.php @@ -40,6 +40,9 @@ if (!$db = new basis_db()) $uid=get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($uid); + // Variablen uebernehmen if (isset($_GET['type'])) $type=$_GET['type']; @@ -331,12 +334,12 @@ if (isset($reserve) && $raumres) $stpl = new stundenplan('stundenplan'); $stpldev = new stundenplan('stundenplandev'); - if(!$stpl->isBelegt($ort_kurzbz, $datum_res, $stunde) - && !$stpldev->isBelegt($ort_kurzbz, $datum_res, $stunde)) + if((!$stpl->isBelegt($ort_kurzbz, $datum_res, $stunde) + && !$stpldev->isBelegt($ort_kurzbz, $datum_res, $stunde)) || $rechte->isBerechtigt('lehre/reservierungAdvanced')) { $reservierung = new reservierung(); - if(!$reservierung->isReserviert($ort_kurzbz, $datum_res, $stunde)) + if(!$reservierung->isReserviert($ort_kurzbz, $datum_res, $stunde) || $rechte->isBerechtigt('lehre/reservierungAdvanced')) { if (empty($_REQUEST['titel']) && empty($_REQUEST['beschreibung'])) echo "
".$p->t('lvplan/titelUndBeschreibungFehlt')."!
"; diff --git a/include/wochenplan.class.php b/include/wochenplan.class.php index c9be5f567..bbc418c1b 100644 --- a/include/wochenplan.class.php +++ b/include/wochenplan.class.php @@ -645,6 +645,7 @@ class wochenplan extends basis_db die($this->db_last_error()); $result_stunde = $this->db_result; $num_rows_stunde = $this->db_num_rows($result_stunde); + $raumReservierbar = true; $stundenplandev_belegt = array(); // Formularbeginn wenn Lektor @@ -670,7 +671,10 @@ class wochenplan extends basis_db } } else - $raumres=false; + { + $raumres = false; + $raumReservierbar = false; + } } //Tabelle zeichnen @@ -696,6 +700,8 @@ class wochenplan extends basis_db if (!date("w",$this->datum)) $this->datum=jump_day($this->datum,1); $datum=$datum_mon=$this->datum; + $rechte = new benutzerberechtigung(); + $rechte->getBerechtigungen($user_uid); for ($i=1; $i<=TAGE_PRO_WOCHE; $i++) { @@ -887,7 +893,7 @@ class wochenplan extends basis_db } // Ausgabe einer Stunde im Raster (HTML) - echo ' '; + echo ' '; foreach($uEinheiten as $key=>$uEinheit) { @@ -945,6 +951,8 @@ class wochenplan extends basis_db } echo ''; } + if ($rechte->isBerechtigt('lehre/reservierungAdvanced', null, 'sui')) + echo ''; echo ''.$this->crlf; } } @@ -978,9 +986,6 @@ class wochenplan extends basis_db echo ' '.$p->t('global/titel').': '.$this->crlf; echo ' '.$p->t('global/beschreibung').': '.$this->crlf; - $rechte = new benutzerberechtigung(); - $rechte->getBerechtigungen($user_uid); - //Pruefen ob die erweiterte Reservierungsrechte vorhanden sind if ($rechte->isBerechtigt('lehre/reservierung', null, 'sui')) { @@ -1109,6 +1114,12 @@ class wochenplan extends basis_db echo ''; echo ' '.$p->t('lvplan/reservierungenLoeschen').' '; } + elseif ($this->type=='ort' && $raumReservierbar == false) + { + echo '

'; + echo ''.$p->t('lvplan/raumNichtReservierbar').''; + echo '
'; + } else { if ($this->type=='ort') diff --git a/locale/de-AT/lvplan.php b/locale/de-AT/lvplan.php index 3d95771fd..4c386aa23 100644 --- a/locale/de-AT/lvplan.php +++ b/locale/de-AT/lvplan.php @@ -98,4 +98,5 @@ $this->phrasen['lvplan/status']='Status'; $this->phrasen['lvplan/automatischeMail']='Dies ist eine automatische Mail!'; $this->phrasen['lvplan/folgendeAenderungen']='Es haben sich folgende Aenderungen in Ihrem LV-Plan ergeben:'; $this->phrasen['lvplan/reserviertInDev']='reserviert
für
lehre'; +$this->phrasen['lvplan/raumNichtReservierbar']='Die Möglichkeit der Reservierung ist für diesen Raum deaktiviert.'; ?> \ No newline at end of file diff --git a/locale/en-US/lvplan.php b/locale/en-US/lvplan.php index 993018ba1..2e098e41d 100644 --- a/locale/en-US/lvplan.php +++ b/locale/en-US/lvplan.php @@ -97,4 +97,5 @@ $this->phrasen['lvplan/status']='Status'; $this->phrasen['lvplan/automatischeMail']='This is an automatic email!'; $this->phrasen['lvplan/folgendeAenderungen']='There have been the following changes in your Schedule:'; $this->phrasen['lvplan/reserviertInDev']='not
available'; +$this->phrasen['lvplan/raumNichtReservierbar']='Reservation is disabled for this room.'; ?> diff --git a/vilesci/lehre/reservierung_insert.php b/vilesci/lehre/reservierung_insert.php index be26243bd..57b5039a7 100644 --- a/vilesci/lehre/reservierung_insert.php +++ b/vilesci/lehre/reservierung_insert.php @@ -37,7 +37,7 @@ $datum_obj = new datum(); $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($uid); -if(!$rechte->isBerechtigt('lehre/reservierung', null, 'sui')) +if(!$rechte->isBerechtigt('lehre/reservierungAdvanced', null, 'sui')) die('Sie haben keine Berechtigung für diese Seite'); $stgid=(isset($_REQUEST['stgid'])?$_REQUEST['stgid']:0); @@ -247,7 +247,7 @@ echo '
'; -if($rechte->isBerechtigt('lehre/reservierung', null, 'sui')) +if($rechte->isBerechtigt('lehre/reservierungAdvanced', null, 'sui')) { if ($type=="save") {