X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=themes%2Faqua%2Frenderer.php;h=72e200cb4bf5481da2a68bf8d75adddcbbc97a23;hb=d5ec96e90a4bdcecc7423ca407724415817cb372;hp=10c3c95641d9e7e09f7aad57d26b94b2d753d01a;hpb=aa2ff78063656a7843d763859e3b9b4c15a3f920;p=fa-stable.git
diff --git a/themes/aqua/renderer.php b/themes/aqua/renderer.php
index 10c3c956..72e200cb 100644
--- a/themes/aqua/renderer.php
+++ b/themes/aqua/renderer.php
@@ -56,10 +56,13 @@
echo "
";
foreach($applications as $app)
{
- $acc = access_string($app->name);
- echo "
" .$acc[0] . "";
+ if ($this->check_application_access($app))
+ {
+ $acc = access_string($app->name);
+ echo "
" .$acc[0] . "";
+ }
}
echo "
";
@@ -141,9 +144,13 @@
global $path_to_root;
$selected_app = $waapp->get_selected_application();
+ if (!$this->check_application_access($selected_app))
+ return;
foreach ($selected_app->modules as $module)
{
+ if (!$this->check_module_access($module))
+ continue;
// image
echo "";
// values
@@ -163,7 +170,7 @@
{
echo $img.menu_link($appfunction->link, $appfunction->label)."
\n";
}
- else
+ elseif (!$this->hide_inaccessible_menu_items())
{
echo $img.''
.access_string($appfunction->label, true)
@@ -183,7 +190,7 @@
{
echo $img.menu_link($appfunction->link, $appfunction->label)."
\n";
}
- else
+ elseif (!$this->hide_inaccessible_menu_items())
{
echo $img.''
.access_string($appfunction->label, true)
@@ -198,6 +205,74 @@
echo "";
}
+
+ function check_application_access($waapp)
+ {
+ if (!$this->hide_inaccessible_menu_items())
+ {
+ return true;
+ }
+
+ foreach ($waapp->modules as $module)
+ {
+ if ($this->check_module_access($module))
+ {
+ return true;
+ }
+ }
+
+ return false;
+
+ }
+
+ function check_module_access($module)
+ {
+
+ if (!$this->hide_inaccessible_menu_items())
+ {
+ return true;
+ }
+
+ if (sizeof($module->lappfunctions) > 0)
+ {
+ foreach ($module->lappfunctions as $appfunction)
+ {
+ if ($appfunction->label != "" && $_SESSION["wa_current_user"]->can_access_page($appfunction->access))
+ {
+ return true;
+ }
+ }
+ }
+
+ if (sizeof($module->rappfunctions) > 0)
+ {
+ foreach ($module->rappfunctions as $appfunction)
+ {
+ if ($appfunction->label != "" && $_SESSION["wa_current_user"]->can_access_page($appfunction->access))
+ {
+ return true;
+ }
+ }
+ }
+
+ return false;
+
+ }
+
+ function hide_inaccessible_menu_items()
+ {
+ global $hide_inaccessible_menu_items;
+
+ if (!isset($hide_inaccessible_menu_items) || $hide_inaccessible_menu_items == 0)
+ {
+ return false;
+ }
+
+ else
+ {
+ return true;
+ }
+ }
}
?>
\ No newline at end of file