From 59f0ec977d72882aba88670d03f03784b7f9cd80 Mon Sep 17 00:00:00 2001 From: DESKTOP-RBH716R\Admin Date: Mon, 19 Sep 2022 13:36:52 +0530 Subject: Move msdl to a folder --- _site/data/products.json | 9 -- _site/favicon.ico | Bin 5430 -> 0 bytes _site/img/cover.png | Bin 168552 -> 0 bytes _site/js/msdl.js | 206 ------------------------------------------ _site/msdl.html | 63 ------------- _site/msdl/data/products.json | 9 ++ _site/msdl/favicon.ico | Bin 0 -> 5430 bytes _site/msdl/img/cover.png | Bin 0 -> 168552 bytes _site/msdl/js/msdl.js | 206 ++++++++++++++++++++++++++++++++++++++++++ _site/msdl/msdl.html | 63 +++++++++++++ 10 files changed, 278 insertions(+), 278 deletions(-) delete mode 100644 _site/data/products.json delete mode 100644 _site/favicon.ico delete mode 100644 _site/img/cover.png delete mode 100644 _site/js/msdl.js delete mode 100644 _site/msdl.html create mode 100644 _site/msdl/data/products.json create mode 100644 _site/msdl/favicon.ico create mode 100644 _site/msdl/img/cover.png create mode 100644 _site/msdl/js/msdl.js create mode 100644 _site/msdl/msdl.html (limited to '_site') diff --git a/_site/data/products.json b/_site/data/products.json deleted file mode 100644 index c17cce5..0000000 --- a/_site/data/products.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "products": { - "52": "Windows 8.1 (Build 9600)", - "55": "Windows 8.1 N (Build 9600)", - "2084": "Windows 10 21H2 (Build 19044.1288)", - "2093": "Windows 11 21H2 (Build 22000.318)", - "2360": "Windows 11 22H2 (Waiting to be live)" - } -} diff --git a/_site/favicon.ico b/_site/favicon.ico deleted file mode 100644 index e478721..0000000 Binary files a/_site/favicon.ico and /dev/null differ diff --git a/_site/img/cover.png b/_site/img/cover.png deleted file mode 100644 index 9bd4bea..0000000 Binary files a/_site/img/cover.png and /dev/null differ diff --git a/_site/js/msdl.js b/_site/js/msdl.js deleted file mode 100644 index 12015f3..0000000 --- a/_site/js/msdl.js +++ /dev/null @@ -1,206 +0,0 @@ -const langsUrl = "https://www.microsoft.com/en-us/api/controls/contentinclude/html?pageId=cd06bda8-ff9c-4a6e-912a-b92a21f42526&host=www.microsoft.com&segments=software-download%2cwindows11&query=&action=getskuinformationbyproductedition&sdVersion=2"; -const downUrl = "https://www.microsoft.com/en-us/api/controls/contentinclude/html?pageId=cfa9e580-a81e-4a4b-a846-7b21bf4e2e5b&host=www.microsoft.com&segments=software-download%2Cwindows11&query=&action=GetProductDownloadLinksBySku&sdVersion=2"; - -const sessionId = document.getElementById('msdl-session-id'); -const msContent = document.getElementById('msdl-ms-content'); -const pleaseWait = document.getElementById('msdl-please-wait'); -const processingError = document.getElementById('msdl-processing-error'); - -const productsList = document.getElementById('products-list'); -const backToProductsDiv = document.getElementById('back-to-products'); - -var msdlXhr = new XMLHttpRequest(); - -function uuidv4() { - return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c => - (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) - ); -} - -function updateVars() { - var id = document.getElementById('product-languages').value; - if(id == "") { - document.getElementById('submit-sku').disabled = 1; - return; - } - - id = JSON.parse(id); - document.getElementById('submit-sku').disabled = 0; - - return id; -} - -function checkForError(content) { - var errorMessage = document.getElementById('errorModalMessage'); - - if(errorMessage) { - processingError.style.display = "block"; - content.style.display = "none"; - return true; - } - - return false; -} - -function updateContent(content, response) { - content.innerHTML = response; - return !checkForError(content); -} - -function abortAndHide() { - msdlXhr.abort(); - - msContent.style.display = 'none'; - pleaseWait.style.display = 'none'; - processingError.style.display = 'none'; - - window.location.hash = ""; -} - -function fixSubmitSku() { - var submitSku = document.getElementById('submit-sku'); - submitSku.setAttribute("onClick", "getDownload();"); -} - -function fixProdLang() { - var prodLang = document.getElementById('product-languages'); - prodLang.setAttribute("onChange", "updateVars();"); -} - -function fixLanguageList() { - fixSubmitSku(); - fixProdLang(); -} - -function onLanguageXhrChange() { - if(!(this.readyState == 4 && this.status == 200)) - return; - - if(pleaseWait.style.display != "block") - return; - - pleaseWait.style.display = "none"; - msContent.style.display = "block"; - - if(!updateContent(msContent, this.responseText)) - return; - - fixLanguageList(); - updateVars(); -} - -function onDownloadsXhrChange() { - if(!(this.readyState == 4 && this.status == 200)) - return; - - if(pleaseWait.style.display != "block") - return; - - pleaseWait.style.display = "none"; - msContent.style.display = "block"; - - if(!updateContent(msContent, this.responseText)) - return; -} - -function getLanguages(productId) { - sessionId.value = uuidv4(); - - msContent.style.display = "none"; - pleaseWait.style.display = "block"; - - var url = langsUrl + "&productEditionId=" + encodeURIComponent(productId) + - "&sessionId=" + encodeURIComponent(sessionId.value); - - msdlXhr.abort(); - msdlXhr.onreadystatechange = onLanguageXhrChange; - msdlXhr.open("GET", url, true); - msdlXhr.send(); -} - -function getDownload() { - msContent.style.display = "none"; - pleaseWait.style.display = "block"; - - var id = updateVars(); - - var url = downUrl + "&skuId=" + encodeURIComponent(id['id']) + - "&language=" + encodeURIComponent(id['language'])+ - "&sessionId=" + encodeURIComponent(sessionId.value); - - msdlXhr.abort(); - msdlXhr.onreadystatechange = onDownloadsXhrChange; - msdlXhr.open("GET", url, true); - msdlXhr.send(); -} - -function backToProducts() { - abortAndHide(); - - backToProductsDiv.style.display = 'none'; - productsList.style.display = 'block'; -} - -function prepareDownload(id) { - productsList.style.display = 'none'; - backToProductsDiv.style.display = 'block'; - - return getLanguages(id); -} - -function createTable(data) { - var table = document.getElementById('products-table-body'); - for(value in data) { - var a = document.createElement('a') - a.href = "#" + value; - a.setAttribute("onClick", "prepareDownload(" + value + ");"); - a.appendChild(document.createTextNode(data[value])) - - var tr = table.insertRow(); - - var td = tr.insertCell(); - td.appendChild(a); - - var td2 = tr.insertCell(); - td2.appendChild(document.createTextNode(value)) - } -} - -function checkHash() { - var hash = window.location.hash; - if(hash.length == 0) - return - - prepareDownload(hash.substring(1)) -} - -function preparePage(resp) { - var data = JSON.parse(resp); - - createTable(data['products']); - - pleaseWait.style.display = 'none'; - productsList.style.display = 'block'; - - checkHash(); -} - -var xhr = new XMLHttpRequest(); - -xhr.onreadystatechange = function() { - if(this.readyState != 4) - return; - - if(this.status != 200) { - pleaseWait.style.display = 'none'; - processingError.style.display = 'block'; - return; - } - - preparePage(this.responseText); -}; - -xhr.open("GET", 'data/products.json', true); -xhr.send(); - -pleaseWait.style.display = 'block'; diff --git a/_site/msdl.html b/_site/msdl.html deleted file mode 100644 index e3652af..0000000 --- a/_site/msdl.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - Microsoft Software Download Listing - - - - - - - - Credits: eraseyourknees - - - - - - - - - - - - - - - - - diff --git a/_site/msdl/data/products.json b/_site/msdl/data/products.json new file mode 100644 index 0000000..c17cce5 --- /dev/null +++ b/_site/msdl/data/products.json @@ -0,0 +1,9 @@ +{ + "products": { + "52": "Windows 8.1 (Build 9600)", + "55": "Windows 8.1 N (Build 9600)", + "2084": "Windows 10 21H2 (Build 19044.1288)", + "2093": "Windows 11 21H2 (Build 22000.318)", + "2360": "Windows 11 22H2 (Waiting to be live)" + } +} diff --git a/_site/msdl/favicon.ico b/_site/msdl/favicon.ico new file mode 100644 index 0000000..e478721 Binary files /dev/null and b/_site/msdl/favicon.ico differ diff --git a/_site/msdl/img/cover.png b/_site/msdl/img/cover.png new file mode 100644 index 0000000..9bd4bea Binary files /dev/null and b/_site/msdl/img/cover.png differ diff --git a/_site/msdl/js/msdl.js b/_site/msdl/js/msdl.js new file mode 100644 index 0000000..12015f3 --- /dev/null +++ b/_site/msdl/js/msdl.js @@ -0,0 +1,206 @@ +const langsUrl = "https://www.microsoft.com/en-us/api/controls/contentinclude/html?pageId=cd06bda8-ff9c-4a6e-912a-b92a21f42526&host=www.microsoft.com&segments=software-download%2cwindows11&query=&action=getskuinformationbyproductedition&sdVersion=2"; +const downUrl = "https://www.microsoft.com/en-us/api/controls/contentinclude/html?pageId=cfa9e580-a81e-4a4b-a846-7b21bf4e2e5b&host=www.microsoft.com&segments=software-download%2Cwindows11&query=&action=GetProductDownloadLinksBySku&sdVersion=2"; + +const sessionId = document.getElementById('msdl-session-id'); +const msContent = document.getElementById('msdl-ms-content'); +const pleaseWait = document.getElementById('msdl-please-wait'); +const processingError = document.getElementById('msdl-processing-error'); + +const productsList = document.getElementById('products-list'); +const backToProductsDiv = document.getElementById('back-to-products'); + +var msdlXhr = new XMLHttpRequest(); + +function uuidv4() { + return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c => + (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) + ); +} + +function updateVars() { + var id = document.getElementById('product-languages').value; + if(id == "") { + document.getElementById('submit-sku').disabled = 1; + return; + } + + id = JSON.parse(id); + document.getElementById('submit-sku').disabled = 0; + + return id; +} + +function checkForError(content) { + var errorMessage = document.getElementById('errorModalMessage'); + + if(errorMessage) { + processingError.style.display = "block"; + content.style.display = "none"; + return true; + } + + return false; +} + +function updateContent(content, response) { + content.innerHTML = response; + return !checkForError(content); +} + +function abortAndHide() { + msdlXhr.abort(); + + msContent.style.display = 'none'; + pleaseWait.style.display = 'none'; + processingError.style.display = 'none'; + + window.location.hash = ""; +} + +function fixSubmitSku() { + var submitSku = document.getElementById('submit-sku'); + submitSku.setAttribute("onClick", "getDownload();"); +} + +function fixProdLang() { + var prodLang = document.getElementById('product-languages'); + prodLang.setAttribute("onChange", "updateVars();"); +} + +function fixLanguageList() { + fixSubmitSku(); + fixProdLang(); +} + +function onLanguageXhrChange() { + if(!(this.readyState == 4 && this.status == 200)) + return; + + if(pleaseWait.style.display != "block") + return; + + pleaseWait.style.display = "none"; + msContent.style.display = "block"; + + if(!updateContent(msContent, this.responseText)) + return; + + fixLanguageList(); + updateVars(); +} + +function onDownloadsXhrChange() { + if(!(this.readyState == 4 && this.status == 200)) + return; + + if(pleaseWait.style.display != "block") + return; + + pleaseWait.style.display = "none"; + msContent.style.display = "block"; + + if(!updateContent(msContent, this.responseText)) + return; +} + +function getLanguages(productId) { + sessionId.value = uuidv4(); + + msContent.style.display = "none"; + pleaseWait.style.display = "block"; + + var url = langsUrl + "&productEditionId=" + encodeURIComponent(productId) + + "&sessionId=" + encodeURIComponent(sessionId.value); + + msdlXhr.abort(); + msdlXhr.onreadystatechange = onLanguageXhrChange; + msdlXhr.open("GET", url, true); + msdlXhr.send(); +} + +function getDownload() { + msContent.style.display = "none"; + pleaseWait.style.display = "block"; + + var id = updateVars(); + + var url = downUrl + "&skuId=" + encodeURIComponent(id['id']) + + "&language=" + encodeURIComponent(id['language'])+ + "&sessionId=" + encodeURIComponent(sessionId.value); + + msdlXhr.abort(); + msdlXhr.onreadystatechange = onDownloadsXhrChange; + msdlXhr.open("GET", url, true); + msdlXhr.send(); +} + +function backToProducts() { + abortAndHide(); + + backToProductsDiv.style.display = 'none'; + productsList.style.display = 'block'; +} + +function prepareDownload(id) { + productsList.style.display = 'none'; + backToProductsDiv.style.display = 'block'; + + return getLanguages(id); +} + +function createTable(data) { + var table = document.getElementById('products-table-body'); + for(value in data) { + var a = document.createElement('a') + a.href = "#" + value; + a.setAttribute("onClick", "prepareDownload(" + value + ");"); + a.appendChild(document.createTextNode(data[value])) + + var tr = table.insertRow(); + + var td = tr.insertCell(); + td.appendChild(a); + + var td2 = tr.insertCell(); + td2.appendChild(document.createTextNode(value)) + } +} + +function checkHash() { + var hash = window.location.hash; + if(hash.length == 0) + return + + prepareDownload(hash.substring(1)) +} + +function preparePage(resp) { + var data = JSON.parse(resp); + + createTable(data['products']); + + pleaseWait.style.display = 'none'; + productsList.style.display = 'block'; + + checkHash(); +} + +var xhr = new XMLHttpRequest(); + +xhr.onreadystatechange = function() { + if(this.readyState != 4) + return; + + if(this.status != 200) { + pleaseWait.style.display = 'none'; + processingError.style.display = 'block'; + return; + } + + preparePage(this.responseText); +}; + +xhr.open("GET", 'data/products.json', true); +xhr.send(); + +pleaseWait.style.display = 'block'; diff --git a/_site/msdl/msdl.html b/_site/msdl/msdl.html new file mode 100644 index 0000000..e3652af --- /dev/null +++ b/_site/msdl/msdl.html @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + Microsoft Software Download Listing + + + + + + + + Credits: eraseyourknees + + + + + + + + + + + + + + + + + -- cgit v1.2.3