mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
X-Amavis-Alert is now displayed apart, just before the headers and using a bootstrap alert box.
see #234
This commit is contained in:
@@ -42,7 +42,7 @@ def get_nb_requests(user):
|
||||
doms = user.get_domains()
|
||||
regexp = "(%s)" % '|'.join(map(lambda dom: dom.name, doms))
|
||||
doms_q = Q(rid__email__regex=regexp)
|
||||
rp &= doms_q
|
||||
rq &= doms_q
|
||||
return len(Msgrcpt.objects.filter(rq))
|
||||
|
||||
class AMrelease(object):
|
||||
|
||||
@@ -97,17 +97,31 @@ class SQLlisting(EmailListing):
|
||||
class SQLemail(Email):
|
||||
def __init__(self, msg, *args, **kwargs):
|
||||
super(SQLemail, self).__init__(msg, *args, **kwargs)
|
||||
fields = ["X-Amavis-Alert", "Subject", "From", "To", "Cc", "Date"]
|
||||
fields = ["Subject", "From", "To", "Cc", "Date"]
|
||||
for f in fields:
|
||||
label = f
|
||||
if not msg.has_key(f):
|
||||
f = f.upper()
|
||||
if not msg.has_key(f):
|
||||
self.headers += [{"name" : label, "value" : ""}]
|
||||
continue
|
||||
self.headers += [{"name" : label, "value" : msg[f]}]
|
||||
self.headers += [{"name" : label, "value" : self.get_header(msg, f)}]
|
||||
try:
|
||||
label = re.sub("-", "_", label)
|
||||
setattr(self, label, msg[f])
|
||||
except:
|
||||
pass
|
||||
qreason = self.get_header(msg, "X-Amavis-Alert")
|
||||
self.qtype = ""
|
||||
self.qreason = ""
|
||||
if self.qreason != "":
|
||||
self.qtype, self.qreason = qreason.split(',', 2)
|
||||
|
||||
def get_header(self, msg, name):
|
||||
if msg.has_key(name):
|
||||
return msg[name]
|
||||
name = name.upper()
|
||||
if msg.has_key(name):
|
||||
return msg[name]
|
||||
return ""
|
||||
|
||||
def render_headers(self, **kwargs):
|
||||
return render_to_string("amavis_quarantine/mailheaders.html", {
|
||||
"qtype" : self.qtype, "qreason" : self.qreason,
|
||||
"headers" : self.headers,
|
||||
})
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
{% load i18n %}
|
||||
{% block emailheaders %}
|
||||
<table id="emailheaders" class="table table-striped table-bordered table-condensed">
|
||||
{% for hdr in headers %}
|
||||
<tr><th width="130px">{% trans hdr.name %}</th><td>{{ hdr.value }}</td></tr>
|
||||
{% endfor %}
|
||||
{% block extraheaders %}{% endblock %}
|
||||
</table>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user