From 73746bb4897425f6271070650b8ad4d247d0a262 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 2 Dec 2020 14:14:56 -0500 Subject: [PATCH] refactor: remove old hack --- public/src/ajaxify.js | 47 +++++++++++++++++-------------------------- 1 file changed, 19 insertions(+), 28 deletions(-) diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index 07f44c19b8..0c9e018d9b 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -7,19 +7,9 @@ ajaxify = window.ajaxify || {}; var apiXHR = null; var ajaxifyTimer; - var translator; - var Benchpress; var retry = true; var previousBodyClass = ''; - // Dumb hack to fool ajaxify into thinking translator is still a global - // When ajaxify is migrated to a require.js module, then this can be merged into the "define" call - require(['translator', 'benchpress'], function (_translator, _Benchpress) { - translator = _translator; - translator.translate('[[error:no-connection]]'); - Benchpress = _Benchpress; - }); - ajaxify.count = 0; ajaxify.currentPage = null; @@ -170,26 +160,27 @@ ajaxify = window.ajaxify || {}; function renderTemplate(url, tpl_url, data, callback) { $(window).trigger('action:ajaxify.loadingTemplates', {}); + require(['translator', 'benchpress'], function (translator, Benchpress) { + Benchpress.render(tpl_url, data) + .then(rendered => translator.translate(rendered)) + .then(function (translated) { + translated = translator.unescape(translated); + $('body').removeClass(previousBodyClass).addClass(data.bodyClass); + $('#content').html(translated); + + ajaxify.end(url, tpl_url); + + if (typeof callback === 'function') { + callback(); + } - Benchpress.render(tpl_url, data) - .then(rendered => translator.translate(rendered)) - .then(function (translated) { - translated = translator.unescape(translated); - $('body').removeClass(previousBodyClass).addClass(data.bodyClass); - $('#content').html(translated); - - ajaxify.end(url, tpl_url); - - if (typeof callback === 'function') { - callback(); - } - - $('#content, #footer').removeClass('ajaxifying'); + $('#content, #footer').removeClass('ajaxifying'); - // Only executed on ajaxify. Otherwise these'd be in ajaxify.end() - updateTitle(data.title); - updateTags(); - }); + // Only executed on ajaxify. Otherwise these'd be in ajaxify.end() + updateTitle(data.title); + updateTags(); + }); + }); } function updateTitle(title) {