diff --git a/statusio-selector.js b/statusio-selector.js
index 5dc925f..66fcef8 100644
--- a/statusio-selector.js
+++ b/statusio-selector.js
@@ -17,7 +17,8 @@ document.body.appendChild(zNode);
var auxHTML = '
';
-var debugFlag = true;
+var debugFlag = false;
+var currentMode = "";
//azure status page controls
if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) {
// render initial HTML
@@ -350,13 +351,13 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) {
// profile management functions
function loadDataplanes() {
+ currentMode = "dataplane";
console.log("Loading Azure dataplanes profile");
var dataplaneHTML = '
';
-
zNode.innerHTML = profilesHTML + '
' + dataplaneHTML + '
' + componentsHTML +
auxHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
// array of active buttons
@@ -428,11 +429,12 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) {
document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
function loadControlplanes() {
+ currentMode = "controlplane";
console.log("Loading Azure controlplanes profile");
var controlplaneHTML = '';
zNode.innerHTML = profilesHTML + '
' + controlplaneHTML + '
' + componentsHTML + auxHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
// array of active buttons
@@ -487,12 +489,13 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) {
document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
function loadStages() {
+ currentMode = "stage";
console.log("Loading Azure stages profile");
var stagesHTML = '';
zNode.innerHTML = profilesHTML + '
' + stagesHTML + '
' + componentsHTML + auxHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
// array of active buttons
@@ -530,15 +533,17 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) {
document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
function shrink() {
+ currentMode = "";
zNode.innerHTML = profilesHTML
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
document.getElementById("dataplanesButton").addEventListener("click", dataplanesButtonClickAction, false);
document.getElementById("stagesButton").addEventListener("click", stagesButtonClickAction, false);
document.getElementById("shrinkButton").addEventListener("click", shrinkButtonClickAction, false);
+ document.getElementById("debugButton").addEventListener("click", debugButtonClickAction, false);
};
};
@@ -550,7 +555,7 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
'Dataplanes ';
zNode.innerHTML = profilesHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
document.getElementById("dataplanesButton").addEventListener("click", dataplanesButtonClickAction, false);
@@ -583,6 +588,7 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
var odbcGroup = $("div.form-group").filter(":contains('ODBC/JDBC Service')");
var webappGroup = $("div.form-group").filter(":contains('User Interface')");
var sqlGroup = $("div.form-group").filter(":contains('Databricks SQL')");
+ var ceGroup = $("div.form-group").filter(":contains('Community Edition')");
// write component HTML template
var componentsHTML = ' ' +
@@ -641,50 +647,83 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
toggleRegion("eu-west-1");
toggleButtonColor("euwest1Button");
};
- function canadacentralCPButtonClickAction(zEvent) {
- toggleRegion("canadacentral");
- toggleRegion("canadaeast");
- toggleButtonColor("canadacentralButton");
- };
function ceButtonClickAction(zEvent) {
toggleButtonColor("ceButton");
toggleCe();
};
- function selectCe() {
- ceFlag = true;
- if (debugFlag = true) {
- console.log("DEBUG: ceFlag = " + ceFlag);
- };
+ function stage1ButtonClickAction(zEvent) {
+ toggleRegion("ca-central-1");
+ toggleRegion("eu-central-1");
+ toggleRegion("eu-west-2");
+ toggleCe();
+ toggleButtonColor("stage1Button");
};
- function deselectCe() {
- ceFlag = false;
+ function stage2ButtonClickAction(zEvent) {
+ toggleRegion("us-west-2");
+ toggleRegion("us-west-1");
+ toggleRegion("us-east-1");
+ toggleRegion("us-east-2");
+ toggleButtonColor("stage2Button");
};
- function toggleCe() {
- if (checkCe == false) {
- selectCe();
- } else {
- deselectCe();
- }
+ function stage3amButtonClickAction(zEvent) {
+ toggleRegion("ap-south-1");
+ toggleRegion("ap-southeast-2");
+ toggleRegion("ap-northeast-1");
+ toggleButtonColor("stage3amButton");
};
- function checkCe() {
- var status = ceFlag;
- return status;
+ function stage3pmButtonClickAction(zEvent) {
+ toggleRegion("eu-west-1");
+ toggleButtonColor("stage3pmButton");
+ };
+
+ // component functions
+ function authButtonClickAction(zEvent) {
+ toggleComponent("auth");
+ toggleButtonColor("authButton");
+ };
+ function apiButtonClickAction(zEvent) {
+ toggleComponent("api");
+ toggleButtonColor("apiButton");
+ };
+ function computeButtonClickAction(zEvent) {
+ toggleComponent("compute");
+ toggleButtonColor("computeButton");
+ };
+ function jobsButtonClickAction(zEvent) {
+ toggleComponent("jobs");
+ toggleButtonColor("jobsButton");
+ };
+ function odbcButtonClickAction(zEvent) {
+ toggleComponent("odbc");
+ toggleButtonColor("odbcButton");
+ };
+ function webappButtonClickAction(zEvent) {
+ toggleComponent("webapp");
+ toggleButtonColor("webappButton");
+ };
+ function sqlButtonClickAction(zEvent) {
+ toggleComponent("sql");
+ toggleButtonColor("sqlButton");
};
// profile management functions
function loadDataplanes() {
+ currentMode = "dataplane";
console.log("Loading AWS dataplanes profile");
var dataplaneHTML = '';
zNode.innerHTML = profilesHTML + '
' + dataplaneHTML + '
' + componentsHTML + auxHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
// array of active buttons
- buttonArray = ["CE", "ca-central-1", "eu-central-1", "eu-west-2", "us-west-2", "us-east-1", "us-east-2", "ap-south-1",
- "ap-southeast-2", "ap-northeast-1", "eu-west-1"];
- //reset();
+ buttonArray = ["ce", "cacentral1", "eucentral1", "euwest2", "uswest2", "uswest1", "useast1", "useast2", "apsouth1",
+ "apsoutheast2", "apnortheast1", "euwest1"];
+
+ // clear everything on profile load
+ reset();
+
// regional listeners
document.getElementById("cacentral1Button").addEventListener("click", cacentral1ButtonClickAction, false);
document.getElementById("eucentral1Button").addEventListener("click", eucentral1ButtonClickAction, false);
@@ -721,20 +760,20 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
function loadControlplanes() {
+ currentMode = "controlplane";
console.log("Loading AWS controlplanes profile");
- var controlplaneHTML = '';
+ var controlplaneHTML = '';
zNode.innerHTML = profilesHTML + '
' + controlplaneHTML + '
' + componentsHTML + auxHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
// array of active buttons
- buttonArray = ["canadacentral", "centralindia", "switzerlandnorth", "norwayeast", "westus", "westeurope","ukwest", "southafricanorth",
- "uaenorth", "australiaeast", "japaneast", "koreacentral", "southeastasia", "brazilsouth", "eastus2", "francecentral",
- "chinanorth2", "chinaeast2", "usgovvirginia", "usgovarizona"];
+ buttonArray = ["ce", "cacentral1", "eucentral1", "euwest2", "uswest2", "useast2", "apsouth1",
+ "apsoutheast2", "apnortheast1", "euwest1"];
// clear everything on profile load
- //reset();
+ reset();
// regional listeners
// document.getElementById("canadacentralButton").addEventListener("click", canadacentralCPButtonClickAction, false);
@@ -742,12 +781,12 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
document.getElementById("eucentral1Button").addEventListener("click", eucentral1ButtonClickAction, false);
document.getElementById("euwest2Button").addEventListener("click", euwest2ButtonClickAction, false);
document.getElementById("uswest2Button").addEventListener("click", uswest2CPButtonClickAction, false);
- document.getElementById("useast1Button").addEventListener("click", useast1ButtonClickAction, false);
document.getElementById("useast2Button").addEventListener("click", useast2ButtonClickAction, false);
document.getElementById("apsouth1Button").addEventListener("click", apsouth1ButtonClickAction, false);
document.getElementById("apsoutheast2Button").addEventListener("click", apsoutheast2ButtonClickAction, false);
document.getElementById("apnortheast1Button").addEventListener("click", apnortheast1ButtonClickAction, false);
document.getElementById("euwest1Button").addEventListener("click", euwest1ButtonClickAction, false);
+ document.getElementById("ceButton").addEventListener("click", ceButtonClickAction, false);
// profile listeners
document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
@@ -771,20 +810,26 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
function loadStages() {
+ currentMode = "stage";
console.log("Loading AWS stages profile");
var stagesHTML = '';
zNode.innerHTML = profilesHTML + '
' + stagesHTML + '
' + componentsHTML + auxHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
}
// array of active buttons
- buttonArray = ["stage1", "stage1point5", "stage2", "stage3am", "stage3pm", "stagegovcloud", "stagemooncake"];
- // reset();
+ buttonArray = ["stage1", "stage2", "stage3am", "stage3pm"];
+
+ // clear everything on profile load
+ reset();
// regional listeners
- //document.getElementById("stage1Button").addEventListener("click", stage1ButtonClickAction, false);
+ document.getElementById("stage1Button").addEventListener("click", stage1ButtonClickAction, false);
+ document.getElementById("stage2Button").addEventListener("click", stage2ButtonClickAction, false);
+ document.getElementById("stage3amButton").addEventListener("click", stage3amButtonClickAction, false);
+ document.getElementById("stage3pmButton").addEventListener("click", stage3pmButtonClickAction, false);
// profile listeners
document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
@@ -807,9 +852,10 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
function shrink() {
+ currentMode = "";
zNode.innerHTML = profilesHTML
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
};
document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
@@ -824,11 +870,135 @@ if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) {
if (window.location.href.indexOf("60087ab5608daf0535dc8e23") > -1) {
// render initial HTML
var profilesHTML = ' ' +
- ' ';
+ '' +
+ ' ';
zNode.innerHTML = profilesHTML;
if (debugFlag == true) {
- toggleButtonColor(debugButton);
+ toggleButtonColor("debugButton");
+ };
+
+ document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
+ document.getElementById("stagesButton").addEventListener("click", stagesButtonClickAction, false);
+ document.getElementById("shrinkButton").addEventListener("click", shrinkButtonClickAction, false);
+ document.getElementById("debugButton").addEventListener("click", debugButtonClickAction, false);
+
+ // initialize azure component and region variables
+ var componentArray = ["api", "auth", "compute", "jobs", "odbc", "webapp"];
+ var regionArray = ["us-west1", "us-central1", "europe-west2", "us-west4"];
+ var buttonArray = [];
+
+ var selectedComponents = new Map();
+ var selectedRegions = new Map();
+ for (i = 0; i < componentArray.length; i++) {
+ selectedComponents.set(componentArray[i], false);
+ };
+ for (i = 0; i < regionArray.length; i++) {
+ selectedRegions.set(regionArray[i], false);
+ };
+
+ // init component div groups
+ var apiGroup = $("div.form-group").filter(":contains('API Service')");
+ var authGroup = $("div.form-group").filter(":contains('Authentication')");
+ var computeGroup = $("div.form-group").filter(":contains('Compute Service')");
+ var jobsGroup = $("div.form-group").filter(":contains('Jobs Service')");
+ var odbcGroup = $("div.form-group").filter(":contains('ODBC/JDBC Service')");
+ var webappGroup = $("div.form-group").filter(":contains('User Interface')");
+
+ // write component HTML template
+ var componentsHTML = ' ' +
+ '' +
+ '' +
+ '';
+
+ // regional functions
+ function uswest1ButtonClickAction(zEvent) {
+ toggleRegion("us-west1");
+ toggleButtonColor("uswest1Button");
+ };
+ function uscentral1ButtonClickAction(zEvent) {
+ toggleRegion("us-central1");
+ toggleButtonColor("uscentral1Button");
+ };
+ function europewest2ButtonClickAction(zEvent) {
+ toggleRegion("europe-west2");
+ toggleButtonColor("europewest2Button");
+ };
+ function uswest4ButtonClickAction(zEvent) {
+ toggleRegion("us-west4");
+ toggleButtonColor("uswest4Button");
+ };
+ function stage1ButtonClickAction(zEvent) {
+ toggleRegion("uswest1");
+ toggleRegion("uscentral1");
+ toggleRegion("europewest2");
+ toggleRegion("uswest4");
+ toggleButtonColor("stage1Button");
+ };
+ // component functions
+ function authButtonClickAction(zEvent) {
+ toggleComponent("auth");
+ toggleButtonColor("authButton");
+ };
+ function apiButtonClickAction(zEvent) {
+ toggleComponent("api");
+ toggleButtonColor("apiButton");
+ };
+ function computeButtonClickAction(zEvent) {
+ toggleComponent("compute");
+ toggleButtonColor("computeButton");
+ };
+ function jobsButtonClickAction(zEvent) {
+ toggleComponent("jobs");
+ toggleButtonColor("jobsButton");
+ };
+ function odbcButtonClickAction(zEvent) {
+ toggleComponent("odbc");
+ toggleButtonColor("odbcButton");
+ };
+ function webappButtonClickAction(zEvent) {
+ toggleComponent("webapp");
+ toggleButtonColor("webappButton");
+ };
+
+ function loadControlplanes() {
+ currentMode = "controlplane";
+ console.log("Loading GCP controlplanes profile");
+ var controlplaneHTML = '';
+ zNode.innerHTML = profilesHTML + '
' + controlplaneHTML + '
' + componentsHTML + auxHTML;
+ if (debugFlag == true) {
+ toggleButtonColor("debugButton");
+ };
+
+ // array of active buttons
+ buttonArray = ["uswest1", "uscentral1", "europewest2", "uswest4"];
+
+ // clear everything on profile load
+ reset();
+
+ // regional listeners
+ document.getElementById("uswest1Button").addEventListener("click", uswest1ButtonClickAction, false);
+ document.getElementById("uscentral1Button").addEventListener("click", uscentral1ButtonClickAction, false);
+ document.getElementById("europewest2Button").addEventListener("click", europewest2ButtonClickAction, false);
+ document.getElementById("uswest4Button").addEventListener("click", uswest4ButtonClickAction, false);
+
+ // profile listeners
+ document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false);
+ document.getElementById("stagesButton").addEventListener("click", stagesButtonClickAction, false);
+ document.getElementById("shrinkButton").addEventListener("click", shrinkButtonClickAction, false);
+ document.getElementById("debugButton").addEventListener("click", debugButtonClickAction, false);
+
+ // component listeners
+ document.getElementById("apiButton").addEventListener("click", apiButtonClickAction, false);
+ document.getElementById("authButton").addEventListener("click", authButtonClickAction, false);
+ document.getElementById("computeButton").addEventListener("click", computeButtonClickAction, false);
+ document.getElementById("jobsButton").addEventListener("click", jobsButtonClickAction, false);
+ document.getElementById("odbcButton").addEventListener("click", odbcButtonClickAction, false);
+ document.getElementById("webappButton").addEventListener("click", webappButtonClickAction, false);
+ document.getElementById("allComponentsButton").addEventListener("click", allComponentsButtonClickAction, false);
+
+ // aux listeners
+ document.getElementById("resetButton").addEventListener("click", resetButtonClickAction, false);
+ document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false);
};
};
@@ -906,13 +1076,13 @@ function checkRegion(region) {
};
function selectComponent(component) {
selectedComponents.set(component, true);
- if (debugFlag = true) {
+ if (debugFlag == true) {
console.log(selectedComponents);
}
};
function deselectComponent(component) {
selectedComponents.set(component, false);
- if (debugFlag = true) {
+ if (debugFlag == true) {
console.log(selectedComponents);
};
};
@@ -925,13 +1095,13 @@ function toggleRegion(region) {
};
function selectRegion(region) {
selectedRegions.set(region, true);
- if (debugFlag = true) {
+ if (debugFlag == true) {
console.log(selectedRegions);
};
};
function deselectRegion(region) {
selectedRegions.set(region, false);
- if (debugFlag = true) {
+ if (debugFlag == true) {
console.log(selectedRegions);
};
};
@@ -965,6 +1135,15 @@ function apply() {
}
}
}
+ if (typeof ceFlag != 'undefined') {
+ var checkboxStr = `$("div.form-group").filter(":contains('Community Edition')").children().slice(1).children().children().children().children().children()`;
+ var checkbox = eval(checkboxStr);
+ if (checkCe() == true) {
+ selectCheckbox(checkbox);
+ } else {
+ deselectCheckbox(checkbox);
+ }
+ }
};
function reset() {
for (i = 0; i < componentArray.length; i++) {
@@ -982,6 +1161,12 @@ function reset() {
var region = regionArray[i];
deselectRegion(region);
};
+ if (typeof ceFlag != 'undefined') {
+ deselectCe();
+ if (currentMode != 'stage') {
+ clearButtonColor("ceButton");
+ };
+ }
apply();
};
function checkDebug() {
@@ -989,7 +1174,7 @@ function checkDebug() {
return status;
};
function toggleDebug() {
- if (checkDebug == false) {
+ if (checkDebug() == false) {
enableDebug();
} else {
disableDebug();
@@ -1003,3 +1188,23 @@ function disableDebug() {
debugFlag = false;
console.log("DEBUG logging disabled");
};
+function selectCe() {
+ ceFlag = true;
+ if (debugFlag == true) {
+ console.log("DEBUG: ceFlag = " + ceFlag);
+ };
+};
+function deselectCe() {
+ ceFlag = false;
+};
+function toggleCe() {
+ if (checkCe() == false) {
+ selectCe();
+ } else {
+ deselectCe();
+ }
+};
+function checkCe() {
+ var status = ceFlag;
+ return status;
+};