add uuid support to device page sidebar
This commit is contained in:
@@ -145,6 +145,7 @@ hook 'before_template' => sub {
|
||||
|
||||
# for templates to link to same page with modified query but same options
|
||||
my $self_uri = uri_for(request->path, scalar params);
|
||||
$self_uri->query_param_delete('uuid');
|
||||
$self_uri->query_param_delete('q');
|
||||
$self_uri->query_param_delete('f');
|
||||
$self_uri->query_param_delete('prefer');
|
||||
@@ -152,13 +153,11 @@ hook 'before_template' => sub {
|
||||
};
|
||||
|
||||
get '/device' => require_login sub {
|
||||
my $q = param('q');
|
||||
my $dev = schema('netdisco')->resultset('Device')->single({
|
||||
-or => [
|
||||
\[ 'host(me.ip) = ?' => [ bind_value => $q ] ],
|
||||
'me.dns' => $q,
|
||||
],
|
||||
});
|
||||
my $uuid = param('uuid');
|
||||
|
||||
my $dev = schema('netdisco')->resultset('Device')->single(
|
||||
\[ 'host(me.ip) = ?' => [ bind_value => $uuid ] ],
|
||||
);
|
||||
|
||||
if (!defined $dev) {
|
||||
return redirect uri_for('/', {nosuchdevice => 1})->path_query;
|
||||
|
||||
@@ -78,10 +78,13 @@ get '/search' => require_login sub {
|
||||
|
||||
if ($nd and $nd->count) {
|
||||
if ($nd->count == 1) {
|
||||
my $row = $nd->first;
|
||||
|
||||
# redirect to device details for the one device
|
||||
return redirect uri_for('/device', {
|
||||
tab => 'details',
|
||||
q => ($nd->first->dns || $nd->first->ip),
|
||||
uuid => $row->ip,
|
||||
q => ($row->dns || $row->ip),
|
||||
f => '',
|
||||
})->path_query;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user