Skip to content
This repository was archived by the owner on Oct 5, 2024. It is now read-only.

Commit 933733e

Browse files
Steven YehSteven Yeh
authored andcommitted
Modernize the JS
1 parent b2b124f commit 933733e

File tree

3 files changed

+38
-32
lines changed

3 files changed

+38
-32
lines changed

assets/js/getting-started.js

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
1-
function setupPageControl(container, pageType) {
2-
var buttons = document.querySelectorAll(container + ' .btn-' + pageType);
3-
for (var i = 0; i < buttons.length; i++) {
4-
buttons[i].addEventListener('click', function () {
1+
const setupPageControl = (container, pageType) => {
2+
const buttons = document.querySelectorAll(container + ' .btn-' + pageType);
3+
for (let i = 0; i < buttons.length; i++) {
4+
buttons[i].addEventListener('click', () => {
55
if (!this.classList.contains('active')) {
6-
var activeButtons = document.querySelectorAll(container + ' .btn-' + pageType + '.active');
7-
for (var j = 0; j < activeButtons.length; j++) {
6+
const activeButtons = document.querySelectorAll(container + ' .btn-' + pageType + '.active');
7+
for (let j = 0; j < activeButtons.length; j++) {
88
activeButtons[j].classList.remove('active');
99
}
1010
this.classList.add('active');
1111

12-
var pages = document.querySelectorAll(container + ' .page-' + pageType);
13-
for (var j = 0; j < pages.length; j++) {
12+
const pages = document.querySelectorAll(container + ' .page-' + pageType);
13+
for (let j = 0; j < pages.length; j++) {
1414
pages[j].classList.remove('show');
1515
}
16-
var targetPage = document.getElementById(this.getAttribute('data-page'));
16+
17+
const targetPage = document.getElementById(this.getAttribute('data-page'));
1718
if (targetPage) {
1819
targetPage.classList.add('show');
1920
}
@@ -22,17 +23,17 @@ function setupPageControl(container, pageType) {
2223
}
2324
}
2425

25-
function showContent(slug) {
26+
const showContent = (slug) => {
2627
document.querySelector('[data-page="content-'+slug+'"]').click();
2728
}
2829

2930
setupPageControl('body', 'platform');
3031
setupPageControl('body', 'extractplatform');
3132
setupPageControl('body', 'phase');
3233

33-
var platformPages = document.querySelectorAll('.page-platform');
34-
for (var i = 0; i < platformPages.length; i++) {
35-
var container = '#' + platformPages[i].id;
34+
const platformPages = document.querySelectorAll('.page-platform');
35+
for (let i = 0; i < platformPages.length; i++) {
36+
const container = '#' + platformPages[i].id;
3637
setupPageControl(container, 'distro');
3738
}
3839

assets/js/home.js

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
1-
// http://stackoverflow.com/questions/15900485/correct-way-to-convert-size-in-bytes-to-kb-mb-gb-in-javascript
2-
function formatBytes (bytes, decimals) {
3-
if(bytes == 0) return '0 Byte';
4-
var k = 1000;
5-
var dm = decimals + 1 || 3;
6-
var sizes = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
7-
var i = Math.floor(Math.log(bytes) / Math.log(k));
1+
// https://stackoverflow.com/questions/15900485/correct-way-to-convert-size-in-bytes-to-kb-mb-gb-in-javascript
2+
const formatBytes = (bytes, decimals) => {
3+
if (bytes == 0) {
4+
return '0 Byte';
5+
}
6+
const k = 1000;
7+
const dm = decimals + 1 || 3;
8+
const sizes = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
9+
const i = Math.floor(Math.log(bytes) / Math.log(k));
10+
811
return (bytes / Math.pow(k, i)).toPrecision(dm) + ' ' + sizes[i];
912
}
1013

11-
document.addEventListener('DOMContentLoaded', function () {
12-
var link = document.getElementsByClassName('link')[0];
13-
var size = document.getElementsByClassName('size')[0];
14-
var version = document.getElementsByClassName('version')[0];
15-
var platform = document.getElementsByClassName('platform')[0];
14+
document.addEventListener('DOMContentLoaded', () => {
15+
const link = document.getElementsByClassName('link')[0];
16+
const size = document.getElementsByClassName('size')[0];
17+
const version = document.getElementsByClassName('version')[0];
18+
const platform = document.getElementsByClassName('platform')[0];
1619

1720
if (openrct2.currentPlatform !== openrct2.Platform.UNKNOWN) {
1821
link.href = openrct2.currentPlatform.link;
@@ -21,12 +24,12 @@ document.addEventListener('DOMContentLoaded', function () {
2124
version.innerHTML = openrct2.currentPlatform.version;
2225
}
2326

24-
platform.addEventListener('click', function (e) {
27+
platform.addEventListener('click', (e) => {
2528
e.preventDefault();
2629

27-
var keys = Object.keys(openrct2.Platform);
30+
const keys = Object.keys(openrct2.Platform);
2831

29-
for (var i = 0; i <= keys.length; i++) {
32+
for (let i = 0; i <= keys.length; i++) {
3033
if (openrct2.Platform[keys[i]].name === platform.innerHTML) {
3134
if (i + 1 >= keys.length) {
3235
i = 1;

assets/js/openrct2.website.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,17 @@ openrct2.Platform = Object.freeze({
2929
}); // Object.freeze() prevents this from being futzed with
3030

3131
function getPlatform() {
32-
if (navigator.platform.indexOf('Win') >= 0) {
33-
if (navigator.userAgent.indexOf("WOW64") === -1 && navigator.userAgent.indexOf("Win64") === -1) {
32+
const { platform, userAgent } = navigator;
33+
if (platform.includes('Win')) {
34+
const win64UserAgents = ["WOW64", "Win64"];
35+
if (!win64UserAgents.includes(userAgent)) {
3436
return openrct2.Platform.WINDOWS32;
3537
} else {
3638
return openrct2.Platform.WINDOWS64; // 64-bit is the default as it is by far the most common these days
3739
}
38-
} else if (navigator.platform.indexOf('Linux') >= 0) {
40+
} else if (platform.includes('Linux')) {
3941
return openrct2.Platform.LINUX;
40-
} else if (navigator.platform === 'MacIntel') {
42+
} else if (platform.includes('MacIntel')) {
4143
return openrct2.Platform.MACOS;
4244
} else {
4345
return openrct2.Platform.UNKNOWN;

0 commit comments

Comments
 (0)