arap strict
[kivitendo-erp.git] / bin / mozilla / menunew.pl
index afce1cf..793cec2 100644 (file)
 
 use English qw(-no_match_vars);
 use List::Util qw(max);
+use URI;
 
 use SL::Menu;
 
+use strict;
+
+my $locale;
+
 1;
 
 # end of main
 
 sub display {
+  my $form     = $main::form;
+
   $form->header();
 
 #   $form->{force_ul_width} = $ENV{HTTP_USER_AGENT} =~ m/MSIE\s+6\./;
@@ -49,11 +56,17 @@ sub display {
   $form->{force_ul_width} = 1;
   $form->{date}           = clock_line();
   $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 =~ /^(\.\/)?$/;
+  $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);
@@ -76,13 +89,15 @@ sub clock_line {
 }
 
 sub acc_menu {
-  $locale = Locale->new($language, "menu");
+  my $form     = $main::form;
+  my %myconfig = %main::myconfig;
+  $locale = Locale->new($myconfig{countrycode}, "menu");
 
   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);
@@ -107,6 +122,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);