summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2018-05-12 00:20:50 +0200
committerJules Laplace <julescarbon@gmail.com>2018-05-12 00:20:50 +0200
commit20b98e565e704ab27d8745a8dcc852b4ee3effc4 (patch)
treefa600aa188f1ea8fdfe78fe6b1f81c378254a29d
parent798890c4e73981153e856668e0181ef384dea2a5 (diff)
slightly cleaner audio/files behavior
-rw-r--r--public/assets/js/lib/views/details/audio.js6
-rw-r--r--public/assets/js/lib/views/details/files.js9
2 files changed, 11 insertions, 4 deletions
diff --git a/public/assets/js/lib/views/details/audio.js b/public/assets/js/lib/views/details/audio.js
index c993a5c..aee8964 100644
--- a/public/assets/js/lib/views/details/audio.js
+++ b/public/assets/js/lib/views/details/audio.js
@@ -5,6 +5,7 @@ var audio = (function(){
var links, comment, parent
var selected = false
var playing = false
+ var built = false
audio.init = function () {
comment = document.querySelector("#comment")
@@ -12,6 +13,7 @@ var audio = (function(){
audio.index()
audio.build()
+ el.src = music[0]
}
audio.index = function () {
music = []
@@ -29,11 +31,12 @@ var audio = (function(){
}
}
audio.build = function () {
+ if (built) return
+ built = true
el = audio.el = document.createElement("audio")
el.setAttribute("controls", true)
el.addEventListener("loadeddata", () => { if (selected) el.play() })
el.addEventListener("ended", audio.next)
- el.src = music[0]
parent.appendChild(el)
document.body.addEventListener("keydown", audio.keydown)
}
@@ -42,6 +45,7 @@ var audio = (function(){
el = null
parent.removeChild(el)
document.body.removeEventListener("keydown", audio.keydown)
+ built = false
}
audio.play = function (index) {
playing = true
diff --git a/public/assets/js/lib/views/details/files.js b/public/assets/js/lib/views/details/files.js
index 3cfd1c9..00ca201 100644
--- a/public/assets/js/lib/views/details/files.js
+++ b/public/assets/js/lib/views/details/files.js
@@ -20,8 +20,10 @@ var FilesView = FormView.extend({
this.$el.hide()
}
var total = 0, has_music = false
- this.files = files
- files.forEach(function(file){
+
+ this.files = files || this.files
+ this.thread = thread || this.thread
+ this.files.forEach(function(file){
if (is_image(file.filename)) {
// return
}
@@ -36,7 +38,8 @@ var FilesView = FormView.extend({
audio.init()
}
- this.resort(thread.settings.sort || "name_asc")
+ const sort = this.thread.settings.sort || "name_asc"
+ this.resort(sort)
},
files: [],