summaryrefslogtreecommitdiff
path: root/public/assets/js/lib/views/details
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/js/lib/views/details')
-rw-r--r--public/assets/js/lib/views/details/commentform.js3
-rw-r--r--public/assets/js/lib/views/details/settings.js33
2 files changed, 34 insertions, 2 deletions
diff --git a/public/assets/js/lib/views/details/commentform.js b/public/assets/js/lib/views/details/commentform.js
index e30193d..a14caa3 100644
--- a/public/assets/js/lib/views/details/commentform.js
+++ b/public/assets/js/lib/views/details/commentform.js
@@ -4,7 +4,7 @@ var CommentForm = FormView.extend({
events: {
"focus textarea": 'focus',
- "focus input[type=file]": 'focus',
+ "mouseup input[type=file]": 'focus',
},
action: "",
@@ -24,6 +24,7 @@ var CommentForm = FormView.extend({
focus: function(){
this.$el.addClass('focused')
+ $("[name=comment]").prop("required", false)
},
validate: function(){
diff --git a/public/assets/js/lib/views/details/settings.js b/public/assets/js/lib/views/details/settings.js
index eac1520..1d048ab 100644
--- a/public/assets/js/lib/views/details/settings.js
+++ b/public/assets/js/lib/views/details/settings.js
@@ -6,6 +6,7 @@ var ThreadSettingsForm = FormView.extend({
"click": "hide",
"click .inner": "stopPropagation",
"click .thread_delete": "deleteThread",
+ "click .file_delete": "deleteFile",
"click .close_link": "hide",
"change [name=color]": "changeColor",
"change [name=privacy]": "toggleAllowed",
@@ -35,6 +36,7 @@ var ThreadSettingsForm = FormView.extend({
var display = thread.display
this.thread = thread
+ this.files = data.files
this.action = "/api/thread/" + thread.id
this.allowed = (this.thread.allowed || "").split(" ").map(s => s.trim()).filter(s => !! s)
@@ -67,7 +69,6 @@ var ThreadSettingsForm = FormView.extend({
var datetime = verbose_date(file.date, true)
var date_class = carbon_date(file.date)
var link = make_link(file)
-
var t = this.filesTemplate.replace(/{{username}}/g, file.username)
.replace(/{{link}}/g, link)
.replace(/{{filename}}/g, file.filename)
@@ -233,4 +234,34 @@ var ThreadSettingsForm = FormView.extend({
}
},
+ deleteFile: function(e){
+ e.preventDefault()
+ e.stopPropagation()
+ var $el = $(e.currentTarget)
+ var $parent = $el.closest('.file')
+ var file_id = $el.data('id')
+ if (! file_id) return
+ var data = this.options.parent.data
+ var file = data.files.find(f => f.id === file_id)
+ if (! file) return
+ var msg = "Are you sure you want to delete this file?\n\n#" + file_id + ' "' + sanitize(file.filename) + '"'
+ var should_remove = confirm(msg)
+ if (should_remove) {
+ $.ajax({
+ method: "DELETE",
+ url: "/api/file/" + file_id,
+ headers: { "csrf-token": $("[name=_csrf]").attr("value") },
+ data: JSON.stringify({ csrf: csrf() }),
+ dataType: "application/json",
+ success: function(data){
+ console.log(data)
+ $parent.remove()
+ },
+ error: function(data){
+ $parent.remove()
+ },
+ })
+ }
+ },
+
}) \ No newline at end of file