From 950a3aa530e846a10541886e5b73c36a0c542fcd Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Fri, 14 Apr 2023 18:57:57 -0500 Subject: [PATCH 1/7] Spacing --- assets/js/openrct2.website.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/assets/js/openrct2.website.js b/assets/js/openrct2.website.js index 47a6265..d5f2082 100644 --- a/assets/js/openrct2.website.js +++ b/assets/js/openrct2.website.js @@ -28,16 +28,16 @@ openrct2.Platform = Object.freeze({ } }); // Object.freeze() prevents this from being futzed with -function getPlatform(){ - if (navigator.platform.indexOf('Win') >= 0){ - if (navigator.userAgent.indexOf("WOW64") === -1 && navigator.userAgent.indexOf("Win64") === -1 ){ +function getPlatform() { + if (navigator.platform.indexOf('Win') >= 0) { + if (navigator.userAgent.indexOf("WOW64") === -1 && navigator.userAgent.indexOf("Win64") === -1 ) { return openrct2.Platform.WINDOWS32; } else { return openrct2.Platform.WINDOWS64; // 64-bit is the default as it is by far the most common these days } - } else if (navigator.platform.indexOf('Linux') >= 0){ + } else if (navigator.platform.indexOf('Linux') >= 0) { return openrct2.Platform.LINUX; - } else if (navigator.platform === 'MacIntel'){ + } else if (navigator.platform === 'MacIntel') { return openrct2.Platform.MACOS; } else { return openrct2.Platform.UNKNOWN; From 7e933f24de9eef357880196c3d2c7e13df59f910 Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Fri, 14 Apr 2023 19:01:17 -0500 Subject: [PATCH 2/7] Remove Deprecated CSS --- assets/css/blog.css | 3 --- 1 file changed, 3 deletions(-) diff --git a/assets/css/blog.css b/assets/css/blog.css index 8a3f636..7c716d9 100644 --- a/assets/css/blog.css +++ b/assets/css/blog.css @@ -23,9 +23,6 @@ iframe { margin: 0 auto; display: block; border: 1px solid #ccc; - seamless; - frameborder: 0; - scrolling: no; } #gradient { From 1c8804881a0f28e25d8b2323fb866d6266db13ab Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Fri, 14 Apr 2023 19:03:36 -0500 Subject: [PATCH 3/7] Add Spell Checker --- .vscode/extensions.json | 5 +++++ .vscode/settings.json | 5 +++++ 2 files changed, 10 insertions(+) create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..1801bd8 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,5 @@ +{ + "recommendations": [ + "streetsidesoftware.code-spell-checker" + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..37f15e2 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "cSpell.words": [ + "openrct" + ] +} \ No newline at end of file From b2b124f904cbc4ea8625a684b3d335f9f44b8b41 Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Fri, 14 Apr 2023 19:03:45 -0500 Subject: [PATCH 4/7] use modern js let --- assets/js/openrct2.website.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/assets/js/openrct2.website.js b/assets/js/openrct2.website.js index d5f2082..bfe82e8 100644 --- a/assets/js/openrct2.website.js +++ b/assets/js/openrct2.website.js @@ -1,4 +1,4 @@ -var openrct2 = {}; +let openrct2 = {}; openrct2.Platform = Object.freeze({ UNKNOWN: {}, @@ -30,7 +30,7 @@ openrct2.Platform = Object.freeze({ function getPlatform() { if (navigator.platform.indexOf('Win') >= 0) { - if (navigator.userAgent.indexOf("WOW64") === -1 && navigator.userAgent.indexOf("Win64") === -1 ) { + if (navigator.userAgent.indexOf("WOW64") === -1 && navigator.userAgent.indexOf("Win64") === -1) { return openrct2.Platform.WINDOWS32; } else { return openrct2.Platform.WINDOWS64; // 64-bit is the default as it is by far the most common these days From 933733e2c54a70b390c79a67c72faf631da87aa7 Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Fri, 14 Apr 2023 21:24:17 -0500 Subject: [PATCH 5/7] Modernize the JS --- assets/js/getting-started.js | 27 ++++++++++++++------------- assets/js/home.js | 33 ++++++++++++++++++--------------- assets/js/openrct2.website.js | 10 ++++++---- 3 files changed, 38 insertions(+), 32 deletions(-) diff --git a/assets/js/getting-started.js b/assets/js/getting-started.js index e4a5496..0af17d5 100644 --- a/assets/js/getting-started.js +++ b/assets/js/getting-started.js @@ -1,19 +1,20 @@ -function setupPageControl(container, pageType) { - var buttons = document.querySelectorAll(container + ' .btn-' + pageType); - for (var i = 0; i < buttons.length; i++) { - buttons[i].addEventListener('click', function () { +const setupPageControl = (container, pageType) => { + const buttons = document.querySelectorAll(container + ' .btn-' + pageType); + for (let i = 0; i < buttons.length; i++) { + buttons[i].addEventListener('click', () => { if (!this.classList.contains('active')) { - var activeButtons = document.querySelectorAll(container + ' .btn-' + pageType + '.active'); - for (var j = 0; j < activeButtons.length; j++) { + const activeButtons = document.querySelectorAll(container + ' .btn-' + pageType + '.active'); + for (let j = 0; j < activeButtons.length; j++) { activeButtons[j].classList.remove('active'); } this.classList.add('active'); - var pages = document.querySelectorAll(container + ' .page-' + pageType); - for (var j = 0; j < pages.length; j++) { + const pages = document.querySelectorAll(container + ' .page-' + pageType); + for (let j = 0; j < pages.length; j++) { pages[j].classList.remove('show'); } - var targetPage = document.getElementById(this.getAttribute('data-page')); + + const targetPage = document.getElementById(this.getAttribute('data-page')); if (targetPage) { targetPage.classList.add('show'); } @@ -22,7 +23,7 @@ function setupPageControl(container, pageType) { } } -function showContent(slug) { +const showContent = (slug) => { document.querySelector('[data-page="content-'+slug+'"]').click(); } @@ -30,9 +31,9 @@ setupPageControl('body', 'platform'); setupPageControl('body', 'extractplatform'); setupPageControl('body', 'phase'); -var platformPages = document.querySelectorAll('.page-platform'); -for (var i = 0; i < platformPages.length; i++) { - var container = '#' + platformPages[i].id; +const platformPages = document.querySelectorAll('.page-platform'); +for (let i = 0; i < platformPages.length; i++) { + const container = '#' + platformPages[i].id; setupPageControl(container, 'distro'); } diff --git a/assets/js/home.js b/assets/js/home.js index 01ef0ad..95b8587 100644 --- a/assets/js/home.js +++ b/assets/js/home.js @@ -1,18 +1,21 @@ -// http://stackoverflow.com/questions/15900485/correct-way-to-convert-size-in-bytes-to-kb-mb-gb-in-javascript -function formatBytes (bytes, decimals) { - if(bytes == 0) return '0 Byte'; - var k = 1000; - var dm = decimals + 1 || 3; - var sizes = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; - var i = Math.floor(Math.log(bytes) / Math.log(k)); +// https://stackoverflow.com/questions/15900485/correct-way-to-convert-size-in-bytes-to-kb-mb-gb-in-javascript +const formatBytes = (bytes, decimals) => { + if (bytes == 0) { + return '0 Byte'; + } + const k = 1000; + const dm = decimals + 1 || 3; + const sizes = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; + const i = Math.floor(Math.log(bytes) / Math.log(k)); + return (bytes / Math.pow(k, i)).toPrecision(dm) + ' ' + sizes[i]; } -document.addEventListener('DOMContentLoaded', function () { - var link = document.getElementsByClassName('link')[0]; - var size = document.getElementsByClassName('size')[0]; - var version = document.getElementsByClassName('version')[0]; - var platform = document.getElementsByClassName('platform')[0]; +document.addEventListener('DOMContentLoaded', () => { + const link = document.getElementsByClassName('link')[0]; + const size = document.getElementsByClassName('size')[0]; + const version = document.getElementsByClassName('version')[0]; + const platform = document.getElementsByClassName('platform')[0]; if (openrct2.currentPlatform !== openrct2.Platform.UNKNOWN) { link.href = openrct2.currentPlatform.link; @@ -21,12 +24,12 @@ document.addEventListener('DOMContentLoaded', function () { version.innerHTML = openrct2.currentPlatform.version; } - platform.addEventListener('click', function (e) { + platform.addEventListener('click', (e) => { e.preventDefault(); - var keys = Object.keys(openrct2.Platform); + const keys = Object.keys(openrct2.Platform); - for (var i = 0; i <= keys.length; i++) { + for (let i = 0; i <= keys.length; i++) { if (openrct2.Platform[keys[i]].name === platform.innerHTML) { if (i + 1 >= keys.length) { i = 1; diff --git a/assets/js/openrct2.website.js b/assets/js/openrct2.website.js index bfe82e8..7ff45f1 100644 --- a/assets/js/openrct2.website.js +++ b/assets/js/openrct2.website.js @@ -29,15 +29,17 @@ openrct2.Platform = Object.freeze({ }); // Object.freeze() prevents this from being futzed with function getPlatform() { - if (navigator.platform.indexOf('Win') >= 0) { - if (navigator.userAgent.indexOf("WOW64") === -1 && navigator.userAgent.indexOf("Win64") === -1) { + const { platform, userAgent } = navigator; + if (platform.includes('Win')) { + const win64UserAgents = ["WOW64", "Win64"]; + if (!win64UserAgents.includes(userAgent)) { return openrct2.Platform.WINDOWS32; } else { return openrct2.Platform.WINDOWS64; // 64-bit is the default as it is by far the most common these days } - } else if (navigator.platform.indexOf('Linux') >= 0) { + } else if (platform.includes('Linux')) { return openrct2.Platform.LINUX; - } else if (navigator.platform === 'MacIntel') { + } else if (platform.includes('MacIntel')) { return openrct2.Platform.MACOS; } else { return openrct2.Platform.UNKNOWN; From 09a240352f67a5dc3db5a4c71602b97575ad273a Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Fri, 14 Apr 2023 21:28:03 -0500 Subject: [PATCH 6/7] more arrow functions --- assets/js/openrct2.website.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/js/openrct2.website.js b/assets/js/openrct2.website.js index 7ff45f1..fa25c53 100644 --- a/assets/js/openrct2.website.js +++ b/assets/js/openrct2.website.js @@ -28,7 +28,7 @@ openrct2.Platform = Object.freeze({ } }); // Object.freeze() prevents this from being futzed with -function getPlatform() { +const getPlatform = () => { const { platform, userAgent } = navigator; if (platform.includes('Win')) { const win64UserAgents = ["WOW64", "Win64"]; From c326c7c3e3166bc47228e496fecc93cc844e5295 Mon Sep 17 00:00:00 2001 From: Steven Yeh Date: Thu, 20 Apr 2023 22:57:49 -0500 Subject: [PATCH 7/7] Remove Arrow Function --- assets/js/getting-started.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/assets/js/getting-started.js b/assets/js/getting-started.js index 0af17d5..930b6ff 100644 --- a/assets/js/getting-started.js +++ b/assets/js/getting-started.js @@ -1,7 +1,7 @@ -const setupPageControl = (container, pageType) => { +function setupPageControl (container, pageType) { const buttons = document.querySelectorAll(container + ' .btn-' + pageType); for (let i = 0; i < buttons.length; i++) { - buttons[i].addEventListener('click', () => { + buttons[i].addEventListener('click', function () { if (!this.classList.contains('active')) { const activeButtons = document.querySelectorAll(container + ' .btn-' + pageType + '.active'); for (let j = 0; j < activeButtons.length; j++) {