Skip to content

Commit

Permalink
feat: +assetBaseUrl, -l10BaseUrl, -requireBaseUrl
Browse files Browse the repository at this point in the history
Additional base URLs were necessary for benchpress and translator,
and in order to not clutter the API response with needless one-
time use base URLs, I decided to use a single base that is used
by all of the services, assetBaseUrl.
  • Loading branch information
julianlam committed Aug 10, 2020
1 parent 75ef4bb commit 9adaccd
Show file tree
Hide file tree
Showing 4 changed files with 6 additions and 7 deletions.
2 changes: 1 addition & 1 deletion public/src/ajaxify.js
Expand Up @@ -328,7 +328,7 @@ $(document).ready(function () {
};

ajaxify.loadTemplate = function (template, callback) {
require([config.relative_path + '/assets/templates/' + template + '.js'], callback, function (err) {
require([config.assetBaseUrl + '/templates/' + template + '.js'], callback, function (err) {
console.error('Unable to load template: ' + template);
throw err;
});
Expand Down
6 changes: 3 additions & 3 deletions public/src/modules/translator.js
Expand Up @@ -2,7 +2,7 @@

(function (factory) {
function loadClient(language, namespace) {
return Promise.resolve(jQuery.getJSON(config.l10nBaseUrl + '/' + language + '/' + namespace + '.json?' + config['cache-buster']));
return Promise.resolve(jQuery.getJSON([config.assetBaseUrl, 'language', language, namespace].join('/') + '.json?' + config['cache-buster']));
}
var warn = function () { console.warn.apply(console, arguments); };
if (typeof define === 'function' && define.amd) {
Expand Down Expand Up @@ -605,7 +605,7 @@
}

var originalSettings = assign({}, jQuery.timeago.settings.strings);
jQuery.getScript(config.relative_path + '/assets/vendor/jquery/timeago/locales/jquery.timeago.' + languageCode + '-short.js').done(function () {
jQuery.getScript(config.assetBaseUrl + '/vendor/jquery/timeago/locales/jquery.timeago.' + languageCode + '-short.js').done(function () {
adaptor.timeagoShort = assign({}, jQuery.timeago.settings.strings);
jQuery.timeago.settings.strings = assign({}, originalSettings);
toggle();
Expand All @@ -620,7 +620,7 @@
delete adaptor.timeagoShort;

var languageCode = utils.userLangToTimeagoCode(config.userLang);
jQuery.getScript(config.relative_path + '/assets/vendor/jquery/timeago/locales/jquery.timeago.' + languageCode + '.js').done(callback);
jQuery.getScript(config.assetBaseUrl + '/vendor/jquery/timeago/locales/jquery.timeago.' + languageCode + '.js').done(callback);
},

prepareDOM: function prepareDOM() {
Expand Down
2 changes: 1 addition & 1 deletion public/src/require-config.js
@@ -1,7 +1,7 @@
'use strict';

require.config({
baseUrl: config.requireBaseUrl,
baseUrl: config.assetBaseUrl + '/src/modules',
waitSeconds: 0,
urlArgs: config['cache-buster'],
paths: {
Expand Down
3 changes: 1 addition & 2 deletions src/controllers/api.js
Expand Up @@ -19,8 +19,7 @@ apiController.loadConfig = async function (req) {
let config = {
relative_path: nconf.get('relative_path'),
upload_url: nconf.get('upload_url'),
requireBaseUrl: `${nconf.get('relative_path')}/assets/src/modules`,
l10nBaseUrl: `${nconf.get('relative_path')}/assets/language`,
assetBaseUrl: `${nconf.get('relative_path')}/assets`,
siteTitle: validator.escape(String(meta.config.title || meta.config.browserTitle || 'NodeBB')),
browserTitle: validator.escape(String(meta.config.browserTitle || meta.config.title || 'NodeBB')),
titleLayout: (meta.config.titleLayout || '{pageTitle} | {browserTitle}').replace(/{/g, '{').replace(/}/g, '}'),
Expand Down

0 comments on commit 9adaccd

Please sign in to comment.