X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fmenunew.pl;h=a1f9a8f2d0169102906a7a4a1696150167fc3879;hb=469ca9fc3cac624073270fc3217766dbb7aba253;hp=b48abc814a41b2b9c124eabc0f69fcd25ad77744;hpb=f20785168580f2d3587ebb2d06ade189246fd5f3;p=kivitendo-erp.git diff --git a/bin/mozilla/menunew.pl b/bin/mozilla/menunew.pl index b48abc814..a1f9a8f2d 100644 --- a/bin/mozilla/menunew.pl +++ b/bin/mozilla/menunew.pl @@ -38,11 +38,15 @@ use URI; use SL::Menu; +use strict; + 1; # end of main sub display { + my $form = $main::form; + $form->header(); # $form->{force_ul_width} = $ENV{HTTP_USER_AGENT} =~ m/MSIE\s+6\./; @@ -52,13 +56,15 @@ sub display { $form->{menu_items} = acc_menu(); my $callback = $form->unescape($form->{callback}); $callback = URI->new($callback)->rel($callback) if $callback; - $callback = "login.pl?action=company_logo" if $callback =~ /^(.\/)?$/; + $callback = "login.pl?action=company_logo" if $callback =~ /^(\.\/)?$/; $form->{callback} = $callback; print $form->parse_html_template("menu/menunew"); } sub clock_line { + my $form = $main::form; + my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time); @@ -81,13 +87,14 @@ sub clock_line { } sub acc_menu { - $locale = Locale->new($language, "menu"); + my $form = $main::form; + my %myconfig = %main::myconfig; my $mainlevel = $form->{level}; $mainlevel =~ s/\Q$mainlevel\E--//g; my $menu = Menu->new('menu.ini'); - $AUTOFLUSH = 1; + $English::AUTOFLUSH = 1; my $all_items = []; create_menu($menu, $all_items); @@ -112,6 +119,9 @@ sub create_menu { my ($menu, $all_items, $parent, $depth) = @_; my $html; + my $form = $main::form; + my %myconfig = %main::myconfig; + die if ($depth * 1 > 5); my @menuorder = $menu->access_control(\%myconfig, $parent); @@ -122,15 +132,29 @@ sub create_menu { next if (($name eq "") || ($name =~ /--/)); my $menu_item = $menu->{"${parent}${name}"}; - my $item = { 'title' => $locale->text($name) }; + my $item = { 'title' => $::locale->text($name) }; push @{ $all_items }, $item; if ($menu_item->{submenu} || !defined($menu_item->{module}) || ($menu_item->{module} eq "menu.pl")) { $item->{subitems} = []; + $item->{image} = _icon_path("$name.png"); create_menu($menu, $item->{subitems}, "${parent}${name}", $depth * 1 + 1); } else { + $item->{image} = _icon_path("${parent}${name}.png"); $menu->menuitem_new("${parent}${name}", $item); } } } + +sub _icon_path { + my ($label, $size) = @_; + + $size ||= 16; + + my $img = "image/icons/${size}x${size}/$label"; + + return unless -f $img; + return $img; +} +