From 8146358aacab64769e835b2fbaf5496d74803124 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Sat, 26 Jul 2014 23:41:22 -0400 Subject: [PATCH] closes #1905 fixed translator.load, it wasn't passing in language and was trying to load undefined.json --- public/src/ajaxify.js | 14 ++++++++------ public/src/translator.js | 3 +-- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index 10e5a4e6fa..798c59d43c 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -78,7 +78,7 @@ var ajaxify = ajaxify || {}; }, url, RELATIVE_PATH + '/' + url + hash); } - translator.load(tpl_url); + translator.load(config.defaultLang, tpl_url); $('#footer, #content').removeClass('hide').addClass('ajaxifying'); var animationDuration = parseFloat($('#content').css('transition-duration')) || 0.2, @@ -196,10 +196,9 @@ var ajaxify = ajaxify || {}; $(window).trigger('action:ajaxify.loadingData', {url: url}); - if (ajaxify.preloader && ajaxify.preloader[url]) { + if (ajaxify.preloader && ajaxify.preloader[url] && !ajaxify.preloader[url].loading) { callback(null, ajaxify.preloader[url].data); ajaxify.preloader = {}; - return; } @@ -312,13 +311,16 @@ var ajaxify = ajaxify || {}; var url = this.href.replace(rootUrl + '/', ''), currentTime = (new Date()).getTime(); - if (!ajaxify.preloader[url] || currentTime - ajaxify.preloader[url].lastFetched > PRELOADER_RATE_LIMIT) { - ajaxify.preloader[url] = null; + if (!ajaxify.preloader[url] || (!ajaxify.preloader[url].loading && currentTime - ajaxify.preloader[url].lastFetched > PRELOADER_RATE_LIMIT)) { + ajaxify.preloader[url] = { + loading: true + }; ajaxify.loadData(url, function(err, data) { ajaxify.preloader[url] = err ? null : { url: url, data: data, - lastFetched: currentTime + lastFetched: currentTime, + loading: false }; }); } diff --git a/public/src/translator.js b/public/src/translator.js index 541b8a30a3..f81fff1ba8 100644 --- a/public/src/translator.js +++ b/public/src/translator.js @@ -142,12 +142,11 @@ translator.compile = function() { var args = Array.prototype.slice.call(arguments, 0); - + return '[[' + args.join(', ') + ']]'; }; translator.load = function (language, filename, callback) { - if (isLanguageFileLoaded(language, filename)) { if (callback) { callback(languages[language].loaded[filename]);