TT#13812 Discard latest/next firmware suffix

Only use request param "q" for filtering firmware versions. Otherwise
devices which attach a specific verstion to the download url will not
find the latest/next version.

Change-Id: Ibd92de4c73ad20cc5a0e06f185171fff370ceaf6
changes/40/12440/4
Andreas Granig 9 years ago
parent 9379e91b68
commit 2c72f95269

@ -1908,7 +1908,7 @@ sub dev_field_firmware_version_base :Chained('dev_field_firmware_base') :PathPar
}
sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPart('next') :Args {
my ($self, $c, $q) = @_;
my ($self, $c, $tmp) = @_;
my $rs = $c->stash->{fw_rs}->search({
device_id => $c->stash->{dev}->profile->config->device->id,
@ -1916,13 +1916,9 @@ sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPar
}, {
order_by => { -asc => 'version' },
});
if(!defined $q && defined $c->req->params->{q}) {
$q = $c->req->params->{q};
}
if(defined $q) {
$q=~s/\.rom$//i; #yealink v > 80 needs filename at the end of the link.
if(defined $c->req->params->{q}) {
$rs = $rs->search({
version => { 'like' => $q . '%' },
version => { 'like' => $c->req->params->{q} . '%' },
});
}
@ -1940,7 +1936,7 @@ sub dev_field_firmware_next :Chained('dev_field_firmware_version_base') :PathPar
}
sub dev_field_firmware_latest :Chained('dev_field_firmware_version_base') :PathPart('latest') :Args {
my ($self, $c, $q) = @_;
my ($self, $c, $tmp) = @_;
my $rs = $c->stash->{fw_rs}->search({
device_id => $c->stash->{dev}->profile->config->device->id,
@ -1948,13 +1944,9 @@ sub dev_field_firmware_latest :Chained('dev_field_firmware_version_base') :PathP
}, {
order_by => { -desc => 'version' },
});
if(!defined $q && defined $c->req->params->{q}) {
$q = $c->req->params->{q};
}
if(defined $q) {
$q=~s/\.rom$//i; #yealink v > 80 needs filename at the end of the link.
if(defined $c->req->params->{q}) {
$rs = $rs->search({
version => { 'like' => $q . '%' },
version => { 'like' => $c->req->params->{q} . '%' },
});
}

Loading…
Cancel
Save