From 6bad341f30ade0824fec92892d2e1cea5fe38368 Mon Sep 17 00:00:00 2001 From: Fredrik Jonsson <frjo@xdeb.org> Date: Fri, 31 Jan 2020 11:40:29 +0100 Subject: [PATCH] Allow staff reviewers to be deleted. --- opentech/apply/funds/forms.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/opentech/apply/funds/forms.py b/opentech/apply/funds/forms.py index be01520db..dae9cf0ec 100644 --- a/opentech/apply/funds/forms.py +++ b/opentech/apply/funds/forms.py @@ -6,7 +6,6 @@ from django import forms from django.utils.text import slugify from django.utils.translation import ugettext_lazy as _ from django.utils.safestring import mark_safe -from django_select2.forms import Select2Widget from opentech.apply.categories.models import MetaTerm from opentech.apply.users.models import User @@ -239,6 +238,8 @@ class UpdateReviewersForm(ApplicationSubmissionModelForm): for role, reviewer in assigned_roles.items(): if reviewer: AssignedReviewers.objects.update_role(role, reviewer, instance) + else: + AssignedReviewers.objects.filter(role=role, submission=instance).delete() # 2. Update non-role reviewers # 2a. Remove those not on form @@ -302,6 +303,9 @@ class BatchUpdateReviewersForm(forms.Form): for role, reviewer in assigned_roles.items(): if reviewer: AssignedReviewers.objects.update_role(role, reviewer, *submissions) + else: + for submission in submissions: + AssignedReviewers.objects.filter(role=role, submission=submission).delete() return None @@ -314,9 +318,6 @@ def make_role_reviewer_fields(): field_name = 'role_reviewer_' + slugify(str(role)) field = forms.ModelChoiceField( queryset=staff_reviewers, - widget=Select2Widget(attrs={ - 'data-placeholder': 'Select a reviewer', - }), required=False, label=mark_safe(render_icon(role.icon) + f'{role.name} Reviewer'), ) -- GitLab