X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2FmenuXML.pl;h=5744c841feaa36051bc633d707f56e1ffdbeae02;hb=2e8ce008611246347f9682d81e8fabf015765bf5;hp=06746ae745aaf523e73a0daf6b722c29b9287532;hpb=5b22b6b5b7dbb290048cd15b3ede7d18cba4d09c;p=kivitendo-erp.git diff --git a/bin/mozilla/menuXML.pl b/bin/mozilla/menuXML.pl index 06746ae74..5744c841f 100644 --- a/bin/mozilla/menuXML.pl +++ b/bin/mozilla/menuXML.pl @@ -36,50 +36,70 @@ # 2007-10-14 - XMLified - Holger Will ####################################################################### -$menufile = "menu.ini"; +my $menufile = "menu.ini"; use SL::Menu; use CGI::Carp qw(fatalsToBrowser); use Encode; +use URI; + +use strict; + +my $locale; + 1; # end of main sub display { - print "Content-type: text/xml; charset=iso-8859-1\n\n"; - print qq|\n|; - print qq|\n|; - print qq| -]>|; - print qq||; - print qq||; - print %myconfig->{name}; - print qq||; - print qq||; - print %myconfig->{dbname}; - print qq||; - print qq||; - my $fav=%myconfig->{favorites}; - my @favorites = split(/;/, $fav); + my $form = $main::form; + my %myconfig = %main::myconfig; + + $locale = Locale->new($myconfig{countrycode}, "menu"); + my $charset = $main::dbcharset || 'ISO-8859-1'; + my $callback = $form->unescape($form->{callback}); + $callback = URI->new($callback)->rel($callback) if $callback; + $callback = "login.pl?action=company_logo" if $callback =~ /^(\.\/)?$/; + + my $text = $form->create_http_response('content_type' => 'text/xml', + 'charset' => $charset) + . qq| + +{iconv_iso8859}->convert('ß') . qq|"> +{iconv_iso8859}->convert('ä') . qq|"> +{iconv_iso8859}->convert('ö') . qq|"> +{iconv_iso8859}->convert('ü') . qq|"> +]> + + +$myconfig{name} +$form->{version} +$callback +$myconfig{dbname} + +|; + + my $fav = $myconfig{favorites}; + my @favorites = split m/;/, $fav; foreach (@favorites) { - print qq||; + $text .= qq||; } - print qq||; - print qq||; -my $isoencodedmenu=&acc_menu($menu); - print encode("iso-8859-1",$isoencodedmenu ); - - print qq||; - print qq||; - + + $text .= qq|\n| + . qq|\n| + . acc_menu() + . qq|\n| + . qq|\n|; + + print $text; } sub acc_menu { - $locale = Locale->new($language, "menu"); + my $form = $main::form; - $mainlevel = $form->{level}; + my $mainlevel = $form->{level}; $mainlevel =~ s/$mainlevel--//g; my $menu = new Menu "$menufile"; @@ -92,6 +112,9 @@ sub print_menu { my ($menu, $parent, $depth) = @_; my $html; + my $form = $main::form; + my %myconfig = %main::myconfig; + die if ($depth * 1 > 5); my @menuorder;