From b0a40a8e63542a6e54049c847df9c5dac058860d Mon Sep 17 00:00:00 2001 From: Valentin Deniaud Date: Wed, 3 Nov 2021 11:11:02 +0100 Subject: [PATCH 2/4] tables: simplify PermissionLinkColumn (#57955) --- src/authentic2/manager/tables.py | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/authentic2/manager/tables.py b/src/authentic2/manager/tables.py index 20bcf311..7d271efd 100644 --- a/src/authentic2/manager/tables.py +++ b/src/authentic2/manager/tables.py @@ -31,15 +31,11 @@ User = get_user_model() class PermissionLinkColumn(tables.LinkColumn): - def __init__(self, viewname, **kwargs): - self.permission = kwargs.pop('permission', None) - super().__init__(viewname, **kwargs) - def render(self, value, record, bound_column, **kwargs): - if self.permission: - request = StoreRequestMiddleware.get_request() - if request and not request.user.has_perm(self.permission, record): - return value + request = StoreRequestMiddleware.get_request() + permission = '%s.view_%s' % (record._meta.app_label, record._meta.model_name) + if request and not request.user.has_perm(permission, record): + return value return super().render(value, record, bound_column) @@ -66,7 +62,6 @@ class UserLinkColumn(PermissionLinkColumn): class UserTable(tables.Table): link = UserLinkColumn( - permission='custom_user.view_user', verbose_name=_('User'), accessor='get_full_name', order_by=('last_name', 'first_name', 'email', 'username'), -- 2.30.2