From cc52c708db6489e6717bd7763bfe2dcbd5c16ff8 Mon Sep 17 00:00:00 2001 From: Lance Edgar Date: Mon, 2 Mar 2026 18:26:21 -0600 Subject: [PATCH] fix: expose default grid pagesize in appinfo config --- src/wuttaweb/templates/appinfo/configure.mako | 20 +++++++++++++++++++ src/wuttaweb/views/settings.py | 7 +++++++ tests/views/test_master.py | 2 ++ 3 files changed, 29 insertions(+) diff --git a/src/wuttaweb/templates/appinfo/configure.mako b/src/wuttaweb/templates/appinfo/configure.mako index fc0d886..2cc4dc9 100644 --- a/src/wuttaweb/templates/appinfo/configure.mako +++ b/src/wuttaweb/templates/appinfo/configure.mako @@ -158,6 +158,24 @@ +

Grids

+
+ + + + + + + + +
+

Web Libraries

@@ -348,6 +366,8 @@ ThisPageData.validators.push(ThisPage.methods.timezoneValidate) + ThisPageData.gridPagesizeOptions = ${json.dumps(grid_pagesize_options)|n} + ThisPageData.weblibs = ${json.dumps(weblibs or [])|n} ThisPageData.editWebLibraryShowDialog = false diff --git a/src/wuttaweb/views/settings.py b/src/wuttaweb/views/settings.py index 5b1e293..04a529e 100644 --- a/src/wuttaweb/views/settings.py +++ b/src/wuttaweb/views/settings.py @@ -228,6 +228,8 @@ class AppInfoView(MasterView): # pylint: disable=abstract-method {"name": f"{self.config.appname}.email.default.to"}, {"name": f"{self.config.appname}.email.feedback.subject"}, {"name": f"{self.config.appname}.email.feedback.to"}, + # grids + {"name": "wuttaweb.grids.default_pagesize", "type": int}, ] def getval(key): @@ -282,6 +284,11 @@ class AppInfoView(MasterView): # pylint: disable=abstract-method handlers = [{"spec": spec} for spec in handlers] context["menu_handlers"] = handlers + # add pagesize options + g = self.make_grid() + context["grid_pagesize_options"] = g.get_pagesize_options() + context["grid_pagesize_default"] = g.get_pagesize() + # add `weblibs` to context, based on config values weblibs = self.get_weblibs() for key in weblibs: diff --git a/tests/views/test_master.py b/tests/views/test_master.py index db1491e..58d1c29 100644 --- a/tests/views/test_master.py +++ b/tests/views/test_master.py @@ -1785,6 +1785,8 @@ class TestMasterView(WebTestCase): kw = original_context(**kw) kw["menu_handlers"] = [] kw["default_timezone"] = "UTC" + kw["grid_pagesize_options"] = [10, 20, 50] + kw["grid_pagesize_default"] = 20 return kw with patch.object(view, "configure_get_context", new=get_context):