summaryrefslogtreecommitdiff
path: root/LedgerSMB
diff options
context:
space:
mode:
authoreinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-06-27 15:19:55 +0000
committereinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-06-27 15:19:55 +0000
commit50be11c3574706cae5e219ba910e8221e50da4e8 (patch)
treea2b6f050da940fdf1650a42bd5269469e6483467 /LedgerSMB
parent80d758a1abf3d2b696fd14521726806236a2c2b6 (diff)
Moving menu.pl to old-handler.pl and adjusting top level scripts accordingly.
Including also an unfinished and inactive version of the menu system running under the new architecture. git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@1334 4979c152-3d1c-0410-bac9-87ea11338e46
Diffstat (limited to 'LedgerSMB')
-rw-r--r--LedgerSMB/Menu.pm21
1 files changed, 10 insertions, 11 deletions
diff --git a/LedgerSMB/Menu.pm b/LedgerSMB/Menu.pm
index 30aa28c6..5c017a7c 100644
--- a/LedgerSMB/Menu.pm
+++ b/LedgerSMB/Menu.pm
@@ -48,19 +48,18 @@ sub new {
my $orig_key = $key;
my $ref = $self;
while ($key =~ s/^([^-]*)--//){
- if (!defined $ref->{$1}){
- $ref->{$1} = {};
- }
- if (!defined $ref->{$1}->{subs}){
- $ref->{$1}->{subs} = {};
- }
- $ref = $ref->{$1}->{subs};
+ $ref->{subs} ||= {};
+ $ref->{subs}->{$1} ||= {};
+ $ref = $ref->{subs}->{$1};
}
- for (keys %{$config->{$orig_key}}){
- $ref->{$_} = $config{$orig_key}->{$_};
+ $ref->{subs} ||= {};
+ $ref->{subs}->{key} ||= {};
+ $ref = $ref->{subs}->{$key};
+ for (keys %{$config{$orig_key}}){
+ $ref->{$_} = ${$config{$orig_key}}{$_};
}
- $ref->{$key}{id} = $index;
- $ref->{$key}{label} = $key;
+ $ref->{id} = $index;
+ $ref->{label} = $key;
++$index;
}
}