aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xperllib/FixMyStreet/App/Controller/JS.pm30
-rw-r--r--templates/web/default/common_header_tags.html9
-rw-r--r--templates/web/default/js/validation_strings.html (renamed from templates/web/default/js_validation_msgs.html)2
-rw-r--r--templates/web/fixmystreet/common_header_tags.html38
-rw-r--r--templates/web/fixmystreet/header.html4
5 files changed, 38 insertions, 45 deletions
diff --git a/perllib/FixMyStreet/App/Controller/JS.pm b/perllib/FixMyStreet/App/Controller/JS.pm
new file mode 100755
index 000000000..ae2f06605
--- /dev/null
+++ b/perllib/FixMyStreet/App/Controller/JS.pm
@@ -0,0 +1,30 @@
+package FixMyStreet::App::Controller::JS;
+use Moose;
+use namespace::autoclean;
+
+BEGIN { extends 'Catalyst::Controller'; }
+
+=head1 NAME
+
+FixMyStreet::App::Controller::JS - Catalyst Controller
+
+=head1 DESCRIPTION
+
+JS Catalyst Controller. To return a language-dependent list
+of validation strings.
+
+=head1 METHODS
+
+=cut
+
+sub validation_strings : LocalRegex('^validation_strings\.(.*?)\.js$') : Args(0) {
+ my ( $self, $c ) = @_;
+ my $lang = $c->req->captures->[0];
+ $c->cobrand->set_lang_and_domain( $lang, 1 );
+ $c->res->content_type( 'application/javascript' );
+}
+
+__PACKAGE__->meta->make_immutable;
+
+1;
+
diff --git a/templates/web/default/common_header_tags.html b/templates/web/default/common_header_tags.html
index 95b59d9dd..e74ae7b70 100644
--- a/templates/web/default/common_header_tags.html
+++ b/templates/web/default/common_header_tags.html
@@ -1,12 +1,13 @@
-[% INCLUDE 'js_validation_msgs.html' %]
-
+[% USE date %][% USE Math %]
<meta http-equiv="content-type" content="text/html; charset=utf-8">
-<script type="text/javascript" src="/jslib/jquery-1.7.0.min.js"></script>
+<script type="text/javascript" src="/js/validation_strings.[% lang_code %].js?[% Math.int( date.now / 3600 ) %]"></script>
+
+<script type="text/javascript" src="/jslib/jquery-1.7.0.min.js"></script>
<script src="[% version('/js/jquery.validate.min.js') %]" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" src="[% version('/js/geo.min.js') %]"></script>
-<script type="text/javascript" src="[% version('/js/fixmystreet.js') %]"></script>
+<script type="text/javascript" src="[% version(js_override || '/js/fixmystreet.js') %]"></script>
[% map_js %]
diff --git a/templates/web/default/js_validation_msgs.html b/templates/web/default/js/validation_strings.html
index f89ab4bcc..70a0ed41c 100644
--- a/templates/web/default/js_validation_msgs.html
+++ b/templates/web/default/js/validation_strings.html
@@ -1,4 +1,3 @@
-<script type="text/javascript">
validation_strings = {
update: '[% loc('Please enter a message') %]',
title: '[% loc('Please enter a subject') %]',
@@ -17,4 +16,3 @@
email: '[% loc('Please enter a valid email') %]'
}
};
-</script>
diff --git a/templates/web/fixmystreet/common_header_tags.html b/templates/web/fixmystreet/common_header_tags.html
deleted file mode 100644
index ea952ccdc..000000000
--- a/templates/web/fixmystreet/common_header_tags.html
+++ /dev/null
@@ -1,38 +0,0 @@
-[% INCLUDE 'js_validation_msgs.html' %]
-
-<meta http-equiv="content-type" content="text/html; charset=utf-8">
-<script type="text/javascript" src="/jslib/jquery-1.7.0.min.js"></script>
-
-<script src="[% version('/js/jquery.validate.min.js') %]" type="text/javascript" charset="utf-8"></script>
-
-<script src="[% version('/js/modernizr.custom.76759.js') %]" type="text/javascript" charset="utf-8"></script>
-
-<script src="[% version('/js/jquery.placeholder.min.js') %]" type="text/javascript" charset="utf-8"></script>
-
-<script type="text/javascript" src="[% version('/js/geo.min.js') %]"></script>
-<script type="text/javascript" src="[% version('/cobrands/fixmystreet/fixmystreet.js') %]"></script>
-
-<script src="[% version('/js/fancybox/jquery.fancybox-1.3.4.pack.js') %]" type="text/javascript" charset="utf-8"></script>
-
-[% map_js %]
-
-[% IF category_extras_json && category_extras_json != '{}' %]
-<script type="text/javascript">
- category_extras = [% category_extras_json %];
-</script>
-[% END %]
-
-[% IF robots %]
- <meta name="robots" content="[% robots %]">
-[% ELSIF c.config.STAGING_SITE %]
- <meta name="robots" content="noindex,nofollow">
-[% END %]
-
-[% IF rss %]
- <link rel="alternate" type="application/rss+xml" title="[% rss.0 %]" href="[% rss.1 %]">
-[% END %]
-
-<title>
- [% "$title :: " | html IF title %]
- [% c.cobrand.site_title %]
-</title>
diff --git a/templates/web/fixmystreet/header.html b/templates/web/fixmystreet/header.html
index dd1a90c5f..6be57891a 100644
--- a/templates/web/fixmystreet/header.html
+++ b/templates/web/fixmystreet/header.html
@@ -18,7 +18,9 @@
<link rel="stylesheet" href="[% version('/cobrands/fixmystreet/layout.css') %]">
<![endif]-->
- [% INCLUDE 'common_header_tags.html' %]
+ <script src="[% version('/js/modernizr.custom.76759.js') %]" charset="utf-8"></script>
+ [% INCLUDE 'common_header_tags.html', js_override = '/cobrands/fixmystreet/fixmystreet.js' %]
+ <script src="[% version('/js/fancybox/jquery.fancybox-1.3.4.pack.js') %]" charset="utf-8"></script>
[% IF c.req.uri.host == 'osm.fixmystreet.com' %]
<link rel="canonical" href="http://www.fixmystreet.com[% c.req.uri.path_query %]">