diff --git a/extensions/amavis_quarantine/main.py b/extensions/amavis_quarantine/main.py index 19163b9f9..d57ea5f6a 100644 --- a/extensions/amavis_quarantine/main.py +++ b/extensions/amavis_quarantine/main.py @@ -294,7 +294,17 @@ def process(request): def search(request): if not request.GET.has_key("pattern"): return - filter = "&msgs.from_addr LIKE '%%%s%%'" % request.GET["pattern"] + if request.GET.has_key("criteria"): + criteria = request.GET["criteria"].split(',') + else: + criteria = ["from_addr"] + filter = "" + pattern = re.escape(request.GET["pattern"]) + for c in criteria: + if filter != "": + filter += " OR " + filter += "msgs.%s LIKE '%%%s%%'" % (c, pattern) + filter = "&(%s)" % filter cursor = lookup(filter) ctx = {"status" : "ok", "content" : render_listing(request, cursor)} return HttpResponse(simplejson.dumps(ctx), diff --git a/extensions/amavis_quarantine/templates/index.html b/extensions/amavis_quarantine/templates/index.html index 75b4253a0..d96164357 100644 --- a/extensions/amavis_quarantine/templates/index.html +++ b/extensions/amavis_quarantine/templates/index.html @@ -2,6 +2,7 @@ {% load i18n %} {% load amextras %} {% block html_head %} + {% endblock %} @@ -132,15 +158,23 @@ window.addEvent("domready", function() { {% endfor %} {% endif %} - +
{% url extensions.amavis_quarantine.main.process as actionurl %}
@@ -149,4 +183,5 @@ window.addEvent("domready", function() { {{ content }}
+ {% endblock %} \ No newline at end of file diff --git a/static/pics/search.png b/static/pics/search.png new file mode 100644 index 000000000..fd7f0b07a Binary files /dev/null and b/static/pics/search.png differ diff --git a/static/stylesheets/basic.css b/static/stylesheets/basic.css index 99744d7ab..16c8b6257 100644 --- a/static/stylesheets/basic.css +++ b/static/stylesheets/basic.css @@ -136,14 +136,18 @@ body { } #content2 { - - } #menubar { margin-left: 20px; display: table; margin-bottom: 15px; + width: 730px; + position: absolute; +} + +#form-container { + margin-top: 60px; } #menu2 {