summaryrefslogtreecommitdiffstats
path: root/Bugzilla/Quantum/Static.pm
blob: 6ac803e96c3729399bf088127a9ab2be60257ab8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This Source Code Form is "Incompatible With Secondary Licenses", as
# defined by the Mozilla Public License, v. 2.0.

package Bugzilla::Quantum::Static;
use Mojo::Base 'Mojolicious::Static';
use Bugzilla::Constants qw(bz_locations);

my $LEGACY_RE = qr{
    ^ (?:static/v[0-9]+\.[0-9]+/) ?
    ( (?:extensions/[^/]+/web|(?:image|skin|j|graph)s)/.+)
    $
}xs;

sub file {
  my ($self, $rel) = @_;

  if (my ($legacy_rel) = $rel =~ $LEGACY_RE) {
    local $self->{paths} = [bz_locations->{cgi_path}];
    return $self->SUPER::file($legacy_rel);
  }
  else {
    return $self->SUPER::file($rel);
  }
}

1;