diff --git a/extensions/amavis_quarantine/main.py b/extensions/amavis_quarantine/main.py index fd16676c2..892ecb0e1 100644 --- a/extensions/amavis_quarantine/main.py +++ b/extensions/amavis_quarantine/main.py @@ -33,6 +33,10 @@ def init(): deflt="/var/amavis/amavisd.sock", help=_("Path to the PDP server socket (if unix mode)")) + parameters.register_user("MESSAGES_PER_PAGE", type="int", deflt=40, + label=_("Number of displayed emails per page"), + help=_("Sets the maximum number of messages displayed in a page")) + def destroy(): events.unregister("UserMenuDisplay", menu) parameters.unregister_app("amavis_quarantine") diff --git a/extensions/amavis_quarantine/views.py b/extensions/amavis_quarantine/views.py index c96036953..b60b3359b 100644 --- a/extensions/amavis_quarantine/views.py +++ b/extensions/amavis_quarantine/views.py @@ -13,7 +13,7 @@ from django.core.urlresolvers import reverse from django.contrib.auth.decorators \ import login_required from modoboa.lib import _render, _ctx_ok, _ctx_ko, decode, getctx -from modoboa.lib import db +from modoboa.lib import db, parameters from modoboa.admin.models import Mailbox from lib import AMrelease from templatetags.amextras import * @@ -52,7 +52,9 @@ def _listing(request, internal=False, filter=None): pageid = request.GET.has_key("page") and int(request.GET["page"]) or 1 request.session["page"] = pageid # ?? nécessaire - lst = SQLlisting(filter, baseurl="listing/", empty=internal) + lst = SQLlisting(filter, baseurl="listing/", empty=internal, + elems_per_page=int(parameters.get_user(request.user, + "MESSAGES_PER_PAGE"))) if internal: return lst.render(request, pageid=int(pageid)) page = lst.paginator.getpage(pageid)