From a3ea75ff223a1ea12b379a6e33df2180cc574280 Mon Sep 17 00:00:00 2001 From: tonio Date: Fri, 5 Mar 2010 13:53:14 +0100 Subject: [PATCH] Ticket #33 --- extensions/webmail/main.py | 6 ++++++ extensions/webmail/templates/index.html | 9 ++++++++- extensions/webmail/templates/viewmail.html | 2 +- extensions/webmail/templatetags/webextras.py | 4 ++++ extensions/webmail/urls.py | 1 + static/js/common.js | 9 ++------- 6 files changed, 22 insertions(+), 9 deletions(-) diff --git a/extensions/webmail/main.py b/extensions/webmail/main.py index 06157f57e..b87224cd8 100644 --- a/extensions/webmail/main.py +++ b/extensions/webmail/main.py @@ -163,6 +163,12 @@ def move(request): mbc.move(",".join(msgset), fdname, request.GET["to"]) return folder(request, fdname, False) +@login_required +def delete(request, fdname, mail_id): + mbc = IMAPconnector(request) + mbc.move(mail_id, fdname, "Trash") + return folder(request, fdname, False) + @login_required def empty(request, name): mbc = IMAPconnector(request) diff --git a/extensions/webmail/templates/index.html b/extensions/webmail/templates/index.html index fa3f6354f..988f20e67 100644 --- a/extensions/webmail/templates/index.html +++ b/extensions/webmail/templates/index.html @@ -160,7 +160,14 @@ tr.selected { updatelisting(resp, "hidden"); $$("a[name=back]").addEvent("click", loadFolder); $$("a[name=reply]").addEvent("click", reply); - setDivHeight("mailcontent", /*$("table-container").getSize().y*/0, 0); + $$("a[name=delete]").addEvent("click", function(event) { + var lnk = event.target; + + event.stop(); + new Request.JSON({url: lnk.get("href"), + onSuccess: get_callback("folder")}).get(); + }); + setDivHeight("mailcontent", 5, 0); }); compose_callback = function(resp) { diff --git a/extensions/webmail/templates/viewmail.html b/extensions/webmail/templates/viewmail.html index 640958ad4..f5798cb47 100644 --- a/extensions/webmail/templates/viewmail.html +++ b/extensions/webmail/templates/viewmail.html @@ -22,7 +22,7 @@ } #emailheaders td, #emailheaders th { - height: 20px; + height: 22px; text-align: left; padding-left: 10px; border: 1px solid #ccc; diff --git a/extensions/webmail/templatetags/webextras.py b/extensions/webmail/templatetags/webextras.py index b371fa337..c393d09c7 100644 --- a/extensions/webmail/templatetags/webextras.py +++ b/extensions/webmail/templatetags/webextras.py @@ -42,6 +42,10 @@ def viewm_menu(selection, session, mail_id, perms): "url" : "", "img" : "/static/pics/alias.png", "label" : _("Forward")}, + {"name" : "delete", + "img" : "/static/pics/remove.png", + "url" : reverse(webmail.main.delete, args=[session["folder"], mail_id]), + "label" : _("Delete")}, ] return render_to_string('main/menu.html', diff --git a/extensions/webmail/urls.py b/extensions/webmail/urls.py index e088de8ed..84a3f3374 100644 --- a/extensions/webmail/urls.py +++ b/extensions/webmail/urls.py @@ -6,6 +6,7 @@ urlpatterns = patterns('mailng.extensions.webmail.main', (r'^move/$', "move"), (r'^empty/(?P.+)/', "empty"), (r'^(?P.+)/(?P[\w\-\+]+)/part/$', 'getattachment'), + (r'^(?P.+)/(?P[\w\-\+]+)/delete/$', 'delete'), (r'^(?P.+)/(?P[\w\-\+]+)/content/$', 'getmailcontent'), (r'^(?P.+)/(?P[\w\-\+]+)/reply/$', 'reply'), (r'^(?P.+)/(?P[\w\-\+]+)/$', 'viewmail'), diff --git a/static/js/common.js b/static/js/common.js index 46c13f0df..2f64d6e4e 100644 --- a/static/js/common.js +++ b/static/js/common.js @@ -210,15 +210,10 @@ confirmation = function(question, action, callback) { setDivHeight = function(id, extrah, modulo) { var contentsize = $(document.body).getSize().y - $("topmenubar").getSize().y - - $("header").getSize().y + - $("header").getSize().y + - $("footer").getSize().y - extrah; - if ($("navbar")) { - contentsize -= $("navbar").getSize().y; - } - if ($("thead")) { - contentsize -= $("thead").getSize().y; - } if (modulo) { contentsize -= contentsize % modulo; }