X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FMenu.pm;h=19b2d2d16c66ecf1507e6b6b7c0e495455336708;hb=6e6038682b1a2b6e6bc74f1eee40eba21afcb7e9;hp=06ea6ee43ed44c04b21459694f7e7ebce836b05b;hpb=c617a444526ae87cca99936a613ceb6ded70ba6e;p=kivitendo-erp.git diff --git a/SL/Menu.pm b/SL/Menu.pm index 06ea6ee43..19b2d2d16 100644 --- a/SL/Menu.pm +++ b/SL/Menu.pm @@ -162,6 +162,11 @@ sub parse_access_string { return SL::Auth::evaluate_rights_ary($stack[0]); } +sub parse_instance_conf_string { + my ($self, $setting) = @_; + return $::instance_conf->data->{$setting}; +} + sub set_access { my $self = shift; @@ -171,6 +176,7 @@ sub set_access { my $entry = $self->{$key}; $entry->{GRANTED} = $entry->{ACCESS} ? $self->parse_access_string($key, $entry->{ACCESS}) : 1; + $entry->{GRANTED} &&= $self->parse_instance_conf_string($entry->{INSTANCE_CONF}) if $entry->{INSTANCE_CONF}; $entry->{IS_MENU} = $entry->{submenu} || ($key !~ m/--/); $entry->{NUM_VISIBLE_CHILDREN} = 0;