-
Jonathan Weth authoredJonathan Weth authored
tables.py 1.10 KiB
from django.template.loader import render_to_string
from django.utils.translation import gettext_lazy as _
import django_tables2 as tables
from django_tables2.utils import A
class GroupRoleTable(tables.Table):
class Meta:
attrs = {"class": "highlight"}
name = tables.LinkColumn("edit_excuse_type", args=[A("id")])
edit = tables.LinkColumn(
"edit_group_role",
args=[A("id")],
text=_("Edit"),
attrs={"a": {"class": "btn-flat waves-effect waves-orange orange-text"}},
)
delete = tables.LinkColumn(
"delete_group_role",
args=[A("id")],
text=_("Delete"),
attrs={"a": {"class": "btn-flat waves-effect waves-red red-text"}},
)
def render_name(self, value, record):
context = dict(role=record)
return render_to_string("alsijil/group_role/chip.html", context)
def before_render(self, request):
if not request.user.has_perm("alsijil.edit_grouprole_rule"):
self.columns.hide("edit")
if not request.user.has_perm("alsijil.delete_grouprole_rule"):
self.columns.hide("delete")