summaryrefslogtreecommitdiff
path: root/js/player.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/player.js')
-rw-r--r--js/player.js67
1 files changed, 32 insertions, 35 deletions
diff --git a/js/player.js b/js/player.js
index 2c73333..b623eee 100644
--- a/js/player.js
+++ b/js/player.js
@@ -22,7 +22,7 @@ _argonLoadedHooks.push(function ArgonStartupPlayer() {
ArgonPlayer._player.currentTime = 0;
ArgonPlayer._player.play().catch(e => {
console.error(e);
- alert("An error occurred while trying to play this song. Please try again later.");
+ if (e.name !== "NotAllowedError") alert("An error occurred while trying to play this song. Please try again later.");
}).then(() => {
ArgonPlayer._endTriggered = false;
});
@@ -54,25 +54,24 @@ _argonLoadedHooks.push(function ArgonStartupPlayer() {
_setQualityTo: (quality) => {
log("Resolving track " + ArgonPlayer._current + "...");
ArgonPlayer._qualityChangeTime = ArgonPlayer._player.currentTime;
- window.fetch("/api/get_audio_files.php?_=" + ArgonPlayer._current).then((a) => {
- a.text().then((b) => {
- let data = JSON.parse(b);
- ArgonPlayer._currentQuality = quality;
- ArgonPlayer._player.src = data[ArgonPlayer._currentQuality];
- log("Playing " + ArgonPlayer._current);
- ArgonPlayer._player.play().catch(e => {
- console.error(e);
- alert("An error occurred while trying to play this song. Please try again later.");
- }).then(() => {
- ArgonPlayer._player.currentTime = ArgonPlayer._qualityChangeTime;
- ArgonPlayer._endTriggered = false;
- ArgonPlayer._qualityGoingDown = false;
- });
+ ArgonPlayer._currentQuality = quality;
+ // noinspection JSUnresolvedVariable,JSUnresolvedFunction
+ ELAC.quickBlob("https://" + (AppName === "Argon" ? "mediacdn.argon.minteck.org" : "music-audio-media01.familine.minteck.org") + "/" + song + "/" + ArgonPlayer._currentQuality + ".elac", 0).then((blob) => {
+ ArgonPlayer._player.src = blob;
+ log("Playing " + ArgonPlayer._current);
+ ArgonPlayer._player.play().catch(e => {
+ console.error(e);
+ if (e.name !== "NotAllowedError") alert("An error occurred while trying to play this song. Please try again later.");
+ }).then(() => {
+ ArgonPlayer._player.currentTime = ArgonPlayer._qualityChangeTime;
+ ArgonPlayer._endTriggered = false;
+ ArgonPlayer._qualityGoingDown = false;
});
});
},
play: (song) => {
+ document.body.classList.add("playing");
ArgonPlayer._current = song;
document.getElementById("player-artwork").src = "";
@@ -85,28 +84,26 @@ _argonLoadedHooks.push(function ArgonStartupPlayer() {
}
log("Resolving track " + song + "...");
- window.fetch("/api/get_audio_files.php?_=" + song).then((a) => {
- a.text().then((b) => {
- let data = JSON.parse(b);
- if (ArgonPlayer._preferredQualityPreference[0] === "2") {
- ArgonPlayer._currentQuality = "originalpcm";
- } else if (ArgonPlayer._preferredQualityPreference[0] === "0") {
- ArgonPlayer._currentQuality = "high";
- } else {
- ArgonPlayer._currentQuality = ArgonPlayer._preferredQualityPreference[1];
+ if (ArgonPlayer._preferredQualityPreference[0] === "2") {
+ ArgonPlayer._currentQuality = "original";
+ } else if (ArgonPlayer._preferredQualityPreference[0] === "0") {
+ ArgonPlayer._currentQuality = "high";
+ } else {
+ ArgonPlayer._currentQuality = ArgonPlayer._preferredQualityPreference[1];
+ }
+ // noinspection JSUnresolvedVariable,JSUnresolvedFunction
+ ELAC.quickBlob("https://" + (AppName === "Argon" ? "mediacdn.argon.minteck.org" : "music-audio-media01.familine.minteck.org") + "/" + song + "/" + ArgonPlayer._currentQuality + ".elac", 0).then((blob) => {
+ ArgonPlayer._player.src = blob;
+ log("Playing " + song);
+ ArgonPlayer._player.play().catch(e => {
+ if (e.name !== "DOMException") {
+ console.error(e);
+ if (e.name !== "NotAllowedError") alert("An error occurred while trying to play this song. Please try again later.");
}
- ArgonPlayer._player.src = data[ArgonPlayer._currentQuality];
- log("Playing " + song);
- ArgonPlayer._player.play().catch(e => {
- if (e.name !== "DOMException") {
- console.error(e);
- alert("An error occurred while trying to play this song. Please try again later.");
- }
- }).then(() => {
- ArgonPlayer._endTriggered = false;
- });
+ }).then(() => {
+ ArgonPlayer._endTriggered = false;
});
- });
+ })
},
shuffle: () => {