diff options
Diffstat (limited to '_site/msdl')
| -rw-r--r-- | _site/msdl/data/products.json | 8 | ||||
| -rw-r--r-- | _site/msdl/favicon.ico | bin | 5430 -> 0 bytes | |||
| -rw-r--r-- | _site/msdl/img/cover.png | bin | 168552 -> 0 bytes | |||
| -rw-r--r-- | _site/msdl/index.html | 59 | ||||
| -rw-r--r-- | _site/msdl/js/msdl.js | 206 |
5 files changed, 0 insertions, 273 deletions
diff --git a/_site/msdl/data/products.json b/_site/msdl/data/products.json deleted file mode 100644 index 9871e2d..0000000 --- a/_site/msdl/data/products.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "products": { - "52": "Windows 8.1 (Build 9600)", - "55": "Windows 8.1 N (Build 9600)", - "2084": "Windows 10 21H2 (Build 19044.1288)", - "2360": "Windows 11 22H2 (Build 22621.382)" - } -} diff --git a/_site/msdl/favicon.ico b/_site/msdl/favicon.ico Binary files differdeleted file mode 100644 index e478721..0000000 --- a/_site/msdl/favicon.ico +++ /dev/null diff --git a/_site/msdl/img/cover.png b/_site/msdl/img/cover.png Binary files differdeleted file mode 100644 index 9bd4bea..0000000 --- a/_site/msdl/img/cover.png +++ /dev/null diff --git a/_site/msdl/index.html b/_site/msdl/index.html deleted file mode 100644 index 45c40dd..0000000 --- a/_site/msdl/index.html +++ /dev/null @@ -1,59 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - <meta property="description" content="Microsoft Software Download Listing lets you browse and download products from Microsoft Software Download."> - - <meta property="twitter:card" content="summary_large_image"> - <meta property="og:site_name" content="Microsoft Software Download Listing"> - <meta property="og:title" content="Microsoft Software Download Listing"> - <meta property="og:type" content="website"> - <meta property="og:description" content="Microsoft Software Download Listing lets you browse and download products from Microsoft Software Download."> - <meta property="og:image" content="https://eraseyourknees.github.io/msdl/img/cover.png"> - <meta property="og:url" content="https://eraseyourknees.github.io/msdl/"> - - <title>Microsoft Software Download Listing</title> - - <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/water.css@2/out/water.css"> - <script defer src="js/msdl.js"></script> - </head> - <body> - <a href="https://github.com/massgravel/mas-docs/tree/main/_site/msdl">Forked</a> from <a href="https://github.com/eraseyourknees/msdl">https://github.com/eraseyourknees/msdl</a> - <noscript> - <p>This page requires JavaScript to work.</p> - </noscript> - - <div id="products-list" style="display: none;"> - <h2>Select product</h2> - <table style="table-layout: auto;"> - <thead> - <tr> - <th>Product</th> - <th>ID</th> - </tr> - </thead> - <tbody id="products-table-body"></tbody> - </table> - </div> - - <div id="msdl-ms-content" style="display: none;"></div> - - <div id="msdl-please-wait" style="display: none;"> - <h2>Please wait...</h2> - <p>Please wait while the data you requested is being retrieved.</p> - </div> - - <div id="msdl-processing-error" style="display: none;"> - <h2>Error</h2> - <p>An error has occurred while processing your request.</p> - </div> - - <div id="back-to-products" style="display: none;"> - <hr> - <button onClick="backToProducts();">Go back to the product list</button> - </div> - - <input id="msdl-session-id" type="hidden"> - </body> -</html> diff --git a/_site/msdl/js/msdl.js b/_site/msdl/js/msdl.js deleted file mode 100644 index 12015f3..0000000 --- a/_site/msdl/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'; |
