Skip to content

Commit 4c41302

Browse files
committed
feat: dev mode
1 parent f7d375f commit 4c41302

3 files changed

Lines changed: 31 additions & 6 deletions

File tree

index.html

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,14 @@
177177
console.log("Using default minimum distance to station");
178178
minimumDistanceToStation = 50;
179179
}
180+
const devModeCookie = getCookie("devMode");
181+
if (devModeCookie) {
182+
console.log("Using user defined dev mode");
183+
devMode = devModeCookie === "true";
184+
} else {
185+
console.log("Using default dev mode");
186+
devMode = false;
187+
}
180188

181189
// Prevent resize on keyboard open
182190
let initialWindowHeight = window.innerHeight;

scripts/stations.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,7 @@ async function openBikeList(stationSerialNumber) {
254254
<div id="bikeInfo">
255255
<div id="bikeName">${bike.name}</div>
256256
<div id="bikeDock">Doca ${dockObj.name}</div>
257+
${devMode ? `<div id="serialNum">Número de série: ${bike.serialNumber}</div>` : ""}
257258
</div>
258259
<i id="reserveBikeIcon" class="bi bi-arrow-bar-right"></i></div>
259260
</div>

scripts/user.js

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
const TRIP_HISTORY_PAGE_SIZE = 10;
22
let tokenRefreshed = false;
33
let minimumDistanceToStation = 50;
4+
let devMode = false;
45
let tripHistory = null;
56

67
// Define the global user, where the variables will be stored
@@ -318,6 +319,10 @@ async function openUserSettings() {
318319
<option value="100" ${minimumDistanceToStation === 100 ? `selected="selected"` : ""}>100m</option>
319320
</select>
320321
</div>
322+
<div id="devMode">
323+
<div>Modo de programador</div>
324+
<input id="devModeCheckbox" type="checkbox" ${devMode ? `checked="checked"` : ""}"/>
325+
</div>
321326
</div>
322327
<div id="issueButtonContainer">
323328
<div id="issueButton" onclick="window.open('https://github.com/afonsosousah/mGira/issues')">
@@ -360,21 +365,32 @@ async function openUserSettings() {
360365
const newDistance = Number(distanceToStationSelector.value); // convert to int
361366
minimumDistanceToStation = newDistance; // Set the value
362367

363-
// Set the cookie expiry to 1 year after today.
364-
const expiryDate = new Date();
365-
expiryDate.setFullYear(expiryDate.getFullYear() + 1);
366-
367-
// Store minimum distance to station cookie
368-
createCookie("minimumDistanceToStation", minimumDistanceToStation, expiryDate);
368+
customCreateCookie("minimumDistanceToStation", newDistance); // Store the value in a cookie
369369

370370
console.log(`Minimum distance to station was set to ${minimumDistanceToStation}m`);
371371
});
372+
const devModeInput = document.getElementById("devModeCheckbox");
373+
devModeInput.addEventListener("change", () => {
374+
devMode = devModeInput.checked;
375+
customCreateCookie("devMode", devMode);
376+
377+
console.log(`Dev mode was set to ${devMode}`);
378+
});
372379

373380
// Set status bar color in PWA
374381
// Set notification bar color in Progressive Web App (installable website)
375382
changeThemeColor("#79c000");
376383
}
377384

385+
function customCreateCookie(name, value) {
386+
// Set the cookie expiry to 1 year after today.
387+
const expiryDate = new Date();
388+
expiryDate.setFullYear(expiryDate.getFullYear() + 1);
389+
390+
// Store cookie
391+
createCookie(name, value, expiryDate);
392+
}
393+
378394
function hideUserSettings(animate = true) {
379395
let userSettings = document.getElementById("userSettings");
380396
if (userSettings && animate) {

0 commit comments

Comments
 (0)