File tree Expand file tree Collapse file tree 1 file changed +43
-0
lines changed Expand file tree Collapse file tree 1 file changed +43
-0
lines changed Original file line number Diff line number Diff line change 1+ ---
2+ title: Install Scratch Addons
3+ description: Go to the Scratch Addons insallation page.
4+ ---
5+
6+ < script >
7+ window . installButtonGo = ( name , engine ) => {
8+ delete window . installButtonGo
9+
10+ // Figure out the browser
11+ switch ( engine ) {
12+ case "Blink" :
13+ if ( name === "Microsoft Edge" ) location . href = "https://microsoftedge.microsoft.com/addons/detail/iliepgjnemckemgnledoipfiilhajdjj"
14+ else location . href = "https://chrome.google.com/webstore/detail/fbeffbjdlemaoicjdapfpikkikjoneco"
15+ break
16+ case "Gecko" :
17+ location . href = "https://addons.mozilla.org/firefox/addon/scratch-messaging-extension/"
18+ break
19+ default :
20+ location . href = "https://scratchaddons.com/docs/getting-started/installing/"
21+ break
22+ }
23+ }
24+
25+ // Use Bowser to get the used browser, and save it to the local storage to avoid calling Bowser again.
26+ if ( localStorage . getItem ( "browserName" ) !== null && localStorage . getItem ( "browserEngine" ) !== null ) installButtonGo ( localStorage . getItem ( "browserName" ) , localStorage . getItem ( "browserEngine" ) )
27+ else {
28+ console . info ( "No browser data saved. Getting bowser to get it..." )
29+
30+ const detectEngineElement = document . createElement ( "script" )
31+
32+ detectEngineElement . type = "module"
33+ detectEngineElement . innerHTML = `
34+ import bowser from 'https://cdn.jsdelivr.net/npm/bowser/+esm'
35+
36+ localStorage.setItem("browserName", bowser.getParser(navigator.userAgent).parsedResult.browser.name)
37+ localStorage.setItem("browserEngine", bowser.getParser(navigator.userAgent).parsedResult.engine.name)
38+
39+ window.installButtonGo(localStorage.getItem("browserName"), localStorage.getItem("browserEngine"))
40+ `
41+ document . head . appendChild ( detectEngineElement )
42+ }
43+ </ script >
You can’t perform that action at this time.
0 commit comments