function page($title, $no_menu=false, $is_index=false, $onload="", $js="", $script_only=false)
{
- global $path_to_root, $page_security;
+ global $path_to_root;
$hide_menu = $no_menu;
include($path_to_root . "/includes/page/header.inc");
- if (!$_SESSION["wa_current_user"]->check_user_access())
- {
- echo "<br><br><br><center>";
- echo "<b>" . _("Security settings have not been defined for your user account.");
- echo "<br>" . _("Please contact your system administrator.") . "</b>";
-
- kill_login();
- exit;
- }
-
- if (!$_SESSION["wa_current_user"]->can_access_page($page_security))
- {
- page_header(_("Access denied"), $no_menu);
- echo "<center><br><br><br><b>";
- echo _("The security settings on your account do not permit you to access this function");
- echo "</b>";
- echo "<br><br><br><br></center>";
- end_page();
- //kill_login();
- exit;
- }
-
page_header($title, $no_menu, $is_index, $onload, $js);
error_box();
if($script_only) {
die();
}
+//----------------------------------------------------------------------------------------
+
+function check_page_security($page_security)
+{
+ if (!$_SESSION["wa_current_user"]->check_user_access())
+ {
+ echo "<br><br><br><center>";
+ echo "<b>" . _("Security settings have not been defined for your user account.");
+ echo "<br>" . _("Please contact your system administrator.") . "</b>";
+
+ kill_login();
+ exit;
+ }
+
+ if (!$_SESSION["wa_current_user"]->can_access_page($page_security))
+ {
+ // no_menu parameter guess here is ugly hack, but works for now.
+ // Better solution is to use global switch for menu, set before
+ // session.inc inclusion.
+ page(_("Access denied"), strpos($_SERVER['PHP_SELF'], '/view/'));
+
+ echo "<center><br><br><br><b>";
+ echo _("The security settings on your account do not permit you to access this function");
+ echo "</b>";
+ echo "<br><br><br><br></center>";
+ end_page();
+ //kill_login();
+ exit;
+ }
+}
+
//-----------------------------------------------------------------------------
// Removing magic quotes from nested arrays/variables
//
//----------------------------------------------------------------------------------------
+check_page_security($page_security);
+
// POST vars cleanup needed for direct reuse.
// We quote all values later with db_escape() before db update.
$_POST = strip_quotes($_POST);