summaryrefslogtreecommitdiff
path: root/public/assets/js/lib/views/details/audio.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/js/lib/views/details/audio.js')
-rw-r--r--public/assets/js/lib/views/details/audio.js9
1 files changed, 9 insertions, 0 deletions
diff --git a/public/assets/js/lib/views/details/audio.js b/public/assets/js/lib/views/details/audio.js
index 0f81bb9..6c20e78 100644
--- a/public/assets/js/lib/views/details/audio.js
+++ b/public/assets/js/lib/views/details/audio.js
@@ -17,6 +17,7 @@ var audio = (function () {
audio.build();
el.src = music[0];
};
+
audio.index = function () {
music = [];
var links = document.querySelectorAll("a");
@@ -32,6 +33,7 @@ var audio = (function () {
audio.set_cursor();
}
};
+
audio.build = function () {
if (built) return;
built = true;
@@ -42,6 +44,7 @@ var audio = (function () {
parent.appendChild(el);
document.body.addEventListener("keydown", audio.keydown);
};
+
audio.destroy = function () {
el.pause();
el = null;
@@ -49,6 +52,7 @@ var audio = (function () {
document.body.removeEventListener("keydown", audio.keydown);
built = false;
};
+
audio.play = function (index) {
playing = true;
current_index = (parseInt(index) + music.length) % music.length;
@@ -56,21 +60,26 @@ var audio = (function () {
el.play();
audio.set_cursor();
};
+
audio.set_cursor = function () {
selected = document.querySelector(".playing");
if (selected) selected.classList.remove("playing");
music[current_index].classList.add("playing");
};
+
audio.prev = function () {
audio.play(current_index - 1);
};
+
audio.next = function () {
audio.play(current_index + 1);
};
+
audio.toggle = function () {
if (el.paused) el.play();
else el.pause();
};
+
audio.keydown = function (e) {
function element_is_text_input(el) {
var tagName = el.tagName.toLowerCase();