feat: Add functionality to move selected series between cases with a new form and UI enhancements

This commit is contained in:
Ross
2026-04-27 22:16:06 +01:00
parent 3772846e55
commit 70ea3788ca
4 changed files with 256 additions and 56 deletions
+21
View File
@@ -117,6 +117,26 @@ class CaseSelect(Select):
pass
class MoveSelectedSeriesForm(Form):
destination_case = ModelChoiceField(
queryset=Case.objects.none(),
widget=CaseSelect(attrs={"class": "form-select form-select-sm"}),
label="Move selected series to case",
required=True,
)
def __init__(self, *args, **kwargs):
user = kwargs.pop("user", None)
source_case = kwargs.pop("source_case", None)
super().__init__(*args, **kwargs)
available_cases = get_cases_available_to_user(user)
if source_case is not None:
available_cases = available_cases.exclude(pk=source_case.pk)
self.fields["destination_case"].queryset = available_cases.order_by("pk")
class ConditionForm(ModelForm):
class Meta:
model = Condition
@@ -268,6 +288,7 @@ class CaseCollectionForm(ModelForm):
"exam_mode",
"self_review",
"feedback_once_collection_complete",
"case_query_messaging_enabled",
"viewer_mode",
"question_time_limit",
"prerequisites",