X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FMenu.pm;h=0fb1b1a959851e9d2f5a970627b9ae6fd87232c2;hb=f5c9c5eba0aed77f5cebe2e5cee5c7f3743b579e;hp=844e3f56f349c7db718a87297c2e87184ab200f6;hpb=d2c9cb3b30efe5842aa1118c7cc84eb61c9c5279;p=kivitendo-erp.git diff --git a/SL/Menu.pm b/SL/Menu.pm index 844e3f56f..0fb1b1a95 100644 --- a/SL/Menu.pm +++ b/SL/Menu.pm @@ -39,15 +39,11 @@ use SL::Inifile; use strict; -my $instance; - sub new { $main::lxdebug->enter_sub(); my ($type, $menufile) = @_; - return $instance if $instance; - my $self = {}; my $inifile = Inifile->new($menufile); @@ -59,48 +55,11 @@ sub new { $main::lxdebug->leave_sub(); - return $instance = $self; -} - -sub menuitem_js { - my ($self, $myconfig, $form, $item) = @_; - - my $module = $form->{script}; - my $action = "section_menu"; - - #if ($self->{$item}{module}) { - $module = $self->{$item}{module}; - - #} - if ($self->{$item}{action}) { - $action = $self->{$item}{action}; - } - - my $level = $form->escape($item); - my $str = qq|$module?action=$action&level=$level|; - my @vars = qw(module action target href); - - if ($self->{$item}{href}) { - $str = qq|$self->{$item}{href}|; - @vars = qw(module target href); - } - - map { delete $self->{$item}{$_} } @vars; - - # add other params - foreach my $key (keys %{ $self->{$item} }) { - $str .= "&" . $form->escape($key, 1) . "="; - my ($value, $conf) = split(/=/, $self->{$item}{$key}, 2); - $value = $myconfig->{$value} . "/$conf" if ($conf); - $str .= $form->escape($value, 1); - } - - $str .= " "; - + return $self; } sub menuitem_new { - $main::lxdebug->enter_sub(); + $main::lxdebug->enter_sub(LXDebug::DEBUG2()); my ($self, $name, $item) = @_; @@ -125,123 +84,7 @@ sub menuitem_new { $item->{href} .= "&" . $form->escape($key) . "=" . $form->escape($value); } - $main::lxdebug->leave_sub(); -} - -sub menuitem_v3 { - $main::lxdebug->enter_sub(); - - my ($self, $myconfig, $form, $item, $other) = @_; - - my $module = $form->{script}; - my $action = "section_menu"; - my $target = ""; - - if ($self->{$item}{module}) { - $module = $self->{$item}{module}; - } - if ($self->{$item}{action}) { - $action = $self->{$item}{action}; - } - if ($self->{$item}{target}) { - $target = $self->{$item}{target}; - } - - my $level = $form->escape($item); - - my $str = qq|escape($key, 1) . "="; - my ($value, $conf) = split(/=/, $self->{$item}{$key}, 2); - $value = $myconfig->{$value} . "/$conf" if ($conf); - $str .= $form->escape($value, 1); - } - - $str .= '"'; - - if ($target) { - $str .= qq| target="| . $form->quote($target) . qq|"|; - } - - if ($other) { - foreach my $key (keys(%{$other})) { - $str .= qq| ${key}="| . $form->quote($other->{$key}) . qq|"|; - } - } - - $str .= ">"; - - $main::lxdebug->leave_sub(); - - return $str; -} - -sub menuitem_XML { - $main::lxdebug->enter_sub(); - - my ($self, $myconfig, $form, $item, $other) = @_; - - my $module = $form->{script}; - my $action = "section_menu"; - my $target = ""; - - if ($self->{$item}{module}) { - $module = $self->{$item}{module}; - } - if ($self->{$item}{action}) { - $action = $self->{$item}{action}; - } - if ($self->{$item}{target}) { - $target = $self->{$item}{target}; - } - - my $level = $form->escape($item); - - my $str = qq| link="$module?action=| . $form->escape($action) . - qq|&level=| . $form->escape($level); - - my @vars = qw(module action target href); - - if ($self->{$item}{href}) { - $str = qq| link=$self->{$item}{href}|; - @vars = qw(module target href); - } - - map { delete $self->{$item}{$_} } @vars; - - # add other params - foreach my $key (keys %{ $self->{$item} }) { - $str .= "&" . $form->escape($key, 1) . "="; - my ($value, $conf) = split(/=/, $self->{$item}{$key}, 2); - $value = $myconfig->{$value} . "/$conf" if ($conf); - $str .= $form->escape($value, 1); - } - - $str .= '"'; - - - - if ($other) { - foreach my $key (keys(%{$other})) { - $str .= qq| ${key}="| . $form->quote($other->{$key}) . qq|"|; - } - } - - - $main::lxdebug->leave_sub(); - - return $str; + $main::lxdebug->leave_sub(LXDebug::DEBUG2()); } sub access_control { @@ -251,7 +94,7 @@ sub access_control { my @menu = (); - if ($menulevel eq "") { + if (!$menulevel) { @menu = grep { !/--/ } @{ $self->{ORDER} }; } else { @menu = grep { /^${menulevel}--/ } @{ $self->{ORDER} };