X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=html%2Fgetkiosk.php;h=1b383e753632037e4ab817709ce8e94adef7aa04;hb=3a4267cf68ad2bab22b38af3536251e6d2e90ec2;hp=d3a25ad3f891a0109b2865dc2caf16a70c44c144;hpb=aa26fd47b6cffd3a40d6cfb8e780d813395600a0;p=gosa.git diff --git a/html/getkiosk.php b/html/getkiosk.php index d3a25ad3f..1b383e753 100644 --- a/html/getkiosk.php +++ b/html/getkiosk.php @@ -49,12 +49,12 @@ function getkiosk ($id) /* Basic setup, remove eventually registered sessions */ @require_once ("../include/php_setup.inc"); @require_once ("functions.inc"); -error_reporting (E_ALL); +error_reporting (E_ALL | E_STRICT); session_start (); /* Logged in? Simple security check */ if (!isset($_SESSION['ui'])){ - gosa_log ("Error: getkiosk.php called without session"); + new log("security","fai","",array(),"Error: getkiosk.php called without session") ; header ("Location: index.php"); exit; } @@ -62,13 +62,22 @@ $ui= $_SESSION["ui"]; $config= $_SESSION['config']; /* Check ACL's */ -$acl= get_permissions ($config->current['BASE'], $ui->subtreeACL); -$acl= get_module_permission($acl, "all", $config->current['BASE']); -if (chkacl($acl, "all") != ""){ +#FIXME Use more specific acl categories instead of all/all +$ui = get_userinfo(); + +$tmp = $ui->get_module_departments("server/goKioskService"); +$found = FALSE; +foreach($tmp as $dir){ + if(preg_match("/r/",$ui->get_permissions($dir,"server/goKioskService"))){ + $found = TRUE; + break; + } +} +if(!$found){ header ("Location: index.php"); exit; } -$dir = search_config($config->data,"environment", "KIOSKPATH"); +$dir= $config->search('environment', 'kioskpath', array('tabs','menu')); getkiosk($dir."/".$_GET['id']); // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: