MT#14747 Pass fw query as url path.

Change-Id: I7f01f7c283d919563b5e911428fc901cc025650f
changes/74/2374/4
Andreas Granig 10 years ago
parent 4ff9e340c0
commit 602f0a6f7a

@ -1774,8 +1774,8 @@ sub dev_field_firmware_version_base :Chained('dev_field_firmware_base') :PathPar
$c->stash->{fw_rs} = $dev->profile->config->device->autoprov_firmwares;
}
sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPart('next') :Args(0) {
my ($self, $c) = @_;
sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPart('next') :Args {
my ($self, $c, $q) = @_;
my $rs = $c->stash->{fw_rs}->search({
device_id => $c->stash->{dev}->profile->config->device->id,
@ -1783,9 +1783,12 @@ sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPar
}, {
order_by => { -asc => 'version' },
});
if($c->req->params->{q}) {
if(!defined $q && defined $c->req->params->{q}) {
$q = $c->req->params->{q};
}
if(defined $q) {
$rs = $rs->search({
version => { 'like' => $c->req->params->{q} . '%' },
version => { 'like' => $q . '%' },
});
}
@ -1802,8 +1805,8 @@ sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPar
$c->response->body($fw->data);
}
sub dev_field_firmware_latest :Chained('dev_field_firmware_version_base') :PathPart('latest') :Args(0) {
my ($self, $c) = @_;
sub dev_field_firmware_latest :Chained('dev_field_firmware_version_base') :PathPart('latest') :Args {
my ($self, $c, $q) = @_;
my $rs = $c->stash->{fw_rs}->search({
device_id => $c->stash->{dev}->profile->config->device->id,
@ -1811,9 +1814,12 @@ sub dev_field_firmware_latest :Chained('dev_field_firmware_version_base') :PathP
}, {
order_by => { -desc => 'version' },
});
if($c->req->params->{q}) {
if(!defined $q && defined $c->req->params->{q}) {
$q = $c->req->params->{q};
}
if(defined $q) {
$rs = $rs->search({
version => { 'like' => $c->req->params->{q} . '%' },
version => { 'like' => $q . '%' },
});
}

Loading…
Cancel
Save