From a8380f380d1cf7b79fd739a689a2401e2fb1e2ce Mon Sep 17 00:00:00 2001 From: tonio Date: Fri, 12 Nov 2010 22:22:48 +0100 Subject: [PATCH] Fixed #86 New user parameter to specify number of emails per page. --- extensions/webmail/main.py | 3 +++ extensions/webmail/views.py | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/extensions/webmail/main.py b/extensions/webmail/main.py index 6dc90f303..75a341863 100644 --- a/extensions/webmail/main.py +++ b/extensions/webmail/main.py @@ -51,6 +51,9 @@ def init(): label=_("Default message display mode"), values=[("html", "html"), ("plain", "text")], help=_("The default mode used when displaying a message")) + 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) diff --git a/extensions/webmail/views.py b/extensions/webmail/views.py index 92378d5be..60eb9fece 100644 --- a/extensions/webmail/views.py +++ b/extensions/webmail/views.py @@ -54,8 +54,10 @@ def folder(request, name, updatenav=True): optparams["criteria"] = request.session["criteria"] else: optparams["reset"] = True + optparams["elems_per_page"] = int(parameters.get_user(request.user, "MESSAGES_PER_PAGE")) lst = ImapListing(request.user, request.session["password"], - baseurl=name, folder=name, order=order, **optparams) + baseurl=name, folder=name, order=order, + **optparams) page = lst.paginator.getpage(request.session["page"]) dico = {"folders" : __render_folders(lst.mbc, request),