diff --git a/statusio-selector.js b/statusio-selector.js index 75c759e..4bdd6f2 100644 --- a/statusio-selector.js +++ b/statusio-selector.js @@ -29,14 +29,12 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { // initialize azure component and region variables var componentArray = ["api", "auth", "compute", "jobs", "odbc", "webapp", "sql"]; - var regionArray = ["canadacentral", "canadaeast", "centralindia", "southindia", "westindia", - "switzerlandnorth", "norwayeast", "westus2", "westus", "southcentralus", - "westeurope", "northeurope", "ukwest", "uksouth", "southafricanorth", - "uaenorth", "australiaeast", "australiacentral", "australiacentral2", - "australiasoutheast", "japaneast", "japanwest", "koreacentral", - "southeastasia", "eastasia", "brazilsouth", "eastus2", "eastus", - "centralus", "northcentralus", "francecentral", "chinanorth2", "chinaeast2", + var regionArray = ["canadacentral", "canadaeast", "centralindia", "southindia", "westindia", "switzerlandnorth", "norwayeast", "westus2", + "westus", "southcentralus", "westeurope", "northeurope", "ukwest", "uksouth", "southafricanorth", "uaenorth", "australiaeast", + "australiacentral", "australiacentral2", "australiasoutheast", "japaneast", "japanwest", "koreacentral", "southeastasia", + "eastasia", "brazilsouth", "eastus2", "eastus","centralus", "northcentralus", "francecentral", "chinanorth2", "chinaeast2", "usgovvirginia", "usgovarizona"]; + var buttonArray = []; // create tracking maps var selectedComponents = new Map(); @@ -199,6 +197,11 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { toggleRegion("southeastasia"); toggleButtonColor("southeastasiaButton"); }; + function southeastasiaCPButtonClickAction(zEvent) { + toggleRegion("southeastasia"); + toggleRegion("eastasia"); + toggleButtonColor("southeastasiaButton"); + } function eastasiaButtonClickAction(zEvent) { toggleRegion("eastasia"); toggleButtonColor("eastasiaButton"); @@ -211,6 +214,13 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { toggleRegion("eastus2"); toggleButtonColor("eastus2Button"); }; + function eastus2CPButtonClickAction(zEvent) { + toggleRegion("eastus2"); + toggleRegion("eastus"); + toggleRegion("centralus"); + toggleRegion("northcentralus"); + toggleButtonColor("eastus2Button"); + } function eastusButtonClickAction(zEvent) { toggleRegion("eastus"); toggleButtonColor("eastusButton"); @@ -243,6 +253,62 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { toggleRegion("usgovarizona"); toggleButtonColor("usgovarizonaButton"); }; + function stage1ButtonClickAction(zEvent) { + toggleRegion("canadacentral"); + toggleRegion("canadaeast"); + toggleRegion("centralindia"); + toggleRegion("southindia"); + toggleRegion("westindia"); + toggleRegion("switzerlandnorth"); + toggleRegion("norwayeast"); + toggleButtonColor("stage1Button"); + }; + function stage1point5ButtonClickAction(zEvent) { + toggleRegion("westus"); + toggleRegion("westus2"); + toggleRegion("southcentralus"); + toggleButtonColor("stage1point5Button"); + }; + function stage2ButtonClickAction(zEvent) { + toggleRegion("westeurope"); + toggleRegion("northeurope"); + toggleRegion("ukwest"); + toggleRegion("uksouth"); + toggleRegion("southafricanorth"); + toggleRegion("uaenorth"); + toggleButtonColor("stage2Button"); + }; + function stage3amButtonClickAction(zEvent) { + toggleRegion("australiaeast"); + toggleRegion("australiacentral"); + toggleRegion("australiacentral2"); + toggleRegion("australiasoutheast"); + toggleRegion("japaneast"); + toggleRegion("japanwest"); + toggleRegion("koreacentral"); + toggleRegion("southeastasia"); + toggleRegion("eastasia"); + toggleButtonColor("stage3amButton"); + }; + function stage3pmButtonClickAction(zEvent) { + toggleRegion("brazilsouth"); + toggleRegion("eastus2"); + toggleRegion("eastus"); + toggleRegion("centralus"); + toggleRegion("northcentralus"); + toggleRegion("francecentral"); + toggleButtonColor("stage3pmButton"); + }; + function stagegovcloudButtonClickAction(zEvent) { + toggleRegion("usgovvirginia"); + toggleRegion("usgovarizona"); + toggleButtonColor("stagegovcloudButton"); + }; + function stagemooncakeButtonClickAction(zEvent) { + toggleRegion("chinanorth2"); + toggleRegion("chinaeast2"); + toggleButtonColor("stagemooncakeButton"); + }; // component functions function authButtonClickAction(zEvent) { @@ -289,30 +355,22 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { } // function loadDataplanes() { console.log("loading dataplanes profile") - var dataplaneHTML = '' + - '' + - '' + - '

' + - '' + - '

' + - '' + - '' + - '

' + - '' + - '' + - '
' + - '' + - '

' + - '' + - '' + - '

' + - '' + - ''; + var dataplaneHTML = '
















'; zNode.innerHTML = profilesHTML + '
' + dataplaneHTML + '
' + componentsHTML + ''; + // array of active buttons + buttonArray = ["canadacentral", "canadaeast", "centralindia", "southindia", "westindia", + "switzerlandnorth", "norwayeast", "westus2", "westus", "southcentralus", + "westeurope", "northeurope", "ukwest", "uksouth", "southafricanorth", + "uaenorth", "australiaeast", "australiacentral", "australiacentral2", + "australiasoutheast", "japaneast", "japanwest", "koreacentral", + "southeastasia", "eastasia", "brazilsouth", "eastus2", "eastus", + "centralus", "northcentralus", "francecentral", "chinanorth2", "chinaeast2", + "usgovvirginia", "usgovarizona"]; + reset(); // regional listeners document.getElementById("canadacentralButton").addEventListener("click", canadacentralButtonClickAction, false); document.getElementById("canadaeastButton").addEventListener("click", canadaeastButtonClickAction, false); @@ -372,19 +430,27 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { }; function loadControlplanes() { console.log("loading controlplanes"); - var controlplaneHTML = '' + - '

' + - '

' + - '' + - '

' + - '' + - '

' + - '' + - '

' + - '' + - ''; + var controlplaneHTML = '' + + '

' + + '

' + + '' + + '

' + + '' + + '

' + + '' + + '

' + + '' + + ''; zNode.innerHTML = profilesHTML + '
' + controlplaneHTML + '
' + componentsHTML + ''; + // 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"]; + + // clear everything on profile load + reset(); + // regional listeners document.getElementById("canadacentralButton").addEventListener("click", canadacentralCPButtonClickAction, false); document.getElementById("switzerlandnorthButton").addEventListener("click", switzerlandnorthButtonClickAction, false); @@ -397,6 +463,16 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { document.getElementById("uaenorthButton").addEventListener("click", uaenorthButtonClickAction, false); document.getElementById("australiaeastButton").addEventListener("click", australiaeastCPButtonClickAction, false); document.getElementById("japaneastButton").addEventListener("click", japaneastCPButtonClickAction, false); + document.getElementById("koreacentralButton").addEventListener("click", koreacentralButtonClickAction, false); + document.getElementById("southeastasiaButton").addEventListener("click", southeastasiaCPButtonClickAction, false); + document.getElementById("brazilsouthButton").addEventListener("click", brazilsouthButtonClickAction, false); + document.getElementById("eastus2Button").addEventListener("click", eastus2CPButtonClickAction, false); + document.getElementById("francecentralButton").addEventListener("click", francecentralButtonClickAction, false); + document.getElementById("chinanorth2Button").addEventListener("click", chinanorth2ButtonClickAction, false); + document.getElementById("chinaeast2Button").addEventListener("click", chinaeast2ButtonClickAction, false); + document.getElementById("usgovvirginiaButton").addEventListener("click", usgovvirginiaButtonClickAction, false); + document.getElementById("usgovarizonaButton").addEventListener("click", usgovarizonaButtonClickAction, false); + // profile listeners document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false); document.getElementById("dataplanesButton").addEventListener("click", dataplanesButtonClickAction, false); @@ -419,21 +495,47 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { }; function loadStages() { console.log("loading stages"); - var stagesHTML = '' + + var stagesHTML = '' + '' + - '' + - ''; + '' + + ''; zNode.innerHTML = profilesHTML + '
' + stagesHTML + '
' + componentsHTML + ''; + + // array of active buttons + buttonArray = ["stage1", "stage1.5", "stage2", "stage3am", "stage3pm", "govcloud", "mooncake"]; + reset(); + + // regional listeners + document.getElementById("stage1Button").addEventListener("click", stage1ButtonClickAction, false); + document.getElementById("stage1point5Button").addEventListener("click", stage1point5ButtonClickAction, false); + document.getElementById("stage2Button").addEventListener("click", stage2ButtonClickAction, false); + document.getElementById("stage3amButton").addEventListener("click", stage3amButtonClickAction, false); + document.getElementById("stage3pmButton").addEventListener("click", stage3pmButtonClickAction, false); + document.getElementById("stagegovcloudButton").addEventListener("click", stagegovcloudButtonClickAction, false); + document.getElementById("stagemooncakeButton").addEventListener("click", stagemooncakeButtonClickAction, false); + + // profile listeners 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); + + // 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("sqlButton").addEventListener("click", sqlButtonClickAction, false); + document.getElementById("allComponentsButton").addEventListener("click", allComponentsButtonClickAction, false); + + // aux listeners + document.getElementById("resetButton").addEventListener("click", resetButtonClickAction, false); + document.getElementById("applyButton").addEventListener("click", applyButtonClickAction, false); }; function shrink() { - var profilesHTML = '
' + - '
'; zNode.innerHTML = profilesHTML + '
'; document.getElementById("controlplanesButton").addEventListener("click", controlplanesButtonClickAction, false); document.getElementById("dataplanesButton").addEventListener("click", dataplanesButtonClickAction, false); @@ -443,9 +545,19 @@ if (window.location.href.indexOf("5d49ec10226b9e13cb6a422e") > -1) { } if (window.location.href.indexOf("5cf02dde58a00904bda41926") > -1) { + // render initial HTML + var profilesHTML = '
' + + '
'; + zNode.innerHTML = profilesHTML; } if (window.location.href.indexOf("60087ab5608daf0535dc8e23") > -1) { + // render initial HTML + var profilesHTML = '
' + + '
'; + zNode.innerHTML = profilesHTML; } // aux functions @@ -561,11 +673,14 @@ function reset() { var buttonName = component + 'Button'; clearButtonColor(buttonName); } - for (i = 0; i < regionArray.length; i++) { - var region = regionArray[i]; - deselectRegion(region); + for (i = 0; i < buttonArray.length; i++) { + var region = buttonArray[i]; var buttonName = region + 'Button'; clearButtonColor(buttonName); } + for (i = 0; i < regionArray.length; i++) { + var region = regionArray[i]; + deselectRegion(region); + } apply(); }