Only fetch client side translations for the current locale

This commit is contained in:
Tom Hughes 2018-08-16 11:49:30 +01:00
parent e9abea3dd7
commit ed82d0a756
8 changed files with 13 additions and 25 deletions

1
.gitignore vendored
View file

@ -1,5 +1,6 @@
log
config/piwik.yml
app/assets/javascripts/i18n
public/assets
public/attachments
public/export

View file

@ -24,6 +24,7 @@ before_script:
- psql -U postgres -c "CREATE FUNCTION xid_to_int4(xid) RETURNS int4 AS '/tmp/libpgosm', 'xid_to_int4' LANGUAGE C STRICT" openstreetmap
- cp config/travis.database.yml config/database.yml
- bundle exec rake db:migrate
- bundle exec rake i18n:js:export
script:
- bundle exec rubocop -f fuubar
- bundle exec rake jshint

View file

@ -12,7 +12,7 @@
//= require leaflet.map
//= require leaflet.zoom
//= require leaflet.locationfilter
//= require i18n/translations
//= require i18n
//= require oauth
//= require piwik
//= require richtext

View file

@ -3,6 +3,7 @@
<meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0"/>
<!--[if lt IE 9]><%= javascript_include_tag "html5shiv" %><![endif]-->
<%= javascript_include_tag "application" %>
<%= javascript_include_tag "i18n/" + I18n.locale.to_s %>
<%= stylesheet_link_tag "screen-#{dir}", :media => "screen" %>
<%= stylesheet_link_tag "print-#{dir}", :media => "print" %>
<%= stylesheet_link_tag "leaflet-all", :media => "screen, print" %>

View file

@ -52,6 +52,9 @@ Rails.application.configure do
# Suppress logger output for asset requests.
config.assets.quiet = true
# Export translations automatically
config.middleware.use I18n::JS::Middleware
# Raises error for missing translations
# config.action_view.raise_on_missing_translations = true

View file

@ -1,27 +1,8 @@
# Split context in several files.
# By default only one file with all translations is exported and
# no configuration is required. Your settings for asset pipeline
# are automatically recognized.
#
# If you want to split translations into several files or specify
# locale contexts that will be exported, just use this file to do
# so.
#
# If you're going to use the Rails 3.1 asset pipeline, change
# the following configuration to something like this:
#
# translations:
# - file: "app/assets/javascripts/i18n/translations.js"
#
# If you're running an old version, you can use something
# like this:
#
# translations:
# - file: "public/javascripts/translations.js"
# only: "*"
#
export_i18n_js: false
translations:
- file: "app/assets/javascripts/i18n/translations.js"
- file: "app/assets/javascripts/i18n/%{locale}.js"
pretty_print: true
only:
- "*.date"
- "*.time"

View file

@ -13,7 +13,7 @@ Rails.application.config.assets.paths << Rails.root.join("config")
# application.js, application.css, and all non-JS/CSS in the app/assets
# folder are already added.
Rails.application.config.assets.precompile += %w[index.js browse.js welcome.js fixthemap.js]
Rails.application.config.assets.precompile += %w[user.js login.js diary_entry.js messages.js edit/*.js]
Rails.application.config.assets.precompile += %w[user.js login.js diary_entry.js messages.js edit/*.js i18n/*.js]
Rails.application.config.assets.precompile += %w[screen-ltr.css print-ltr.css]
Rails.application.config.assets.precompile += %w[screen-rtl.css print-rtl.css]
Rails.application.config.assets.precompile += %w[leaflet-all.css leaflet.ie.css]

View file

@ -1,6 +1,7 @@
files:
- "**/*.js"
exclude_paths:
- "app/assets/javascripts/i18n"
- "vendor/assets/javascripts"
options:
eqeqeq: true