add admin edit link

This commit is contained in:
Ross
2024-01-23 10:53:20 +00:00
parent a922078e4a
commit 2427998bd9
4 changed files with 19 additions and 4 deletions
+11 -1
View File
@@ -206,9 +206,15 @@ class UserUserTable(tables.Table):
edit = tables.Column( edit = tables.Column(
empty_values=(), empty_values=(),
linkify={"viewname": "account_update", "args": [A("username")]}, linkify={"viewname": "account_update", "args": [A("username")]},
orderable=True, orderable=False,
verbose_name="Edit", verbose_name="Edit",
) )
admin_edit = tables.Column(
empty_values=(),
linkify={"viewname": "admin:auth_user_change", "args": [A("pk")]},
orderable=False,
verbose_name="Admin",
)
user_groups = tables.ManyToManyColumn(verbose_name="Groups", linkify_item=True) user_groups = tables.ManyToManyColumn(verbose_name="Groups", linkify_item=True)
@@ -233,6 +239,7 @@ class UserUserTable(tables.Table):
"user_groups", "user_groups",
"date_joined", "date_joined",
"edit", "edit",
"admin_edit",
) )
def __init__(self, data=None, *args, **kwargs): def __init__(self, data=None, *args, **kwargs):
@@ -251,6 +258,9 @@ class UserUserTable(tables.Table):
def render_edit(self, value, record): def render_edit(self, value, record):
return "Edit" return "Edit"
def render_admin_edit(self, value, record):
return "Admin"
def render_user(self, value, record): def render_user(self, value, record):
span_class = "" span_class = ""
if record.userprofile.peninsula_trainee: if record.userprofile.peninsula_trainee:
+2
View File
@@ -23,6 +23,8 @@ class ItemForm(ModelForm):
radiology_category = ModelMultipleChoiceField(queryset=RadiologyCategory.objects.all()) radiology_category = ModelMultipleChoiceField(queryset=RadiologyCategory.objects.all())
oncology_category = ModelMultipleChoiceField(queryset=OncologyCategory.objects.all()) oncology_category = ModelMultipleChoiceField(queryset=OncologyCategory.objects.all())
class Meta: class Meta:
model = Item model = Item
+2 -2
View File
@@ -18,7 +18,7 @@
{% endif %} {% endif %}
{% if items %} {% if items and assessor %}
<a href="{% url 'rcr:radiology_update_next_view' %}">Click to assess next item</a> <a href="{% url 'rcr:radiology_update_next_view' %}">Click to assess next item</a>
@@ -28,7 +28,7 @@
<table> <table>
{% for item in items %} {% for item in items %}
<tr class="{{item.content_type}} {% if item.completed_radiology %} completed-radiology{% endif %}{% if item.completed_radiology %} completed-oncology{% endif %}"> <tr class="{{item.content_type}} {% if item.completed_radiology %} completed-radiology{% endif %}{% if item.completed_radiology %} completed-oncology{% endif %}">
<td class="{{item.specialty}}"> <td class="{{item.specialty}}" title="{{item.specialty}}">
{{forloop.counter}}: {{forloop.counter}}:
</td> </td>
<td> {{item.content_type}}</td> <td> {{item.content_type}}</td>
+4 -1
View File
@@ -22,7 +22,7 @@ from django.core.exceptions import PermissionDenied
def user_is_rcr(function): def user_is_rcr(function):
def wrap(request, *args, **kwargs): def wrap(request, *args, **kwargs):
if ( if (
request.user.groups.filter(Q(name="rcr_radiology_assessor") | Q(name="rcr_oncology_assessor")).exists() request.user.groups.filter(Q(name="rcr_radiology_assessor") | Q(name="rcr_oncology_assessor")| Q(name="rcr_assessor")).exists()
or request.user.is_superuser or request.user.is_superuser
): ):
return function(request, *args, **kwargs) return function(request, *args, **kwargs)
@@ -83,6 +83,9 @@ def radiology_index(request, assigned=True, user_pk: int | None = None):
items = Item.objects.filter(assigned_to_radiology=assessor).exclude(completed_radiology=True) items = Item.objects.filter(assigned_to_radiology=assessor).exclude(completed_radiology=True)
elif assessor.groups.filter(name="rcr_oncology_assessor").exists(): elif assessor.groups.filter(name="rcr_oncology_assessor").exists():
items = Item.objects.filter(assigned_to_oncology=assessor).exclude(completed_oncology=True) items = Item.objects.filter(assigned_to_oncology=assessor).exclude(completed_oncology=True)
elif assessor.groups.filter(name="rcr_assessor").exists():
items = Item.objects.all()
assessor = None
else: else:
raise Http404 raise Http404