summaryrefslogtreecommitdiff
path: root/app/index.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/index.php')
-rw-r--r--app/index.php52
1 files changed, 37 insertions, 15 deletions
diff --git a/app/index.php b/app/index.php
index 6989866..601c974 100644
--- a/app/index.php
+++ b/app/index.php
@@ -37,11 +37,7 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php"; global $_PROFI
<script src="/assets/js/common.js"></script>
<script>
if (location.hash.trim() === "") {
- if (window.innerWidth < 863) {
- location.hash = "#/library";
- } else {
- location.hash = "#/albums";
- }
+ location.hash = "#/home";
}
if (window.MistNative) {
@@ -77,17 +73,13 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php"; global $_PROFI
document.getElementById("modal").onload = () => {
window.modalLoaded = true;
- <?php $app = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/app.json"), true); global $_PROFILE; if (in_array($_PROFILE["id"], $app["dp"])): ?>
- openModal("Mist Developer Preview", "welcome-dp.php", false);
- <?php else: ?>
if (localStorage.getItem("welcomed") !== "true") {
openModal("Welcome to Mist", "welcome.php", true);
} else {
- if (localStorage.getItem("lastUpdate") !== "<?= trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/version")) ?>|<?= trim(file_exists("/opt/spotify/build.txt") ? file_get_contents("/opt/spotify/build.txt") : "trunk") ?>") {
+ if (localStorage.getItem("lastUpdate") !== "<?= trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/version")) ?>") {
openModal("What's new in Mist?", "update.php", true);
}
}
- <?php endif; ?>
}
window.onerror = (_1, _2, _3, _4, err) => {
@@ -142,11 +134,15 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php"; global $_PROFI
document.getElementById("lyrics-page").style.display = "none";
document.getElementById("ui").style.display = "";
setSrcIfDifferent("ui/listing.php?a=" + location.hash.split("/")[2]);
+ } else if (name === "favorites" && location.hash.split("/")[2]) {
+ document.getElementById("lyrics-page").style.display = "none";
+ document.getElementById("ui").style.display = "";
+ setSrcIfDifferent("ui/favorites.php?u=" + location.hash.split("/")[2]);
} else if (name === "search" && location.hash.split("/")[2]) {
document.getElementById("lyrics-page").style.display = "none";
document.getElementById("ui").style.display = "";
setSrcIfDifferent("ui/search.php?q=" + location.hash.split("/")[2]);
- name = "explore";
+ name = "home";
} else {
document.getElementById("lyrics-page").style.display = "none";
document.getElementById("ui").style.display = "";
@@ -154,6 +150,18 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php"; global $_PROFI
}
}
+ window.setPlayerVolume = () => {
+ let volume = parseFloat(document.getElementById("player").contentDocument.getElementById("volume").value);
+ localStorage.setItem("volume", volume);
+
+ document.getElementById("player").contentDocument.getElementById("player-audio").volume = volume / 100;
+ document.getElementById("player").contentDocument.getElementById("player-audio-stella-side1").volume = volume / 100;
+ document.getElementById("player").contentDocument.getElementById("player-audio-stella-side2").volume = volume / 100;
+ document.getElementById("player").contentDocument.getElementById("player-audio-stella-side3").volume = volume / 100;
+ document.getElementById("player").contentDocument.getElementById("player-audio-stella-side4").volume = volume / 100;
+ document.getElementById("player").contentDocument.getElementById("player-audio-stella-side5").volume = volume / 100;
+ }
+
loadHash();
document.getElementById("ui").onload = () => {
@@ -162,10 +170,24 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php"; global $_PROFI
}
document.getElementById("navigation").onload = window.redoNavigation = (name) => {
- if (!name || typeof name !== "string") name = window.name;
- if (name === "lyrics") showLyrics();
- Array.from(document.getElementById("navigation").contentDocument.getElementsByClassName("navigation-item")).map(i => i.classList.remove("active"));
- document.getElementById("navigation").contentDocument.getElementById(name).classList.add("active");
+ class MistNavigationError extends Error {
+ constructor(message, stack) {
+ super(message);
+ this.name = "MistNavigationError";
+ this.message = message;
+ this.stack = this.stack + "\n\n" + stack;
+ }
+ }
+
+ try {
+ if (!name || typeof name !== "string") name = window.name;
+ if (name === "lyrics") showLyrics();
+ if (name === "search") name = "home";
+ Array.from(document.getElementById("navigation").contentDocument.getElementsByClassName("navigation-item")).map(i => i.classList.remove("active"));
+ document.getElementById("navigation").contentDocument.getElementById(name).classList.add("active");
+ } catch (e) {
+ throw new MistNavigationError("Error while navigating to " + name + ": " + e.message, e.stack);
+ }
}
let loadedPlayers = 0;