Merge pull request #135 from FluffyJenkins/feature/betaDefaultScripts

Added basic beta default scripts feature
This commit is contained in:
kasenvr 2020-02-01 13:29:11 -05:00 committed by GitHub
commit bbcea639ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -39,7 +39,7 @@ var DEFAULT_SCRIPTS_COMBINED = [
var DEFAULT_SCRIPTS_SEPARATE = [
"system/controllers/controllerScripts.js",
"communityModules/notificationCore/notificationCore.js",
"communityModules/chat/FloofChat.js"
{"stable": "communityModules/chat/FloofChat.js", "beta": "https://content.fluffy.ws/scripts/chat/FloofChat.js"}
//"system/chat.js"
];
@ -53,7 +53,9 @@ var MENU_CATEGORY = "Developer > Scripting";
var MENU_ITEM = "Debug defaultScripts.js";
var SETTINGS_KEY = '_debugDefaultScriptsIsChecked';
var previousSetting = Settings.getValue(SETTINGS_KEY);
var SETTINGS_KEY_BETA = '_betaDefaultScriptsIsChecked';
var previousSetting = Settings.getValue(SETTINGS_KEY, false);
var previousSettingBeta = Settings.getValue(SETTINGS_KEY_BETA, false);
if (previousSetting === '' || previousSetting === false || previousSetting === 'false') {
previousSetting = false;
@ -77,17 +79,30 @@ function loadSeparateDefaults() {
for (var i in DEFAULT_SCRIPTS_SEPARATE) {
var shouldLoadCurrentDefaultScript = true;
var scriptItem = DEFAULT_SCRIPTS_SEPARATE[i];
if (typeof scriptItem === "object") {
if (previousSettingBeta) {
console.log("Loading Beta item " + scriptItem.beta);
scriptItem = scriptItem.beta;
} else {
scriptItem = scriptItem.stable;
}
}
for (var j = 0; j < currentlyRunningScripts.length; j++) {
var currentRunningScriptObject = currentlyRunningScripts[j];
var currentDefaultScriptName = DEFAULT_SCRIPTS_SEPARATE[i].substr((DEFAULT_SCRIPTS_SEPARATE[i].lastIndexOf("/") + 1), DEFAULT_SCRIPTS_SEPARATE[i].length);
var currentDefaultScriptName = scriptItem.substr((scriptItem.lastIndexOf("/") + 1), scriptItem.length);
if (currentDefaultScriptName === currentRunningScriptObject.name) {
shouldLoadCurrentDefaultScript = false;
if (currentRunningScriptObject.url !== scriptItem) {
ScriptDiscoveryService.stopScript(currentRunningScriptObject.url);
} else {
shouldLoadCurrentDefaultScript = false;
}
}
}
if (shouldLoadCurrentDefaultScript) {
Script.load(DEFAULT_SCRIPTS_SEPARATE[i]);
Script.load(scriptItem);
}
}
}
@ -161,7 +176,7 @@ function removeMenuItem() {
}
}
Script.scriptEnding.connect(function() {
Script.scriptEnding.connect(function () {
removeMenuItem();
});