blob: 39d9f7c02bc300213b6db494ec806689de793fcb [file] [log] [blame]
/*==================================================
* Planning Extension
*
* This file will load all the Javascript files
* necessary to make the extension work.
*
*==================================================
*/
(function() {
var javascriptFiles = [
"planning.js",
"units.js",
"ether-painters.js",
"labellers.js"
];
var cssFiles = [
];
var localizedJavascriptFiles = [
"labellers.js"
];
var localizedCssFiles = [
];
// ISO-639 language codes, ISO-3166 country codes (2 characters)
var supportedLocales = [
"en" // English
];
try {
var includeJavascriptFile = function(filename) {
document.write("<script src='" + Timeline.urlPrefix + "ext/planning/scripts/" + filename + "' type='text/javascript'></script>");
};
var includeCssFile = function(filename) {
document.write("<link rel='stylesheet' href='" + Timeline.urlPrefix + "ext/planning/styles/" + filename + "' type='text/css'/>");
}
/*
* Include non-localized files
*/
for (var i = 0; i < javascriptFiles.length; i++) {
includeJavascriptFile(javascriptFiles[i]);
}
for (var i = 0; i < cssFiles.length; i++) {
includeCssFile(cssFiles[i]);
}
/*
* Include localized files
*/
var loadLocale = [];
var tryExactLocale = function(locale) {
for (var l = 0; l < supportedLocales.length; l++) {
if (locale == supportedLocales[l]) {
loadLocale[locale] = true;
return true;
}
}
return false;
}
var tryLocale = function(locale) {
if (tryExactLocale(locale)) {
return locale;
}
var dash = locale.indexOf("-");
if (dash > 0 && tryExactLocale(locale.substr(0, dash))) {
return locale.substr(0, dash);
}
return null;
}
tryLocale(Timeline.Platform.serverLocale);
tryLocale(Timeline.Platform.clientLocale);
for (var l = 0; l < supportedLocales.length; l++) {
var locale = supportedLocales[l];
if (loadLocale[locale]) {
for (var i = 0; i < localizedJavascriptFiles.length; i++) {
includeJavascriptFile("l10n/" + locale + "/" + localizedJavascriptFiles[i]);
}
for (var i = 0; i < localizedCssFiles.length; i++) {
includeCssFile("l10n/" + locale + "/" + localizedCssFiles[i]);
}
}
}
} catch (e) {
alert(e);
}
})();