diff options
Diffstat (limited to 'public/assets/js/lib/views/mail/mailbox.js')
| -rw-r--r-- | public/assets/js/lib/views/mail/mailbox.js | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/public/assets/js/lib/views/mail/mailbox.js b/public/assets/js/lib/views/mail/mailbox.js index 2f822aa..860d200 100644 --- a/public/assets/js/lib/views/mail/mailbox.js +++ b/public/assets/js/lib/views/mail/mailbox.js @@ -2,6 +2,7 @@ var MailboxView = View.extend({ el: "#messages", events: { + 'click .discard_link': 'discard', }, action: "/api/mailbox/", @@ -19,17 +20,20 @@ var MailboxView = View.extend({ }, populate: function(data){ - $("body").removeClass('loading') this.boxlist.load(data.boxes) var user = data.user var max = data.messages.length-1 + if (data.messages.length) { + $("#no_messages").hide() + } data.messages.forEach(function(message, i){ - var $row = $( this.parse(message, user) ) + var $row = this.parse(message, user) if (i === 0) $row.addClass("first") if (i === max) $row.addClass("last") this.$el.append($row) }.bind(this)) + $("body").removeClass('loading') }, parse: function(message, user){ @@ -37,7 +41,7 @@ var MailboxView = View.extend({ var size = hush_size(message.size) var id = message.id - var is_sender = message.sender == user.username + var is_sender = message.sender === user.username var t = this.template .replace(/{{id}}/g, message.id) .replace(/{{to}}/g, is_sender ? "to " : "") @@ -48,7 +52,22 @@ var MailboxView = View.extend({ .replace(/{{date_class}}/g, carbon_date(message.lastmodified) ) .replace(/{{size}}/g, size[1] ) .replace(/{{size_class}}/g, size[0] ) - return t + var $t = $(t) + if (is_sender) { + $t.find('reply_link').remove() + } + return $t }, + discard: function(e){ + var id = $(e.target).data('id') + $.ajax({ + method: 'delete', + url: '/api/message/' + id, + success: function(){ window.location.reload() }, + error: function(){ window.location.reload() }, + }) + }, + + }) |
