diff --git a/lib/App/Netdisco/Web.pm b/lib/App/Netdisco/Web.pm index 013ee51b..3094c377 100644 --- a/lib/App/Netdisco/Web.pm +++ b/lib/App/Netdisco/Web.pm @@ -89,7 +89,7 @@ hook 'before' => sub { guard { setting('sidebar_defaults')->{$key} = $defaults }; #Â otherwise update defaults to contain the passed url params - setting('sidebar_defaults')->{$key}->{$_}->{'default'} = params->{$_} + setting('sidebar_defaults')->{$key}->{$_}->{'default'} = param($_) for keys %{ $defaults }; }; @@ -140,8 +140,8 @@ hook 'before_template' => sub { } #Â helper from NetAddr::MAC for the MAC formatting - $tokens->{mac_format_call} = 'as_'. lc(params->{'mac_format'}) - if params->{'mac_format'}; + $tokens->{mac_format_call} = 'as_'. lc(param('mac_format')) + if param('mac_format'); # allow very long lists of ports $Template::Directive::WHILE_MAX = 10_000; diff --git a/lib/App/Netdisco/Web/Device.pm b/lib/App/Netdisco/Web/Device.pm index f5225b1b..d0280480 100644 --- a/lib/App/Netdisco/Web/Device.pm +++ b/lib/App/Netdisco/Web/Device.pm @@ -60,11 +60,12 @@ hook 'before' => sub { }; hook 'before_template' => sub { - return unless var('sidebar_key') and (var('sidebar_key') eq 'device_ports'); + return if param('reset') + or not var('sidebar_key') or (var('sidebar_key') ne 'device_ports'); my $uri = URI->new(); foreach my $key (keys %{ setting('sidebar_defaults')->{'device_ports'} }) { - $uri->query_param($key => params->{$key}) if params->{$key}; + $uri->query_param($key => param($key)) if exists params->{$key}; } cookie('nd_ports-form' => $uri->query(), expires => '365 days'); }; diff --git a/share/views/device.tt b/share/views/device.tt index 63b978ee..17a4bff4 100644 --- a/share/views/device.tt +++ b/share/views/device.tt @@ -1,11 +1,11 @@