package local::menu; require Exporter; use CGI qw(:standard); use strict; use base "Exporter"; my %menus = ( '/cgi-bin/nzbget/groups.pl'=>'Aktive Downloads', '/cgi-bin/nzbget/mydl.pl?only_me=1'=>'My Downloads', '/cgi-bin/nzbget/mydl.pl'=>'All Downloads', '/cgi-bin/nzbget/log.pl'=>'Log', '/cgi-bin/nzbget/search.pl'=>'Suche', ); sub new { my $invocant = shift; my $class = ref($invocant) || $invocant; # my $self = $class->SUPER::new(@_); my $self=bless {@_}, $class; return $self; } sub start_html { my $self=shift; my $active = $self->{SCRIPT_NAME}; my $html= CGI::start_html(-style=>{'src'=>'/style.css'},@_); my @elements; foreach my $url (keys %menus) { if ($url eq $active) { push @elements,td([$menus{$url}]); } else { push @elements,th([a({href=>$url},$menus{$url})]); } } $html.= table( Tr(join '',@elements ), ); return $html; } sub end_html { my $self=shift; my $html= CGI::end_html; return $html; }