From ac5b087ea2d9ba7428d367aaeb288534158fee9a Mon Sep 17 00:00:00 2001 From: christopherm Date: Fri, 1 Sep 2006 01:16:38 +0000 Subject: Initial Import git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/ledger-smb@1 4979c152-3d1c-0410-bac9-87ea11338e46 --- bin/mozilla/menu.pl | 255 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 255 insertions(+) create mode 100755 bin/mozilla/menu.pl (limited to 'bin/mozilla/menu.pl') diff --git a/bin/mozilla/menu.pl b/bin/mozilla/menu.pl new file mode 100755 index 00000000..f380dfb1 --- /dev/null +++ b/bin/mozilla/menu.pl @@ -0,0 +1,255 @@ +#===================================================================== +# LedgerSMB +# Small Medium Business Accounting software +# +# See COPYRIGHT file for copyright information +#====================================================================== +# +# This file has NOT undergone whitespace cleanup. +# +#====================================================================== +# +# two frame layout with refractured menu +# +####################################################################### + +$menufile = "menu.ini"; +use LedgerSMB::Menu; + + +1; +# end of main + + +sub display { + + $menuwidth = ($ENV{HTTP_USER_AGENT} =~ /links/i) ? "240" : "155"; + $menuwidth = $myconfig{menuwidth} if $myconfig{menuwidth}; + + $form->header(!$form->{duplicate}); + + print qq| + + + + + + + + + + +|; + +} + + + +sub acc_menu { + + my $menu = new Menu "$menufile"; + $menu->add_file("custom_$menufile") if -f "custom_$menufile"; + $menu->add_file("$form->{login}_$menufile") if -f "$form->{login}_$menufile"; + + $form->{title} = $locale->text('Accounting Menu'); + + $form->header; + + print qq| + + + + + +|; + + if ($form->{js}) { + &js_menu($menu); + } else { + §ion_menu($menu); + } + + print qq| + + +|; + +} + + +sub section_menu { + my ($menu, $level) = @_; + + # build tiered menus + my @menuorder = $menu->access_control(\%myconfig, $level); + + while (@menuorder) { + $item = shift @menuorder; + $label = $item; + $label =~ s/$level--//g; + + my $spacer = " " x (($item =~ s/--/--/g) * 2); + + $label =~ s/.*--//g; + $label = $locale->text($label); + $label =~ s/ / /g if $label !~ /{$item}{target} = "main_window" unless $menu->{$item}{target}; + + if ($menu->{$item}{submenu}) { + + $menu->{$item}{$item} = !$form->{$item}; + + if ($form->{level} && $item =~ $form->{level}) { + + # expand menu + print qq|
\n$spacer|.$menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label|; + + # remove same level items + map { shift @menuorder } grep /^$item/, @menuorder; + + §ion_menu($menu, $item); + + print qq|
\n|; + + } else { + + print qq|
\n$spacer|.$menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label ...|; + + # remove same level items + map { shift @menuorder } grep /^$item/, @menuorder; + + } + + } else { + + if ($menu->{$item}{module}) { + + print qq|
\n$spacer|.$menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label|; + + } else { + + $form->{tag}++; + print qq| +

$label|; + + §ion_menu($menu, $item); + + print qq|
\n|; + + } + } + } +} + + + +sub js_menu { + my ($menu, $level) = @_; + + print qq| +

+ |; + + # build tiered menus + my @menuorder = $menu->access_control(\%myconfig, $level); + + while (@menuorder){ + $i++; + $item = shift @menuorder; + $label = $item; + $label =~ s/.*--//g; + $label = $locale->text($label); + + $menu->{$item}{target} = "main_window" unless $menu->{$item}{target}; + + if ($menu->{$item}{submenu}) { + + $display = "display: none;" unless $level eq ' '; + + print qq| + + + |; + + } else { + + if ($menu->{$item}{module}) { + if ($level eq "") { + print qq||; + + # remove same level items + map { shift @menuorder } grep /^$item/, @menuorder; + + &js_menu($menu, $item); + + } else { + + print qq||; + } + + } else { + + $display = "display: none;" unless $item eq ' '; + + print qq| + + + |; + + } + + } + + } + + print qq| +
+ |; +} + + +sub menubar { + + 1; + +} + + -- cgit v1.2.3