diff --git a/app/assets/javascripts/shared/tasks-pagination.js b/app/assets/javascripts/shared/tasks-pagination.js index adc335e3..725d25fe 100644 --- a/app/assets/javascripts/shared/tasks-pagination.js +++ b/app/assets/javascripts/shared/tasks-pagination.js @@ -1,8 +1,9 @@ // Tasks page pagination // Depends on: pagination.js (PaginationCore) // Depends on globals: searchFormSubmitted +// Optional global override: TASKS_RESULTS_PER_PAGE (function() { - var RESULTS_PER_PAGE = 10; + var RESULTS_PER_PAGE = (typeof window.TASKS_RESULTS_PER_PAGE === 'number') ? window.TASKS_RESULTS_PER_PAGE : 10; function recalculatePagination() { var taskContainers = document.querySelectorAll('.govuk-grid-column-three-quarters > .govuk-\\!-margin-bottom-9'); diff --git a/app/assets/javascripts/shared/victims-pagination.js b/app/assets/javascripts/shared/victims-pagination.js index 0593c543..363b46d5 100644 --- a/app/assets/javascripts/shared/victims-pagination.js +++ b/app/assets/javascripts/shared/victims-pagination.js @@ -1,7 +1,8 @@ // Victims page pagination // Depends on: pagination.js (PaginationCore) +// Optional global override: VICTIMS_RESULTS_PER_PAGE (function() { - var RESULTS_PER_PAGE = 10; + var RESULTS_PER_PAGE = (typeof window.VICTIMS_RESULTS_PER_PAGE === 'number') ? window.VICTIMS_RESULTS_PER_PAGE : 10; function recalculatePagination() { var victimPages = document.querySelectorAll('.victims-page'); diff --git a/app/views/v50/tasks.html b/app/views/v50/tasks.html index c43147b0..f9e10ce1 100644 --- a/app/views/v50/tasks.html +++ b/app/views/v50/tasks.html @@ -928,6 +928,7 @@

+ diff --git a/app/views/v50/victims.html b/app/views/v50/victims.html index aa762781..739eabe2 100644 --- a/app/views/v50/victims.html +++ b/app/views/v50/victims.html @@ -415,6 +415,7 @@

{% block pageScripts %} + diff --git a/docs/flow-diagrams/v50-case-locked.mmd b/docs/flow-diagrams/v50-case-locked.mmd new file mode 100644 index 00000000..dc767fda --- /dev/null +++ b/docs/flow-diagrams/v50-case-locked.mmd @@ -0,0 +1,8 @@ +flowchart LR + n_v50_case_locked_self_locked["Case locked
/v50/case-locked/self-locked"] + n_v50_case_locked_by_someone_else["Case locked
/v50/case-locked/by-someone-else"] + n_v50_pcd_victim[/"/v50/pcd/victim"/] + n_v50_case_locked_by_someone_else --> n_v50_pcd_victim + n_v50_case_locked_self_locked --> n_v50_pcd_victim + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_pcd_victim external; diff --git a/docs/flow-diagrams/v50-full.mmd b/docs/flow-diagrams/v50-full.mmd new file mode 100644 index 00000000..a024e64c --- /dev/null +++ b/docs/flow-diagrams/v50-full.mmd @@ -0,0 +1,443 @@ +flowchart LR + n_v50_victim_victim_details_pmoc["Preferred method of contact
/v50/victim/victim-details/pmoc"] + n_v50_wft_meetings_victims["Victims
/v50/wft-meetings/victims"] + n_v50_other_letter_logged["Letter logged
/v50/other/letter-logged"] + n_v50_overview["Overview
/v50/overview"] + n_v50_victim_victim_details_telephone_number["Victim's telephone number
/v50/victim/victim-details/telephone-number"] + n_v50_wft_meetings_new_task_task_created["Victim onboarded
/v50/wft-meetings/new-task/task-created"] + n_v50_overview2["Overview
/v50/overview2"] + n_v50_victim_victim_details_risk_level["Domestic abuse risk level
/v50/victim/victim-details/risk-level"] + n_v50_case_locked_self_locked["Case locked
/v50/case-locked/self-locked"] + n_v50_victim_victim_details_vps_status["VPS status
/v50/victim/victim-details/vps-status"] + n_v50_pcd_call_phone_call_1["Telephone call 1
/v50/pcd/call/phone-call-1"] + n_v50_victim_index_withtasks["Victim
/v50/victim/index-withtasks"] + n_v50_victim_index_withtasks_v4["Victim
/v50/victim/index-withtasks-v4"] + n_v50_onb_manual_task["Create a task
/v50/onb/manual-task"] + n_v50_case_locked_by_someone_else["Case locked
/v50/case-locked/by-someone-else"] + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_overview3["Overview
/v50/overview3"] + n_v50_victim_victim_details_disability["Disability or access needs
/v50/victim/victim-details/disability"] + n_v50_task_updated["Victim onboarded
/v50/task-updated"] + n_v50_pcd_follow_up_email_logged["Follow-up email logged
/v50/pcd/follow-up/email-logged"] + n_v50_victim_index_notasks["Victim
/v50/victim/index-notasks"] + n_v50_victim_victim_details_contact_times["Preferred contact times
/v50/victim/victim-details/contact-times"] + n_v50_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v50/victim/case-contacts/isva"] + n_v50_onb_meeting_purpose["Task selection
/v50/onb/meeting-purpose"] + n_v50_victim_victim_details_wants_contact["Do they want to be contacted?
/v50/victim/victim-details/wants-contact"] + n_v50_victim_victim_details_previous_convictions["Previous convictions
/v50/victim/victim-details/previous-convictions"] + n_v50_wft_meetings_new_task_check_task["Check the task details are correct
/v50/wft-meetings/new-task/check-task"] + n_v50_wft_meetings_new_task_manual_task["Set a reminder
/v50/wft-meetings/new-task/manual-task"] + n_v50_pcd_follow_up_telephone_call["Follow-up telephone call
/v50/pcd/follow-up/telephone-call"] + n_v50_victim_case_information_charging_type["Change charging type
/v50/victim/case-information/charging-type"] + n_v50_overview6_vlo["Overview
/v50/overview6-vlo"] + n_v50_wft_meetings_tasks["Tasks
/v50/wft-meetings/tasks"] + n_v50_other_text_message_logged["Text message logged
/v50/other/text-message-logged"] + n_v50_pcd_call_phone_call_3["Telephone call 3 details
/v50/pcd/call/phone-call-3"] + n_v50_victim_victim_details_ethnicity["Victim ethnicity
/v50/victim/victim-details/ethnicity"] + n_v50_victim_task_details_another_task2["Victim record
/v50/victim/task-details/another-task2"] + n_v50_wft_meetings_log_offer_response_check["Tasks
/v50/wft-meetings/log-offer-response-check"] + n_v50_victim_task_details_decision_to_charge_order["Victim record
/v50/victim/task-details/decision-to-charge-order"] + n_v50_onb_check_task_vlo["Victim liaison officer
/v50/onb/check-task-vlo"] + n_v50_wft_meetings_tasks2["Tasks
/v50/wft-meetings/tasks2"] + n_v50_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v50/pcd/follow-up/not-contacted-logged"] + n_v50_overview6_vlm["Overview
/v50/overview6-vlm"] + n_v50_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v50/victim/case-contacts/idva"] + n_v50_victim_new_task_manual_task["Set a reminder
/v50/victim/new-task/manual-task"] + n_v50_other_call_logged["Telephone call logged
/v50/other/call-logged"] + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_wft_meetings_log_arranged_meeting["Tasks
/v50/wft-meetings/log-arranged-meeting"] + n_v50_victim_task_details_outcome_logged2["Victim record
/v50/victim/task-details/outcome-logged2"] + n_v50_task_assignee["Task Assignee
/v50/task-assignee"] + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_victim_victim_details_translator_needed["Translator needed
/v50/victim/victim-details/translator-needed"] + n_v50_victim_victim_details_preferred_name["Victim's preferred name
/v50/victim/victim-details/preferred-name"] + n_v50_onb_pmoc["Preferred method of contact
/v50/onb/pmoc"] + n_v50_wft_meetings_new_task_task_due_date["Task due date
/v50/wft-meetings/new-task/task-due-date"] + n_v50_victim_new_task_meeting_purpose["Task selection
/v50/victim/new-task/meeting-purpose"] + n_v50_victim_victim_details_religion["Religion or belief
/v50/victim/victim-details/religion"] + n_v50_wft_meetings_new_task_task_selection["Task selection
/v50/wft-meetings/new-task/task-selection"] + n_v50_other_email_details["Log an email
/v50/other/email-details"] + n_v50_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/pre-draft/not-contacted-reason"] + n_v50_victim_case_information_area["Change area
/v50/victim/case-information/area"] + n_v50_overview6_initial["Overview
/v50/overview6-initial"] + n_v50_victim_task_details_decision_to_charge["Victim record
/v50/victim/task-details/decision-to-charge"] + n_v50_onb_check_details["Check the details before drafting the letter
/v50/onb/check-details"] + n_v50_wft_meetings_log_meeting_outcome["Tasks
/v50/wft-meetings/log-meeting-outcome"] + n_v50_wft_meetings_log_offer_task["Tasks
/v50/wft-meetings/log-offer-task"] + n_v50_victim_victim_details_correspondence_language["Preferred correspondence language
/v50/victim/victim-details/correspondence-language"] + n_v50_victims["Victims
/v50/victims"] + n_v50_victim_victim_details_full_name["Victim's full name
/v50/victim/victim-details/full-name"] + n_v50_change_task_due_date["Change task due date
/v50/change-task-due-date"] + n_v50_pcd_send_letter_logged["Letter logged
/v50/pcd/send/letter-logged"] + n_v50_victim_victim_details_date_of_birth["Victim's date of birth
/v50/victim/victim-details/date-of-birth"] + n_v50_onb_check_details_pmoc["Preferred method of contact
/v50/onb/check-details/pmoc"] + n_v50_other_contacted_by["How did you contact the victim?
/v50/other/contacted-by"] + n_v50_victim_new_task_task_selection["Task selection
/v50/victim/new-task/task-selection"] + n_v50_vlo["Victim liaison officer
/v50/vlo"] + n_v50_victim_victim_details_power_of_attorney["Power of attorney details
/v50/victim/victim-details/power-of-attorney"] + n_v50_other_other_logged["Other communication logged
/v50/other/other-logged"] + n_v50_victim_index_withtasks_v3["Victim
/v50/victim/index-withtasks-v3"] + n_v50_wft_meetings_log_offer_response["Tasks
/v50/wft-meetings/log-offer-response"] + n_v50_other_in_person_logged["In-person meeting logged
/v50/other/in-person-logged"] + n_v50_pcd_follow_up_call_logged["Follow-up telephone call logged
/v50/pcd/follow-up/call-logged"] + n_v50_pcd_draft_task_already_exists["This task already exists
/v50/pcd/draft/task-already-exists"] + n_v50_pcd_follow_up_letter_details["Follow-up letter details
/v50/pcd/follow-up/letter-details"] + n_v50_victim_victim_details_address["Victim's address
/v50/victim/victim-details/address"] + n_v50_victim_task_details_another_task1["Victim record
/v50/victim/task-details/another-task1"] + n_v50_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v50/onb/check-details/preferred-correspondence-language"] + n_v50_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/follow-up/not-contacted-reason"] + n_v50_victim_task_details_another_task3["Victim record
/v50/victim/task-details/another-task3"] + n_v50_onb_check_details_risk_level["Domestic abuse risk level
/v50/onb/check-details/risk-level"] + n_v50_other_in_person["Log an in-person conversation
/v50/other/in-person"] + n_v50_pcd_call_phone_call_2["Telephone call 2
/v50/pcd/call/phone-call-2"] + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_victim_new_task_task_already_exists["This task already exists
/v50/victim/new-task/task-already-exists"] + n_v50_victim_new_task_task_created["Victim onboarded
/v50/victim/new-task/task-created"] + n_v50_onb_check_details_vps_status["VPS status
/v50/onb/check-details/vps-status"] + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_pcd_draft_first_hearing["First hearing
/v50/pcd/draft/first-hearing"] + n_v50_pcd_send_email_logged["Email logged
/v50/pcd/send/email-logged"] + n_v50_victim["Victim
/v50/victim"] + n_v50_victim_victim_details_service["Change service
/v50/victim/victim-details/service"] + n_v50_victim_victim_details_category["Victim category
/v50/victim/victim-details/category"] + n_v50_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v50/victim/victim-details/reasonable-adjustments"] + n_v50_other_log["Log a communication
/v50/other/log"] + n_v50_onb_onboarded["Victim onboarded
/v50/onb/onboarded"] + n_v50_onb_next_task["Next task
/v50/onb/next-task"] + n_v50_other_letter_details["Log a letter
/v50/other/letter-details"] + n_v50_sign_in["Sign in to your account
/v50/sign-in"] + n_v50_victim_victim_details_pmoc_police["Preferred method of contact for police
/v50/victim/victim-details/pmoc-police"] + n_v50_victim_index_withtasks_v2["Victim
/v50/victim/index-withtasks-v2"] + n_v50_update_manual_task["Update task status
/v50/update-manual-task"] + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_pcd_draft_pcd_type["Charging decision type
/v50/pcd/draft/pcd-type"] + n_v50_victim_task_details_outcome_logged["Victim record
/v50/victim/task-details/outcome-logged"] + n_v50_onb_next_task_due_date["Task due date
/v50/onb/next-task-due-date"] + n_v50_pcd_pre_draft_check_eligibility["Check eligibility
/v50/pcd/pre-draft/check-eligibility"] + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_other_telephone_call["Log a telephone call
/v50/other/telephone-call"] + n_v50_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v50/victim/case-contacts/family-liaison-officer"] + n_v50_change_service["Change service
/v50/change-service"] + n_v50_wft_meetings_log_arranged_meeting_check["Tasks
/v50/wft-meetings/log-arranged-meeting-check"] + n_v50_onb_check_details_translator_needed["Translator needed
/v50/onb/check-details/translator-needed"] + n_v50_onb_check_task["Check the task details are correct
/v50/onb/check-task"] + n_v50_next_task_due_date["Task due date
/v50/next-task-due-date"] + n_v50_pcd_call_text_message_details["Text message details
/v50/pcd/call/text-message-details"] + n_v50_wft_meetings_new_task_purposet["Task selection
/v50/wft-meetings/new-task/purposet"] + n_v50_wft_meetings_log_meeting_outcome_check["Tasks
/v50/wft-meetings/log-meeting-outcome-check"] + n_v50_victim_new_task_check_task["Check the task details are correct
/v50/victim/new-task/check-task"] + n_v50_other_email_logged["Email logged
/v50/other/email-logged"] + n_v50_onb_check_details_case_type["Charging type
/v50/onb/check-details/case-type"] + n_v50_onb_check_details_preferred_name["Preferred name
/v50/onb/check-details/preferred-name"] + n_v50_pcd_follow_up_email_details["Follow-up email details
/v50/pcd/follow-up/email-details"] + n_v50_victim_victim_details_gender["Victim gender
/v50/victim/victim-details/gender"] + n_v50_overview4["Overview
/v50/overview4"] + n_v50_tasks["Tasks
/v50/tasks"] + n_v50_onb_check_details_preferred_contact_times["Preferred contact times
/v50/onb/check-details/preferred-contact-times"] + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_victim_victim_details_email_address["Victim's email address
/v50/victim/victim-details/email-address"] + n_v50_pcd_follow_up_log_follow_up["Log a follow-up
/v50/pcd/follow-up/log-follow-up"] + n_v50_other_other["Log other communication
/v50/other/other"] + n_v50_overview5["Overview
/v50/overview5"] + n_v50_pcd_follow_up_letter_logged["Follow-up letter logged
/v50/pcd/follow-up/letter-logged"] + n_v50_victim_victim_details_victim_representative["Victim representative details
/v50/victim/victim-details/victim-representative"] + n_v50_other_text_message["Log a text message
/v50/other/text-message"] + n_v50_pcd_victim[/"/v50/pcd/victim"/] + n_v50_case_locked_by_someone_else --> n_v50_pcd_victim + n_v50_case_locked_self_locked --> n_v50_pcd_victim + n_v50_change_service_answer(["/v50/change-service-answer"]) + n_v50_change_service --> n_v50_change_service_answer + n_v50_change_task_due_date_answer(["/v50/change-task-due-date-answer"]) + n_v50_change_task_due_date --> n_v50_change_task_due_date_answer + n_v50_next_task_due_date --> n_v50_change_task_due_date_answer + n_v50_onb_check_details_answer(["/v50/onb/check-details-answer"]) + n_v50_onb_check_details --> n_v50_onb_check_details_answer + n_v50_onb_check_details --> n_v50_onb_check_details_case_type + n_v50_onb_check_details --> n_v50_onb_check_details_pmoc + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_contact_times + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_correspondence_language + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_name + n_v50_onb_check_details --> n_v50_onb_check_details_risk_level + n_v50_onb_check_details --> n_v50_onb_check_details_translator_needed + n_v50_onb_check_details --> n_v50_onb_check_details_vps_status + n_v50_onb_check_details --> n_v50_onb_check_task_vlo + n_v50_onb_check_details --> n_v50_onb_service_lead + n_v50_check_details_case_type_answer(["/v50/check-details/case-type-answer"]) + n_v50_onb_check_details_case_type --> n_v50_check_details_case_type_answer + n_v50_check_details_pmoc_answer(["/v50/check-details/pmoc-answer"]) + n_v50_onb_check_details_pmoc --> n_v50_check_details_pmoc_answer + n_v50_check_details_preferred_contact_times_answer(["/v50/check-details/preferred-contact-times-answer"]) + n_v50_onb_check_details_preferred_contact_times --> n_v50_check_details_preferred_contact_times_answer + n_v50_check_details_preferred_correspondence_language_answer(["/v50/check-details/preferred-correspondence-language-answer"]) + n_v50_onb_check_details_preferred_correspondence_language --> n_v50_check_details_preferred_correspondence_language_answer + n_v50_check_details_preferred_name_answer(["/v50/check-details/preferred-name-answer"]) + n_v50_onb_check_details_preferred_name --> n_v50_check_details_preferred_name_answer + n_v50_check_details_risk_level_answer(["/v50/check-details/risk-level-answer"]) + n_v50_onb_check_details_risk_level --> n_v50_check_details_risk_level_answer + n_v50_check_details_translator_needed_answer(["/v50/check-details/translator-needed-answer"]) + n_v50_onb_check_details_translator_needed --> n_v50_check_details_translator_needed_answer + n_v50_check_details_vps_status_answer(["/v50/check-details/vps-status-answer"]) + n_v50_onb_check_details_vps_status --> n_v50_check_details_vps_status_answer + n_v50_onb_check_task_answer(["/v50/onb/check-task-answer"]) + n_v50_onb_check_task --> n_v50_onb_check_task_answer + n_v50_onb_check_task --> n_v50_onb_manual_task + n_v50_onb_check_task --> n_v50_onb_meeting_purpose + n_v50_onb_check_task --> n_v50_onb_next_task + n_v50_onb_check_task --> n_v50_onb_next_task_due_date + n_v50_onb_check_task_vlo_answer(["/v50/onb/check-task-vlo-answer"]) + n_v50_onb_check_task_vlo --> n_v50_onb_check_task_vlo_answer + n_v50_onb_manual_task_answer(["/v50/onb/manual-task-answer"]) + n_v50_onb_manual_task --> n_v50_onb_manual_task_answer + n_v50_onb_meeting_purpose_answer(["/v50/onb/meeting-purpose-answer"]) + n_v50_onb_meeting_purpose --> n_v50_onb_meeting_purpose_answer + n_v50_onb_next_task_answer(["/v50/onb/next-task-answer"]) + n_v50_onb_next_task --> n_v50_onb_next_task_answer + n_v50_onb_next_task_due_date_answer(["/v50/onb/next-task-due-date-answer"]) + n_v50_onb_next_task_due_date --> n_v50_onb_next_task_due_date_answer + n_v50_onb_onboarded --> n_v50_victims + n_v50_onb_pmoc_answer(["/v50/onb/pmoc-answer"]) + n_v50_onb_pmoc --> n_v50_onb_pmoc_answer + n_v50_onb_service_lead_answer(["/v50/onb/service-lead-answer"]) + n_v50_onb_service_lead --> n_v50_onb_service_lead_answer + n_v50_other_call_logged --> n_v50_victim + n_v50_other_contacted_by_answer(["/v50/other/contacted-by-answer"]) + n_v50_other_contacted_by --> n_v50_other_contacted_by_answer + n_v50_other_email_details_answer(["/v50/other/email-details-answer"]) + n_v50_other_email_details --> n_v50_other_email_details_answer + n_v50_other_email_logged --> n_v50_victim + n_v50_other_in_person_answer(["/v50/other/in-person-answer"]) + n_v50_other_in_person --> n_v50_other_in_person_answer + n_v50_other_in_person_logged --> n_v50_victim + n_v50_other_letter_details_answer(["/v50/other/letter-details-answer"]) + n_v50_other_letter_details --> n_v50_other_letter_details_answer + n_v50_other_letter_logged --> n_v50_victim + n_v50_other_other_details_answer(["/v50/other/other-details-answer"]) + n_v50_other_other --> n_v50_other_other_details_answer + n_v50_other_other_logged --> n_v50_victim + n_v50_other_telephone_call_answer(["/v50/other/telephone-call-answer"]) + n_v50_other_telephone_call --> n_v50_other_telephone_call_answer + n_v50_other_text_message_answer(["/v50/other/text-message-answer"]) + n_v50_other_text_message --> n_v50_other_text_message_answer + n_v50_other_text_message_logged --> n_v50_victim + n_v50_onb_tasks[/"/v50/onb/tasks"/] + n_v50_overview --> n_v50_onb_tasks + n_v50_pcd_call_follow_up_moc_answer(["/v50/pcd/call/follow-up-moc-answer"]) + n_v50_pcd_call_follow_up_moc --> n_v50_pcd_call_follow_up_moc_answer + n_v50_pcd_call_next_attempt_moc_answer(["/v50/pcd/call/next-attempt-moc-answer"]) + n_v50_pcd_call_next_attempt_moc --> n_v50_pcd_call_next_attempt_moc_answer + n_v50_pcd_call_phone_call_1_answer(["/v50/pcd/call/phone-call-1-answer"]) + n_v50_pcd_call_phone_call_1 --> n_v50_pcd_call_phone_call_1_answer + n_v50_pcd_call_phone_call_2_answer(["/v50/pcd/call/phone-call-2-answer"]) + n_v50_pcd_call_phone_call_2 --> n_v50_pcd_call_phone_call_2_answer + n_v50_pcd_call_phone_call_3_answer(["/v50/pcd/call/phone-call-3-answer"]) + n_v50_pcd_call_phone_call_3 --> n_v50_pcd_call_phone_call_3_answer + n_v50_pcd_call_text_message_details_answer(["/v50/pcd/call/text-message-details-answer"]) + n_v50_pcd_call_text_message_details --> n_v50_pcd_call_text_message_details_answer + n_v50_pcd_call_was_text_message_sent_answer(["/v50/pcd/call/was-text-message-sent-answer"]) + n_v50_pcd_call_was_text_message_sent --> n_v50_pcd_call_was_text_message_sent_answer + n_v50_pcd_draft_first_hearing_answer(["/v50/pcd/draft/first-hearing-answer"]) + n_v50_pcd_draft_first_hearing --> n_v50_pcd_draft_first_hearing_answer + n_v50_pcd_draft_pcd_type_answer(["/v50/pcd/draft/pcd-type-answer"]) + n_v50_pcd_draft_pcd_type --> n_v50_pcd_draft_pcd_type_answer + n_v50_pcd_draft_task_already_exists_answer(["/v50/pcd/draft/task-already-exists-answer"]) + n_v50_pcd_draft_task_already_exists --> n_v50_pcd_draft_task_already_exists_answer + n_v50_pcd_draft_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_pcd_follow_up_call_logged --> n_v50_victim + n_v50_pcd_follow_up_email_details_answer(["/v50/pcd/follow-up/email-details-answer"]) + n_v50_pcd_follow_up_email_details --> n_v50_pcd_follow_up_email_details_answer + n_v50_pcd_follow_up_email_logged --> n_v50_victim + n_v50_pcd_follow_up_letter_details_answer(["/v50/pcd/follow-up/letter-details-answer"]) + n_v50_pcd_follow_up_letter_details --> n_v50_pcd_follow_up_letter_details_answer + n_v50_pcd_follow_up_letter_logged --> n_v50_victim + n_v50_pcd_follow_up_log_follow_up_answer(["/v50/pcd/follow-up/log-follow-up-answer"]) + n_v50_pcd_follow_up_log_follow_up --> n_v50_pcd_follow_up_log_follow_up_answer + n_v50_pcd_follow_up_not_contacted_logged --> n_v50_victim + n_v50_pcd_follow_up_not_contacted_reason_answer(["/v50/pcd/follow-up/not-contacted-reason-answer"]) + n_v50_pcd_follow_up_not_contacted_reason --> n_v50_pcd_follow_up_not_contacted_reason_answer + n_v50_pcd_follow_up_telephone_call_answer(["/v50/pcd/follow-up/telephone-call-answer"]) + n_v50_pcd_follow_up_telephone_call --> n_v50_pcd_follow_up_telephone_call_answer + n_v50_pcd_pre_draft_check_eligibility_answer(["/v50/pcd/pre-draft/check-eligibility-answer"]) + n_v50_pcd_pre_draft_check_eligibility --> n_v50_pcd_pre_draft_check_eligibility_answer + n_v50_pcd_pre_draft_contacted_by_answer(["/v50/pcd/pre-draft/contacted-by-answer"]) + n_v50_pcd_pre_draft_contacted_by --> n_v50_pcd_pre_draft_contacted_by_answer + n_v50_pcd_pre_draft_not_contacted_reason_answer(["/v50/pcd/pre-draft/not-contacted-reason-answer"]) + n_v50_pcd_pre_draft_not_contacted_reason --> n_v50_pcd_pre_draft_not_contacted_reason_answer + n_v50_pcd_send_email_details_answer(["/v50/pcd/send/email-details-answer"]) + n_v50_pcd_send_email_details --> n_v50_pcd_send_email_details_answer + n_v50_pcd_send_email_logged --> n_v50_victim + n_v50_pcd_send_letter_details_answer(["/v50/pcd/send/letter-details-answer"]) + n_v50_pcd_send_letter_details --> n_v50_pcd_send_letter_details_answer + n_v50_pcd_send_letter_logged --> n_v50_victim + n_v50_sign_in_answer(["/v50/sign-in-answer"]) + n_v50_sign_in --> n_v50_sign_in_answer + n_v50_task_assignee_answer(["/v50/task-assignee-answer"]) + n_v50_task_assignee --> n_v50_task_assignee_answer + n_v50_task_updated --> n_v50_tasks + n_v50_tasks --> n_v50_next_task_due_date + n_v50_onb_tasks_clear_filters(["/v50/onb/tasks/clear-filters"]) + n_v50_tasks --> n_v50_onb_tasks_clear_filters + n_v50_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_tasks --> n_v50_pcd_send_email_details + n_v50_tasks --> n_v50_pcd_send_letter_details + n_v50_tasks --> n_v50_task_assignee + n_v50_tasks --> n_v50_update_manual_task + n_v50_vcl_call_follow_up_moc[/"/v50/vcl/call/follow-up-moc"/] + n_v50_tasks --> n_v50_vcl_call_follow_up_moc + n_v50_vcl_call_next_attempt_moc[/"/v50/vcl/call/next-attempt-moc"/] + n_v50_tasks --> n_v50_vcl_call_next_attempt_moc + n_v50_vcl_call_was_text_message_sent[/"/v50/vcl/call/was-text-message-sent"/] + n_v50_tasks --> n_v50_vcl_call_was_text_message_sent + n_v50_vcl_pre_draft_contacted_by[/"/v50/vcl/pre-draft/contacted-by"/] + n_v50_tasks --> n_v50_vcl_pre_draft_contacted_by + n_v50_vcl_send_email_details[/"/v50/vcl/send/email-details"/] + n_v50_tasks --> n_v50_vcl_send_email_details + n_v50_vcl_send_letter_details[/"/v50/vcl/send/letter-details"/] + n_v50_tasks --> n_v50_vcl_send_letter_details + n_v50_tasks --> n_v50_victim + n_v50_update_manual_task_answer(["/v50/update-manual-task-answer"]) + n_v50_update_manual_task --> n_v50_update_manual_task_answer + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim + n_v50_victim_case_contacts_family_liaison_officer_answer(["/v50/victim/case-contacts/family-liaison-officer-answer"]) + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_answer + n_v50_victim_case_contacts_family_liaison_officer_delete[/"/v50/victim/case-contacts/family-liaison-officer-delete"/] + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_delete + n_v50_victim_case_contacts_idva --> n_v50_victim + n_v50_victim_case_contacts_idva_answer(["/v50/victim/case-contacts/idva-answer"]) + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_answer + n_v50_victim_case_contacts_idva_delete[/"/v50/victim/case-contacts/idva-delete"/] + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_delete + n_v50_victim_case_contacts_isva --> n_v50_victim + n_v50_victim_case_contacts_isva_answer(["/v50/victim/case-contacts/isva-answer"]) + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_answer + n_v50_victim_case_contacts_isva_delete[/"/v50/victim/case-contacts/isva-delete"/] + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_delete + n_v50_victim_case_information_area_answer(["/v50/victim/case-information/area-answer"]) + n_v50_victim_case_information_area --> n_v50_victim_case_information_area_answer + n_v50_victim_case_information_charging_type_answer(["/v50/victim/case-information/charging-type-answer"]) + n_v50_victim_case_information_charging_type --> n_v50_victim_case_information_charging_type_answer + n_v50_victim_index_notasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v3 --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v4 --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_check_task_answer(["/v50/victim/new-task/check-task-answer"]) + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_check_task_answer + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_meeting_purpose + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_manual_task_answer(["/v50/victim/new-task/manual-task-answer"]) + n_v50_victim_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_victim_new_task_meeting_purpose_answer(["/v50/victim/new-task/meeting-purpose-answer"]) + n_v50_victim_new_task_meeting_purpose --> n_v50_victim_new_task_meeting_purpose_answer + n_v50_victim_new_task_task_already_exists_answer(["/v50/victim/new-task/task-already-exists-answer"]) + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_already_exists_answer + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_task_created --> n_v50_victim + n_v50_victim_new_task_task_due_date_answer(["/v50/victim/new-task/task-due-date-answer"]) + n_v50_victim_new_task_task_due_date --> n_v50_victim_new_task_task_due_date_answer + n_v50_victim_new_task_next_task_answer(["/v50/victim/new-task/next-task-answer"]) + n_v50_victim_new_task_task_selection --> n_v50_victim_new_task_next_task_answer + n_v50_victim_victim_details_address_answer(["/v50/victim/victim-details/address-answer"]) + n_v50_victim_victim_details_address --> n_v50_victim_victim_details_address_answer + n_v50_victim_victim_details_category_answer(["/v50/victim/victim-details/category-answer"]) + n_v50_victim_victim_details_category --> n_v50_victim_victim_details_category_answer + n_v50_victim_victim_details_contact_times_answer(["/v50/victim/victim-details/contact-times-answer"]) + n_v50_victim_victim_details_contact_times --> n_v50_victim_victim_details_contact_times_answer + n_v50_victim_victim_details_correspondence_language_answer(["/v50/victim/victim-details/correspondence-language-answer"]) + n_v50_victim_victim_details_correspondence_language --> n_v50_victim_victim_details_correspondence_language_answer + n_v50_victim_victim_details_date_of_birth_answer(["/v50/victim/victim-details/date-of-birth-answer"]) + n_v50_victim_victim_details_date_of_birth --> n_v50_victim_victim_details_date_of_birth_answer + n_v50_victim_victim_details_disability_answer(["/v50/victim/victim-details/disability-answer"]) + n_v50_victim_victim_details_disability --> n_v50_victim_victim_details_disability_answer + n_v50_victim_victim_details_email_address_answer(["/v50/victim/victim-details/email-address-answer"]) + n_v50_victim_victim_details_email_address --> n_v50_victim_victim_details_email_address_answer + n_v50_victim_victim_details_ethnicity_answer(["/v50/victim/victim-details/ethnicity-answer"]) + n_v50_victim_victim_details_ethnicity --> n_v50_victim_victim_details_ethnicity_answer + n_v50_victim_victim_details_full_name_answer(["/v50/victim/victim-details/full-name-answer"]) + n_v50_victim_victim_details_full_name --> n_v50_victim_victim_details_full_name_answer + n_v50_victim_victim_details_gender_answer(["/v50/victim/victim-details/gender-answer"]) + n_v50_victim_victim_details_gender --> n_v50_victim_victim_details_gender_answer + n_v50_victim_victim_details_pmoc_answer(["/v50/victim/victim-details/pmoc-answer"]) + n_v50_victim_victim_details_pmoc --> n_v50_victim_victim_details_pmoc_answer + n_v50_victim_victim_details_pmoc_police_answer(["/v50/victim/victim-details/pmoc-police-answer"]) + n_v50_victim_victim_details_pmoc_police --> n_v50_victim_victim_details_pmoc_police_answer + n_v50_victim_victim_details_power_of_attorney_answer(["/v50/victim/victim-details/power-of-attorney-answer"]) + n_v50_victim_victim_details_power_of_attorney --> n_v50_victim_victim_details_power_of_attorney_answer + n_v50_victim_victim_details_preferred_name_answer(["/v50/victim/victim-details/preferred-name-answer"]) + n_v50_victim_victim_details_preferred_name --> n_v50_victim_victim_details_preferred_name_answer + n_v50_victim_victim_details_previous_convictions_answer(["/v50/victim/victim-details/previous-convictions-answer"]) + n_v50_victim_victim_details_previous_convictions --> n_v50_victim_victim_details_previous_convictions_answer + n_v50_victim_victim_details_reasonable_adjustments_answer(["/v50/victim/victim-details/reasonable-adjustments-answer"]) + n_v50_victim_victim_details_reasonable_adjustments --> n_v50_victim_victim_details_reasonable_adjustments_answer + n_v50_victim_victim_details_religion_answer(["/v50/victim/victim-details/religion-answer"]) + n_v50_victim_victim_details_religion --> n_v50_victim_victim_details_religion_answer + n_v50_victim_victim_details_risk_level_answer(["/v50/victim/victim-details/risk-level-answer"]) + n_v50_victim_victim_details_risk_level --> n_v50_victim_victim_details_risk_level_answer + n_v50_victim_victim_details_service_answer(["/v50/victim/victim-details/service-answer"]) + n_v50_victim_victim_details_service --> n_v50_victim_victim_details_service_answer + n_v50_victim_victim_details_telephone_number_answer(["/v50/victim/victim-details/telephone-number-answer"]) + n_v50_victim_victim_details_telephone_number --> n_v50_victim_victim_details_telephone_number_answer + n_v50_victim_victim_details_translator_needed_answer(["/v50/victim/victim-details/translator-needed-answer"]) + n_v50_victim_victim_details_translator_needed --> n_v50_victim_victim_details_translator_needed_answer + n_v50_victim_victim_details_victim_representative_answer(["/v50/victim/victim-details/victim-representative-answer"]) + n_v50_victim_victim_details_victim_representative --> n_v50_victim_victim_details_victim_representative_answer + n_v50_victim_victim_details_vps_status_answer(["/v50/victim/victim-details/vps-status-answer"]) + n_v50_victim_victim_details_vps_status --> n_v50_victim_victim_details_vps_status_answer + n_v50_victim_victim_details_wants_contact_answer(["/v50/victim/victim-details/wants-contact-answer"]) + n_v50_victim_victim_details_wants_contact --> n_v50_victim_victim_details_wants_contact_answer + n_v50_victims --> n_v50_change_service + n_v50_victims --> n_v50_onb_service_lead + n_v50_victims --> n_v50_victim + n_v50_victims --> n_v50_vlo + n_v50_onb_vlo_answer(["/v50/onb/vlo-answer"]) + n_v50_vlo --> n_v50_onb_vlo_answer + n_v50_wft_meetings_log_arranged_meeting --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_arranged_meeting_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_task --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_wft_meetings_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_wft_meetings_new_task_purposet_answer(["/v50/wft-meetings/new-task/purposet-answer"]) + n_v50_wft_meetings_new_task_purposet --> n_v50_wft_meetings_new_task_purposet_answer + n_v50_wft_meetings_new_task_task_due_date_answer(["/v50/wft-meetings/new-task/task-due-date-answer"]) + n_v50_wft_meetings_new_task_task_due_date --> n_v50_wft_meetings_new_task_task_due_date_answer + n_v50_wft_meetings_new_task_next_task_answer(["/v50/wft-meetings/new-task/next-task-answer"]) + n_v50_wft_meetings_new_task_task_selection --> n_v50_wft_meetings_new_task_next_task_answer + n_v50_wft_meetings_tasks --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_wft_meetings_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_wft_meetings_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_pcd_pre_draft_check_details[/"/v50/pcd/pre-draft/check-details"/] + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_check_details + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_wft_meetings_tasks --> n_v50_pcd_send_email_details + n_v50_wft_meetings_tasks --> n_v50_pcd_send_letter_details + n_v50_wft_meetings_tasks --> n_v50_task_assignee + n_v50_wft_meetings_tasks --> n_v50_victim + n_v50_wft_meetings_tasks2 --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks2 --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_follow_up_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_next_attempt_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_was_text_message_sent + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_check_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_contacted_by + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_email_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_letter_details + n_v50_wft_meetings_tasks2 --> n_v50_task_assignee + n_v50_wft_meetings_tasks2 --> n_v50_victim + n_v50_wft_meetings_victims --> n_v50_onb_service_lead + n_v50_wft_meetings_victims --> n_v50_victim + n_v50_wft_meetings_victims --> n_v50_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_onb_meeting_purpose_answer,n_v50_other_contacted_by_answer,n_v50_onb_pmoc_answer,n_v50_update_manual_task_answer,n_v50_victim_case_information_charging_type_answer,n_v50_check_details_pmoc_answer,n_v50_pcd_draft_first_hearing_answer,n_v50_pcd_send_letter_details_answer,n_v50_pcd_draft_task_already_exists_answer,n_v50_pcd_call_phone_call_1_answer,n_v50_wft_meetings_new_task_next_task_answer,n_v50_victim_victim_details_contact_times_answer,n_v50_change_task_due_date_answer,n_v50_other_telephone_call_answer,n_v50_victim_victim_details_address_answer,n_v50_pcd_call_was_text_message_sent_answer,n_v50_victim_case_information_area_answer,n_v50_pcd_follow_up_not_contacted_reason_answer,n_v50_onb_vlo_answer,n_v50_victim_victim_details_disability_answer,n_v50_pcd_pre_draft_not_contacted_reason_answer,n_v50_onb_next_task_answer,n_v50_check_details_preferred_name_answer,n_v50_victim_victim_details_pmoc_answer,n_v50_onb_check_task_answer,n_v50_victim_victim_details_telephone_number_answer,n_v50_pcd_call_phone_call_2_answer,n_v50_onb_tasks_clear_filters,n_v50_victim_victim_details_wants_contact_answer,n_v50_onb_next_task_due_date_answer,n_v50_other_letter_details_answer,n_v50_victim_victim_details_religion_answer,n_v50_change_service_answer,n_v50_victim_victim_details_reasonable_adjustments_answer,n_v50_victim_new_task_task_due_date_answer,n_v50_victim_new_task_next_task_answer,n_v50_victim_victim_details_translator_needed_answer,n_v50_victim_new_task_meeting_purpose_answer,n_v50_pcd_pre_draft_check_eligibility_answer,n_v50_victim_case_contacts_idva_answer,n_v50_other_in_person_answer,n_v50_victim_victim_details_preferred_name_answer,n_v50_onb_check_details_answer,n_v50_wft_meetings_new_task_task_due_date_answer,n_v50_victim_victim_details_date_of_birth_answer,n_v50_victim_victim_details_previous_convictions_answer,n_v50_pcd_follow_up_email_details_answer,n_v50_pcd_pre_draft_contacted_by_answer,n_v50_victim_case_contacts_family_liaison_officer_answer,n_v50_victim_new_task_check_task_answer,n_v50_check_details_translator_needed_answer,n_v50_check_details_vps_status_answer,n_v50_pcd_follow_up_telephone_call_answer,n_v50_victim_victim_details_full_name_answer,n_v50_victim_victim_details_ethnicity_answer,n_v50_pcd_call_follow_up_moc_answer,n_v50_onb_check_task_vlo_answer,n_v50_other_email_details_answer,n_v50_pcd_call_phone_call_3_answer,n_v50_victim_victim_details_gender_answer,n_v50_pcd_call_text_message_details_answer,n_v50_victim_victim_details_vps_status_answer,n_v50_check_details_risk_level_answer,n_v50_other_text_message_answer,n_v50_sign_in_answer,n_v50_victim_victim_details_victim_representative_answer,n_v50_pcd_call_next_attempt_moc_answer,n_v50_check_details_preferred_correspondence_language_answer,n_v50_victim_victim_details_category_answer,n_v50_onb_manual_task_answer,n_v50_victim_victim_details_power_of_attorney_answer,n_v50_victim_case_contacts_isva_answer,n_v50_check_details_case_type_answer,n_v50_pcd_follow_up_letter_details_answer,n_v50_victim_victim_details_pmoc_police_answer,n_v50_pcd_send_email_details_answer,n_v50_victim_victim_details_email_address_answer,n_v50_wft_meetings_new_task_purposet_answer,n_v50_victim_victim_details_correspondence_language_answer,n_v50_onb_service_lead_answer,n_v50_victim_new_task_task_already_exists_answer,n_v50_victim_victim_details_risk_level_answer,n_v50_pcd_draft_pcd_type_answer,n_v50_task_assignee_answer,n_v50_check_details_preferred_contact_times_answer,n_v50_victim_victim_details_service_answer,n_v50_victim_new_task_manual_task_answer,n_v50_other_other_details_answer,n_v50_pcd_follow_up_log_follow_up_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_vcl_send_letter_details,n_v50_pcd_pre_draft_check_details,n_v50_vcl_pre_draft_contacted_by,n_v50_vcl_call_was_text_message_sent,n_v50_onb_tasks,n_v50_victim_case_contacts_idva_delete,n_v50_pcd_victim,n_v50_vcl_call_next_attempt_moc,n_v50_vcl_call_follow_up_moc,n_v50_victim_case_contacts_family_liaison_officer_delete,n_v50_vcl_send_email_details,n_v50_victim_case_contacts_isva_delete external; diff --git a/docs/flow-diagrams/v50-onb.mmd b/docs/flow-diagrams/v50-onb.mmd new file mode 100644 index 00000000..dca0b6fc --- /dev/null +++ b/docs/flow-diagrams/v50-onb.mmd @@ -0,0 +1,71 @@ +flowchart LR + n_v50_onb_manual_task["Create a task
/v50/onb/manual-task"] + n_v50_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v50/onb/check-details/preferred-correspondence-language"] + n_v50_onb_check_details_case_type["Charging type
/v50/onb/check-details/case-type"] + n_v50_onb_check_details_preferred_name["Preferred name
/v50/onb/check-details/preferred-name"] + n_v50_onb_check_details["Check the details before drafting the letter
/v50/onb/check-details"] + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_onb_check_details_risk_level["Domestic abuse risk level
/v50/onb/check-details/risk-level"] + n_v50_onb_pmoc["Preferred method of contact
/v50/onb/pmoc"] + n_v50_onb_check_details_pmoc["Preferred method of contact
/v50/onb/check-details/pmoc"] + n_v50_onb_next_task_due_date["Task due date
/v50/onb/next-task-due-date"] + n_v50_onb_check_details_preferred_contact_times["Preferred contact times
/v50/onb/check-details/preferred-contact-times"] + n_v50_onb_check_details_vps_status["VPS status
/v50/onb/check-details/vps-status"] + n_v50_onb_check_task_vlo["Victim liaison officer
/v50/onb/check-task-vlo"] + n_v50_onb_meeting_purpose["Task selection
/v50/onb/meeting-purpose"] + n_v50_onb_onboarded["Victim onboarded
/v50/onb/onboarded"] + n_v50_onb_check_task["Check the task details are correct
/v50/onb/check-task"] + n_v50_onb_check_details_translator_needed["Translator needed
/v50/onb/check-details/translator-needed"] + n_v50_onb_next_task["Next task
/v50/onb/next-task"] + n_v50_onb_check_details_answer(["/v50/onb/check-details-answer"]) + n_v50_onb_check_details --> n_v50_onb_check_details_answer + n_v50_onb_check_details --> n_v50_onb_check_details_case_type + n_v50_onb_check_details --> n_v50_onb_check_details_pmoc + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_contact_times + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_correspondence_language + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_name + n_v50_onb_check_details --> n_v50_onb_check_details_risk_level + n_v50_onb_check_details --> n_v50_onb_check_details_translator_needed + n_v50_onb_check_details --> n_v50_onb_check_details_vps_status + n_v50_onb_check_details --> n_v50_onb_check_task_vlo + n_v50_onb_check_details --> n_v50_onb_service_lead + n_v50_check_details_case_type_answer(["/v50/check-details/case-type-answer"]) + n_v50_onb_check_details_case_type --> n_v50_check_details_case_type_answer + n_v50_check_details_pmoc_answer(["/v50/check-details/pmoc-answer"]) + n_v50_onb_check_details_pmoc --> n_v50_check_details_pmoc_answer + n_v50_check_details_preferred_contact_times_answer(["/v50/check-details/preferred-contact-times-answer"]) + n_v50_onb_check_details_preferred_contact_times --> n_v50_check_details_preferred_contact_times_answer + n_v50_check_details_preferred_correspondence_language_answer(["/v50/check-details/preferred-correspondence-language-answer"]) + n_v50_onb_check_details_preferred_correspondence_language --> n_v50_check_details_preferred_correspondence_language_answer + n_v50_check_details_preferred_name_answer(["/v50/check-details/preferred-name-answer"]) + n_v50_onb_check_details_preferred_name --> n_v50_check_details_preferred_name_answer + n_v50_check_details_risk_level_answer(["/v50/check-details/risk-level-answer"]) + n_v50_onb_check_details_risk_level --> n_v50_check_details_risk_level_answer + n_v50_check_details_translator_needed_answer(["/v50/check-details/translator-needed-answer"]) + n_v50_onb_check_details_translator_needed --> n_v50_check_details_translator_needed_answer + n_v50_check_details_vps_status_answer(["/v50/check-details/vps-status-answer"]) + n_v50_onb_check_details_vps_status --> n_v50_check_details_vps_status_answer + n_v50_onb_check_task_answer(["/v50/onb/check-task-answer"]) + n_v50_onb_check_task --> n_v50_onb_check_task_answer + n_v50_onb_check_task --> n_v50_onb_manual_task + n_v50_onb_check_task --> n_v50_onb_meeting_purpose + n_v50_onb_check_task --> n_v50_onb_next_task + n_v50_onb_check_task --> n_v50_onb_next_task_due_date + n_v50_onb_check_task_vlo_answer(["/v50/onb/check-task-vlo-answer"]) + n_v50_onb_check_task_vlo --> n_v50_onb_check_task_vlo_answer + n_v50_onb_manual_task_answer(["/v50/onb/manual-task-answer"]) + n_v50_onb_manual_task --> n_v50_onb_manual_task_answer + n_v50_onb_meeting_purpose_answer(["/v50/onb/meeting-purpose-answer"]) + n_v50_onb_meeting_purpose --> n_v50_onb_meeting_purpose_answer + n_v50_onb_next_task_answer(["/v50/onb/next-task-answer"]) + n_v50_onb_next_task --> n_v50_onb_next_task_answer + n_v50_onb_next_task_due_date_answer(["/v50/onb/next-task-due-date-answer"]) + n_v50_onb_next_task_due_date --> n_v50_onb_next_task_due_date_answer + n_v50_victims["Victims
/v50/victims"] + n_v50_onb_onboarded --> n_v50_victims + n_v50_onb_pmoc_answer(["/v50/onb/pmoc-answer"]) + n_v50_onb_pmoc --> n_v50_onb_pmoc_answer + n_v50_onb_service_lead_answer(["/v50/onb/service-lead-answer"]) + n_v50_onb_service_lead --> n_v50_onb_service_lead_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_onb_meeting_purpose_answer,n_v50_onb_check_task_answer,n_v50_onb_pmoc_answer,n_v50_check_details_case_type_answer,n_v50_check_details_translator_needed_answer,n_v50_check_details_vps_status_answer,n_v50_check_details_pmoc_answer,n_v50_onb_next_task_due_date_answer,n_v50_onb_check_task_vlo_answer,n_v50_check_details_risk_level_answer,n_v50_onb_service_lead_answer,n_v50_check_details_preferred_contact_times_answer,n_v50_onb_check_details_answer,n_v50_check_details_preferred_correspondence_language_answer,n_v50_onb_next_task_answer,n_v50_onb_manual_task_answer,n_v50_check_details_preferred_name_answer answer; diff --git a/docs/flow-diagrams/v50-other.mmd b/docs/flow-diagrams/v50-other.mmd new file mode 100644 index 00000000..020260bd --- /dev/null +++ b/docs/flow-diagrams/v50-other.mmd @@ -0,0 +1,38 @@ +flowchart LR + n_v50_other_letter_details["Log a letter
/v50/other/letter-details"] + n_v50_other_call_logged["Telephone call logged
/v50/other/call-logged"] + n_v50_other_letter_logged["Letter logged
/v50/other/letter-logged"] + n_v50_other_email_logged["Email logged
/v50/other/email-logged"] + n_v50_other_in_person["Log an in-person conversation
/v50/other/in-person"] + n_v50_other_contacted_by["How did you contact the victim?
/v50/other/contacted-by"] + n_v50_other_text_message_logged["Text message logged
/v50/other/text-message-logged"] + n_v50_other_email_details["Log an email
/v50/other/email-details"] + n_v50_other_other_logged["Other communication logged
/v50/other/other-logged"] + n_v50_other_other["Log other communication
/v50/other/other"] + n_v50_other_telephone_call["Log a telephone call
/v50/other/telephone-call"] + n_v50_other_in_person_logged["In-person meeting logged
/v50/other/in-person-logged"] + n_v50_other_log["Log a communication
/v50/other/log"] + n_v50_other_text_message["Log a text message
/v50/other/text-message"] + n_v50_victim["Victim
/v50/victim"] + n_v50_other_call_logged --> n_v50_victim + n_v50_other_contacted_by_answer(["/v50/other/contacted-by-answer"]) + n_v50_other_contacted_by --> n_v50_other_contacted_by_answer + n_v50_other_email_details_answer(["/v50/other/email-details-answer"]) + n_v50_other_email_details --> n_v50_other_email_details_answer + n_v50_other_email_logged --> n_v50_victim + n_v50_other_in_person_answer(["/v50/other/in-person-answer"]) + n_v50_other_in_person --> n_v50_other_in_person_answer + n_v50_other_in_person_logged --> n_v50_victim + n_v50_other_letter_details_answer(["/v50/other/letter-details-answer"]) + n_v50_other_letter_details --> n_v50_other_letter_details_answer + n_v50_other_letter_logged --> n_v50_victim + n_v50_other_other_details_answer(["/v50/other/other-details-answer"]) + n_v50_other_other --> n_v50_other_other_details_answer + n_v50_other_other_logged --> n_v50_victim + n_v50_other_telephone_call_answer(["/v50/other/telephone-call-answer"]) + n_v50_other_telephone_call --> n_v50_other_telephone_call_answer + n_v50_other_text_message_answer(["/v50/other/text-message-answer"]) + n_v50_other_text_message --> n_v50_other_text_message_answer + n_v50_other_text_message_logged --> n_v50_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_other_contacted_by_answer,n_v50_other_letter_details_answer,n_v50_other_email_details_answer,n_v50_other_text_message_answer,n_v50_other_telephone_call_answer,n_v50_other_in_person_answer,n_v50_other_other_details_answer answer; diff --git a/docs/flow-diagrams/v50-pcd.mmd b/docs/flow-diagrams/v50-pcd.mmd new file mode 100644 index 00000000..ad4ef164 --- /dev/null +++ b/docs/flow-diagrams/v50-pcd.mmd @@ -0,0 +1,78 @@ +flowchart LR + n_v50_pcd_draft_pcd_type["Charging decision type
/v50/pcd/draft/pcd-type"] + n_v50_pcd_send_letter_logged["Letter logged
/v50/pcd/send/letter-logged"] + n_v50_pcd_follow_up_telephone_call["Follow-up telephone call
/v50/pcd/follow-up/telephone-call"] + n_v50_pcd_call_phone_call_3["Telephone call 3 details
/v50/pcd/call/phone-call-3"] + n_v50_pcd_pre_draft_check_eligibility["Check eligibility
/v50/pcd/pre-draft/check-eligibility"] + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v50/pcd/follow-up/not-contacted-logged"] + n_v50_pcd_follow_up_call_logged["Follow-up telephone call logged
/v50/pcd/follow-up/call-logged"] + n_v50_pcd_draft_task_already_exists["This task already exists
/v50/pcd/draft/task-already-exists"] + n_v50_pcd_call_phone_call_1["Telephone call 1
/v50/pcd/call/phone-call-1"] + n_v50_pcd_follow_up_letter_details["Follow-up letter details
/v50/pcd/follow-up/letter-details"] + n_v50_pcd_call_text_message_details["Text message details
/v50/pcd/call/text-message-details"] + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/follow-up/not-contacted-reason"] + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_pcd_call_phone_call_2["Telephone call 2
/v50/pcd/call/phone-call-2"] + n_v50_pcd_follow_up_email_details["Follow-up email details
/v50/pcd/follow-up/email-details"] + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_pcd_follow_up_email_logged["Follow-up email logged
/v50/pcd/follow-up/email-logged"] + n_v50_pcd_draft_first_hearing["First hearing
/v50/pcd/draft/first-hearing"] + n_v50_pcd_send_email_logged["Email logged
/v50/pcd/send/email-logged"] + n_v50_pcd_follow_up_log_follow_up["Log a follow-up
/v50/pcd/follow-up/log-follow-up"] + n_v50_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/pre-draft/not-contacted-reason"] + n_v50_pcd_follow_up_letter_logged["Follow-up letter logged
/v50/pcd/follow-up/letter-logged"] + n_v50_pcd_call_follow_up_moc_answer(["/v50/pcd/call/follow-up-moc-answer"]) + n_v50_pcd_call_follow_up_moc --> n_v50_pcd_call_follow_up_moc_answer + n_v50_pcd_call_next_attempt_moc_answer(["/v50/pcd/call/next-attempt-moc-answer"]) + n_v50_pcd_call_next_attempt_moc --> n_v50_pcd_call_next_attempt_moc_answer + n_v50_pcd_call_phone_call_1_answer(["/v50/pcd/call/phone-call-1-answer"]) + n_v50_pcd_call_phone_call_1 --> n_v50_pcd_call_phone_call_1_answer + n_v50_pcd_call_phone_call_2_answer(["/v50/pcd/call/phone-call-2-answer"]) + n_v50_pcd_call_phone_call_2 --> n_v50_pcd_call_phone_call_2_answer + n_v50_pcd_call_phone_call_3_answer(["/v50/pcd/call/phone-call-3-answer"]) + n_v50_pcd_call_phone_call_3 --> n_v50_pcd_call_phone_call_3_answer + n_v50_pcd_call_text_message_details_answer(["/v50/pcd/call/text-message-details-answer"]) + n_v50_pcd_call_text_message_details --> n_v50_pcd_call_text_message_details_answer + n_v50_pcd_call_was_text_message_sent_answer(["/v50/pcd/call/was-text-message-sent-answer"]) + n_v50_pcd_call_was_text_message_sent --> n_v50_pcd_call_was_text_message_sent_answer + n_v50_pcd_draft_first_hearing_answer(["/v50/pcd/draft/first-hearing-answer"]) + n_v50_pcd_draft_first_hearing --> n_v50_pcd_draft_first_hearing_answer + n_v50_pcd_draft_pcd_type_answer(["/v50/pcd/draft/pcd-type-answer"]) + n_v50_pcd_draft_pcd_type --> n_v50_pcd_draft_pcd_type_answer + n_v50_pcd_draft_task_already_exists_answer(["/v50/pcd/draft/task-already-exists-answer"]) + n_v50_pcd_draft_task_already_exists --> n_v50_pcd_draft_task_already_exists_answer + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_pcd_draft_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_victim["Victim
/v50/victim"] + n_v50_pcd_follow_up_call_logged --> n_v50_victim + n_v50_pcd_follow_up_email_details_answer(["/v50/pcd/follow-up/email-details-answer"]) + n_v50_pcd_follow_up_email_details --> n_v50_pcd_follow_up_email_details_answer + n_v50_pcd_follow_up_email_logged --> n_v50_victim + n_v50_pcd_follow_up_letter_details_answer(["/v50/pcd/follow-up/letter-details-answer"]) + n_v50_pcd_follow_up_letter_details --> n_v50_pcd_follow_up_letter_details_answer + n_v50_pcd_follow_up_letter_logged --> n_v50_victim + n_v50_pcd_follow_up_log_follow_up_answer(["/v50/pcd/follow-up/log-follow-up-answer"]) + n_v50_pcd_follow_up_log_follow_up --> n_v50_pcd_follow_up_log_follow_up_answer + n_v50_pcd_follow_up_not_contacted_logged --> n_v50_victim + n_v50_pcd_follow_up_not_contacted_reason_answer(["/v50/pcd/follow-up/not-contacted-reason-answer"]) + n_v50_pcd_follow_up_not_contacted_reason --> n_v50_pcd_follow_up_not_contacted_reason_answer + n_v50_pcd_follow_up_telephone_call_answer(["/v50/pcd/follow-up/telephone-call-answer"]) + n_v50_pcd_follow_up_telephone_call --> n_v50_pcd_follow_up_telephone_call_answer + n_v50_pcd_pre_draft_check_eligibility_answer(["/v50/pcd/pre-draft/check-eligibility-answer"]) + n_v50_pcd_pre_draft_check_eligibility --> n_v50_pcd_pre_draft_check_eligibility_answer + n_v50_pcd_pre_draft_contacted_by_answer(["/v50/pcd/pre-draft/contacted-by-answer"]) + n_v50_pcd_pre_draft_contacted_by --> n_v50_pcd_pre_draft_contacted_by_answer + n_v50_pcd_pre_draft_not_contacted_reason_answer(["/v50/pcd/pre-draft/not-contacted-reason-answer"]) + n_v50_pcd_pre_draft_not_contacted_reason --> n_v50_pcd_pre_draft_not_contacted_reason_answer + n_v50_pcd_send_email_details_answer(["/v50/pcd/send/email-details-answer"]) + n_v50_pcd_send_email_details --> n_v50_pcd_send_email_details_answer + n_v50_pcd_send_email_logged --> n_v50_victim + n_v50_pcd_send_letter_details_answer(["/v50/pcd/send/letter-details-answer"]) + n_v50_pcd_send_letter_details --> n_v50_pcd_send_letter_details_answer + n_v50_pcd_send_letter_logged --> n_v50_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_pcd_follow_up_email_details_answer,n_v50_pcd_pre_draft_contacted_by_answer,n_v50_pcd_call_phone_call_2_answer,n_v50_pcd_follow_up_letter_details_answer,n_v50_pcd_follow_up_telephone_call_answer,n_v50_pcd_call_follow_up_moc_answer,n_v50_pcd_draft_first_hearing_answer,n_v50_pcd_send_letter_details_answer,n_v50_pcd_call_phone_call_3_answer,n_v50_pcd_draft_task_already_exists_answer,n_v50_pcd_send_email_details_answer,n_v50_pcd_call_phone_call_1_answer,n_v50_pcd_call_text_message_details_answer,n_v50_pcd_pre_draft_check_eligibility_answer,n_v50_pcd_call_was_text_message_sent_answer,n_v50_pcd_draft_pcd_type_answer,n_v50_pcd_follow_up_not_contacted_reason_answer,n_v50_pcd_pre_draft_not_contacted_reason_answer,n_v50_pcd_call_next_attempt_moc_answer,n_v50_pcd_follow_up_log_follow_up_answer answer; diff --git a/docs/flow-diagrams/v50-root.mmd b/docs/flow-diagrams/v50-root.mmd new file mode 100644 index 00000000..f151af99 --- /dev/null +++ b/docs/flow-diagrams/v50-root.mmd @@ -0,0 +1,75 @@ +flowchart LR + n_v50_overview6_initial["Overview
/v50/overview6-initial"] + n_v50_sign_in["Sign in to your account
/v50/sign-in"] + n_v50_victims["Victims
/v50/victims"] + n_v50_task_assignee["Task Assignee
/v50/task-assignee"] + n_v50_update_manual_task["Update task status
/v50/update-manual-task"] + n_v50_change_task_due_date["Change task due date
/v50/change-task-due-date"] + n_v50_overview["Overview
/v50/overview"] + n_v50_overview3["Overview
/v50/overview3"] + n_v50_task_updated["Victim onboarded
/v50/task-updated"] + n_v50_vlo["Victim liaison officer
/v50/vlo"] + n_v50_overview6_vlo["Overview
/v50/overview6-vlo"] + n_v50_overview4["Overview
/v50/overview4"] + n_v50_tasks["Tasks
/v50/tasks"] + n_v50_overview2["Overview
/v50/overview2"] + n_v50_victim["Victim
/v50/victim"] + n_v50_overview5["Overview
/v50/overview5"] + n_v50_overview6_vlm["Overview
/v50/overview6-vlm"] + n_v50_change_service["Change service
/v50/change-service"] + n_v50_next_task_due_date["Task due date
/v50/next-task-due-date"] + n_v50_change_service_answer(["/v50/change-service-answer"]) + n_v50_change_service --> n_v50_change_service_answer + n_v50_change_task_due_date_answer(["/v50/change-task-due-date-answer"]) + n_v50_change_task_due_date --> n_v50_change_task_due_date_answer + n_v50_next_task_due_date --> n_v50_change_task_due_date_answer + n_v50_onb_tasks[/"/v50/onb/tasks"/] + n_v50_overview --> n_v50_onb_tasks + n_v50_sign_in_answer(["/v50/sign-in-answer"]) + n_v50_sign_in --> n_v50_sign_in_answer + n_v50_task_assignee_answer(["/v50/task-assignee-answer"]) + n_v50_task_assignee --> n_v50_task_assignee_answer + n_v50_task_updated --> n_v50_tasks + n_v50_tasks --> n_v50_next_task_due_date + n_v50_onb_tasks_clear_filters(["/v50/onb/tasks/clear-filters"]) + n_v50_tasks --> n_v50_onb_tasks_clear_filters + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_tasks --> n_v50_pcd_send_email_details + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_tasks --> n_v50_pcd_send_letter_details + n_v50_tasks --> n_v50_task_assignee + n_v50_tasks --> n_v50_update_manual_task + n_v50_vcl_call_follow_up_moc[/"/v50/vcl/call/follow-up-moc"/] + n_v50_tasks --> n_v50_vcl_call_follow_up_moc + n_v50_vcl_call_next_attempt_moc[/"/v50/vcl/call/next-attempt-moc"/] + n_v50_tasks --> n_v50_vcl_call_next_attempt_moc + n_v50_vcl_call_was_text_message_sent[/"/v50/vcl/call/was-text-message-sent"/] + n_v50_tasks --> n_v50_vcl_call_was_text_message_sent + n_v50_vcl_pre_draft_contacted_by[/"/v50/vcl/pre-draft/contacted-by"/] + n_v50_tasks --> n_v50_vcl_pre_draft_contacted_by + n_v50_vcl_send_email_details[/"/v50/vcl/send/email-details"/] + n_v50_tasks --> n_v50_vcl_send_email_details + n_v50_vcl_send_letter_details[/"/v50/vcl/send/letter-details"/] + n_v50_tasks --> n_v50_vcl_send_letter_details + n_v50_tasks --> n_v50_victim + n_v50_update_manual_task_answer(["/v50/update-manual-task-answer"]) + n_v50_update_manual_task --> n_v50_update_manual_task_answer + n_v50_victims --> n_v50_change_service + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_victims --> n_v50_onb_service_lead + n_v50_victims --> n_v50_victim + n_v50_victims --> n_v50_vlo + n_v50_onb_vlo_answer(["/v50/onb/vlo-answer"]) + n_v50_vlo --> n_v50_onb_vlo_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_update_manual_task_answer,n_v50_onb_tasks_clear_filters,n_v50_change_service_answer,n_v50_change_task_due_date_answer,n_v50_task_assignee_answer,n_v50_sign_in_answer,n_v50_onb_vlo_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_vcl_call_next_attempt_moc,n_v50_vcl_send_letter_details,n_v50_vcl_pre_draft_contacted_by,n_v50_vcl_call_was_text_message_sent,n_v50_vcl_call_follow_up_moc,n_v50_onb_tasks,n_v50_vcl_send_email_details external; diff --git a/docs/flow-diagrams/v50-victim.mmd b/docs/flow-diagrams/v50-victim.mmd new file mode 100644 index 00000000..7c6f8b50 --- /dev/null +++ b/docs/flow-diagrams/v50-victim.mmd @@ -0,0 +1,143 @@ +flowchart LR + n_v50_victim_victim_details_pmoc["Preferred method of contact
/v50/victim/victim-details/pmoc"] + n_v50_victim_victim_details_correspondence_language["Preferred correspondence language
/v50/victim/victim-details/correspondence-language"] + n_v50_victim_victim_details_full_name["Victim's full name
/v50/victim/victim-details/full-name"] + n_v50_victim_victim_details_date_of_birth["Victim's date of birth
/v50/victim/victim-details/date-of-birth"] + n_v50_victim_victim_details_telephone_number["Victim's telephone number
/v50/victim/victim-details/telephone-number"] + n_v50_victim_new_task_task_selection["Task selection
/v50/victim/new-task/task-selection"] + n_v50_victim_victim_details_power_of_attorney["Power of attorney details
/v50/victim/victim-details/power-of-attorney"] + n_v50_victim_victim_details_risk_level["Domestic abuse risk level
/v50/victim/victim-details/risk-level"] + n_v50_victim_index_withtasks_v3["Victim
/v50/victim/index-withtasks-v3"] + n_v50_victim_victim_details_vps_status["VPS status
/v50/victim/victim-details/vps-status"] + n_v50_victim_index_withtasks["Victim
/v50/victim/index-withtasks"] + n_v50_victim_index_withtasks_v4["Victim
/v50/victim/index-withtasks-v4"] + n_v50_victim_victim_details_address["Victim's address
/v50/victim/victim-details/address"] + n_v50_victim_task_details_another_task1["Victim record
/v50/victim/task-details/another-task1"] + n_v50_victim_task_details_another_task3["Victim record
/v50/victim/task-details/another-task3"] + n_v50_victim_victim_details_disability["Disability or access needs
/v50/victim/victim-details/disability"] + n_v50_victim_new_task_task_already_exists["This task already exists
/v50/victim/new-task/task-already-exists"] + n_v50_victim_new_task_task_created["Victim onboarded
/v50/victim/new-task/task-created"] + n_v50_victim_index_notasks["Victim
/v50/victim/index-notasks"] + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_victim_victim_details_contact_times["Preferred contact times
/v50/victim/victim-details/contact-times"] + n_v50_victim_victim_details_service["Change service
/v50/victim/victim-details/service"] + n_v50_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v50/victim/case-contacts/isva"] + n_v50_victim_victim_details_wants_contact["Do they want to be contacted?
/v50/victim/victim-details/wants-contact"] + n_v50_victim_victim_details_category["Victim category
/v50/victim/victim-details/category"] + n_v50_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v50/victim/victim-details/reasonable-adjustments"] + n_v50_victim_victim_details_previous_convictions["Previous convictions
/v50/victim/victim-details/previous-convictions"] + n_v50_victim_victim_details_pmoc_police["Preferred method of contact for police
/v50/victim/victim-details/pmoc-police"] + n_v50_victim_index_withtasks_v2["Victim
/v50/victim/index-withtasks-v2"] + n_v50_victim_case_information_charging_type["Change charging type
/v50/victim/case-information/charging-type"] + n_v50_victim_task_details_outcome_logged["Victim record
/v50/victim/task-details/outcome-logged"] + n_v50_victim_victim_details_ethnicity["Victim ethnicity
/v50/victim/victim-details/ethnicity"] + n_v50_victim_task_details_another_task2["Victim record
/v50/victim/task-details/another-task2"] + n_v50_victim_task_details_decision_to_charge_order["Victim record
/v50/victim/task-details/decision-to-charge-order"] + n_v50_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v50/victim/case-contacts/family-liaison-officer"] + n_v50_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v50/victim/case-contacts/idva"] + n_v50_victim_new_task_manual_task["Set a reminder
/v50/victim/new-task/manual-task"] + n_v50_victim_new_task_check_task["Check the task details are correct
/v50/victim/new-task/check-task"] + n_v50_victim_task_details_outcome_logged2["Victim record
/v50/victim/task-details/outcome-logged2"] + n_v50_victim_victim_details_translator_needed["Translator needed
/v50/victim/victim-details/translator-needed"] + n_v50_victim_victim_details_preferred_name["Victim's preferred name
/v50/victim/victim-details/preferred-name"] + n_v50_victim_victim_details_gender["Victim gender
/v50/victim/victim-details/gender"] + n_v50_victim_new_task_meeting_purpose["Task selection
/v50/victim/new-task/meeting-purpose"] + n_v50_victim_victim_details_email_address["Victim's email address
/v50/victim/victim-details/email-address"] + n_v50_victim_victim_details_religion["Religion or belief
/v50/victim/victim-details/religion"] + n_v50_victim_case_information_area["Change area
/v50/victim/case-information/area"] + n_v50_victim_task_details_decision_to_charge["Victim record
/v50/victim/task-details/decision-to-charge"] + n_v50_victim_victim_details_victim_representative["Victim representative details
/v50/victim/victim-details/victim-representative"] + n_v50_victim["Victim
/v50/victim"] + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim + n_v50_victim_case_contacts_family_liaison_officer_answer(["/v50/victim/case-contacts/family-liaison-officer-answer"]) + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_answer + n_v50_victim_case_contacts_family_liaison_officer_delete[/"/v50/victim/case-contacts/family-liaison-officer-delete"/] + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_delete + n_v50_victim_case_contacts_idva --> n_v50_victim + n_v50_victim_case_contacts_idva_answer(["/v50/victim/case-contacts/idva-answer"]) + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_answer + n_v50_victim_case_contacts_idva_delete[/"/v50/victim/case-contacts/idva-delete"/] + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_delete + n_v50_victim_case_contacts_isva --> n_v50_victim + n_v50_victim_case_contacts_isva_answer(["/v50/victim/case-contacts/isva-answer"]) + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_answer + n_v50_victim_case_contacts_isva_delete[/"/v50/victim/case-contacts/isva-delete"/] + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_delete + n_v50_victim_case_information_area_answer(["/v50/victim/case-information/area-answer"]) + n_v50_victim_case_information_area --> n_v50_victim_case_information_area_answer + n_v50_victim_case_information_charging_type_answer(["/v50/victim/case-information/charging-type-answer"]) + n_v50_victim_case_information_charging_type --> n_v50_victim_case_information_charging_type_answer + n_v50_victim_index_notasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v3 --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v4 --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_check_task_answer(["/v50/victim/new-task/check-task-answer"]) + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_check_task_answer + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_meeting_purpose + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_manual_task_answer(["/v50/victim/new-task/manual-task-answer"]) + n_v50_victim_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_victim_new_task_meeting_purpose_answer(["/v50/victim/new-task/meeting-purpose-answer"]) + n_v50_victim_new_task_meeting_purpose --> n_v50_victim_new_task_meeting_purpose_answer + n_v50_victim_new_task_task_already_exists_answer(["/v50/victim/new-task/task-already-exists-answer"]) + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_already_exists_answer + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_task_created --> n_v50_victim + n_v50_victim_new_task_task_due_date_answer(["/v50/victim/new-task/task-due-date-answer"]) + n_v50_victim_new_task_task_due_date --> n_v50_victim_new_task_task_due_date_answer + n_v50_victim_new_task_next_task_answer(["/v50/victim/new-task/next-task-answer"]) + n_v50_victim_new_task_task_selection --> n_v50_victim_new_task_next_task_answer + n_v50_victim_victim_details_address_answer(["/v50/victim/victim-details/address-answer"]) + n_v50_victim_victim_details_address --> n_v50_victim_victim_details_address_answer + n_v50_victim_victim_details_category_answer(["/v50/victim/victim-details/category-answer"]) + n_v50_victim_victim_details_category --> n_v50_victim_victim_details_category_answer + n_v50_victim_victim_details_contact_times_answer(["/v50/victim/victim-details/contact-times-answer"]) + n_v50_victim_victim_details_contact_times --> n_v50_victim_victim_details_contact_times_answer + n_v50_victim_victim_details_correspondence_language_answer(["/v50/victim/victim-details/correspondence-language-answer"]) + n_v50_victim_victim_details_correspondence_language --> n_v50_victim_victim_details_correspondence_language_answer + n_v50_victim_victim_details_date_of_birth_answer(["/v50/victim/victim-details/date-of-birth-answer"]) + n_v50_victim_victim_details_date_of_birth --> n_v50_victim_victim_details_date_of_birth_answer + n_v50_victim_victim_details_disability_answer(["/v50/victim/victim-details/disability-answer"]) + n_v50_victim_victim_details_disability --> n_v50_victim_victim_details_disability_answer + n_v50_victim_victim_details_email_address_answer(["/v50/victim/victim-details/email-address-answer"]) + n_v50_victim_victim_details_email_address --> n_v50_victim_victim_details_email_address_answer + n_v50_victim_victim_details_ethnicity_answer(["/v50/victim/victim-details/ethnicity-answer"]) + n_v50_victim_victim_details_ethnicity --> n_v50_victim_victim_details_ethnicity_answer + n_v50_victim_victim_details_full_name_answer(["/v50/victim/victim-details/full-name-answer"]) + n_v50_victim_victim_details_full_name --> n_v50_victim_victim_details_full_name_answer + n_v50_victim_victim_details_gender_answer(["/v50/victim/victim-details/gender-answer"]) + n_v50_victim_victim_details_gender --> n_v50_victim_victim_details_gender_answer + n_v50_victim_victim_details_pmoc_answer(["/v50/victim/victim-details/pmoc-answer"]) + n_v50_victim_victim_details_pmoc --> n_v50_victim_victim_details_pmoc_answer + n_v50_victim_victim_details_pmoc_police_answer(["/v50/victim/victim-details/pmoc-police-answer"]) + n_v50_victim_victim_details_pmoc_police --> n_v50_victim_victim_details_pmoc_police_answer + n_v50_victim_victim_details_power_of_attorney_answer(["/v50/victim/victim-details/power-of-attorney-answer"]) + n_v50_victim_victim_details_power_of_attorney --> n_v50_victim_victim_details_power_of_attorney_answer + n_v50_victim_victim_details_preferred_name_answer(["/v50/victim/victim-details/preferred-name-answer"]) + n_v50_victim_victim_details_preferred_name --> n_v50_victim_victim_details_preferred_name_answer + n_v50_victim_victim_details_previous_convictions_answer(["/v50/victim/victim-details/previous-convictions-answer"]) + n_v50_victim_victim_details_previous_convictions --> n_v50_victim_victim_details_previous_convictions_answer + n_v50_victim_victim_details_reasonable_adjustments_answer(["/v50/victim/victim-details/reasonable-adjustments-answer"]) + n_v50_victim_victim_details_reasonable_adjustments --> n_v50_victim_victim_details_reasonable_adjustments_answer + n_v50_victim_victim_details_religion_answer(["/v50/victim/victim-details/religion-answer"]) + n_v50_victim_victim_details_religion --> n_v50_victim_victim_details_religion_answer + n_v50_victim_victim_details_risk_level_answer(["/v50/victim/victim-details/risk-level-answer"]) + n_v50_victim_victim_details_risk_level --> n_v50_victim_victim_details_risk_level_answer + n_v50_victim_victim_details_service_answer(["/v50/victim/victim-details/service-answer"]) + n_v50_victim_victim_details_service --> n_v50_victim_victim_details_service_answer + n_v50_victim_victim_details_telephone_number_answer(["/v50/victim/victim-details/telephone-number-answer"]) + n_v50_victim_victim_details_telephone_number --> n_v50_victim_victim_details_telephone_number_answer + n_v50_victim_victim_details_translator_needed_answer(["/v50/victim/victim-details/translator-needed-answer"]) + n_v50_victim_victim_details_translator_needed --> n_v50_victim_victim_details_translator_needed_answer + n_v50_victim_victim_details_victim_representative_answer(["/v50/victim/victim-details/victim-representative-answer"]) + n_v50_victim_victim_details_victim_representative --> n_v50_victim_victim_details_victim_representative_answer + n_v50_victim_victim_details_vps_status_answer(["/v50/victim/victim-details/vps-status-answer"]) + n_v50_victim_victim_details_vps_status --> n_v50_victim_victim_details_vps_status_answer + n_v50_victim_victim_details_wants_contact_answer(["/v50/victim/victim-details/wants-contact-answer"]) + n_v50_victim_victim_details_wants_contact --> n_v50_victim_victim_details_wants_contact_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_victim_case_information_charging_type_answer,n_v50_victim_victim_details_contact_times_answer,n_v50_victim_victim_details_address_answer,n_v50_victim_case_information_area_answer,n_v50_victim_victim_details_disability_answer,n_v50_victim_victim_details_pmoc_answer,n_v50_victim_victim_details_telephone_number_answer,n_v50_victim_victim_details_wants_contact_answer,n_v50_victim_victim_details_religion_answer,n_v50_victim_victim_details_reasonable_adjustments_answer,n_v50_victim_new_task_task_due_date_answer,n_v50_victim_new_task_next_task_answer,n_v50_victim_victim_details_translator_needed_answer,n_v50_victim_new_task_meeting_purpose_answer,n_v50_victim_case_contacts_idva_answer,n_v50_victim_victim_details_preferred_name_answer,n_v50_victim_victim_details_date_of_birth_answer,n_v50_victim_victim_details_previous_convictions_answer,n_v50_victim_case_contacts_family_liaison_officer_answer,n_v50_victim_new_task_check_task_answer,n_v50_victim_victim_details_full_name_answer,n_v50_victim_victim_details_ethnicity_answer,n_v50_victim_victim_details_gender_answer,n_v50_victim_victim_details_vps_status_answer,n_v50_victim_victim_details_victim_representative_answer,n_v50_victim_victim_details_category_answer,n_v50_victim_victim_details_power_of_attorney_answer,n_v50_victim_case_contacts_isva_answer,n_v50_victim_victim_details_pmoc_police_answer,n_v50_victim_victim_details_email_address_answer,n_v50_victim_victim_details_correspondence_language_answer,n_v50_victim_new_task_task_already_exists_answer,n_v50_victim_victim_details_risk_level_answer,n_v50_victim_victim_details_service_answer,n_v50_victim_new_task_manual_task_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_victim_case_contacts_idva_delete,n_v50_victim_case_contacts_family_liaison_officer_delete,n_v50_victim_case_contacts_isva_delete external; diff --git a/docs/flow-diagrams/v50-wft-meetings.mmd b/docs/flow-diagrams/v50-wft-meetings.mmd new file mode 100644 index 00000000..6f453409 --- /dev/null +++ b/docs/flow-diagrams/v50-wft-meetings.mmd @@ -0,0 +1,80 @@ +flowchart LR + n_v50_wft_meetings_victims["Victims
/v50/wft-meetings/victims"] + n_v50_wft_meetings_new_task_purposet["Task selection
/v50/wft-meetings/new-task/purposet"] + n_v50_wft_meetings_new_task_check_task["Check the task details are correct
/v50/wft-meetings/new-task/check-task"] + n_v50_wft_meetings_log_meeting_outcome_check["Tasks
/v50/wft-meetings/log-meeting-outcome-check"] + n_v50_wft_meetings_log_arranged_meeting["Tasks
/v50/wft-meetings/log-arranged-meeting"] + n_v50_wft_meetings_new_task_manual_task["Set a reminder
/v50/wft-meetings/new-task/manual-task"] + n_v50_wft_meetings_new_task_task_due_date["Task due date
/v50/wft-meetings/new-task/task-due-date"] + n_v50_wft_meetings_new_task_task_created["Victim onboarded
/v50/wft-meetings/new-task/task-created"] + n_v50_wft_meetings_tasks["Tasks
/v50/wft-meetings/tasks"] + n_v50_wft_meetings_new_task_task_selection["Task selection
/v50/wft-meetings/new-task/task-selection"] + n_v50_wft_meetings_log_offer_response_check["Tasks
/v50/wft-meetings/log-offer-response-check"] + n_v50_wft_meetings_log_offer_response["Tasks
/v50/wft-meetings/log-offer-response"] + n_v50_wft_meetings_tasks2["Tasks
/v50/wft-meetings/tasks2"] + n_v50_wft_meetings_log_arranged_meeting_check["Tasks
/v50/wft-meetings/log-arranged-meeting-check"] + n_v50_wft_meetings_log_meeting_outcome["Tasks
/v50/wft-meetings/log-meeting-outcome"] + n_v50_wft_meetings_log_offer_task["Tasks
/v50/wft-meetings/log-offer-task"] + n_v50_onb_tasks_clear_filters(["/v50/onb/tasks/clear-filters"]) + n_v50_wft_meetings_log_arranged_meeting --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_arranged_meeting_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_task --> n_v50_onb_tasks_clear_filters + n_v50_victim_new_task_manual_task["Set a reminder
/v50/victim/new-task/manual-task"] + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_task_selection["Task selection
/v50/victim/new-task/task-selection"] + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_manual_task_answer(["/v50/victim/new-task/manual-task-answer"]) + n_v50_wft_meetings_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_wft_meetings_new_task_purposet_answer(["/v50/wft-meetings/new-task/purposet-answer"]) + n_v50_wft_meetings_new_task_purposet --> n_v50_wft_meetings_new_task_purposet_answer + n_v50_wft_meetings_new_task_task_due_date_answer(["/v50/wft-meetings/new-task/task-due-date-answer"]) + n_v50_wft_meetings_new_task_task_due_date --> n_v50_wft_meetings_new_task_task_due_date_answer + n_v50_wft_meetings_new_task_next_task_answer(["/v50/wft-meetings/new-task/next-task-answer"]) + n_v50_wft_meetings_new_task_task_selection --> n_v50_wft_meetings_new_task_next_task_answer + n_v50_change_task_due_date["Change task due date
/v50/change-task-due-date"] + n_v50_wft_meetings_tasks --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks --> n_v50_onb_tasks_clear_filters + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_wft_meetings_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_wft_meetings_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_wft_meetings_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_pcd_pre_draft_check_details[/"/v50/pcd/pre-draft/check-details"/] + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_check_details + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_wft_meetings_tasks --> n_v50_pcd_send_email_details + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_wft_meetings_tasks --> n_v50_pcd_send_letter_details + n_v50_task_assignee["Task Assignee
/v50/task-assignee"] + n_v50_wft_meetings_tasks --> n_v50_task_assignee + n_v50_victim["Victim
/v50/victim"] + n_v50_wft_meetings_tasks --> n_v50_victim + n_v50_wft_meetings_tasks2 --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks2 --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_follow_up_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_next_attempt_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_was_text_message_sent + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_check_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_contacted_by + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_email_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_letter_details + n_v50_wft_meetings_tasks2 --> n_v50_task_assignee + n_v50_wft_meetings_tasks2 --> n_v50_victim + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_wft_meetings_victims --> n_v50_onb_service_lead + n_v50_wft_meetings_victims --> n_v50_victim + n_v50_vlo["Victim liaison officer
/v50/vlo"] + n_v50_wft_meetings_victims --> n_v50_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_onb_tasks_clear_filters,n_v50_wft_meetings_new_task_next_task_answer,n_v50_wft_meetings_new_task_purposet_answer,n_v50_victim_new_task_manual_task_answer,n_v50_wft_meetings_new_task_task_due_date_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_pcd_pre_draft_check_details external; diff --git a/docs/flow-diagrams/v51-case-locked.mmd b/docs/flow-diagrams/v51-case-locked.mmd new file mode 100644 index 00000000..89cc877e --- /dev/null +++ b/docs/flow-diagrams/v51-case-locked.mmd @@ -0,0 +1,8 @@ +flowchart LR + n_v51_case_locked_self_locked["Case locked
/v51/case-locked/self-locked"] + n_v51_case_locked_by_someone_else["Case locked
/v51/case-locked/by-someone-else"] + n_v51_pcd_victim[/"/v51/pcd/victim"/] + n_v51_case_locked_by_someone_else --> n_v51_pcd_victim + n_v51_case_locked_self_locked --> n_v51_pcd_victim + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_pcd_victim external; diff --git a/docs/flow-diagrams/v51-full.mmd b/docs/flow-diagrams/v51-full.mmd new file mode 100644 index 00000000..f9afcc38 --- /dev/null +++ b/docs/flow-diagrams/v51-full.mmd @@ -0,0 +1,484 @@ +flowchart LR + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_onb_check_details_preferred_name["Preferred name
/v51/onb/check-details/preferred-name"] + n_v51_next_task_due_date["Task due date
/v51/next-task-due-date"] + n_v51_victim_victim_details_date_of_birth["Victim's date of birth
/v51/victim/victim-details/date-of-birth"] + n_v51_victim_victim_details_full_name["Victim's full name
/v51/victim/victim-details/full-name"] + n_v51_overview5["Overview
/v51/overview5"] + n_v51_pcd_call_text_message_details["Text message details
/v51/pcd/call/text-message-details"] + n_v51_vlo["Victim liaison officer
/v51/vlo"] + n_v51_victim_victim_details_address["Victim's address
/v51/victim/victim-details/address"] + n_v51_other_text_message_logged["Text message logged
/v51/other/text-message-logged"] + n_v51_victim_victim_details_power_of_attorney["Power of attorney details
/v51/victim/victim-details/power-of-attorney"] + n_v51_victim_new_task_task_created["Victim onboarded
/v51/victim/new-task/task-created"] + n_v51_onb_check_details_translator_needed["Translator needed
/v51/onb/check-details/translator-needed"] + n_v51_victim_victim_details_disability["Disability or access needs
/v51/victim/victim-details/disability"] + n_v51_pcd_call_phone_call_2["Telephone call 2
/v51/pcd/call/phone-call-2"] + n_v51_pcd_send_letter_logged["Letter logged
/v51/pcd/send/letter-logged"] + n_v51_victim_case_information_area["Change area
/v51/victim/case-information/area"] + n_v51_other_log["Log a communication
/v51/other/log"] + n_v51_pcd_draft_pcd_type["Charging decision type
/v51/pcd/draft/pcd-type"] + n_v51_victim_task_details_another_task2["Victim record
/v51/victim/task-details/another-task2"] + n_v51_other_contacted_by["How did you contact the victim?
/v51/other/contacted-by"] + n_v51_pcd_draft_first_hearing["First hearing
/v51/pcd/draft/first-hearing"] + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v51/victim/victim-details/reasonable-adjustments"] + n_v51_wft_meetings_log_offer_response_check["Tasks
/v51/wft-meetings/log-offer-response-check"] + n_v51_vcl_follow_up_email_logged["Follow-up email logged
/v51/vcl/follow-up/email-logged"] + n_v51_victim_victim_details_category["Victim category
/v51/victim/victim-details/category"] + n_v51_onb_check_task_vlo["Victim liaison officer
/v51/onb/check-task-vlo"] + n_v51_task_updated["Victim onboarded
/v51/task-updated"] + n_v51_other_telephone_call["Log a telephone call
/v51/other/telephone-call"] + n_v51_pcd_call_phone_call_3["Telephone call 3 details
/v51/pcd/call/phone-call-3"] + n_v51_pcd_follow_up_letter_details["Follow-up letter details
/v51/pcd/follow-up/letter-details"] + n_v51_onb_check_details_vps_status["VPS status
/v51/onb/check-details/vps-status"] + n_v51_onb_check_task["Check the task details are correct
/v51/onb/check-task"] + n_v51_other_other_logged["Other communication logged
/v51/other/other-logged"] + n_v51_overview6_vlm["Overview
/v51/overview6-vlm"] + n_v51_update_manual_task["Update task status
/v51/update-manual-task"] + n_v51_other_other["Log other communication
/v51/other/other"] + n_v51_onb_manual_task["Create a task
/v51/onb/manual-task"] + n_v51_vcl_follow_up_email_details["Follow-up email details
/v51/vcl/follow-up/email-details"] + n_v51_overview4["Overview
/v51/overview4"] + n_v51_wft_meetings_tasks2["Tasks
/v51/wft-meetings/tasks2"] + n_v51_pcd_follow_up_letter_logged["Follow-up letter logged
/v51/pcd/follow-up/letter-logged"] + n_v51_vcl_draft_vcl_type["Communication type
/v51/vcl/draft/vcl-type"] + n_v51_victim_victim_details_preferred_name["Victim's preferred name
/v51/victim/victim-details/preferred-name"] + n_v51_pcd_follow_up_log_follow_up["Log a follow-up
/v51/pcd/follow-up/log-follow-up"] + n_v51_victims["Victims
/v51/victims"] + n_v51_wft_meetings_new_task_check_task["Check the task details are correct
/v51/wft-meetings/new-task/check-task"] + n_v51_vcl_call_next_attempt_moc["Next attempt method of contact
/v51/vcl/call/next-attempt-moc"] + n_v51_onb_next_task_due_date["Task due date
/v51/onb/next-task-due-date"] + n_v51_onb_check_details_case_type["Charging type
/v51/onb/check-details/case-type"] + n_v51_wft_meetings_log_arranged_meeting["Tasks
/v51/wft-meetings/log-arranged-meeting"] + n_v51_other_text_message["Log a text message
/v51/other/text-message"] + n_v51_victim_task_details_another_task1["Victim record
/v51/victim/task-details/another-task1"] + n_v51_onb_check_details_risk_level["Domestic abuse risk level
/v51/onb/check-details/risk-level"] + n_v51_wft_meetings_new_task_task_selection["Task selection
/v51/wft-meetings/new-task/task-selection"] + n_v51_change_task_due_date["Change task due date
/v51/change-task-due-date"] + n_v51_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v51/victim/case-contacts/family-liaison-officer"] + n_v51_victim_index_notasks["Victim
/v51/victim/index-notasks"] + n_v51_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v51/pcd/follow-up/not-contacted-logged"] + n_v51_pcd_pre_draft_check_eligibility["Check eligibility
/v51/pcd/pre-draft/check-eligibility"] + n_v51_victim["Victim
/v51/victim"] + n_v51_victim_victim_details_translator_needed["Translator needed
/v51/victim/victim-details/translator-needed"] + n_v51_overview2["Overview
/v51/overview2"] + n_v51_other_in_person_logged["In-person meeting logged
/v51/other/in-person-logged"] + n_v51_victim_new_task_check_task["Check the task details are correct
/v51/victim/new-task/check-task"] + n_v51_victim_new_task_meeting_purpose["Task selection
/v51/victim/new-task/meeting-purpose"] + n_v51_victim_victim_details_pmoc["Preferred method of contact
/v51/victim/victim-details/pmoc"] + n_v51_victim_victim_details_gender["Victim gender
/v51/victim/victim-details/gender"] + n_v51_wft_meetings_log_offer_response["Tasks
/v51/wft-meetings/log-offer-response"] + n_v51_vcl_draft_stopped_charge["Stopped charge reason
/v51/vcl/draft/stopped-charge"] + n_v51_other_email_details["Log an email
/v51/other/email-details"] + n_v51_wft_meetings_new_task_purposet["Task selection
/v51/wft-meetings/new-task/purposet"] + n_v51_onb_meeting_purpose["Task selection
/v51/onb/meeting-purpose"] + n_v51_other_in_person["Log an in-person conversation
/v51/other/in-person"] + n_v51_wft_meetings_log_meeting_outcome["Tasks
/v51/wft-meetings/log-meeting-outcome"] + n_v51_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v51/victim/case-contacts/isva"] + n_v51_wft_meetings_log_meeting_outcome_check["Tasks
/v51/wft-meetings/log-meeting-outcome-check"] + n_v51_sign_in["Sign in to your account
/v51/sign-in"] + n_v51_victim_victim_details_religion["Religion or belief
/v51/victim/victim-details/religion"] + n_v51_case_locked_self_locked["Case locked
/v51/case-locked/self-locked"] + n_v51_onb_check_details["Check the details before drafting the letter
/v51/onb/check-details"] + n_v51_other_letter_details["Log a letter
/v51/other/letter-details"] + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_victim_victim_details_service["Change service
/v51/victim/victim-details/service"] + n_v51_onb_next_task["Next task
/v51/onb/next-task"] + n_v51_victim_victim_details_pmoc_police["Preferred method of contact for police
/v51/victim/victim-details/pmoc-police"] + n_v51_victim_new_task_task_already_exists["This task already exists
/v51/victim/new-task/task-already-exists"] + n_v51_wft_meetings_victims["Victims
/v51/wft-meetings/victims"] + n_v51_victim_victim_details_risk_level["Domestic abuse risk level
/v51/victim/victim-details/risk-level"] + n_v51_vcl_send_email_details["Email details
/v51/vcl/send/email-details"] + n_v51_other_call_logged["Telephone call logged
/v51/other/call-logged"] + n_v51_victim_index_withtasks_v2["Victim
/v51/victim/index-withtasks-v2"] + n_v51_victim_index_withtasks_v3["Victim
/v51/victim/index-withtasks-v3"] + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_overview6_initial["Overview
/v51/overview6-initial"] + n_v51_task_assignee["Task Assignee
/v51/task-assignee"] + n_v51_onb_check_details_preferred_contact_times["Preferred contact times
/v51/onb/check-details/preferred-contact-times"] + n_v51_onb_pmoc["Preferred method of contact
/v51/onb/pmoc"] + n_v51_vcl_call_phone_call["Telephone call
/v51/vcl/call/phone-call"] + n_v51_victim_victim_details_correspondence_language["Preferred correspondence language
/v51/victim/victim-details/correspondence-language"] + n_v51_victim_victim_details_email_address["Victim's email address
/v51/victim/victim-details/email-address"] + n_v51_victim_victim_details_wants_contact["Do they want to be contacted?
/v51/victim/victim-details/wants-contact"] + n_v51_victim_victim_details_vps_status["VPS status
/v51/victim/victim-details/vps-status"] + n_v51_pcd_follow_up_email_details["Follow-up email details
/v51/pcd/follow-up/email-details"] + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_victim_task_details_decision_to_charge["Victim record
/v51/victim/task-details/decision-to-charge"] + n_v51_victim_task_details_outcome_logged["Victim record
/v51/victim/task-details/outcome-logged"] + n_v51_victim_index_withtasks_v4["Victim
/v51/victim/index-withtasks-v4"] + n_v51_onb_onboarded["Victim onboarded
/v51/onb/onboarded"] + n_v51_victim_victim_details_contact_times["Preferred contact times
/v51/victim/victim-details/contact-times"] + n_v51_wft_meetings_log_arranged_meeting_check["Tasks
/v51/wft-meetings/log-arranged-meeting-check"] + n_v51_pcd_follow_up_email_logged["Follow-up email logged
/v51/pcd/follow-up/email-logged"] + n_v51_vcl_call_text_message_details["Text message details
/v51/vcl/call/text-message-details"] + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_victim_new_task_task_selection["Task selection
/v51/victim/new-task/task-selection"] + n_v51_vcl_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/vcl/pre-draft/not-contacted-reason"] + n_v51_pcd_call_phone_call_1["Telephone call 1
/v51/pcd/call/phone-call-1"] + n_v51_wft_meetings_new_task_task_due_date["Task due date
/v51/wft-meetings/new-task/task-due-date"] + n_v51_vcl_send_letter_details["Letter details
/v51/vcl/send/letter-details"] + n_v51_other_letter_logged["Letter logged
/v51/other/letter-logged"] + n_v51_victim_case_information_charging_type["Change charging type
/v51/victim/case-information/charging-type"] + n_v51_vcl_call_follow_up_moc["Follow-up method of contact
/v51/vcl/call/follow-up-moc"] + n_v51_vcl_follow_up_letter_details["Follow-up letter details
/v51/vcl/follow-up/letter-details"] + n_v51_other_email_logged["Email logged
/v51/other/email-logged"] + n_v51_wft_meetings_new_task_task_created["Victim onboarded
/v51/wft-meetings/new-task/task-created"] + n_v51_tasks["Tasks
/v51/tasks"] + n_v51_pcd_draft_task_already_exists["This task already exists
/v51/pcd/draft/task-already-exists"] + n_v51_victim_victim_details_ethnicity["Victim ethnicity
/v51/victim/victim-details/ethnicity"] + n_v51_case_locked_by_someone_else["Case locked
/v51/case-locked/by-someone-else"] + n_v51_pcd_follow_up_telephone_call["Follow-up telephone call
/v51/pcd/follow-up/telephone-call"] + n_v51_vcl_follow_up_letter_logged["Follow-up letter logged
/v51/vcl/follow-up/letter-logged"] + n_v51_onb_check_details_pmoc["Preferred method of contact
/v51/onb/check-details/pmoc"] + n_v51_wft_meetings_new_task_manual_task["Set a reminder
/v51/wft-meetings/new-task/manual-task"] + n_v51_wft_meetings_tasks["Tasks
/v51/wft-meetings/tasks"] + n_v51_victim_new_task_manual_task["Set a reminder
/v51/victim/new-task/manual-task"] + n_v51_vcl_call_was_text_message_sent["Was a text message sent to the victim?
/v51/vcl/call/was-text-message-sent"] + n_v51_wft_meetings_log_offer_task["Tasks
/v51/wft-meetings/log-offer-task"] + n_v51_victim_victim_details_telephone_number["Victim's telephone number
/v51/victim/victim-details/telephone-number"] + n_v51_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v51/victim/case-contacts/idva"] + n_v51_vcl_follow_up_log_follow_up["Log a follow-up
/v51/vcl/follow-up/log-follow-up"] + n_v51_overview3["Overview
/v51/overview3"] + n_v51_pcd_send_email_logged["Email logged
/v51/pcd/send/email-logged"] + n_v51_vcl_pre_draft_contacted_by["How did you contact the victim?
/v51/vcl/pre-draft/contacted-by"] + n_v51_overview["Overview
/v51/overview"] + n_v51_overview6_vlo["Overview
/v51/overview6-vlo"] + n_v51_victim_victim_details_victim_representative["Victim representative details
/v51/victim/victim-details/victim-representative"] + n_v51_pcd_follow_up_call_logged["Follow-up telephone call logged
/v51/pcd/follow-up/call-logged"] + n_v51_change_service["Change service
/v51/change-service"] + n_v51_vcl_draft_substantially_altered_charge["Substantially altered charge
/v51/vcl/draft/substantially-altered-charge"] + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v51/onb/check-details/preferred-correspondence-language"] + n_v51_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/follow-up/not-contacted-reason"] + n_v51_victim_index_withtasks["Victim
/v51/victim/index-withtasks"] + n_v51_victim_victim_details_previous_convictions["Previous convictions
/v51/victim/victim-details/previous-convictions"] + n_v51_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/pre-draft/not-contacted-reason"] + n_v51_pcd_victim[/"/v51/pcd/victim"/] + n_v51_case_locked_by_someone_else --> n_v51_pcd_victim + n_v51_case_locked_self_locked --> n_v51_pcd_victim + n_v51_change_service_answer(["/v51/change-service-answer"]) + n_v51_change_service --> n_v51_change_service_answer + n_v51_change_task_due_date_answer(["/v51/change-task-due-date-answer"]) + n_v51_change_task_due_date --> n_v51_change_task_due_date_answer + n_v51_next_task_due_date --> n_v51_change_task_due_date_answer + n_v51_onb_check_details_answer(["/v51/onb/check-details-answer"]) + n_v51_onb_check_details --> n_v51_onb_check_details_answer + n_v51_onb_check_details --> n_v51_onb_check_details_case_type + n_v51_onb_check_details --> n_v51_onb_check_details_pmoc + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_contact_times + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_correspondence_language + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_name + n_v51_onb_check_details --> n_v51_onb_check_details_risk_level + n_v51_onb_check_details --> n_v51_onb_check_details_translator_needed + n_v51_onb_check_details --> n_v51_onb_check_details_vps_status + n_v51_onb_check_details --> n_v51_onb_check_task_vlo + n_v51_onb_check_details --> n_v51_onb_service_lead + n_v51_check_details_case_type_answer(["/v51/check-details/case-type-answer"]) + n_v51_onb_check_details_case_type --> n_v51_check_details_case_type_answer + n_v51_check_details_pmoc_answer(["/v51/check-details/pmoc-answer"]) + n_v51_onb_check_details_pmoc --> n_v51_check_details_pmoc_answer + n_v51_check_details_preferred_contact_times_answer(["/v51/check-details/preferred-contact-times-answer"]) + n_v51_onb_check_details_preferred_contact_times --> n_v51_check_details_preferred_contact_times_answer + n_v51_check_details_preferred_correspondence_language_answer(["/v51/check-details/preferred-correspondence-language-answer"]) + n_v51_onb_check_details_preferred_correspondence_language --> n_v51_check_details_preferred_correspondence_language_answer + n_v51_check_details_preferred_name_answer(["/v51/check-details/preferred-name-answer"]) + n_v51_onb_check_details_preferred_name --> n_v51_check_details_preferred_name_answer + n_v51_check_details_risk_level_answer(["/v51/check-details/risk-level-answer"]) + n_v51_onb_check_details_risk_level --> n_v51_check_details_risk_level_answer + n_v51_check_details_translator_needed_answer(["/v51/check-details/translator-needed-answer"]) + n_v51_onb_check_details_translator_needed --> n_v51_check_details_translator_needed_answer + n_v51_check_details_vps_status_answer(["/v51/check-details/vps-status-answer"]) + n_v51_onb_check_details_vps_status --> n_v51_check_details_vps_status_answer + n_v51_onb_check_task_answer(["/v51/onb/check-task-answer"]) + n_v51_onb_check_task --> n_v51_onb_check_task_answer + n_v51_onb_check_task --> n_v51_onb_manual_task + n_v51_onb_check_task --> n_v51_onb_meeting_purpose + n_v51_onb_check_task --> n_v51_onb_next_task + n_v51_onb_check_task --> n_v51_onb_next_task_due_date + n_v51_onb_check_task_vlo_answer(["/v51/onb/check-task-vlo-answer"]) + n_v51_onb_check_task_vlo --> n_v51_onb_check_task_vlo_answer + n_v51_onb_manual_task_answer(["/v51/onb/manual-task-answer"]) + n_v51_onb_manual_task --> n_v51_onb_manual_task_answer + n_v51_onb_meeting_purpose_answer(["/v51/onb/meeting-purpose-answer"]) + n_v51_onb_meeting_purpose --> n_v51_onb_meeting_purpose_answer + n_v51_onb_next_task_answer(["/v51/onb/next-task-answer"]) + n_v51_onb_next_task --> n_v51_onb_next_task_answer + n_v51_onb_next_task_due_date_answer(["/v51/onb/next-task-due-date-answer"]) + n_v51_onb_next_task_due_date --> n_v51_onb_next_task_due_date_answer + n_v51_onb_onboarded --> n_v51_victims + n_v51_onb_pmoc_answer(["/v51/onb/pmoc-answer"]) + n_v51_onb_pmoc --> n_v51_onb_pmoc_answer + n_v51_onb_service_lead_answer(["/v51/onb/service-lead-answer"]) + n_v51_onb_service_lead --> n_v51_onb_service_lead_answer + n_v51_other_call_logged --> n_v51_victim + n_v51_other_contacted_by_answer(["/v51/other/contacted-by-answer"]) + n_v51_other_contacted_by --> n_v51_other_contacted_by_answer + n_v51_other_email_details_answer(["/v51/other/email-details-answer"]) + n_v51_other_email_details --> n_v51_other_email_details_answer + n_v51_other_email_logged --> n_v51_victim + n_v51_other_in_person_answer(["/v51/other/in-person-answer"]) + n_v51_other_in_person --> n_v51_other_in_person_answer + n_v51_other_in_person_logged --> n_v51_victim + n_v51_other_letter_details_answer(["/v51/other/letter-details-answer"]) + n_v51_other_letter_details --> n_v51_other_letter_details_answer + n_v51_other_letter_logged --> n_v51_victim + n_v51_other_other_details_answer(["/v51/other/other-details-answer"]) + n_v51_other_other --> n_v51_other_other_details_answer + n_v51_other_other_logged --> n_v51_victim + n_v51_other_telephone_call_answer(["/v51/other/telephone-call-answer"]) + n_v51_other_telephone_call --> n_v51_other_telephone_call_answer + n_v51_other_text_message_answer(["/v51/other/text-message-answer"]) + n_v51_other_text_message --> n_v51_other_text_message_answer + n_v51_other_text_message_logged --> n_v51_victim + n_v51_onb_tasks[/"/v51/onb/tasks"/] + n_v51_overview --> n_v51_onb_tasks + n_v51_pcd_call_follow_up_moc_answer(["/v51/pcd/call/follow-up-moc-answer"]) + n_v51_pcd_call_follow_up_moc --> n_v51_pcd_call_follow_up_moc_answer + n_v51_pcd_call_next_attempt_moc_answer(["/v51/pcd/call/next-attempt-moc-answer"]) + n_v51_pcd_call_next_attempt_moc --> n_v51_pcd_call_next_attempt_moc_answer + n_v51_pcd_call_phone_call_1_answer(["/v51/pcd/call/phone-call-1-answer"]) + n_v51_pcd_call_phone_call_1 --> n_v51_pcd_call_phone_call_1_answer + n_v51_pcd_call_phone_call_2_answer(["/v51/pcd/call/phone-call-2-answer"]) + n_v51_pcd_call_phone_call_2 --> n_v51_pcd_call_phone_call_2_answer + n_v51_pcd_call_phone_call_3_answer(["/v51/pcd/call/phone-call-3-answer"]) + n_v51_pcd_call_phone_call_3 --> n_v51_pcd_call_phone_call_3_answer + n_v51_pcd_call_text_message_details_answer(["/v51/pcd/call/text-message-details-answer"]) + n_v51_pcd_call_text_message_details --> n_v51_pcd_call_text_message_details_answer + n_v51_pcd_call_was_text_message_sent_answer(["/v51/pcd/call/was-text-message-sent-answer"]) + n_v51_pcd_call_was_text_message_sent --> n_v51_pcd_call_was_text_message_sent_answer + n_v51_pcd_draft_first_hearing_answer(["/v51/pcd/draft/first-hearing-answer"]) + n_v51_pcd_draft_first_hearing --> n_v51_pcd_draft_first_hearing_answer + n_v51_pcd_draft_pcd_type_answer(["/v51/pcd/draft/pcd-type-answer"]) + n_v51_pcd_draft_pcd_type --> n_v51_pcd_draft_pcd_type_answer + n_v51_pcd_draft_task_already_exists_answer(["/v51/pcd/draft/task-already-exists-answer"]) + n_v51_pcd_draft_task_already_exists --> n_v51_pcd_draft_task_already_exists_answer + n_v51_pcd_draft_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_pcd_follow_up_call_logged --> n_v51_victim + n_v51_pcd_follow_up_email_details_answer(["/v51/pcd/follow-up/email-details-answer"]) + n_v51_pcd_follow_up_email_details --> n_v51_pcd_follow_up_email_details_answer + n_v51_pcd_follow_up_email_logged --> n_v51_victim + n_v51_pcd_follow_up_letter_details_answer(["/v51/pcd/follow-up/letter-details-answer"]) + n_v51_pcd_follow_up_letter_details --> n_v51_pcd_follow_up_letter_details_answer + n_v51_pcd_follow_up_letter_logged --> n_v51_victim + n_v51_pcd_follow_up_log_follow_up_answer(["/v51/pcd/follow-up/log-follow-up-answer"]) + n_v51_pcd_follow_up_log_follow_up --> n_v51_pcd_follow_up_log_follow_up_answer + n_v51_pcd_follow_up_not_contacted_logged --> n_v51_victim + n_v51_pcd_follow_up_not_contacted_reason_answer(["/v51/pcd/follow-up/not-contacted-reason-answer"]) + n_v51_pcd_follow_up_not_contacted_reason --> n_v51_pcd_follow_up_not_contacted_reason_answer + n_v51_pcd_follow_up_telephone_call_answer(["/v51/pcd/follow-up/telephone-call-answer"]) + n_v51_pcd_follow_up_telephone_call --> n_v51_pcd_follow_up_telephone_call_answer + n_v51_pcd_pre_draft_check_eligibility_answer(["/v51/pcd/pre-draft/check-eligibility-answer"]) + n_v51_pcd_pre_draft_check_eligibility --> n_v51_pcd_pre_draft_check_eligibility_answer + n_v51_pcd_pre_draft_contacted_by_answer(["/v51/pcd/pre-draft/contacted-by-answer"]) + n_v51_pcd_pre_draft_contacted_by --> n_v51_pcd_pre_draft_contacted_by_answer + n_v51_pcd_pre_draft_not_contacted_reason_answer(["/v51/pcd/pre-draft/not-contacted-reason-answer"]) + n_v51_pcd_pre_draft_not_contacted_reason --> n_v51_pcd_pre_draft_not_contacted_reason_answer + n_v51_pcd_send_email_details_answer(["/v51/pcd/send/email-details-answer"]) + n_v51_pcd_send_email_details --> n_v51_pcd_send_email_details_answer + n_v51_pcd_send_email_logged --> n_v51_victim + n_v51_pcd_send_letter_details_answer(["/v51/pcd/send/letter-details-answer"]) + n_v51_pcd_send_letter_details --> n_v51_pcd_send_letter_details_answer + n_v51_pcd_send_letter_logged --> n_v51_victim + n_v51_sign_in_answer(["/v51/sign-in-answer"]) + n_v51_sign_in --> n_v51_sign_in_answer + n_v51_task_assignee_answer(["/v51/task-assignee-answer"]) + n_v51_task_assignee --> n_v51_task_assignee_answer + n_v51_task_updated --> n_v51_tasks + n_v51_tasks --> n_v51_next_task_due_date + n_v51_onb_tasks_clear_filters(["/v51/onb/tasks/clear-filters"]) + n_v51_tasks --> n_v51_onb_tasks_clear_filters + n_v51_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_tasks --> n_v51_pcd_send_email_details + n_v51_tasks --> n_v51_pcd_send_letter_details + n_v51_tasks --> n_v51_task_assignee + n_v51_tasks --> n_v51_update_manual_task + n_v51_tasks --> n_v51_vcl_call_follow_up_moc + n_v51_tasks --> n_v51_vcl_call_next_attempt_moc + n_v51_tasks --> n_v51_vcl_call_was_text_message_sent + n_v51_tasks --> n_v51_vcl_send_email_details + n_v51_tasks --> n_v51_vcl_send_letter_details + n_v51_vcl_start_task[/"/v51/vcl/start-task"/] + n_v51_tasks --> n_v51_vcl_start_task + n_v51_tasks --> n_v51_victim + n_v51_update_manual_task_answer(["/v51/update-manual-task-answer"]) + n_v51_update_manual_task --> n_v51_update_manual_task_answer + n_v51_vcl_call_follow_up_moc_answer(["/v51/vcl/call/follow-up-moc-answer"]) + n_v51_vcl_call_follow_up_moc --> n_v51_vcl_call_follow_up_moc_answer + n_v51_vcl_call_next_attempt_moc_answer(["/v51/vcl/call/next-attempt-moc-answer"]) + n_v51_vcl_call_next_attempt_moc --> n_v51_vcl_call_next_attempt_moc_answer + n_v51_vcl_call_phone_call_answer(["/v51/vcl/call/phone-call-answer"]) + n_v51_vcl_call_phone_call --> n_v51_vcl_call_phone_call_answer + n_v51_vcl_call_text_message_details_answer(["/v51/vcl/call/text-message-details-answer"]) + n_v51_vcl_call_text_message_details --> n_v51_vcl_call_text_message_details_answer + n_v51_vcl_call_was_text_message_sent_answer(["/v51/vcl/call/was-text-message-sent-answer"]) + n_v51_vcl_call_was_text_message_sent --> n_v51_vcl_call_was_text_message_sent_answer + n_v51_vcl_draft_stopped_charge_answer(["/v51/vcl/draft/stopped-charge-answer"]) + n_v51_vcl_draft_stopped_charge --> n_v51_vcl_draft_stopped_charge_answer + n_v51_vcl_draft_substantially_altered_charge_answer(["/v51/vcl/draft/substantially-altered-charge-answer"]) + n_v51_vcl_draft_substantially_altered_charge --> n_v51_vcl_draft_substantially_altered_charge_answer + n_v51_vcl_draft_vcl_type_answer(["/v51/vcl/draft/vcl-type-answer"]) + n_v51_vcl_draft_vcl_type --> n_v51_vcl_draft_vcl_type_answer + n_v51_vcl_follow_up_email_details_answer(["/v51/vcl/follow-up/email-details-answer"]) + n_v51_vcl_follow_up_email_details --> n_v51_vcl_follow_up_email_details_answer + n_v51_vcl_follow_up_email_logged --> n_v51_victim + n_v51_vcl_follow_up_letter_details_answer(["/v51/vcl/follow-up/letter-details-answer"]) + n_v51_vcl_follow_up_letter_details --> n_v51_vcl_follow_up_letter_details_answer + n_v51_vcl_follow_up_letter_logged --> n_v51_victim + n_v51_vcl_follow_up_log_follow_up_answer(["/v51/vcl/follow-up/log-follow-up-answer"]) + n_v51_vcl_follow_up_log_follow_up --> n_v51_vcl_follow_up_log_follow_up_answer + n_v51_vcl_pre_draft_contacted_by_answer(["/v51/vcl/pre-draft/contacted-by-answer"]) + n_v51_vcl_pre_draft_contacted_by --> n_v51_vcl_pre_draft_contacted_by_answer + n_v51_vcl_pre_draft_not_contacted_reason_answer(["/v51/vcl/pre-draft/not-contacted-reason-answer"]) + n_v51_vcl_pre_draft_not_contacted_reason --> n_v51_vcl_pre_draft_not_contacted_reason_answer + n_v51_vcl_send_email_details_answer(["/v51/vcl/send/email-details-answer"]) + n_v51_vcl_send_email_details --> n_v51_vcl_send_email_details_answer + n_v51_vcl_send_letter_details_answer(["/v51/vcl/send/letter-details-answer"]) + n_v51_vcl_send_letter_details --> n_v51_vcl_send_letter_details_answer + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim + n_v51_victim_case_contacts_family_liaison_officer_answer(["/v51/victim/case-contacts/family-liaison-officer-answer"]) + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_answer + n_v51_victim_case_contacts_family_liaison_officer_delete[/"/v51/victim/case-contacts/family-liaison-officer-delete"/] + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_delete + n_v51_victim_case_contacts_idva --> n_v51_victim + n_v51_victim_case_contacts_idva_answer(["/v51/victim/case-contacts/idva-answer"]) + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_answer + n_v51_victim_case_contacts_idva_delete[/"/v51/victim/case-contacts/idva-delete"/] + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_delete + n_v51_victim_case_contacts_isva --> n_v51_victim + n_v51_victim_case_contacts_isva_answer(["/v51/victim/case-contacts/isva-answer"]) + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_answer + n_v51_victim_case_contacts_isva_delete[/"/v51/victim/case-contacts/isva-delete"/] + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_delete + n_v51_victim_case_information_area_answer(["/v51/victim/case-information/area-answer"]) + n_v51_victim_case_information_area --> n_v51_victim_case_information_area_answer + n_v51_victim_case_information_charging_type_answer(["/v51/victim/case-information/charging-type-answer"]) + n_v51_victim_case_information_charging_type --> n_v51_victim_case_information_charging_type_answer + n_v51_victim_index_notasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v3 --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v4 --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_check_task_answer(["/v51/victim/new-task/check-task-answer"]) + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_check_task_answer + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_meeting_purpose + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_manual_task_answer(["/v51/victim/new-task/manual-task-answer"]) + n_v51_victim_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_victim_new_task_meeting_purpose_answer(["/v51/victim/new-task/meeting-purpose-answer"]) + n_v51_victim_new_task_meeting_purpose --> n_v51_victim_new_task_meeting_purpose_answer + n_v51_victim_new_task_task_already_exists_answer(["/v51/victim/new-task/task-already-exists-answer"]) + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_already_exists_answer + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_task_created --> n_v51_victim + n_v51_victim_new_task_task_due_date_answer(["/v51/victim/new-task/task-due-date-answer"]) + n_v51_victim_new_task_task_due_date --> n_v51_victim_new_task_task_due_date_answer + n_v51_victim_new_task_next_task_answer(["/v51/victim/new-task/next-task-answer"]) + n_v51_victim_new_task_task_selection --> n_v51_victim_new_task_next_task_answer + n_v51_victim_victim_details_address_answer(["/v51/victim/victim-details/address-answer"]) + n_v51_victim_victim_details_address --> n_v51_victim_victim_details_address_answer + n_v51_victim_victim_details_category_answer(["/v51/victim/victim-details/category-answer"]) + n_v51_victim_victim_details_category --> n_v51_victim_victim_details_category_answer + n_v51_victim_victim_details_contact_times_answer(["/v51/victim/victim-details/contact-times-answer"]) + n_v51_victim_victim_details_contact_times --> n_v51_victim_victim_details_contact_times_answer + n_v51_victim_victim_details_correspondence_language_answer(["/v51/victim/victim-details/correspondence-language-answer"]) + n_v51_victim_victim_details_correspondence_language --> n_v51_victim_victim_details_correspondence_language_answer + n_v51_victim_victim_details_date_of_birth_answer(["/v51/victim/victim-details/date-of-birth-answer"]) + n_v51_victim_victim_details_date_of_birth --> n_v51_victim_victim_details_date_of_birth_answer + n_v51_victim_victim_details_disability_answer(["/v51/victim/victim-details/disability-answer"]) + n_v51_victim_victim_details_disability --> n_v51_victim_victim_details_disability_answer + n_v51_victim_victim_details_email_address_answer(["/v51/victim/victim-details/email-address-answer"]) + n_v51_victim_victim_details_email_address --> n_v51_victim_victim_details_email_address_answer + n_v51_victim_victim_details_ethnicity_answer(["/v51/victim/victim-details/ethnicity-answer"]) + n_v51_victim_victim_details_ethnicity --> n_v51_victim_victim_details_ethnicity_answer + n_v51_victim_victim_details_full_name_answer(["/v51/victim/victim-details/full-name-answer"]) + n_v51_victim_victim_details_full_name --> n_v51_victim_victim_details_full_name_answer + n_v51_victim_victim_details_gender_answer(["/v51/victim/victim-details/gender-answer"]) + n_v51_victim_victim_details_gender --> n_v51_victim_victim_details_gender_answer + n_v51_victim_victim_details_pmoc_answer(["/v51/victim/victim-details/pmoc-answer"]) + n_v51_victim_victim_details_pmoc --> n_v51_victim_victim_details_pmoc_answer + n_v51_victim_victim_details_pmoc_police_answer(["/v51/victim/victim-details/pmoc-police-answer"]) + n_v51_victim_victim_details_pmoc_police --> n_v51_victim_victim_details_pmoc_police_answer + n_v51_victim_victim_details_power_of_attorney_answer(["/v51/victim/victim-details/power-of-attorney-answer"]) + n_v51_victim_victim_details_power_of_attorney --> n_v51_victim_victim_details_power_of_attorney_answer + n_v51_victim_victim_details_preferred_name_answer(["/v51/victim/victim-details/preferred-name-answer"]) + n_v51_victim_victim_details_preferred_name --> n_v51_victim_victim_details_preferred_name_answer + n_v51_victim_victim_details_previous_convictions_answer(["/v51/victim/victim-details/previous-convictions-answer"]) + n_v51_victim_victim_details_previous_convictions --> n_v51_victim_victim_details_previous_convictions_answer + n_v51_victim_victim_details_reasonable_adjustments_answer(["/v51/victim/victim-details/reasonable-adjustments-answer"]) + n_v51_victim_victim_details_reasonable_adjustments --> n_v51_victim_victim_details_reasonable_adjustments_answer + n_v51_victim_victim_details_religion_answer(["/v51/victim/victim-details/religion-answer"]) + n_v51_victim_victim_details_religion --> n_v51_victim_victim_details_religion_answer + n_v51_victim_victim_details_risk_level_answer(["/v51/victim/victim-details/risk-level-answer"]) + n_v51_victim_victim_details_risk_level --> n_v51_victim_victim_details_risk_level_answer + n_v51_victim_victim_details_service_answer(["/v51/victim/victim-details/service-answer"]) + n_v51_victim_victim_details_service --> n_v51_victim_victim_details_service_answer + n_v51_victim_victim_details_telephone_number_answer(["/v51/victim/victim-details/telephone-number-answer"]) + n_v51_victim_victim_details_telephone_number --> n_v51_victim_victim_details_telephone_number_answer + n_v51_victim_victim_details_translator_needed_answer(["/v51/victim/victim-details/translator-needed-answer"]) + n_v51_victim_victim_details_translator_needed --> n_v51_victim_victim_details_translator_needed_answer + n_v51_victim_victim_details_victim_representative_answer(["/v51/victim/victim-details/victim-representative-answer"]) + n_v51_victim_victim_details_victim_representative --> n_v51_victim_victim_details_victim_representative_answer + n_v51_victim_victim_details_vps_status_answer(["/v51/victim/victim-details/vps-status-answer"]) + n_v51_victim_victim_details_vps_status --> n_v51_victim_victim_details_vps_status_answer + n_v51_victim_victim_details_wants_contact_answer(["/v51/victim/victim-details/wants-contact-answer"]) + n_v51_victim_victim_details_wants_contact --> n_v51_victim_victim_details_wants_contact_answer + n_v51_victims --> n_v51_change_service + n_v51_victims --> n_v51_onb_service_lead + n_v51_victims --> n_v51_victim + n_v51_victims --> n_v51_vlo + n_v51_onb_vlo_answer(["/v51/onb/vlo-answer"]) + n_v51_vlo --> n_v51_onb_vlo_answer + n_v51_wft_meetings_log_arranged_meeting --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_arranged_meeting_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_task --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_wft_meetings_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_wft_meetings_new_task_purposet_answer(["/v51/wft-meetings/new-task/purposet-answer"]) + n_v51_wft_meetings_new_task_purposet --> n_v51_wft_meetings_new_task_purposet_answer + n_v51_wft_meetings_new_task_task_due_date_answer(["/v51/wft-meetings/new-task/task-due-date-answer"]) + n_v51_wft_meetings_new_task_task_due_date --> n_v51_wft_meetings_new_task_task_due_date_answer + n_v51_wft_meetings_new_task_next_task_answer(["/v51/wft-meetings/new-task/next-task-answer"]) + n_v51_wft_meetings_new_task_task_selection --> n_v51_wft_meetings_new_task_next_task_answer + n_v51_wft_meetings_tasks --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_wft_meetings_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_wft_meetings_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_pcd_pre_draft_check_details[/"/v51/pcd/pre-draft/check-details"/] + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_check_details + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_wft_meetings_tasks --> n_v51_pcd_send_email_details + n_v51_wft_meetings_tasks --> n_v51_pcd_send_letter_details + n_v51_wft_meetings_tasks --> n_v51_task_assignee + n_v51_wft_meetings_tasks --> n_v51_victim + n_v51_wft_meetings_tasks2 --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks2 --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_follow_up_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_next_attempt_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_was_text_message_sent + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_check_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_contacted_by + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_email_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_letter_details + n_v51_wft_meetings_tasks2 --> n_v51_task_assignee + n_v51_wft_meetings_tasks2 --> n_v51_victim + n_v51_wft_meetings_victims --> n_v51_onb_service_lead + n_v51_wft_meetings_victims --> n_v51_victim + n_v51_wft_meetings_victims --> n_v51_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_pcd_call_was_text_message_sent_answer,n_v51_victim_victim_details_email_address_answer,n_v51_victim_victim_details_wants_contact_answer,n_v51_check_details_preferred_contact_times_answer,n_v51_vcl_pre_draft_not_contacted_reason_answer,n_v51_victim_new_task_manual_task_answer,n_v51_victim_case_information_charging_type_answer,n_v51_update_manual_task_answer,n_v51_victim_new_task_check_task_answer,n_v51_check_details_pmoc_answer,n_v51_pcd_call_phone_call_2_answer,n_v51_victim_victim_details_correspondence_language_answer,n_v51_onb_next_task_answer,n_v51_victim_victim_details_vps_status_answer,n_v51_victim_victim_details_victim_representative_answer,n_v51_pcd_send_letter_details_answer,n_v51_victim_new_task_task_due_date_answer,n_v51_onb_check_task_answer,n_v51_other_other_details_answer,n_v51_pcd_draft_pcd_type_answer,n_v51_pcd_send_email_details_answer,n_v51_victim_victim_details_previous_convictions_answer,n_v51_victim_victim_details_pmoc_answer,n_v51_pcd_call_follow_up_moc_answer,n_v51_pcd_call_phone_call_1_answer,n_v51_vcl_send_letter_details_answer,n_v51_pcd_follow_up_not_contacted_reason_answer,n_v51_victim_victim_details_gender_answer,n_v51_pcd_call_phone_call_3_answer,n_v51_victim_victim_details_category_answer,n_v51_victim_case_contacts_family_liaison_officer_answer,n_v51_pcd_call_text_message_details_answer,n_v51_other_letter_details_answer,n_v51_pcd_pre_draft_not_contacted_reason_answer,n_v51_onb_meeting_purpose_answer,n_v51_vcl_call_follow_up_moc_answer,n_v51_victim_new_task_next_task_answer,n_v51_change_task_due_date_answer,n_v51_vcl_pre_draft_contacted_by_answer,n_v51_victim_case_information_area_answer,n_v51_onb_next_task_due_date_answer,n_v51_other_telephone_call_answer,n_v51_victim_victim_details_telephone_number_answer,n_v51_check_details_preferred_correspondence_language_answer,n_v51_pcd_draft_first_hearing_answer,n_v51_wft_meetings_new_task_purposet_answer,n_v51_victim_new_task_meeting_purpose_answer,n_v51_check_details_vps_status_answer,n_v51_pcd_pre_draft_contacted_by_answer,n_v51_victim_victim_details_preferred_name_answer,n_v51_victim_victim_details_reasonable_adjustments_answer,n_v51_check_details_case_type_answer,n_v51_vcl_call_was_text_message_sent_answer,n_v51_victim_victim_details_power_of_attorney_answer,n_v51_onb_service_lead_answer,n_v51_pcd_follow_up_telephone_call_answer,n_v51_victim_victim_details_religion_answer,n_v51_vcl_draft_vcl_type_answer,n_v51_vcl_draft_stopped_charge_answer,n_v51_victim_victim_details_full_name_answer,n_v51_pcd_follow_up_email_details_answer,n_v51_vcl_send_email_details_answer,n_v51_other_contacted_by_answer,n_v51_onb_check_details_answer,n_v51_pcd_pre_draft_check_eligibility_answer,n_v51_pcd_follow_up_letter_details_answer,n_v51_vcl_call_phone_call_answer,n_v51_vcl_follow_up_letter_details_answer,n_v51_victim_victim_details_pmoc_police_answer,n_v51_victim_victim_details_service_answer,n_v51_task_assignee_answer,n_v51_vcl_follow_up_email_details_answer,n_v51_victim_victim_details_disability_answer,n_v51_pcd_draft_task_already_exists_answer,n_v51_pcd_follow_up_log_follow_up_answer,n_v51_victim_new_task_task_already_exists_answer,n_v51_vcl_call_next_attempt_moc_answer,n_v51_victim_victim_details_address_answer,n_v51_victim_case_contacts_idva_answer,n_v51_onb_vlo_answer,n_v51_change_service_answer,n_v51_check_details_risk_level_answer,n_v51_onb_manual_task_answer,n_v51_wft_meetings_new_task_next_task_answer,n_v51_victim_victim_details_translator_needed_answer,n_v51_check_details_translator_needed_answer,n_v51_other_in_person_answer,n_v51_victim_victim_details_contact_times_answer,n_v51_sign_in_answer,n_v51_wft_meetings_new_task_task_due_date_answer,n_v51_onb_check_task_vlo_answer,n_v51_vcl_call_text_message_details_answer,n_v51_check_details_preferred_name_answer,n_v51_other_email_details_answer,n_v51_pcd_call_next_attempt_moc_answer,n_v51_victim_case_contacts_isva_answer,n_v51_victim_victim_details_risk_level_answer,n_v51_victim_victim_details_date_of_birth_answer,n_v51_vcl_draft_substantially_altered_charge_answer,n_v51_victim_victim_details_ethnicity_answer,n_v51_onb_pmoc_answer,n_v51_vcl_follow_up_log_follow_up_answer,n_v51_onb_tasks_clear_filters,n_v51_other_text_message_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_victim_case_contacts_family_liaison_officer_delete,n_v51_vcl_start_task,n_v51_pcd_victim,n_v51_pcd_pre_draft_check_details,n_v51_victim_case_contacts_idva_delete,n_v51_onb_tasks,n_v51_victim_case_contacts_isva_delete external; diff --git a/docs/flow-diagrams/v51-onb.mmd b/docs/flow-diagrams/v51-onb.mmd new file mode 100644 index 00000000..7859b654 --- /dev/null +++ b/docs/flow-diagrams/v51-onb.mmd @@ -0,0 +1,71 @@ +flowchart LR + n_v51_onb_check_details_vps_status["VPS status
/v51/onb/check-details/vps-status"] + n_v51_onb_check_task["Check the task details are correct
/v51/onb/check-task"] + n_v51_onb_check_details_risk_level["Domestic abuse risk level
/v51/onb/check-details/risk-level"] + n_v51_onb_next_task["Next task
/v51/onb/next-task"] + n_v51_onb_check_details_preferred_name["Preferred name
/v51/onb/check-details/preferred-name"] + n_v51_onb_manual_task["Create a task
/v51/onb/manual-task"] + n_v51_onb_check_details_pmoc["Preferred method of contact
/v51/onb/check-details/pmoc"] + n_v51_onb_onboarded["Victim onboarded
/v51/onb/onboarded"] + n_v51_onb_meeting_purpose["Task selection
/v51/onb/meeting-purpose"] + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_onb_check_details_preferred_contact_times["Preferred contact times
/v51/onb/check-details/preferred-contact-times"] + n_v51_onb_check_task_vlo["Victim liaison officer
/v51/onb/check-task-vlo"] + n_v51_onb_next_task_due_date["Task due date
/v51/onb/next-task-due-date"] + n_v51_onb_check_details_case_type["Charging type
/v51/onb/check-details/case-type"] + n_v51_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v51/onb/check-details/preferred-correspondence-language"] + n_v51_onb_check_details_translator_needed["Translator needed
/v51/onb/check-details/translator-needed"] + n_v51_onb_pmoc["Preferred method of contact
/v51/onb/pmoc"] + n_v51_onb_check_details["Check the details before drafting the letter
/v51/onb/check-details"] + n_v51_onb_check_details_answer(["/v51/onb/check-details-answer"]) + n_v51_onb_check_details --> n_v51_onb_check_details_answer + n_v51_onb_check_details --> n_v51_onb_check_details_case_type + n_v51_onb_check_details --> n_v51_onb_check_details_pmoc + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_contact_times + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_correspondence_language + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_name + n_v51_onb_check_details --> n_v51_onb_check_details_risk_level + n_v51_onb_check_details --> n_v51_onb_check_details_translator_needed + n_v51_onb_check_details --> n_v51_onb_check_details_vps_status + n_v51_onb_check_details --> n_v51_onb_check_task_vlo + n_v51_onb_check_details --> n_v51_onb_service_lead + n_v51_check_details_case_type_answer(["/v51/check-details/case-type-answer"]) + n_v51_onb_check_details_case_type --> n_v51_check_details_case_type_answer + n_v51_check_details_pmoc_answer(["/v51/check-details/pmoc-answer"]) + n_v51_onb_check_details_pmoc --> n_v51_check_details_pmoc_answer + n_v51_check_details_preferred_contact_times_answer(["/v51/check-details/preferred-contact-times-answer"]) + n_v51_onb_check_details_preferred_contact_times --> n_v51_check_details_preferred_contact_times_answer + n_v51_check_details_preferred_correspondence_language_answer(["/v51/check-details/preferred-correspondence-language-answer"]) + n_v51_onb_check_details_preferred_correspondence_language --> n_v51_check_details_preferred_correspondence_language_answer + n_v51_check_details_preferred_name_answer(["/v51/check-details/preferred-name-answer"]) + n_v51_onb_check_details_preferred_name --> n_v51_check_details_preferred_name_answer + n_v51_check_details_risk_level_answer(["/v51/check-details/risk-level-answer"]) + n_v51_onb_check_details_risk_level --> n_v51_check_details_risk_level_answer + n_v51_check_details_translator_needed_answer(["/v51/check-details/translator-needed-answer"]) + n_v51_onb_check_details_translator_needed --> n_v51_check_details_translator_needed_answer + n_v51_check_details_vps_status_answer(["/v51/check-details/vps-status-answer"]) + n_v51_onb_check_details_vps_status --> n_v51_check_details_vps_status_answer + n_v51_onb_check_task_answer(["/v51/onb/check-task-answer"]) + n_v51_onb_check_task --> n_v51_onb_check_task_answer + n_v51_onb_check_task --> n_v51_onb_manual_task + n_v51_onb_check_task --> n_v51_onb_meeting_purpose + n_v51_onb_check_task --> n_v51_onb_next_task + n_v51_onb_check_task --> n_v51_onb_next_task_due_date + n_v51_onb_check_task_vlo_answer(["/v51/onb/check-task-vlo-answer"]) + n_v51_onb_check_task_vlo --> n_v51_onb_check_task_vlo_answer + n_v51_onb_manual_task_answer(["/v51/onb/manual-task-answer"]) + n_v51_onb_manual_task --> n_v51_onb_manual_task_answer + n_v51_onb_meeting_purpose_answer(["/v51/onb/meeting-purpose-answer"]) + n_v51_onb_meeting_purpose --> n_v51_onb_meeting_purpose_answer + n_v51_onb_next_task_answer(["/v51/onb/next-task-answer"]) + n_v51_onb_next_task --> n_v51_onb_next_task_answer + n_v51_onb_next_task_due_date_answer(["/v51/onb/next-task-due-date-answer"]) + n_v51_onb_next_task_due_date --> n_v51_onb_next_task_due_date_answer + n_v51_victims["Victims
/v51/victims"] + n_v51_onb_onboarded --> n_v51_victims + n_v51_onb_pmoc_answer(["/v51/onb/pmoc-answer"]) + n_v51_onb_pmoc --> n_v51_onb_pmoc_answer + n_v51_onb_service_lead_answer(["/v51/onb/service-lead-answer"]) + n_v51_onb_service_lead --> n_v51_onb_service_lead_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_check_details_preferred_contact_times_answer,n_v51_check_details_risk_level_answer,n_v51_onb_manual_task_answer,n_v51_onb_meeting_purpose_answer,n_v51_check_details_pmoc_answer,n_v51_onb_next_task_due_date_answer,n_v51_check_details_translator_needed_answer,n_v51_onb_next_task_answer,n_v51_check_details_preferred_correspondence_language_answer,n_v51_onb_check_details_answer,n_v51_onb_check_task_vlo_answer,n_v51_check_details_preferred_name_answer,n_v51_check_details_vps_status_answer,n_v51_onb_check_task_answer,n_v51_check_details_case_type_answer,n_v51_onb_pmoc_answer,n_v51_onb_service_lead_answer answer; diff --git a/docs/flow-diagrams/v51-other.mmd b/docs/flow-diagrams/v51-other.mmd new file mode 100644 index 00000000..1aa86a59 --- /dev/null +++ b/docs/flow-diagrams/v51-other.mmd @@ -0,0 +1,38 @@ +flowchart LR + n_v51_other_email_logged["Email logged
/v51/other/email-logged"] + n_v51_other_other_logged["Other communication logged
/v51/other/other-logged"] + n_v51_other_log["Log a communication
/v51/other/log"] + n_v51_other_other["Log other communication
/v51/other/other"] + n_v51_other_contacted_by["How did you contact the victim?
/v51/other/contacted-by"] + n_v51_other_call_logged["Telephone call logged
/v51/other/call-logged"] + n_v51_other_in_person_logged["In-person meeting logged
/v51/other/in-person-logged"] + n_v51_other_text_message["Log a text message
/v51/other/text-message"] + n_v51_other_email_details["Log an email
/v51/other/email-details"] + n_v51_other_in_person["Log an in-person conversation
/v51/other/in-person"] + n_v51_other_text_message_logged["Text message logged
/v51/other/text-message-logged"] + n_v51_other_telephone_call["Log a telephone call
/v51/other/telephone-call"] + n_v51_other_letter_logged["Letter logged
/v51/other/letter-logged"] + n_v51_other_letter_details["Log a letter
/v51/other/letter-details"] + n_v51_victim["Victim
/v51/victim"] + n_v51_other_call_logged --> n_v51_victim + n_v51_other_contacted_by_answer(["/v51/other/contacted-by-answer"]) + n_v51_other_contacted_by --> n_v51_other_contacted_by_answer + n_v51_other_email_details_answer(["/v51/other/email-details-answer"]) + n_v51_other_email_details --> n_v51_other_email_details_answer + n_v51_other_email_logged --> n_v51_victim + n_v51_other_in_person_answer(["/v51/other/in-person-answer"]) + n_v51_other_in_person --> n_v51_other_in_person_answer + n_v51_other_in_person_logged --> n_v51_victim + n_v51_other_letter_details_answer(["/v51/other/letter-details-answer"]) + n_v51_other_letter_details --> n_v51_other_letter_details_answer + n_v51_other_letter_logged --> n_v51_victim + n_v51_other_other_details_answer(["/v51/other/other-details-answer"]) + n_v51_other_other --> n_v51_other_other_details_answer + n_v51_other_other_logged --> n_v51_victim + n_v51_other_telephone_call_answer(["/v51/other/telephone-call-answer"]) + n_v51_other_telephone_call --> n_v51_other_telephone_call_answer + n_v51_other_text_message_answer(["/v51/other/text-message-answer"]) + n_v51_other_text_message --> n_v51_other_text_message_answer + n_v51_other_text_message_logged --> n_v51_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_other_letter_details_answer,n_v51_other_telephone_call_answer,n_v51_other_in_person_answer,n_v51_other_contacted_by_answer,n_v51_other_email_details_answer,n_v51_other_other_details_answer,n_v51_other_text_message_answer answer; diff --git a/docs/flow-diagrams/v51-pcd.mmd b/docs/flow-diagrams/v51-pcd.mmd new file mode 100644 index 00000000..13dc5659 --- /dev/null +++ b/docs/flow-diagrams/v51-pcd.mmd @@ -0,0 +1,78 @@ +flowchart LR + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_pcd_draft_task_already_exists["This task already exists
/v51/pcd/draft/task-already-exists"] + n_v51_pcd_follow_up_telephone_call["Follow-up telephone call
/v51/pcd/follow-up/telephone-call"] + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_pcd_call_text_message_details["Text message details
/v51/pcd/call/text-message-details"] + n_v51_pcd_follow_up_letter_logged["Follow-up letter logged
/v51/pcd/follow-up/letter-logged"] + n_v51_pcd_follow_up_log_follow_up["Log a follow-up
/v51/pcd/follow-up/log-follow-up"] + n_v51_pcd_call_phone_call_2["Telephone call 2
/v51/pcd/call/phone-call-2"] + n_v51_pcd_send_letter_logged["Letter logged
/v51/pcd/send/letter-logged"] + n_v51_pcd_draft_pcd_type["Charging decision type
/v51/pcd/draft/pcd-type"] + n_v51_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v51/pcd/follow-up/not-contacted-logged"] + n_v51_pcd_pre_draft_check_eligibility["Check eligibility
/v51/pcd/pre-draft/check-eligibility"] + n_v51_pcd_send_email_logged["Email logged
/v51/pcd/send/email-logged"] + n_v51_pcd_follow_up_email_details["Follow-up email details
/v51/pcd/follow-up/email-details"] + n_v51_pcd_draft_first_hearing["First hearing
/v51/pcd/draft/first-hearing"] + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_pcd_follow_up_call_logged["Follow-up telephone call logged
/v51/pcd/follow-up/call-logged"] + n_v51_pcd_follow_up_email_logged["Follow-up email logged
/v51/pcd/follow-up/email-logged"] + n_v51_pcd_call_phone_call_3["Telephone call 3 details
/v51/pcd/call/phone-call-3"] + n_v51_pcd_call_phone_call_1["Telephone call 1
/v51/pcd/call/phone-call-1"] + n_v51_pcd_follow_up_letter_details["Follow-up letter details
/v51/pcd/follow-up/letter-details"] + n_v51_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/follow-up/not-contacted-reason"] + n_v51_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/pre-draft/not-contacted-reason"] + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_pcd_call_follow_up_moc_answer(["/v51/pcd/call/follow-up-moc-answer"]) + n_v51_pcd_call_follow_up_moc --> n_v51_pcd_call_follow_up_moc_answer + n_v51_pcd_call_next_attempt_moc_answer(["/v51/pcd/call/next-attempt-moc-answer"]) + n_v51_pcd_call_next_attempt_moc --> n_v51_pcd_call_next_attempt_moc_answer + n_v51_pcd_call_phone_call_1_answer(["/v51/pcd/call/phone-call-1-answer"]) + n_v51_pcd_call_phone_call_1 --> n_v51_pcd_call_phone_call_1_answer + n_v51_pcd_call_phone_call_2_answer(["/v51/pcd/call/phone-call-2-answer"]) + n_v51_pcd_call_phone_call_2 --> n_v51_pcd_call_phone_call_2_answer + n_v51_pcd_call_phone_call_3_answer(["/v51/pcd/call/phone-call-3-answer"]) + n_v51_pcd_call_phone_call_3 --> n_v51_pcd_call_phone_call_3_answer + n_v51_pcd_call_text_message_details_answer(["/v51/pcd/call/text-message-details-answer"]) + n_v51_pcd_call_text_message_details --> n_v51_pcd_call_text_message_details_answer + n_v51_pcd_call_was_text_message_sent_answer(["/v51/pcd/call/was-text-message-sent-answer"]) + n_v51_pcd_call_was_text_message_sent --> n_v51_pcd_call_was_text_message_sent_answer + n_v51_pcd_draft_first_hearing_answer(["/v51/pcd/draft/first-hearing-answer"]) + n_v51_pcd_draft_first_hearing --> n_v51_pcd_draft_first_hearing_answer + n_v51_pcd_draft_pcd_type_answer(["/v51/pcd/draft/pcd-type-answer"]) + n_v51_pcd_draft_pcd_type --> n_v51_pcd_draft_pcd_type_answer + n_v51_pcd_draft_task_already_exists_answer(["/v51/pcd/draft/task-already-exists-answer"]) + n_v51_pcd_draft_task_already_exists --> n_v51_pcd_draft_task_already_exists_answer + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_pcd_draft_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_victim["Victim
/v51/victim"] + n_v51_pcd_follow_up_call_logged --> n_v51_victim + n_v51_pcd_follow_up_email_details_answer(["/v51/pcd/follow-up/email-details-answer"]) + n_v51_pcd_follow_up_email_details --> n_v51_pcd_follow_up_email_details_answer + n_v51_pcd_follow_up_email_logged --> n_v51_victim + n_v51_pcd_follow_up_letter_details_answer(["/v51/pcd/follow-up/letter-details-answer"]) + n_v51_pcd_follow_up_letter_details --> n_v51_pcd_follow_up_letter_details_answer + n_v51_pcd_follow_up_letter_logged --> n_v51_victim + n_v51_pcd_follow_up_log_follow_up_answer(["/v51/pcd/follow-up/log-follow-up-answer"]) + n_v51_pcd_follow_up_log_follow_up --> n_v51_pcd_follow_up_log_follow_up_answer + n_v51_pcd_follow_up_not_contacted_logged --> n_v51_victim + n_v51_pcd_follow_up_not_contacted_reason_answer(["/v51/pcd/follow-up/not-contacted-reason-answer"]) + n_v51_pcd_follow_up_not_contacted_reason --> n_v51_pcd_follow_up_not_contacted_reason_answer + n_v51_pcd_follow_up_telephone_call_answer(["/v51/pcd/follow-up/telephone-call-answer"]) + n_v51_pcd_follow_up_telephone_call --> n_v51_pcd_follow_up_telephone_call_answer + n_v51_pcd_pre_draft_check_eligibility_answer(["/v51/pcd/pre-draft/check-eligibility-answer"]) + n_v51_pcd_pre_draft_check_eligibility --> n_v51_pcd_pre_draft_check_eligibility_answer + n_v51_pcd_pre_draft_contacted_by_answer(["/v51/pcd/pre-draft/contacted-by-answer"]) + n_v51_pcd_pre_draft_contacted_by --> n_v51_pcd_pre_draft_contacted_by_answer + n_v51_pcd_pre_draft_not_contacted_reason_answer(["/v51/pcd/pre-draft/not-contacted-reason-answer"]) + n_v51_pcd_pre_draft_not_contacted_reason --> n_v51_pcd_pre_draft_not_contacted_reason_answer + n_v51_pcd_send_email_details_answer(["/v51/pcd/send/email-details-answer"]) + n_v51_pcd_send_email_details --> n_v51_pcd_send_email_details_answer + n_v51_pcd_send_email_logged --> n_v51_victim + n_v51_pcd_send_letter_details_answer(["/v51/pcd/send/letter-details-answer"]) + n_v51_pcd_send_letter_details --> n_v51_pcd_send_letter_details_answer + n_v51_pcd_send_letter_logged --> n_v51_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_pcd_call_was_text_message_sent_answer,n_v51_pcd_follow_up_telephone_call_answer,n_v51_pcd_pre_draft_not_contacted_reason_answer,n_v51_pcd_call_phone_call_2_answer,n_v51_pcd_follow_up_email_details_answer,n_v51_pcd_draft_first_hearing_answer,n_v51_pcd_pre_draft_check_eligibility_answer,n_v51_pcd_follow_up_letter_details_answer,n_v51_pcd_send_letter_details_answer,n_v51_pcd_draft_pcd_type_answer,n_v51_pcd_pre_draft_contacted_by_answer,n_v51_pcd_call_next_attempt_moc_answer,n_v51_pcd_send_email_details_answer,n_v51_pcd_draft_task_already_exists_answer,n_v51_pcd_call_follow_up_moc_answer,n_v51_pcd_call_phone_call_1_answer,n_v51_pcd_follow_up_not_contacted_reason_answer,n_v51_pcd_follow_up_log_follow_up_answer,n_v51_pcd_call_phone_call_3_answer,n_v51_pcd_call_text_message_details_answer answer; diff --git a/docs/flow-diagrams/v51-root.mmd b/docs/flow-diagrams/v51-root.mmd new file mode 100644 index 00000000..3c42d2d9 --- /dev/null +++ b/docs/flow-diagrams/v51-root.mmd @@ -0,0 +1,75 @@ +flowchart LR + n_v51_overview6_vlm["Overview
/v51/overview6-vlm"] + n_v51_update_manual_task["Update task status
/v51/update-manual-task"] + n_v51_change_task_due_date["Change task due date
/v51/change-task-due-date"] + n_v51_tasks["Tasks
/v51/tasks"] + n_v51_overview3["Overview
/v51/overview3"] + n_v51_victim["Victim
/v51/victim"] + n_v51_overview["Overview
/v51/overview"] + n_v51_next_task_due_date["Task due date
/v51/next-task-due-date"] + n_v51_overview6_vlo["Overview
/v51/overview6-vlo"] + n_v51_overview2["Overview
/v51/overview2"] + n_v51_overview4["Overview
/v51/overview4"] + n_v51_vlo["Victim liaison officer
/v51/vlo"] + n_v51_overview5["Overview
/v51/overview5"] + n_v51_overview6_initial["Overview
/v51/overview6-initial"] + n_v51_task_assignee["Task Assignee
/v51/task-assignee"] + n_v51_change_service["Change service
/v51/change-service"] + n_v51_task_updated["Victim onboarded
/v51/task-updated"] + n_v51_victims["Victims
/v51/victims"] + n_v51_sign_in["Sign in to your account
/v51/sign-in"] + n_v51_change_service_answer(["/v51/change-service-answer"]) + n_v51_change_service --> n_v51_change_service_answer + n_v51_change_task_due_date_answer(["/v51/change-task-due-date-answer"]) + n_v51_change_task_due_date --> n_v51_change_task_due_date_answer + n_v51_next_task_due_date --> n_v51_change_task_due_date_answer + n_v51_onb_tasks[/"/v51/onb/tasks"/] + n_v51_overview --> n_v51_onb_tasks + n_v51_sign_in_answer(["/v51/sign-in-answer"]) + n_v51_sign_in --> n_v51_sign_in_answer + n_v51_task_assignee_answer(["/v51/task-assignee-answer"]) + n_v51_task_assignee --> n_v51_task_assignee_answer + n_v51_task_updated --> n_v51_tasks + n_v51_tasks --> n_v51_next_task_due_date + n_v51_onb_tasks_clear_filters(["/v51/onb/tasks/clear-filters"]) + n_v51_tasks --> n_v51_onb_tasks_clear_filters + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_tasks --> n_v51_pcd_send_email_details + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_tasks --> n_v51_pcd_send_letter_details + n_v51_tasks --> n_v51_task_assignee + n_v51_tasks --> n_v51_update_manual_task + n_v51_vcl_call_follow_up_moc["Follow-up method of contact
/v51/vcl/call/follow-up-moc"] + n_v51_tasks --> n_v51_vcl_call_follow_up_moc + n_v51_vcl_call_next_attempt_moc["Next attempt method of contact
/v51/vcl/call/next-attempt-moc"] + n_v51_tasks --> n_v51_vcl_call_next_attempt_moc + n_v51_vcl_call_was_text_message_sent["Was a text message sent to the victim?
/v51/vcl/call/was-text-message-sent"] + n_v51_tasks --> n_v51_vcl_call_was_text_message_sent + n_v51_vcl_send_email_details["Email details
/v51/vcl/send/email-details"] + n_v51_tasks --> n_v51_vcl_send_email_details + n_v51_vcl_send_letter_details["Letter details
/v51/vcl/send/letter-details"] + n_v51_tasks --> n_v51_vcl_send_letter_details + n_v51_vcl_start_task[/"/v51/vcl/start-task"/] + n_v51_tasks --> n_v51_vcl_start_task + n_v51_tasks --> n_v51_victim + n_v51_update_manual_task_answer(["/v51/update-manual-task-answer"]) + n_v51_update_manual_task --> n_v51_update_manual_task_answer + n_v51_victims --> n_v51_change_service + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_victims --> n_v51_onb_service_lead + n_v51_victims --> n_v51_victim + n_v51_victims --> n_v51_vlo + n_v51_onb_vlo_answer(["/v51/onb/vlo-answer"]) + n_v51_vlo --> n_v51_onb_vlo_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_onb_vlo_answer,n_v51_change_service_answer,n_v51_change_task_due_date_answer,n_v51_sign_in_answer,n_v51_task_assignee_answer,n_v51_onb_tasks_clear_filters,n_v51_update_manual_task_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_vcl_start_task,n_v51_onb_tasks external; diff --git a/docs/flow-diagrams/v51-vcl.mmd b/docs/flow-diagrams/v51-vcl.mmd new file mode 100644 index 00000000..8c3bccf9 --- /dev/null +++ b/docs/flow-diagrams/v51-vcl.mmd @@ -0,0 +1,53 @@ +flowchart LR + n_v51_vcl_follow_up_log_follow_up["Log a follow-up
/v51/vcl/follow-up/log-follow-up"] + n_v51_vcl_pre_draft_contacted_by["How did you contact the victim?
/v51/vcl/pre-draft/contacted-by"] + n_v51_vcl_follow_up_email_details["Follow-up email details
/v51/vcl/follow-up/email-details"] + n_v51_vcl_send_email_details["Email details
/v51/vcl/send/email-details"] + n_v51_vcl_follow_up_letter_logged["Follow-up letter logged
/v51/vcl/follow-up/letter-logged"] + n_v51_vcl_follow_up_email_logged["Follow-up email logged
/v51/vcl/follow-up/email-logged"] + n_v51_vcl_draft_stopped_charge["Stopped charge reason
/v51/vcl/draft/stopped-charge"] + n_v51_vcl_call_text_message_details["Text message details
/v51/vcl/call/text-message-details"] + n_v51_vcl_draft_vcl_type["Communication type
/v51/vcl/draft/vcl-type"] + n_v51_vcl_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/vcl/pre-draft/not-contacted-reason"] + n_v51_vcl_call_next_attempt_moc["Next attempt method of contact
/v51/vcl/call/next-attempt-moc"] + n_v51_vcl_draft_substantially_altered_charge["Substantially altered charge
/v51/vcl/draft/substantially-altered-charge"] + n_v51_vcl_call_was_text_message_sent["Was a text message sent to the victim?
/v51/vcl/call/was-text-message-sent"] + n_v51_vcl_send_letter_details["Letter details
/v51/vcl/send/letter-details"] + n_v51_vcl_call_phone_call["Telephone call
/v51/vcl/call/phone-call"] + n_v51_vcl_call_follow_up_moc["Follow-up method of contact
/v51/vcl/call/follow-up-moc"] + n_v51_vcl_follow_up_letter_details["Follow-up letter details
/v51/vcl/follow-up/letter-details"] + n_v51_vcl_call_follow_up_moc_answer(["/v51/vcl/call/follow-up-moc-answer"]) + n_v51_vcl_call_follow_up_moc --> n_v51_vcl_call_follow_up_moc_answer + n_v51_vcl_call_next_attempt_moc_answer(["/v51/vcl/call/next-attempt-moc-answer"]) + n_v51_vcl_call_next_attempt_moc --> n_v51_vcl_call_next_attempt_moc_answer + n_v51_vcl_call_phone_call_answer(["/v51/vcl/call/phone-call-answer"]) + n_v51_vcl_call_phone_call --> n_v51_vcl_call_phone_call_answer + n_v51_vcl_call_text_message_details_answer(["/v51/vcl/call/text-message-details-answer"]) + n_v51_vcl_call_text_message_details --> n_v51_vcl_call_text_message_details_answer + n_v51_vcl_call_was_text_message_sent_answer(["/v51/vcl/call/was-text-message-sent-answer"]) + n_v51_vcl_call_was_text_message_sent --> n_v51_vcl_call_was_text_message_sent_answer + n_v51_vcl_draft_stopped_charge_answer(["/v51/vcl/draft/stopped-charge-answer"]) + n_v51_vcl_draft_stopped_charge --> n_v51_vcl_draft_stopped_charge_answer + n_v51_vcl_draft_substantially_altered_charge_answer(["/v51/vcl/draft/substantially-altered-charge-answer"]) + n_v51_vcl_draft_substantially_altered_charge --> n_v51_vcl_draft_substantially_altered_charge_answer + n_v51_vcl_draft_vcl_type_answer(["/v51/vcl/draft/vcl-type-answer"]) + n_v51_vcl_draft_vcl_type --> n_v51_vcl_draft_vcl_type_answer + n_v51_vcl_follow_up_email_details_answer(["/v51/vcl/follow-up/email-details-answer"]) + n_v51_vcl_follow_up_email_details --> n_v51_vcl_follow_up_email_details_answer + n_v51_victim["Victim
/v51/victim"] + n_v51_vcl_follow_up_email_logged --> n_v51_victim + n_v51_vcl_follow_up_letter_details_answer(["/v51/vcl/follow-up/letter-details-answer"]) + n_v51_vcl_follow_up_letter_details --> n_v51_vcl_follow_up_letter_details_answer + n_v51_vcl_follow_up_letter_logged --> n_v51_victim + n_v51_vcl_follow_up_log_follow_up_answer(["/v51/vcl/follow-up/log-follow-up-answer"]) + n_v51_vcl_follow_up_log_follow_up --> n_v51_vcl_follow_up_log_follow_up_answer + n_v51_vcl_pre_draft_contacted_by_answer(["/v51/vcl/pre-draft/contacted-by-answer"]) + n_v51_vcl_pre_draft_contacted_by --> n_v51_vcl_pre_draft_contacted_by_answer + n_v51_vcl_pre_draft_not_contacted_reason_answer(["/v51/vcl/pre-draft/not-contacted-reason-answer"]) + n_v51_vcl_pre_draft_not_contacted_reason --> n_v51_vcl_pre_draft_not_contacted_reason_answer + n_v51_vcl_send_email_details_answer(["/v51/vcl/send/email-details-answer"]) + n_v51_vcl_send_email_details --> n_v51_vcl_send_email_details_answer + n_v51_vcl_send_letter_details_answer(["/v51/vcl/send/letter-details-answer"]) + n_v51_vcl_send_letter_details --> n_v51_vcl_send_letter_details_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_vcl_pre_draft_not_contacted_reason_answer,n_v51_vcl_draft_vcl_type_answer,n_v51_vcl_call_follow_up_moc_answer,n_v51_vcl_draft_stopped_charge_answer,n_v51_vcl_pre_draft_contacted_by_answer,n_v51_vcl_send_email_details_answer,n_v51_vcl_follow_up_letter_details_answer,n_v51_vcl_call_phone_call_answer,n_v51_vcl_call_text_message_details_answer,n_v51_vcl_follow_up_email_details_answer,n_v51_vcl_call_was_text_message_sent_answer,n_v51_vcl_send_letter_details_answer,n_v51_vcl_draft_substantially_altered_charge_answer,n_v51_vcl_call_next_attempt_moc_answer,n_v51_vcl_follow_up_log_follow_up_answer answer; diff --git a/docs/flow-diagrams/v51-victim.mmd b/docs/flow-diagrams/v51-victim.mmd new file mode 100644 index 00000000..8c3c76e1 --- /dev/null +++ b/docs/flow-diagrams/v51-victim.mmd @@ -0,0 +1,140 @@ +flowchart LR + n_v51_victim_victim_details_service["Change service
/v51/victim/victim-details/service"] + n_v51_victim_victim_details_pmoc_police["Preferred method of contact for police
/v51/victim/victim-details/pmoc-police"] + n_v51_victim_new_task_task_already_exists["This task already exists
/v51/victim/new-task/task-already-exists"] + n_v51_victim_victim_details_risk_level["Domestic abuse risk level
/v51/victim/victim-details/risk-level"] + n_v51_victim_index_withtasks_v2["Victim
/v51/victim/index-withtasks-v2"] + n_v51_victim_victim_details_date_of_birth["Victim's date of birth
/v51/victim/victim-details/date-of-birth"] + n_v51_victim_index_withtasks_v3["Victim
/v51/victim/index-withtasks-v3"] + n_v51_victim_victim_details_full_name["Victim's full name
/v51/victim/victim-details/full-name"] + n_v51_victim_victim_details_address["Victim's address
/v51/victim/victim-details/address"] + n_v51_victim_victim_details_power_of_attorney["Power of attorney details
/v51/victim/victim-details/power-of-attorney"] + n_v51_victim_new_task_task_created["Victim onboarded
/v51/victim/new-task/task-created"] + n_v51_victim_victim_details_disability["Disability or access needs
/v51/victim/victim-details/disability"] + n_v51_victim_victim_details_correspondence_language["Preferred correspondence language
/v51/victim/victim-details/correspondence-language"] + n_v51_victim_case_information_area["Change area
/v51/victim/case-information/area"] + n_v51_victim_victim_details_email_address["Victim's email address
/v51/victim/victim-details/email-address"] + n_v51_victim_victim_details_wants_contact["Do they want to be contacted?
/v51/victim/victim-details/wants-contact"] + n_v51_victim_task_details_another_task2["Victim record
/v51/victim/task-details/another-task2"] + n_v51_victim_victim_details_vps_status["VPS status
/v51/victim/victim-details/vps-status"] + n_v51_victim_task_details_decision_to_charge["Victim record
/v51/victim/task-details/decision-to-charge"] + n_v51_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v51/victim/victim-details/reasonable-adjustments"] + n_v51_victim_task_details_outcome_logged["Victim record
/v51/victim/task-details/outcome-logged"] + n_v51_victim_victim_details_category["Victim category
/v51/victim/victim-details/category"] + n_v51_victim_index_withtasks_v4["Victim
/v51/victim/index-withtasks-v4"] + n_v51_victim_victim_details_contact_times["Preferred contact times
/v51/victim/victim-details/contact-times"] + n_v51_victim_new_task_task_selection["Task selection
/v51/victim/new-task/task-selection"] + n_v51_victim_case_information_charging_type["Change charging type
/v51/victim/case-information/charging-type"] + n_v51_victim_victim_details_ethnicity["Victim ethnicity
/v51/victim/victim-details/ethnicity"] + n_v51_victim_victim_details_preferred_name["Victim's preferred name
/v51/victim/victim-details/preferred-name"] + n_v51_victim_new_task_manual_task["Set a reminder
/v51/victim/new-task/manual-task"] + n_v51_victim_task_details_another_task1["Victim record
/v51/victim/task-details/another-task1"] + n_v51_victim_victim_details_telephone_number["Victim's telephone number
/v51/victim/victim-details/telephone-number"] + n_v51_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v51/victim/case-contacts/idva"] + n_v51_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v51/victim/case-contacts/family-liaison-officer"] + n_v51_victim_index_notasks["Victim
/v51/victim/index-notasks"] + n_v51_victim_victim_details_translator_needed["Translator needed
/v51/victim/victim-details/translator-needed"] + n_v51_victim_new_task_check_task["Check the task details are correct
/v51/victim/new-task/check-task"] + n_v51_victim_new_task_meeting_purpose["Task selection
/v51/victim/new-task/meeting-purpose"] + n_v51_victim_victim_details_pmoc["Preferred method of contact
/v51/victim/victim-details/pmoc"] + n_v51_victim_victim_details_victim_representative["Victim representative details
/v51/victim/victim-details/victim-representative"] + n_v51_victim_victim_details_gender["Victim gender
/v51/victim/victim-details/gender"] + n_v51_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v51/victim/case-contacts/isva"] + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_victim_victim_details_religion["Religion or belief
/v51/victim/victim-details/religion"] + n_v51_victim_index_withtasks["Victim
/v51/victim/index-withtasks"] + n_v51_victim_victim_details_previous_convictions["Previous convictions
/v51/victim/victim-details/previous-convictions"] + n_v51_victim["Victim
/v51/victim"] + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim + n_v51_victim_case_contacts_family_liaison_officer_answer(["/v51/victim/case-contacts/family-liaison-officer-answer"]) + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_answer + n_v51_victim_case_contacts_family_liaison_officer_delete[/"/v51/victim/case-contacts/family-liaison-officer-delete"/] + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_delete + n_v51_victim_case_contacts_idva --> n_v51_victim + n_v51_victim_case_contacts_idva_answer(["/v51/victim/case-contacts/idva-answer"]) + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_answer + n_v51_victim_case_contacts_idva_delete[/"/v51/victim/case-contacts/idva-delete"/] + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_delete + n_v51_victim_case_contacts_isva --> n_v51_victim + n_v51_victim_case_contacts_isva_answer(["/v51/victim/case-contacts/isva-answer"]) + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_answer + n_v51_victim_case_contacts_isva_delete[/"/v51/victim/case-contacts/isva-delete"/] + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_delete + n_v51_victim_case_information_area_answer(["/v51/victim/case-information/area-answer"]) + n_v51_victim_case_information_area --> n_v51_victim_case_information_area_answer + n_v51_victim_case_information_charging_type_answer(["/v51/victim/case-information/charging-type-answer"]) + n_v51_victim_case_information_charging_type --> n_v51_victim_case_information_charging_type_answer + n_v51_victim_index_notasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v3 --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v4 --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_check_task_answer(["/v51/victim/new-task/check-task-answer"]) + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_check_task_answer + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_meeting_purpose + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_manual_task_answer(["/v51/victim/new-task/manual-task-answer"]) + n_v51_victim_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_victim_new_task_meeting_purpose_answer(["/v51/victim/new-task/meeting-purpose-answer"]) + n_v51_victim_new_task_meeting_purpose --> n_v51_victim_new_task_meeting_purpose_answer + n_v51_victim_new_task_task_already_exists_answer(["/v51/victim/new-task/task-already-exists-answer"]) + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_already_exists_answer + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_task_created --> n_v51_victim + n_v51_victim_new_task_task_due_date_answer(["/v51/victim/new-task/task-due-date-answer"]) + n_v51_victim_new_task_task_due_date --> n_v51_victim_new_task_task_due_date_answer + n_v51_victim_new_task_next_task_answer(["/v51/victim/new-task/next-task-answer"]) + n_v51_victim_new_task_task_selection --> n_v51_victim_new_task_next_task_answer + n_v51_victim_victim_details_address_answer(["/v51/victim/victim-details/address-answer"]) + n_v51_victim_victim_details_address --> n_v51_victim_victim_details_address_answer + n_v51_victim_victim_details_category_answer(["/v51/victim/victim-details/category-answer"]) + n_v51_victim_victim_details_category --> n_v51_victim_victim_details_category_answer + n_v51_victim_victim_details_contact_times_answer(["/v51/victim/victim-details/contact-times-answer"]) + n_v51_victim_victim_details_contact_times --> n_v51_victim_victim_details_contact_times_answer + n_v51_victim_victim_details_correspondence_language_answer(["/v51/victim/victim-details/correspondence-language-answer"]) + n_v51_victim_victim_details_correspondence_language --> n_v51_victim_victim_details_correspondence_language_answer + n_v51_victim_victim_details_date_of_birth_answer(["/v51/victim/victim-details/date-of-birth-answer"]) + n_v51_victim_victim_details_date_of_birth --> n_v51_victim_victim_details_date_of_birth_answer + n_v51_victim_victim_details_disability_answer(["/v51/victim/victim-details/disability-answer"]) + n_v51_victim_victim_details_disability --> n_v51_victim_victim_details_disability_answer + n_v51_victim_victim_details_email_address_answer(["/v51/victim/victim-details/email-address-answer"]) + n_v51_victim_victim_details_email_address --> n_v51_victim_victim_details_email_address_answer + n_v51_victim_victim_details_ethnicity_answer(["/v51/victim/victim-details/ethnicity-answer"]) + n_v51_victim_victim_details_ethnicity --> n_v51_victim_victim_details_ethnicity_answer + n_v51_victim_victim_details_full_name_answer(["/v51/victim/victim-details/full-name-answer"]) + n_v51_victim_victim_details_full_name --> n_v51_victim_victim_details_full_name_answer + n_v51_victim_victim_details_gender_answer(["/v51/victim/victim-details/gender-answer"]) + n_v51_victim_victim_details_gender --> n_v51_victim_victim_details_gender_answer + n_v51_victim_victim_details_pmoc_answer(["/v51/victim/victim-details/pmoc-answer"]) + n_v51_victim_victim_details_pmoc --> n_v51_victim_victim_details_pmoc_answer + n_v51_victim_victim_details_pmoc_police_answer(["/v51/victim/victim-details/pmoc-police-answer"]) + n_v51_victim_victim_details_pmoc_police --> n_v51_victim_victim_details_pmoc_police_answer + n_v51_victim_victim_details_power_of_attorney_answer(["/v51/victim/victim-details/power-of-attorney-answer"]) + n_v51_victim_victim_details_power_of_attorney --> n_v51_victim_victim_details_power_of_attorney_answer + n_v51_victim_victim_details_preferred_name_answer(["/v51/victim/victim-details/preferred-name-answer"]) + n_v51_victim_victim_details_preferred_name --> n_v51_victim_victim_details_preferred_name_answer + n_v51_victim_victim_details_previous_convictions_answer(["/v51/victim/victim-details/previous-convictions-answer"]) + n_v51_victim_victim_details_previous_convictions --> n_v51_victim_victim_details_previous_convictions_answer + n_v51_victim_victim_details_reasonable_adjustments_answer(["/v51/victim/victim-details/reasonable-adjustments-answer"]) + n_v51_victim_victim_details_reasonable_adjustments --> n_v51_victim_victim_details_reasonable_adjustments_answer + n_v51_victim_victim_details_religion_answer(["/v51/victim/victim-details/religion-answer"]) + n_v51_victim_victim_details_religion --> n_v51_victim_victim_details_religion_answer + n_v51_victim_victim_details_risk_level_answer(["/v51/victim/victim-details/risk-level-answer"]) + n_v51_victim_victim_details_risk_level --> n_v51_victim_victim_details_risk_level_answer + n_v51_victim_victim_details_service_answer(["/v51/victim/victim-details/service-answer"]) + n_v51_victim_victim_details_service --> n_v51_victim_victim_details_service_answer + n_v51_victim_victim_details_telephone_number_answer(["/v51/victim/victim-details/telephone-number-answer"]) + n_v51_victim_victim_details_telephone_number --> n_v51_victim_victim_details_telephone_number_answer + n_v51_victim_victim_details_translator_needed_answer(["/v51/victim/victim-details/translator-needed-answer"]) + n_v51_victim_victim_details_translator_needed --> n_v51_victim_victim_details_translator_needed_answer + n_v51_victim_victim_details_victim_representative_answer(["/v51/victim/victim-details/victim-representative-answer"]) + n_v51_victim_victim_details_victim_representative --> n_v51_victim_victim_details_victim_representative_answer + n_v51_victim_victim_details_vps_status_answer(["/v51/victim/victim-details/vps-status-answer"]) + n_v51_victim_victim_details_vps_status --> n_v51_victim_victim_details_vps_status_answer + n_v51_victim_victim_details_wants_contact_answer(["/v51/victim/victim-details/wants-contact-answer"]) + n_v51_victim_victim_details_wants_contact --> n_v51_victim_victim_details_wants_contact_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_victim_victim_details_email_address_answer,n_v51_victim_victim_details_wants_contact_answer,n_v51_victim_new_task_manual_task_answer,n_v51_victim_case_information_charging_type_answer,n_v51_victim_new_task_check_task_answer,n_v51_victim_victim_details_vps_status_answer,n_v51_victim_victim_details_correspondence_language_answer,n_v51_victim_victim_details_victim_representative_answer,n_v51_victim_new_task_task_due_date_answer,n_v51_victim_victim_details_previous_convictions_answer,n_v51_victim_victim_details_pmoc_answer,n_v51_victim_victim_details_gender_answer,n_v51_victim_victim_details_category_answer,n_v51_victim_case_contacts_family_liaison_officer_answer,n_v51_victim_new_task_next_task_answer,n_v51_victim_case_information_area_answer,n_v51_victim_victim_details_telephone_number_answer,n_v51_victim_new_task_meeting_purpose_answer,n_v51_victim_victim_details_preferred_name_answer,n_v51_victim_victim_details_reasonable_adjustments_answer,n_v51_victim_victim_details_power_of_attorney_answer,n_v51_victim_victim_details_religion_answer,n_v51_victim_victim_details_full_name_answer,n_v51_victim_victim_details_pmoc_police_answer,n_v51_victim_victim_details_service_answer,n_v51_victim_victim_details_disability_answer,n_v51_victim_new_task_task_already_exists_answer,n_v51_victim_victim_details_address_answer,n_v51_victim_case_contacts_idva_answer,n_v51_victim_victim_details_translator_needed_answer,n_v51_victim_victim_details_contact_times_answer,n_v51_victim_case_contacts_isva_answer,n_v51_victim_victim_details_risk_level_answer,n_v51_victim_victim_details_date_of_birth_answer,n_v51_victim_victim_details_ethnicity_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_victim_case_contacts_family_liaison_officer_delete,n_v51_victim_case_contacts_idva_delete,n_v51_victim_case_contacts_isva_delete external; diff --git a/docs/flow-diagrams/v51-wft-meetings.mmd b/docs/flow-diagrams/v51-wft-meetings.mmd new file mode 100644 index 00000000..77f95e05 --- /dev/null +++ b/docs/flow-diagrams/v51-wft-meetings.mmd @@ -0,0 +1,80 @@ +flowchart LR + n_v51_wft_meetings_new_task_task_selection["Task selection
/v51/wft-meetings/new-task/task-selection"] + n_v51_wft_meetings_new_task_task_created["Victim onboarded
/v51/wft-meetings/new-task/task-created"] + n_v51_wft_meetings_victims["Victims
/v51/wft-meetings/victims"] + n_v51_wft_meetings_new_task_purposet["Task selection
/v51/wft-meetings/new-task/purposet"] + n_v51_wft_meetings_log_offer_response["Tasks
/v51/wft-meetings/log-offer-response"] + n_v51_wft_meetings_new_task_manual_task["Set a reminder
/v51/wft-meetings/new-task/manual-task"] + n_v51_wft_meetings_log_offer_response_check["Tasks
/v51/wft-meetings/log-offer-response-check"] + n_v51_wft_meetings_tasks["Tasks
/v51/wft-meetings/tasks"] + n_v51_wft_meetings_log_arranged_meeting_check["Tasks
/v51/wft-meetings/log-arranged-meeting-check"] + n_v51_wft_meetings_tasks2["Tasks
/v51/wft-meetings/tasks2"] + n_v51_wft_meetings_log_meeting_outcome["Tasks
/v51/wft-meetings/log-meeting-outcome"] + n_v51_wft_meetings_log_meeting_outcome_check["Tasks
/v51/wft-meetings/log-meeting-outcome-check"] + n_v51_wft_meetings_new_task_check_task["Check the task details are correct
/v51/wft-meetings/new-task/check-task"] + n_v51_wft_meetings_log_offer_task["Tasks
/v51/wft-meetings/log-offer-task"] + n_v51_wft_meetings_new_task_task_due_date["Task due date
/v51/wft-meetings/new-task/task-due-date"] + n_v51_wft_meetings_log_arranged_meeting["Tasks
/v51/wft-meetings/log-arranged-meeting"] + n_v51_onb_tasks_clear_filters(["/v51/onb/tasks/clear-filters"]) + n_v51_wft_meetings_log_arranged_meeting --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_arranged_meeting_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_task --> n_v51_onb_tasks_clear_filters + n_v51_victim_new_task_manual_task["Set a reminder
/v51/victim/new-task/manual-task"] + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_task_selection["Task selection
/v51/victim/new-task/task-selection"] + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_manual_task_answer(["/v51/victim/new-task/manual-task-answer"]) + n_v51_wft_meetings_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_wft_meetings_new_task_purposet_answer(["/v51/wft-meetings/new-task/purposet-answer"]) + n_v51_wft_meetings_new_task_purposet --> n_v51_wft_meetings_new_task_purposet_answer + n_v51_wft_meetings_new_task_task_due_date_answer(["/v51/wft-meetings/new-task/task-due-date-answer"]) + n_v51_wft_meetings_new_task_task_due_date --> n_v51_wft_meetings_new_task_task_due_date_answer + n_v51_wft_meetings_new_task_next_task_answer(["/v51/wft-meetings/new-task/next-task-answer"]) + n_v51_wft_meetings_new_task_task_selection --> n_v51_wft_meetings_new_task_next_task_answer + n_v51_change_task_due_date["Change task due date
/v51/change-task-due-date"] + n_v51_wft_meetings_tasks --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks --> n_v51_onb_tasks_clear_filters + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_wft_meetings_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_wft_meetings_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_wft_meetings_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_pcd_pre_draft_check_details[/"/v51/pcd/pre-draft/check-details"/] + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_check_details + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_wft_meetings_tasks --> n_v51_pcd_send_email_details + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_wft_meetings_tasks --> n_v51_pcd_send_letter_details + n_v51_task_assignee["Task Assignee
/v51/task-assignee"] + n_v51_wft_meetings_tasks --> n_v51_task_assignee + n_v51_victim["Victim
/v51/victim"] + n_v51_wft_meetings_tasks --> n_v51_victim + n_v51_wft_meetings_tasks2 --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks2 --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_follow_up_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_next_attempt_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_was_text_message_sent + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_check_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_contacted_by + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_email_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_letter_details + n_v51_wft_meetings_tasks2 --> n_v51_task_assignee + n_v51_wft_meetings_tasks2 --> n_v51_victim + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_wft_meetings_victims --> n_v51_onb_service_lead + n_v51_wft_meetings_victims --> n_v51_victim + n_v51_vlo["Victim liaison officer
/v51/vlo"] + n_v51_wft_meetings_victims --> n_v51_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_victim_new_task_manual_task_answer,n_v51_wft_meetings_new_task_next_task_answer,n_v51_wft_meetings_new_task_task_due_date_answer,n_v51_wft_meetings_new_task_purposet_answer,n_v51_onb_tasks_clear_filters answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_pcd_pre_draft_check_details external; diff --git a/docs/v50-v51-flow-diagrams.md b/docs/v50-v51-flow-diagrams.md new file mode 100644 index 00000000..e6dcd57f --- /dev/null +++ b/docs/v50-v51-flow-diagrams.md @@ -0,0 +1,2070 @@ +# VCA prototype — v50 & v51 route flow diagrams + +Flow diagrams (Mermaid) generated from the [`v50-v51-routes.csv`](./v50-v51-routes.csv) inventory. Each edge is a **Links to** relationship (page navigation or form submission) taken from that inventory. + +## How to import into Miro or FigJam + +**Miro** — open a board, use *Create → Diagram* (or the **Mermaid** app from the Marketplace), then paste the Mermaid code from any block below. Miro converts the diagram into editable, native shapes. + +**FigJam** — install the **Mermaid to FigJam** (or **Mermaid Diagrams**) plugin/widget, then paste the Mermaid code from a block. It renders native, editable sticky/connector shapes. + +You can copy a fenced `mermaid` code block below, or use the matching standalone `.mmd` file in [`flow-diagrams/`](./flow-diagrams/) — both contain identical code. + +### Legend + +- **Rectangle** — a page (template extending `layouts/main.html`), labelled with its page title and URL. +- **Rounded/yellow node** — a POST `…-answer` handler or `clear-filters` action (form submission / redirect, not a page). +- **Dashed/grey node** — a target URL referenced by a link but not itself catalogued as a page in this version. + +> The full per-version diagrams (last two sections) contain every route and can be large; if your Miro/FigJam import struggles with size, use the smaller per-section diagrams instead. + +--- + +## V50 — Case locked + +```mermaid +flowchart LR + n_v50_case_locked_self_locked["Case locked
/v50/case-locked/self-locked"] + n_v50_case_locked_by_someone_else["Case locked
/v50/case-locked/by-someone-else"] + n_v50_pcd_victim[/"/v50/pcd/victim"/] + n_v50_case_locked_by_someone_else --> n_v50_pcd_victim + n_v50_case_locked_self_locked --> n_v50_pcd_victim + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_pcd_victim external; +``` + +## V50 — Onboarding (onb) + +```mermaid +flowchart LR + n_v50_onb_manual_task["Create a task
/v50/onb/manual-task"] + n_v50_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v50/onb/check-details/preferred-correspondence-language"] + n_v50_onb_check_details_case_type["Charging type
/v50/onb/check-details/case-type"] + n_v50_onb_check_details_preferred_name["Preferred name
/v50/onb/check-details/preferred-name"] + n_v50_onb_check_details["Check the details before drafting the letter
/v50/onb/check-details"] + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_onb_check_details_risk_level["Domestic abuse risk level
/v50/onb/check-details/risk-level"] + n_v50_onb_pmoc["Preferred method of contact
/v50/onb/pmoc"] + n_v50_onb_check_details_pmoc["Preferred method of contact
/v50/onb/check-details/pmoc"] + n_v50_onb_next_task_due_date["Task due date
/v50/onb/next-task-due-date"] + n_v50_onb_check_details_preferred_contact_times["Preferred contact times
/v50/onb/check-details/preferred-contact-times"] + n_v50_onb_check_details_vps_status["VPS status
/v50/onb/check-details/vps-status"] + n_v50_onb_check_task_vlo["Victim liaison officer
/v50/onb/check-task-vlo"] + n_v50_onb_meeting_purpose["Task selection
/v50/onb/meeting-purpose"] + n_v50_onb_onboarded["Victim onboarded
/v50/onb/onboarded"] + n_v50_onb_check_task["Check the task details are correct
/v50/onb/check-task"] + n_v50_onb_check_details_translator_needed["Translator needed
/v50/onb/check-details/translator-needed"] + n_v50_onb_next_task["Next task
/v50/onb/next-task"] + n_v50_onb_check_details_answer(["/v50/onb/check-details-answer"]) + n_v50_onb_check_details --> n_v50_onb_check_details_answer + n_v50_onb_check_details --> n_v50_onb_check_details_case_type + n_v50_onb_check_details --> n_v50_onb_check_details_pmoc + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_contact_times + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_correspondence_language + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_name + n_v50_onb_check_details --> n_v50_onb_check_details_risk_level + n_v50_onb_check_details --> n_v50_onb_check_details_translator_needed + n_v50_onb_check_details --> n_v50_onb_check_details_vps_status + n_v50_onb_check_details --> n_v50_onb_check_task_vlo + n_v50_onb_check_details --> n_v50_onb_service_lead + n_v50_check_details_case_type_answer(["/v50/check-details/case-type-answer"]) + n_v50_onb_check_details_case_type --> n_v50_check_details_case_type_answer + n_v50_check_details_pmoc_answer(["/v50/check-details/pmoc-answer"]) + n_v50_onb_check_details_pmoc --> n_v50_check_details_pmoc_answer + n_v50_check_details_preferred_contact_times_answer(["/v50/check-details/preferred-contact-times-answer"]) + n_v50_onb_check_details_preferred_contact_times --> n_v50_check_details_preferred_contact_times_answer + n_v50_check_details_preferred_correspondence_language_answer(["/v50/check-details/preferred-correspondence-language-answer"]) + n_v50_onb_check_details_preferred_correspondence_language --> n_v50_check_details_preferred_correspondence_language_answer + n_v50_check_details_preferred_name_answer(["/v50/check-details/preferred-name-answer"]) + n_v50_onb_check_details_preferred_name --> n_v50_check_details_preferred_name_answer + n_v50_check_details_risk_level_answer(["/v50/check-details/risk-level-answer"]) + n_v50_onb_check_details_risk_level --> n_v50_check_details_risk_level_answer + n_v50_check_details_translator_needed_answer(["/v50/check-details/translator-needed-answer"]) + n_v50_onb_check_details_translator_needed --> n_v50_check_details_translator_needed_answer + n_v50_check_details_vps_status_answer(["/v50/check-details/vps-status-answer"]) + n_v50_onb_check_details_vps_status --> n_v50_check_details_vps_status_answer + n_v50_onb_check_task_answer(["/v50/onb/check-task-answer"]) + n_v50_onb_check_task --> n_v50_onb_check_task_answer + n_v50_onb_check_task --> n_v50_onb_manual_task + n_v50_onb_check_task --> n_v50_onb_meeting_purpose + n_v50_onb_check_task --> n_v50_onb_next_task + n_v50_onb_check_task --> n_v50_onb_next_task_due_date + n_v50_onb_check_task_vlo_answer(["/v50/onb/check-task-vlo-answer"]) + n_v50_onb_check_task_vlo --> n_v50_onb_check_task_vlo_answer + n_v50_onb_manual_task_answer(["/v50/onb/manual-task-answer"]) + n_v50_onb_manual_task --> n_v50_onb_manual_task_answer + n_v50_onb_meeting_purpose_answer(["/v50/onb/meeting-purpose-answer"]) + n_v50_onb_meeting_purpose --> n_v50_onb_meeting_purpose_answer + n_v50_onb_next_task_answer(["/v50/onb/next-task-answer"]) + n_v50_onb_next_task --> n_v50_onb_next_task_answer + n_v50_onb_next_task_due_date_answer(["/v50/onb/next-task-due-date-answer"]) + n_v50_onb_next_task_due_date --> n_v50_onb_next_task_due_date_answer + n_v50_victims["Victims
/v50/victims"] + n_v50_onb_onboarded --> n_v50_victims + n_v50_onb_pmoc_answer(["/v50/onb/pmoc-answer"]) + n_v50_onb_pmoc --> n_v50_onb_pmoc_answer + n_v50_onb_service_lead_answer(["/v50/onb/service-lead-answer"]) + n_v50_onb_service_lead --> n_v50_onb_service_lead_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_onb_meeting_purpose_answer,n_v50_onb_check_task_answer,n_v50_onb_pmoc_answer,n_v50_check_details_case_type_answer,n_v50_check_details_translator_needed_answer,n_v50_check_details_vps_status_answer,n_v50_check_details_pmoc_answer,n_v50_onb_next_task_due_date_answer,n_v50_onb_check_task_vlo_answer,n_v50_check_details_risk_level_answer,n_v50_onb_service_lead_answer,n_v50_check_details_preferred_contact_times_answer,n_v50_onb_check_details_answer,n_v50_check_details_preferred_correspondence_language_answer,n_v50_onb_next_task_answer,n_v50_onb_manual_task_answer,n_v50_check_details_preferred_name_answer answer; +``` + +## V50 — Other communications (other) + +```mermaid +flowchart LR + n_v50_other_letter_details["Log a letter
/v50/other/letter-details"] + n_v50_other_call_logged["Telephone call logged
/v50/other/call-logged"] + n_v50_other_letter_logged["Letter logged
/v50/other/letter-logged"] + n_v50_other_email_logged["Email logged
/v50/other/email-logged"] + n_v50_other_in_person["Log an in-person conversation
/v50/other/in-person"] + n_v50_other_contacted_by["How did you contact the victim?
/v50/other/contacted-by"] + n_v50_other_text_message_logged["Text message logged
/v50/other/text-message-logged"] + n_v50_other_email_details["Log an email
/v50/other/email-details"] + n_v50_other_other_logged["Other communication logged
/v50/other/other-logged"] + n_v50_other_other["Log other communication
/v50/other/other"] + n_v50_other_telephone_call["Log a telephone call
/v50/other/telephone-call"] + n_v50_other_in_person_logged["In-person meeting logged
/v50/other/in-person-logged"] + n_v50_other_log["Log a communication
/v50/other/log"] + n_v50_other_text_message["Log a text message
/v50/other/text-message"] + n_v50_victim["Victim
/v50/victim"] + n_v50_other_call_logged --> n_v50_victim + n_v50_other_contacted_by_answer(["/v50/other/contacted-by-answer"]) + n_v50_other_contacted_by --> n_v50_other_contacted_by_answer + n_v50_other_email_details_answer(["/v50/other/email-details-answer"]) + n_v50_other_email_details --> n_v50_other_email_details_answer + n_v50_other_email_logged --> n_v50_victim + n_v50_other_in_person_answer(["/v50/other/in-person-answer"]) + n_v50_other_in_person --> n_v50_other_in_person_answer + n_v50_other_in_person_logged --> n_v50_victim + n_v50_other_letter_details_answer(["/v50/other/letter-details-answer"]) + n_v50_other_letter_details --> n_v50_other_letter_details_answer + n_v50_other_letter_logged --> n_v50_victim + n_v50_other_other_details_answer(["/v50/other/other-details-answer"]) + n_v50_other_other --> n_v50_other_other_details_answer + n_v50_other_other_logged --> n_v50_victim + n_v50_other_telephone_call_answer(["/v50/other/telephone-call-answer"]) + n_v50_other_telephone_call --> n_v50_other_telephone_call_answer + n_v50_other_text_message_answer(["/v50/other/text-message-answer"]) + n_v50_other_text_message --> n_v50_other_text_message_answer + n_v50_other_text_message_logged --> n_v50_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_other_contacted_by_answer,n_v50_other_letter_details_answer,n_v50_other_email_details_answer,n_v50_other_text_message_answer,n_v50_other_telephone_call_answer,n_v50_other_in_person_answer,n_v50_other_other_details_answer answer; +``` + +## V50 — Pre-contact draft (pcd) + +```mermaid +flowchart LR + n_v50_pcd_draft_pcd_type["Charging decision type
/v50/pcd/draft/pcd-type"] + n_v50_pcd_send_letter_logged["Letter logged
/v50/pcd/send/letter-logged"] + n_v50_pcd_follow_up_telephone_call["Follow-up telephone call
/v50/pcd/follow-up/telephone-call"] + n_v50_pcd_call_phone_call_3["Telephone call 3 details
/v50/pcd/call/phone-call-3"] + n_v50_pcd_pre_draft_check_eligibility["Check eligibility
/v50/pcd/pre-draft/check-eligibility"] + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v50/pcd/follow-up/not-contacted-logged"] + n_v50_pcd_follow_up_call_logged["Follow-up telephone call logged
/v50/pcd/follow-up/call-logged"] + n_v50_pcd_draft_task_already_exists["This task already exists
/v50/pcd/draft/task-already-exists"] + n_v50_pcd_call_phone_call_1["Telephone call 1
/v50/pcd/call/phone-call-1"] + n_v50_pcd_follow_up_letter_details["Follow-up letter details
/v50/pcd/follow-up/letter-details"] + n_v50_pcd_call_text_message_details["Text message details
/v50/pcd/call/text-message-details"] + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/follow-up/not-contacted-reason"] + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_pcd_call_phone_call_2["Telephone call 2
/v50/pcd/call/phone-call-2"] + n_v50_pcd_follow_up_email_details["Follow-up email details
/v50/pcd/follow-up/email-details"] + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_pcd_follow_up_email_logged["Follow-up email logged
/v50/pcd/follow-up/email-logged"] + n_v50_pcd_draft_first_hearing["First hearing
/v50/pcd/draft/first-hearing"] + n_v50_pcd_send_email_logged["Email logged
/v50/pcd/send/email-logged"] + n_v50_pcd_follow_up_log_follow_up["Log a follow-up
/v50/pcd/follow-up/log-follow-up"] + n_v50_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/pre-draft/not-contacted-reason"] + n_v50_pcd_follow_up_letter_logged["Follow-up letter logged
/v50/pcd/follow-up/letter-logged"] + n_v50_pcd_call_follow_up_moc_answer(["/v50/pcd/call/follow-up-moc-answer"]) + n_v50_pcd_call_follow_up_moc --> n_v50_pcd_call_follow_up_moc_answer + n_v50_pcd_call_next_attempt_moc_answer(["/v50/pcd/call/next-attempt-moc-answer"]) + n_v50_pcd_call_next_attempt_moc --> n_v50_pcd_call_next_attempt_moc_answer + n_v50_pcd_call_phone_call_1_answer(["/v50/pcd/call/phone-call-1-answer"]) + n_v50_pcd_call_phone_call_1 --> n_v50_pcd_call_phone_call_1_answer + n_v50_pcd_call_phone_call_2_answer(["/v50/pcd/call/phone-call-2-answer"]) + n_v50_pcd_call_phone_call_2 --> n_v50_pcd_call_phone_call_2_answer + n_v50_pcd_call_phone_call_3_answer(["/v50/pcd/call/phone-call-3-answer"]) + n_v50_pcd_call_phone_call_3 --> n_v50_pcd_call_phone_call_3_answer + n_v50_pcd_call_text_message_details_answer(["/v50/pcd/call/text-message-details-answer"]) + n_v50_pcd_call_text_message_details --> n_v50_pcd_call_text_message_details_answer + n_v50_pcd_call_was_text_message_sent_answer(["/v50/pcd/call/was-text-message-sent-answer"]) + n_v50_pcd_call_was_text_message_sent --> n_v50_pcd_call_was_text_message_sent_answer + n_v50_pcd_draft_first_hearing_answer(["/v50/pcd/draft/first-hearing-answer"]) + n_v50_pcd_draft_first_hearing --> n_v50_pcd_draft_first_hearing_answer + n_v50_pcd_draft_pcd_type_answer(["/v50/pcd/draft/pcd-type-answer"]) + n_v50_pcd_draft_pcd_type --> n_v50_pcd_draft_pcd_type_answer + n_v50_pcd_draft_task_already_exists_answer(["/v50/pcd/draft/task-already-exists-answer"]) + n_v50_pcd_draft_task_already_exists --> n_v50_pcd_draft_task_already_exists_answer + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_pcd_draft_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_victim["Victim
/v50/victim"] + n_v50_pcd_follow_up_call_logged --> n_v50_victim + n_v50_pcd_follow_up_email_details_answer(["/v50/pcd/follow-up/email-details-answer"]) + n_v50_pcd_follow_up_email_details --> n_v50_pcd_follow_up_email_details_answer + n_v50_pcd_follow_up_email_logged --> n_v50_victim + n_v50_pcd_follow_up_letter_details_answer(["/v50/pcd/follow-up/letter-details-answer"]) + n_v50_pcd_follow_up_letter_details --> n_v50_pcd_follow_up_letter_details_answer + n_v50_pcd_follow_up_letter_logged --> n_v50_victim + n_v50_pcd_follow_up_log_follow_up_answer(["/v50/pcd/follow-up/log-follow-up-answer"]) + n_v50_pcd_follow_up_log_follow_up --> n_v50_pcd_follow_up_log_follow_up_answer + n_v50_pcd_follow_up_not_contacted_logged --> n_v50_victim + n_v50_pcd_follow_up_not_contacted_reason_answer(["/v50/pcd/follow-up/not-contacted-reason-answer"]) + n_v50_pcd_follow_up_not_contacted_reason --> n_v50_pcd_follow_up_not_contacted_reason_answer + n_v50_pcd_follow_up_telephone_call_answer(["/v50/pcd/follow-up/telephone-call-answer"]) + n_v50_pcd_follow_up_telephone_call --> n_v50_pcd_follow_up_telephone_call_answer + n_v50_pcd_pre_draft_check_eligibility_answer(["/v50/pcd/pre-draft/check-eligibility-answer"]) + n_v50_pcd_pre_draft_check_eligibility --> n_v50_pcd_pre_draft_check_eligibility_answer + n_v50_pcd_pre_draft_contacted_by_answer(["/v50/pcd/pre-draft/contacted-by-answer"]) + n_v50_pcd_pre_draft_contacted_by --> n_v50_pcd_pre_draft_contacted_by_answer + n_v50_pcd_pre_draft_not_contacted_reason_answer(["/v50/pcd/pre-draft/not-contacted-reason-answer"]) + n_v50_pcd_pre_draft_not_contacted_reason --> n_v50_pcd_pre_draft_not_contacted_reason_answer + n_v50_pcd_send_email_details_answer(["/v50/pcd/send/email-details-answer"]) + n_v50_pcd_send_email_details --> n_v50_pcd_send_email_details_answer + n_v50_pcd_send_email_logged --> n_v50_victim + n_v50_pcd_send_letter_details_answer(["/v50/pcd/send/letter-details-answer"]) + n_v50_pcd_send_letter_details --> n_v50_pcd_send_letter_details_answer + n_v50_pcd_send_letter_logged --> n_v50_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_pcd_follow_up_email_details_answer,n_v50_pcd_pre_draft_contacted_by_answer,n_v50_pcd_call_phone_call_2_answer,n_v50_pcd_follow_up_letter_details_answer,n_v50_pcd_follow_up_telephone_call_answer,n_v50_pcd_call_follow_up_moc_answer,n_v50_pcd_draft_first_hearing_answer,n_v50_pcd_send_letter_details_answer,n_v50_pcd_call_phone_call_3_answer,n_v50_pcd_draft_task_already_exists_answer,n_v50_pcd_send_email_details_answer,n_v50_pcd_call_phone_call_1_answer,n_v50_pcd_call_text_message_details_answer,n_v50_pcd_pre_draft_check_eligibility_answer,n_v50_pcd_call_was_text_message_sent_answer,n_v50_pcd_draft_pcd_type_answer,n_v50_pcd_follow_up_not_contacted_reason_answer,n_v50_pcd_pre_draft_not_contacted_reason_answer,n_v50_pcd_call_next_attempt_moc_answer,n_v50_pcd_follow_up_log_follow_up_answer answer; +``` + +## V50 — Root pages + +```mermaid +flowchart LR + n_v50_overview6_initial["Overview
/v50/overview6-initial"] + n_v50_sign_in["Sign in to your account
/v50/sign-in"] + n_v50_victims["Victims
/v50/victims"] + n_v50_task_assignee["Task Assignee
/v50/task-assignee"] + n_v50_update_manual_task["Update task status
/v50/update-manual-task"] + n_v50_change_task_due_date["Change task due date
/v50/change-task-due-date"] + n_v50_overview["Overview
/v50/overview"] + n_v50_overview3["Overview
/v50/overview3"] + n_v50_task_updated["Victim onboarded
/v50/task-updated"] + n_v50_vlo["Victim liaison officer
/v50/vlo"] + n_v50_overview6_vlo["Overview
/v50/overview6-vlo"] + n_v50_overview4["Overview
/v50/overview4"] + n_v50_tasks["Tasks
/v50/tasks"] + n_v50_overview2["Overview
/v50/overview2"] + n_v50_victim["Victim
/v50/victim"] + n_v50_overview5["Overview
/v50/overview5"] + n_v50_overview6_vlm["Overview
/v50/overview6-vlm"] + n_v50_change_service["Change service
/v50/change-service"] + n_v50_next_task_due_date["Task due date
/v50/next-task-due-date"] + n_v50_change_service_answer(["/v50/change-service-answer"]) + n_v50_change_service --> n_v50_change_service_answer + n_v50_change_task_due_date_answer(["/v50/change-task-due-date-answer"]) + n_v50_change_task_due_date --> n_v50_change_task_due_date_answer + n_v50_next_task_due_date --> n_v50_change_task_due_date_answer + n_v50_onb_tasks[/"/v50/onb/tasks"/] + n_v50_overview --> n_v50_onb_tasks + n_v50_sign_in_answer(["/v50/sign-in-answer"]) + n_v50_sign_in --> n_v50_sign_in_answer + n_v50_task_assignee_answer(["/v50/task-assignee-answer"]) + n_v50_task_assignee --> n_v50_task_assignee_answer + n_v50_task_updated --> n_v50_tasks + n_v50_tasks --> n_v50_next_task_due_date + n_v50_onb_tasks_clear_filters(["/v50/onb/tasks/clear-filters"]) + n_v50_tasks --> n_v50_onb_tasks_clear_filters + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_tasks --> n_v50_pcd_send_email_details + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_tasks --> n_v50_pcd_send_letter_details + n_v50_tasks --> n_v50_task_assignee + n_v50_tasks --> n_v50_update_manual_task + n_v50_vcl_call_follow_up_moc[/"/v50/vcl/call/follow-up-moc"/] + n_v50_tasks --> n_v50_vcl_call_follow_up_moc + n_v50_vcl_call_next_attempt_moc[/"/v50/vcl/call/next-attempt-moc"/] + n_v50_tasks --> n_v50_vcl_call_next_attempt_moc + n_v50_vcl_call_was_text_message_sent[/"/v50/vcl/call/was-text-message-sent"/] + n_v50_tasks --> n_v50_vcl_call_was_text_message_sent + n_v50_vcl_pre_draft_contacted_by[/"/v50/vcl/pre-draft/contacted-by"/] + n_v50_tasks --> n_v50_vcl_pre_draft_contacted_by + n_v50_vcl_send_email_details[/"/v50/vcl/send/email-details"/] + n_v50_tasks --> n_v50_vcl_send_email_details + n_v50_vcl_send_letter_details[/"/v50/vcl/send/letter-details"/] + n_v50_tasks --> n_v50_vcl_send_letter_details + n_v50_tasks --> n_v50_victim + n_v50_update_manual_task_answer(["/v50/update-manual-task-answer"]) + n_v50_update_manual_task --> n_v50_update_manual_task_answer + n_v50_victims --> n_v50_change_service + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_victims --> n_v50_onb_service_lead + n_v50_victims --> n_v50_victim + n_v50_victims --> n_v50_vlo + n_v50_onb_vlo_answer(["/v50/onb/vlo-answer"]) + n_v50_vlo --> n_v50_onb_vlo_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_update_manual_task_answer,n_v50_onb_tasks_clear_filters,n_v50_change_service_answer,n_v50_change_task_due_date_answer,n_v50_task_assignee_answer,n_v50_sign_in_answer,n_v50_onb_vlo_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_vcl_call_next_attempt_moc,n_v50_vcl_send_letter_details,n_v50_vcl_pre_draft_contacted_by,n_v50_vcl_call_was_text_message_sent,n_v50_vcl_call_follow_up_moc,n_v50_onb_tasks,n_v50_vcl_send_email_details external; +``` + +## V50 — Victim + +```mermaid +flowchart LR + n_v50_victim_victim_details_pmoc["Preferred method of contact
/v50/victim/victim-details/pmoc"] + n_v50_victim_victim_details_correspondence_language["Preferred correspondence language
/v50/victim/victim-details/correspondence-language"] + n_v50_victim_victim_details_full_name["Victim's full name
/v50/victim/victim-details/full-name"] + n_v50_victim_victim_details_date_of_birth["Victim's date of birth
/v50/victim/victim-details/date-of-birth"] + n_v50_victim_victim_details_telephone_number["Victim's telephone number
/v50/victim/victim-details/telephone-number"] + n_v50_victim_new_task_task_selection["Task selection
/v50/victim/new-task/task-selection"] + n_v50_victim_victim_details_power_of_attorney["Power of attorney details
/v50/victim/victim-details/power-of-attorney"] + n_v50_victim_victim_details_risk_level["Domestic abuse risk level
/v50/victim/victim-details/risk-level"] + n_v50_victim_index_withtasks_v3["Victim
/v50/victim/index-withtasks-v3"] + n_v50_victim_victim_details_vps_status["VPS status
/v50/victim/victim-details/vps-status"] + n_v50_victim_index_withtasks["Victim
/v50/victim/index-withtasks"] + n_v50_victim_index_withtasks_v4["Victim
/v50/victim/index-withtasks-v4"] + n_v50_victim_victim_details_address["Victim's address
/v50/victim/victim-details/address"] + n_v50_victim_task_details_another_task1["Victim record
/v50/victim/task-details/another-task1"] + n_v50_victim_task_details_another_task3["Victim record
/v50/victim/task-details/another-task3"] + n_v50_victim_victim_details_disability["Disability or access needs
/v50/victim/victim-details/disability"] + n_v50_victim_new_task_task_already_exists["This task already exists
/v50/victim/new-task/task-already-exists"] + n_v50_victim_new_task_task_created["Victim onboarded
/v50/victim/new-task/task-created"] + n_v50_victim_index_notasks["Victim
/v50/victim/index-notasks"] + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_victim_victim_details_contact_times["Preferred contact times
/v50/victim/victim-details/contact-times"] + n_v50_victim_victim_details_service["Change service
/v50/victim/victim-details/service"] + n_v50_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v50/victim/case-contacts/isva"] + n_v50_victim_victim_details_wants_contact["Do they want to be contacted?
/v50/victim/victim-details/wants-contact"] + n_v50_victim_victim_details_category["Victim category
/v50/victim/victim-details/category"] + n_v50_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v50/victim/victim-details/reasonable-adjustments"] + n_v50_victim_victim_details_previous_convictions["Previous convictions
/v50/victim/victim-details/previous-convictions"] + n_v50_victim_victim_details_pmoc_police["Preferred method of contact for police
/v50/victim/victim-details/pmoc-police"] + n_v50_victim_index_withtasks_v2["Victim
/v50/victim/index-withtasks-v2"] + n_v50_victim_case_information_charging_type["Change charging type
/v50/victim/case-information/charging-type"] + n_v50_victim_task_details_outcome_logged["Victim record
/v50/victim/task-details/outcome-logged"] + n_v50_victim_victim_details_ethnicity["Victim ethnicity
/v50/victim/victim-details/ethnicity"] + n_v50_victim_task_details_another_task2["Victim record
/v50/victim/task-details/another-task2"] + n_v50_victim_task_details_decision_to_charge_order["Victim record
/v50/victim/task-details/decision-to-charge-order"] + n_v50_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v50/victim/case-contacts/family-liaison-officer"] + n_v50_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v50/victim/case-contacts/idva"] + n_v50_victim_new_task_manual_task["Set a reminder
/v50/victim/new-task/manual-task"] + n_v50_victim_new_task_check_task["Check the task details are correct
/v50/victim/new-task/check-task"] + n_v50_victim_task_details_outcome_logged2["Victim record
/v50/victim/task-details/outcome-logged2"] + n_v50_victim_victim_details_translator_needed["Translator needed
/v50/victim/victim-details/translator-needed"] + n_v50_victim_victim_details_preferred_name["Victim's preferred name
/v50/victim/victim-details/preferred-name"] + n_v50_victim_victim_details_gender["Victim gender
/v50/victim/victim-details/gender"] + n_v50_victim_new_task_meeting_purpose["Task selection
/v50/victim/new-task/meeting-purpose"] + n_v50_victim_victim_details_email_address["Victim's email address
/v50/victim/victim-details/email-address"] + n_v50_victim_victim_details_religion["Religion or belief
/v50/victim/victim-details/religion"] + n_v50_victim_case_information_area["Change area
/v50/victim/case-information/area"] + n_v50_victim_task_details_decision_to_charge["Victim record
/v50/victim/task-details/decision-to-charge"] + n_v50_victim_victim_details_victim_representative["Victim representative details
/v50/victim/victim-details/victim-representative"] + n_v50_victim["Victim
/v50/victim"] + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim + n_v50_victim_case_contacts_family_liaison_officer_answer(["/v50/victim/case-contacts/family-liaison-officer-answer"]) + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_answer + n_v50_victim_case_contacts_family_liaison_officer_delete[/"/v50/victim/case-contacts/family-liaison-officer-delete"/] + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_delete + n_v50_victim_case_contacts_idva --> n_v50_victim + n_v50_victim_case_contacts_idva_answer(["/v50/victim/case-contacts/idva-answer"]) + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_answer + n_v50_victim_case_contacts_idva_delete[/"/v50/victim/case-contacts/idva-delete"/] + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_delete + n_v50_victim_case_contacts_isva --> n_v50_victim + n_v50_victim_case_contacts_isva_answer(["/v50/victim/case-contacts/isva-answer"]) + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_answer + n_v50_victim_case_contacts_isva_delete[/"/v50/victim/case-contacts/isva-delete"/] + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_delete + n_v50_victim_case_information_area_answer(["/v50/victim/case-information/area-answer"]) + n_v50_victim_case_information_area --> n_v50_victim_case_information_area_answer + n_v50_victim_case_information_charging_type_answer(["/v50/victim/case-information/charging-type-answer"]) + n_v50_victim_case_information_charging_type --> n_v50_victim_case_information_charging_type_answer + n_v50_victim_index_notasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v3 --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v4 --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_check_task_answer(["/v50/victim/new-task/check-task-answer"]) + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_check_task_answer + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_meeting_purpose + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_manual_task_answer(["/v50/victim/new-task/manual-task-answer"]) + n_v50_victim_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_victim_new_task_meeting_purpose_answer(["/v50/victim/new-task/meeting-purpose-answer"]) + n_v50_victim_new_task_meeting_purpose --> n_v50_victim_new_task_meeting_purpose_answer + n_v50_victim_new_task_task_already_exists_answer(["/v50/victim/new-task/task-already-exists-answer"]) + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_already_exists_answer + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_task_created --> n_v50_victim + n_v50_victim_new_task_task_due_date_answer(["/v50/victim/new-task/task-due-date-answer"]) + n_v50_victim_new_task_task_due_date --> n_v50_victim_new_task_task_due_date_answer + n_v50_victim_new_task_next_task_answer(["/v50/victim/new-task/next-task-answer"]) + n_v50_victim_new_task_task_selection --> n_v50_victim_new_task_next_task_answer + n_v50_victim_victim_details_address_answer(["/v50/victim/victim-details/address-answer"]) + n_v50_victim_victim_details_address --> n_v50_victim_victim_details_address_answer + n_v50_victim_victim_details_category_answer(["/v50/victim/victim-details/category-answer"]) + n_v50_victim_victim_details_category --> n_v50_victim_victim_details_category_answer + n_v50_victim_victim_details_contact_times_answer(["/v50/victim/victim-details/contact-times-answer"]) + n_v50_victim_victim_details_contact_times --> n_v50_victim_victim_details_contact_times_answer + n_v50_victim_victim_details_correspondence_language_answer(["/v50/victim/victim-details/correspondence-language-answer"]) + n_v50_victim_victim_details_correspondence_language --> n_v50_victim_victim_details_correspondence_language_answer + n_v50_victim_victim_details_date_of_birth_answer(["/v50/victim/victim-details/date-of-birth-answer"]) + n_v50_victim_victim_details_date_of_birth --> n_v50_victim_victim_details_date_of_birth_answer + n_v50_victim_victim_details_disability_answer(["/v50/victim/victim-details/disability-answer"]) + n_v50_victim_victim_details_disability --> n_v50_victim_victim_details_disability_answer + n_v50_victim_victim_details_email_address_answer(["/v50/victim/victim-details/email-address-answer"]) + n_v50_victim_victim_details_email_address --> n_v50_victim_victim_details_email_address_answer + n_v50_victim_victim_details_ethnicity_answer(["/v50/victim/victim-details/ethnicity-answer"]) + n_v50_victim_victim_details_ethnicity --> n_v50_victim_victim_details_ethnicity_answer + n_v50_victim_victim_details_full_name_answer(["/v50/victim/victim-details/full-name-answer"]) + n_v50_victim_victim_details_full_name --> n_v50_victim_victim_details_full_name_answer + n_v50_victim_victim_details_gender_answer(["/v50/victim/victim-details/gender-answer"]) + n_v50_victim_victim_details_gender --> n_v50_victim_victim_details_gender_answer + n_v50_victim_victim_details_pmoc_answer(["/v50/victim/victim-details/pmoc-answer"]) + n_v50_victim_victim_details_pmoc --> n_v50_victim_victim_details_pmoc_answer + n_v50_victim_victim_details_pmoc_police_answer(["/v50/victim/victim-details/pmoc-police-answer"]) + n_v50_victim_victim_details_pmoc_police --> n_v50_victim_victim_details_pmoc_police_answer + n_v50_victim_victim_details_power_of_attorney_answer(["/v50/victim/victim-details/power-of-attorney-answer"]) + n_v50_victim_victim_details_power_of_attorney --> n_v50_victim_victim_details_power_of_attorney_answer + n_v50_victim_victim_details_preferred_name_answer(["/v50/victim/victim-details/preferred-name-answer"]) + n_v50_victim_victim_details_preferred_name --> n_v50_victim_victim_details_preferred_name_answer + n_v50_victim_victim_details_previous_convictions_answer(["/v50/victim/victim-details/previous-convictions-answer"]) + n_v50_victim_victim_details_previous_convictions --> n_v50_victim_victim_details_previous_convictions_answer + n_v50_victim_victim_details_reasonable_adjustments_answer(["/v50/victim/victim-details/reasonable-adjustments-answer"]) + n_v50_victim_victim_details_reasonable_adjustments --> n_v50_victim_victim_details_reasonable_adjustments_answer + n_v50_victim_victim_details_religion_answer(["/v50/victim/victim-details/religion-answer"]) + n_v50_victim_victim_details_religion --> n_v50_victim_victim_details_religion_answer + n_v50_victim_victim_details_risk_level_answer(["/v50/victim/victim-details/risk-level-answer"]) + n_v50_victim_victim_details_risk_level --> n_v50_victim_victim_details_risk_level_answer + n_v50_victim_victim_details_service_answer(["/v50/victim/victim-details/service-answer"]) + n_v50_victim_victim_details_service --> n_v50_victim_victim_details_service_answer + n_v50_victim_victim_details_telephone_number_answer(["/v50/victim/victim-details/telephone-number-answer"]) + n_v50_victim_victim_details_telephone_number --> n_v50_victim_victim_details_telephone_number_answer + n_v50_victim_victim_details_translator_needed_answer(["/v50/victim/victim-details/translator-needed-answer"]) + n_v50_victim_victim_details_translator_needed --> n_v50_victim_victim_details_translator_needed_answer + n_v50_victim_victim_details_victim_representative_answer(["/v50/victim/victim-details/victim-representative-answer"]) + n_v50_victim_victim_details_victim_representative --> n_v50_victim_victim_details_victim_representative_answer + n_v50_victim_victim_details_vps_status_answer(["/v50/victim/victim-details/vps-status-answer"]) + n_v50_victim_victim_details_vps_status --> n_v50_victim_victim_details_vps_status_answer + n_v50_victim_victim_details_wants_contact_answer(["/v50/victim/victim-details/wants-contact-answer"]) + n_v50_victim_victim_details_wants_contact --> n_v50_victim_victim_details_wants_contact_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_victim_case_information_charging_type_answer,n_v50_victim_victim_details_contact_times_answer,n_v50_victim_victim_details_address_answer,n_v50_victim_case_information_area_answer,n_v50_victim_victim_details_disability_answer,n_v50_victim_victim_details_pmoc_answer,n_v50_victim_victim_details_telephone_number_answer,n_v50_victim_victim_details_wants_contact_answer,n_v50_victim_victim_details_religion_answer,n_v50_victim_victim_details_reasonable_adjustments_answer,n_v50_victim_new_task_task_due_date_answer,n_v50_victim_new_task_next_task_answer,n_v50_victim_victim_details_translator_needed_answer,n_v50_victim_new_task_meeting_purpose_answer,n_v50_victim_case_contacts_idva_answer,n_v50_victim_victim_details_preferred_name_answer,n_v50_victim_victim_details_date_of_birth_answer,n_v50_victim_victim_details_previous_convictions_answer,n_v50_victim_case_contacts_family_liaison_officer_answer,n_v50_victim_new_task_check_task_answer,n_v50_victim_victim_details_full_name_answer,n_v50_victim_victim_details_ethnicity_answer,n_v50_victim_victim_details_gender_answer,n_v50_victim_victim_details_vps_status_answer,n_v50_victim_victim_details_victim_representative_answer,n_v50_victim_victim_details_category_answer,n_v50_victim_victim_details_power_of_attorney_answer,n_v50_victim_case_contacts_isva_answer,n_v50_victim_victim_details_pmoc_police_answer,n_v50_victim_victim_details_email_address_answer,n_v50_victim_victim_details_correspondence_language_answer,n_v50_victim_new_task_task_already_exists_answer,n_v50_victim_victim_details_risk_level_answer,n_v50_victim_victim_details_service_answer,n_v50_victim_new_task_manual_task_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_victim_case_contacts_idva_delete,n_v50_victim_case_contacts_family_liaison_officer_delete,n_v50_victim_case_contacts_isva_delete external; +``` + +## V50 — WFT meetings (wft-meetings) + +```mermaid +flowchart LR + n_v50_wft_meetings_victims["Victims
/v50/wft-meetings/victims"] + n_v50_wft_meetings_new_task_purposet["Task selection
/v50/wft-meetings/new-task/purposet"] + n_v50_wft_meetings_new_task_check_task["Check the task details are correct
/v50/wft-meetings/new-task/check-task"] + n_v50_wft_meetings_log_meeting_outcome_check["Tasks
/v50/wft-meetings/log-meeting-outcome-check"] + n_v50_wft_meetings_log_arranged_meeting["Tasks
/v50/wft-meetings/log-arranged-meeting"] + n_v50_wft_meetings_new_task_manual_task["Set a reminder
/v50/wft-meetings/new-task/manual-task"] + n_v50_wft_meetings_new_task_task_due_date["Task due date
/v50/wft-meetings/new-task/task-due-date"] + n_v50_wft_meetings_new_task_task_created["Victim onboarded
/v50/wft-meetings/new-task/task-created"] + n_v50_wft_meetings_tasks["Tasks
/v50/wft-meetings/tasks"] + n_v50_wft_meetings_new_task_task_selection["Task selection
/v50/wft-meetings/new-task/task-selection"] + n_v50_wft_meetings_log_offer_response_check["Tasks
/v50/wft-meetings/log-offer-response-check"] + n_v50_wft_meetings_log_offer_response["Tasks
/v50/wft-meetings/log-offer-response"] + n_v50_wft_meetings_tasks2["Tasks
/v50/wft-meetings/tasks2"] + n_v50_wft_meetings_log_arranged_meeting_check["Tasks
/v50/wft-meetings/log-arranged-meeting-check"] + n_v50_wft_meetings_log_meeting_outcome["Tasks
/v50/wft-meetings/log-meeting-outcome"] + n_v50_wft_meetings_log_offer_task["Tasks
/v50/wft-meetings/log-offer-task"] + n_v50_onb_tasks_clear_filters(["/v50/onb/tasks/clear-filters"]) + n_v50_wft_meetings_log_arranged_meeting --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_arranged_meeting_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_task --> n_v50_onb_tasks_clear_filters + n_v50_victim_new_task_manual_task["Set a reminder
/v50/victim/new-task/manual-task"] + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_task_selection["Task selection
/v50/victim/new-task/task-selection"] + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_manual_task_answer(["/v50/victim/new-task/manual-task-answer"]) + n_v50_wft_meetings_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_wft_meetings_new_task_purposet_answer(["/v50/wft-meetings/new-task/purposet-answer"]) + n_v50_wft_meetings_new_task_purposet --> n_v50_wft_meetings_new_task_purposet_answer + n_v50_wft_meetings_new_task_task_due_date_answer(["/v50/wft-meetings/new-task/task-due-date-answer"]) + n_v50_wft_meetings_new_task_task_due_date --> n_v50_wft_meetings_new_task_task_due_date_answer + n_v50_wft_meetings_new_task_next_task_answer(["/v50/wft-meetings/new-task/next-task-answer"]) + n_v50_wft_meetings_new_task_task_selection --> n_v50_wft_meetings_new_task_next_task_answer + n_v50_change_task_due_date["Change task due date
/v50/change-task-due-date"] + n_v50_wft_meetings_tasks --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks --> n_v50_onb_tasks_clear_filters + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_wft_meetings_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_wft_meetings_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_wft_meetings_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_pcd_pre_draft_check_details[/"/v50/pcd/pre-draft/check-details"/] + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_check_details + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_wft_meetings_tasks --> n_v50_pcd_send_email_details + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_wft_meetings_tasks --> n_v50_pcd_send_letter_details + n_v50_task_assignee["Task Assignee
/v50/task-assignee"] + n_v50_wft_meetings_tasks --> n_v50_task_assignee + n_v50_victim["Victim
/v50/victim"] + n_v50_wft_meetings_tasks --> n_v50_victim + n_v50_wft_meetings_tasks2 --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks2 --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_follow_up_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_next_attempt_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_was_text_message_sent + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_check_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_contacted_by + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_email_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_letter_details + n_v50_wft_meetings_tasks2 --> n_v50_task_assignee + n_v50_wft_meetings_tasks2 --> n_v50_victim + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_wft_meetings_victims --> n_v50_onb_service_lead + n_v50_wft_meetings_victims --> n_v50_victim + n_v50_vlo["Victim liaison officer
/v50/vlo"] + n_v50_wft_meetings_victims --> n_v50_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_onb_tasks_clear_filters,n_v50_wft_meetings_new_task_next_task_answer,n_v50_wft_meetings_new_task_purposet_answer,n_v50_victim_new_task_manual_task_answer,n_v50_wft_meetings_new_task_task_due_date_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_pcd_pre_draft_check_details external; +``` + +## V51 — Case locked + +```mermaid +flowchart LR + n_v51_case_locked_self_locked["Case locked
/v51/case-locked/self-locked"] + n_v51_case_locked_by_someone_else["Case locked
/v51/case-locked/by-someone-else"] + n_v51_pcd_victim[/"/v51/pcd/victim"/] + n_v51_case_locked_by_someone_else --> n_v51_pcd_victim + n_v51_case_locked_self_locked --> n_v51_pcd_victim + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_pcd_victim external; +``` + +## V51 — Onboarding (onb) + +```mermaid +flowchart LR + n_v51_onb_check_details_vps_status["VPS status
/v51/onb/check-details/vps-status"] + n_v51_onb_check_task["Check the task details are correct
/v51/onb/check-task"] + n_v51_onb_check_details_risk_level["Domestic abuse risk level
/v51/onb/check-details/risk-level"] + n_v51_onb_next_task["Next task
/v51/onb/next-task"] + n_v51_onb_check_details_preferred_name["Preferred name
/v51/onb/check-details/preferred-name"] + n_v51_onb_manual_task["Create a task
/v51/onb/manual-task"] + n_v51_onb_check_details_pmoc["Preferred method of contact
/v51/onb/check-details/pmoc"] + n_v51_onb_onboarded["Victim onboarded
/v51/onb/onboarded"] + n_v51_onb_meeting_purpose["Task selection
/v51/onb/meeting-purpose"] + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_onb_check_details_preferred_contact_times["Preferred contact times
/v51/onb/check-details/preferred-contact-times"] + n_v51_onb_check_task_vlo["Victim liaison officer
/v51/onb/check-task-vlo"] + n_v51_onb_next_task_due_date["Task due date
/v51/onb/next-task-due-date"] + n_v51_onb_check_details_case_type["Charging type
/v51/onb/check-details/case-type"] + n_v51_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v51/onb/check-details/preferred-correspondence-language"] + n_v51_onb_check_details_translator_needed["Translator needed
/v51/onb/check-details/translator-needed"] + n_v51_onb_pmoc["Preferred method of contact
/v51/onb/pmoc"] + n_v51_onb_check_details["Check the details before drafting the letter
/v51/onb/check-details"] + n_v51_onb_check_details_answer(["/v51/onb/check-details-answer"]) + n_v51_onb_check_details --> n_v51_onb_check_details_answer + n_v51_onb_check_details --> n_v51_onb_check_details_case_type + n_v51_onb_check_details --> n_v51_onb_check_details_pmoc + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_contact_times + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_correspondence_language + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_name + n_v51_onb_check_details --> n_v51_onb_check_details_risk_level + n_v51_onb_check_details --> n_v51_onb_check_details_translator_needed + n_v51_onb_check_details --> n_v51_onb_check_details_vps_status + n_v51_onb_check_details --> n_v51_onb_check_task_vlo + n_v51_onb_check_details --> n_v51_onb_service_lead + n_v51_check_details_case_type_answer(["/v51/check-details/case-type-answer"]) + n_v51_onb_check_details_case_type --> n_v51_check_details_case_type_answer + n_v51_check_details_pmoc_answer(["/v51/check-details/pmoc-answer"]) + n_v51_onb_check_details_pmoc --> n_v51_check_details_pmoc_answer + n_v51_check_details_preferred_contact_times_answer(["/v51/check-details/preferred-contact-times-answer"]) + n_v51_onb_check_details_preferred_contact_times --> n_v51_check_details_preferred_contact_times_answer + n_v51_check_details_preferred_correspondence_language_answer(["/v51/check-details/preferred-correspondence-language-answer"]) + n_v51_onb_check_details_preferred_correspondence_language --> n_v51_check_details_preferred_correspondence_language_answer + n_v51_check_details_preferred_name_answer(["/v51/check-details/preferred-name-answer"]) + n_v51_onb_check_details_preferred_name --> n_v51_check_details_preferred_name_answer + n_v51_check_details_risk_level_answer(["/v51/check-details/risk-level-answer"]) + n_v51_onb_check_details_risk_level --> n_v51_check_details_risk_level_answer + n_v51_check_details_translator_needed_answer(["/v51/check-details/translator-needed-answer"]) + n_v51_onb_check_details_translator_needed --> n_v51_check_details_translator_needed_answer + n_v51_check_details_vps_status_answer(["/v51/check-details/vps-status-answer"]) + n_v51_onb_check_details_vps_status --> n_v51_check_details_vps_status_answer + n_v51_onb_check_task_answer(["/v51/onb/check-task-answer"]) + n_v51_onb_check_task --> n_v51_onb_check_task_answer + n_v51_onb_check_task --> n_v51_onb_manual_task + n_v51_onb_check_task --> n_v51_onb_meeting_purpose + n_v51_onb_check_task --> n_v51_onb_next_task + n_v51_onb_check_task --> n_v51_onb_next_task_due_date + n_v51_onb_check_task_vlo_answer(["/v51/onb/check-task-vlo-answer"]) + n_v51_onb_check_task_vlo --> n_v51_onb_check_task_vlo_answer + n_v51_onb_manual_task_answer(["/v51/onb/manual-task-answer"]) + n_v51_onb_manual_task --> n_v51_onb_manual_task_answer + n_v51_onb_meeting_purpose_answer(["/v51/onb/meeting-purpose-answer"]) + n_v51_onb_meeting_purpose --> n_v51_onb_meeting_purpose_answer + n_v51_onb_next_task_answer(["/v51/onb/next-task-answer"]) + n_v51_onb_next_task --> n_v51_onb_next_task_answer + n_v51_onb_next_task_due_date_answer(["/v51/onb/next-task-due-date-answer"]) + n_v51_onb_next_task_due_date --> n_v51_onb_next_task_due_date_answer + n_v51_victims["Victims
/v51/victims"] + n_v51_onb_onboarded --> n_v51_victims + n_v51_onb_pmoc_answer(["/v51/onb/pmoc-answer"]) + n_v51_onb_pmoc --> n_v51_onb_pmoc_answer + n_v51_onb_service_lead_answer(["/v51/onb/service-lead-answer"]) + n_v51_onb_service_lead --> n_v51_onb_service_lead_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_check_details_preferred_contact_times_answer,n_v51_check_details_risk_level_answer,n_v51_onb_manual_task_answer,n_v51_onb_meeting_purpose_answer,n_v51_check_details_pmoc_answer,n_v51_onb_next_task_due_date_answer,n_v51_check_details_translator_needed_answer,n_v51_onb_next_task_answer,n_v51_check_details_preferred_correspondence_language_answer,n_v51_onb_check_details_answer,n_v51_onb_check_task_vlo_answer,n_v51_check_details_preferred_name_answer,n_v51_check_details_vps_status_answer,n_v51_onb_check_task_answer,n_v51_check_details_case_type_answer,n_v51_onb_pmoc_answer,n_v51_onb_service_lead_answer answer; +``` + +## V51 — Other communications (other) + +```mermaid +flowchart LR + n_v51_other_email_logged["Email logged
/v51/other/email-logged"] + n_v51_other_other_logged["Other communication logged
/v51/other/other-logged"] + n_v51_other_log["Log a communication
/v51/other/log"] + n_v51_other_other["Log other communication
/v51/other/other"] + n_v51_other_contacted_by["How did you contact the victim?
/v51/other/contacted-by"] + n_v51_other_call_logged["Telephone call logged
/v51/other/call-logged"] + n_v51_other_in_person_logged["In-person meeting logged
/v51/other/in-person-logged"] + n_v51_other_text_message["Log a text message
/v51/other/text-message"] + n_v51_other_email_details["Log an email
/v51/other/email-details"] + n_v51_other_in_person["Log an in-person conversation
/v51/other/in-person"] + n_v51_other_text_message_logged["Text message logged
/v51/other/text-message-logged"] + n_v51_other_telephone_call["Log a telephone call
/v51/other/telephone-call"] + n_v51_other_letter_logged["Letter logged
/v51/other/letter-logged"] + n_v51_other_letter_details["Log a letter
/v51/other/letter-details"] + n_v51_victim["Victim
/v51/victim"] + n_v51_other_call_logged --> n_v51_victim + n_v51_other_contacted_by_answer(["/v51/other/contacted-by-answer"]) + n_v51_other_contacted_by --> n_v51_other_contacted_by_answer + n_v51_other_email_details_answer(["/v51/other/email-details-answer"]) + n_v51_other_email_details --> n_v51_other_email_details_answer + n_v51_other_email_logged --> n_v51_victim + n_v51_other_in_person_answer(["/v51/other/in-person-answer"]) + n_v51_other_in_person --> n_v51_other_in_person_answer + n_v51_other_in_person_logged --> n_v51_victim + n_v51_other_letter_details_answer(["/v51/other/letter-details-answer"]) + n_v51_other_letter_details --> n_v51_other_letter_details_answer + n_v51_other_letter_logged --> n_v51_victim + n_v51_other_other_details_answer(["/v51/other/other-details-answer"]) + n_v51_other_other --> n_v51_other_other_details_answer + n_v51_other_other_logged --> n_v51_victim + n_v51_other_telephone_call_answer(["/v51/other/telephone-call-answer"]) + n_v51_other_telephone_call --> n_v51_other_telephone_call_answer + n_v51_other_text_message_answer(["/v51/other/text-message-answer"]) + n_v51_other_text_message --> n_v51_other_text_message_answer + n_v51_other_text_message_logged --> n_v51_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_other_letter_details_answer,n_v51_other_telephone_call_answer,n_v51_other_in_person_answer,n_v51_other_contacted_by_answer,n_v51_other_email_details_answer,n_v51_other_other_details_answer,n_v51_other_text_message_answer answer; +``` + +## V51 — Pre-contact draft (pcd) + +```mermaid +flowchart LR + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_pcd_draft_task_already_exists["This task already exists
/v51/pcd/draft/task-already-exists"] + n_v51_pcd_follow_up_telephone_call["Follow-up telephone call
/v51/pcd/follow-up/telephone-call"] + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_pcd_call_text_message_details["Text message details
/v51/pcd/call/text-message-details"] + n_v51_pcd_follow_up_letter_logged["Follow-up letter logged
/v51/pcd/follow-up/letter-logged"] + n_v51_pcd_follow_up_log_follow_up["Log a follow-up
/v51/pcd/follow-up/log-follow-up"] + n_v51_pcd_call_phone_call_2["Telephone call 2
/v51/pcd/call/phone-call-2"] + n_v51_pcd_send_letter_logged["Letter logged
/v51/pcd/send/letter-logged"] + n_v51_pcd_draft_pcd_type["Charging decision type
/v51/pcd/draft/pcd-type"] + n_v51_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v51/pcd/follow-up/not-contacted-logged"] + n_v51_pcd_pre_draft_check_eligibility["Check eligibility
/v51/pcd/pre-draft/check-eligibility"] + n_v51_pcd_send_email_logged["Email logged
/v51/pcd/send/email-logged"] + n_v51_pcd_follow_up_email_details["Follow-up email details
/v51/pcd/follow-up/email-details"] + n_v51_pcd_draft_first_hearing["First hearing
/v51/pcd/draft/first-hearing"] + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_pcd_follow_up_call_logged["Follow-up telephone call logged
/v51/pcd/follow-up/call-logged"] + n_v51_pcd_follow_up_email_logged["Follow-up email logged
/v51/pcd/follow-up/email-logged"] + n_v51_pcd_call_phone_call_3["Telephone call 3 details
/v51/pcd/call/phone-call-3"] + n_v51_pcd_call_phone_call_1["Telephone call 1
/v51/pcd/call/phone-call-1"] + n_v51_pcd_follow_up_letter_details["Follow-up letter details
/v51/pcd/follow-up/letter-details"] + n_v51_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/follow-up/not-contacted-reason"] + n_v51_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/pre-draft/not-contacted-reason"] + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_pcd_call_follow_up_moc_answer(["/v51/pcd/call/follow-up-moc-answer"]) + n_v51_pcd_call_follow_up_moc --> n_v51_pcd_call_follow_up_moc_answer + n_v51_pcd_call_next_attempt_moc_answer(["/v51/pcd/call/next-attempt-moc-answer"]) + n_v51_pcd_call_next_attempt_moc --> n_v51_pcd_call_next_attempt_moc_answer + n_v51_pcd_call_phone_call_1_answer(["/v51/pcd/call/phone-call-1-answer"]) + n_v51_pcd_call_phone_call_1 --> n_v51_pcd_call_phone_call_1_answer + n_v51_pcd_call_phone_call_2_answer(["/v51/pcd/call/phone-call-2-answer"]) + n_v51_pcd_call_phone_call_2 --> n_v51_pcd_call_phone_call_2_answer + n_v51_pcd_call_phone_call_3_answer(["/v51/pcd/call/phone-call-3-answer"]) + n_v51_pcd_call_phone_call_3 --> n_v51_pcd_call_phone_call_3_answer + n_v51_pcd_call_text_message_details_answer(["/v51/pcd/call/text-message-details-answer"]) + n_v51_pcd_call_text_message_details --> n_v51_pcd_call_text_message_details_answer + n_v51_pcd_call_was_text_message_sent_answer(["/v51/pcd/call/was-text-message-sent-answer"]) + n_v51_pcd_call_was_text_message_sent --> n_v51_pcd_call_was_text_message_sent_answer + n_v51_pcd_draft_first_hearing_answer(["/v51/pcd/draft/first-hearing-answer"]) + n_v51_pcd_draft_first_hearing --> n_v51_pcd_draft_first_hearing_answer + n_v51_pcd_draft_pcd_type_answer(["/v51/pcd/draft/pcd-type-answer"]) + n_v51_pcd_draft_pcd_type --> n_v51_pcd_draft_pcd_type_answer + n_v51_pcd_draft_task_already_exists_answer(["/v51/pcd/draft/task-already-exists-answer"]) + n_v51_pcd_draft_task_already_exists --> n_v51_pcd_draft_task_already_exists_answer + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_pcd_draft_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_victim["Victim
/v51/victim"] + n_v51_pcd_follow_up_call_logged --> n_v51_victim + n_v51_pcd_follow_up_email_details_answer(["/v51/pcd/follow-up/email-details-answer"]) + n_v51_pcd_follow_up_email_details --> n_v51_pcd_follow_up_email_details_answer + n_v51_pcd_follow_up_email_logged --> n_v51_victim + n_v51_pcd_follow_up_letter_details_answer(["/v51/pcd/follow-up/letter-details-answer"]) + n_v51_pcd_follow_up_letter_details --> n_v51_pcd_follow_up_letter_details_answer + n_v51_pcd_follow_up_letter_logged --> n_v51_victim + n_v51_pcd_follow_up_log_follow_up_answer(["/v51/pcd/follow-up/log-follow-up-answer"]) + n_v51_pcd_follow_up_log_follow_up --> n_v51_pcd_follow_up_log_follow_up_answer + n_v51_pcd_follow_up_not_contacted_logged --> n_v51_victim + n_v51_pcd_follow_up_not_contacted_reason_answer(["/v51/pcd/follow-up/not-contacted-reason-answer"]) + n_v51_pcd_follow_up_not_contacted_reason --> n_v51_pcd_follow_up_not_contacted_reason_answer + n_v51_pcd_follow_up_telephone_call_answer(["/v51/pcd/follow-up/telephone-call-answer"]) + n_v51_pcd_follow_up_telephone_call --> n_v51_pcd_follow_up_telephone_call_answer + n_v51_pcd_pre_draft_check_eligibility_answer(["/v51/pcd/pre-draft/check-eligibility-answer"]) + n_v51_pcd_pre_draft_check_eligibility --> n_v51_pcd_pre_draft_check_eligibility_answer + n_v51_pcd_pre_draft_contacted_by_answer(["/v51/pcd/pre-draft/contacted-by-answer"]) + n_v51_pcd_pre_draft_contacted_by --> n_v51_pcd_pre_draft_contacted_by_answer + n_v51_pcd_pre_draft_not_contacted_reason_answer(["/v51/pcd/pre-draft/not-contacted-reason-answer"]) + n_v51_pcd_pre_draft_not_contacted_reason --> n_v51_pcd_pre_draft_not_contacted_reason_answer + n_v51_pcd_send_email_details_answer(["/v51/pcd/send/email-details-answer"]) + n_v51_pcd_send_email_details --> n_v51_pcd_send_email_details_answer + n_v51_pcd_send_email_logged --> n_v51_victim + n_v51_pcd_send_letter_details_answer(["/v51/pcd/send/letter-details-answer"]) + n_v51_pcd_send_letter_details --> n_v51_pcd_send_letter_details_answer + n_v51_pcd_send_letter_logged --> n_v51_victim + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_pcd_call_was_text_message_sent_answer,n_v51_pcd_follow_up_telephone_call_answer,n_v51_pcd_pre_draft_not_contacted_reason_answer,n_v51_pcd_call_phone_call_2_answer,n_v51_pcd_follow_up_email_details_answer,n_v51_pcd_draft_first_hearing_answer,n_v51_pcd_pre_draft_check_eligibility_answer,n_v51_pcd_follow_up_letter_details_answer,n_v51_pcd_send_letter_details_answer,n_v51_pcd_draft_pcd_type_answer,n_v51_pcd_pre_draft_contacted_by_answer,n_v51_pcd_call_next_attempt_moc_answer,n_v51_pcd_send_email_details_answer,n_v51_pcd_draft_task_already_exists_answer,n_v51_pcd_call_follow_up_moc_answer,n_v51_pcd_call_phone_call_1_answer,n_v51_pcd_follow_up_not_contacted_reason_answer,n_v51_pcd_follow_up_log_follow_up_answer,n_v51_pcd_call_phone_call_3_answer,n_v51_pcd_call_text_message_details_answer answer; +``` + +## V51 — Root pages + +```mermaid +flowchart LR + n_v51_overview6_vlm["Overview
/v51/overview6-vlm"] + n_v51_update_manual_task["Update task status
/v51/update-manual-task"] + n_v51_change_task_due_date["Change task due date
/v51/change-task-due-date"] + n_v51_tasks["Tasks
/v51/tasks"] + n_v51_overview3["Overview
/v51/overview3"] + n_v51_victim["Victim
/v51/victim"] + n_v51_overview["Overview
/v51/overview"] + n_v51_next_task_due_date["Task due date
/v51/next-task-due-date"] + n_v51_overview6_vlo["Overview
/v51/overview6-vlo"] + n_v51_overview2["Overview
/v51/overview2"] + n_v51_overview4["Overview
/v51/overview4"] + n_v51_vlo["Victim liaison officer
/v51/vlo"] + n_v51_overview5["Overview
/v51/overview5"] + n_v51_overview6_initial["Overview
/v51/overview6-initial"] + n_v51_task_assignee["Task Assignee
/v51/task-assignee"] + n_v51_change_service["Change service
/v51/change-service"] + n_v51_task_updated["Victim onboarded
/v51/task-updated"] + n_v51_victims["Victims
/v51/victims"] + n_v51_sign_in["Sign in to your account
/v51/sign-in"] + n_v51_change_service_answer(["/v51/change-service-answer"]) + n_v51_change_service --> n_v51_change_service_answer + n_v51_change_task_due_date_answer(["/v51/change-task-due-date-answer"]) + n_v51_change_task_due_date --> n_v51_change_task_due_date_answer + n_v51_next_task_due_date --> n_v51_change_task_due_date_answer + n_v51_onb_tasks[/"/v51/onb/tasks"/] + n_v51_overview --> n_v51_onb_tasks + n_v51_sign_in_answer(["/v51/sign-in-answer"]) + n_v51_sign_in --> n_v51_sign_in_answer + n_v51_task_assignee_answer(["/v51/task-assignee-answer"]) + n_v51_task_assignee --> n_v51_task_assignee_answer + n_v51_task_updated --> n_v51_tasks + n_v51_tasks --> n_v51_next_task_due_date + n_v51_onb_tasks_clear_filters(["/v51/onb/tasks/clear-filters"]) + n_v51_tasks --> n_v51_onb_tasks_clear_filters + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_tasks --> n_v51_pcd_send_email_details + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_tasks --> n_v51_pcd_send_letter_details + n_v51_tasks --> n_v51_task_assignee + n_v51_tasks --> n_v51_update_manual_task + n_v51_vcl_call_follow_up_moc["Follow-up method of contact
/v51/vcl/call/follow-up-moc"] + n_v51_tasks --> n_v51_vcl_call_follow_up_moc + n_v51_vcl_call_next_attempt_moc["Next attempt method of contact
/v51/vcl/call/next-attempt-moc"] + n_v51_tasks --> n_v51_vcl_call_next_attempt_moc + n_v51_vcl_call_was_text_message_sent["Was a text message sent to the victim?
/v51/vcl/call/was-text-message-sent"] + n_v51_tasks --> n_v51_vcl_call_was_text_message_sent + n_v51_vcl_send_email_details["Email details
/v51/vcl/send/email-details"] + n_v51_tasks --> n_v51_vcl_send_email_details + n_v51_vcl_send_letter_details["Letter details
/v51/vcl/send/letter-details"] + n_v51_tasks --> n_v51_vcl_send_letter_details + n_v51_vcl_start_task[/"/v51/vcl/start-task"/] + n_v51_tasks --> n_v51_vcl_start_task + n_v51_tasks --> n_v51_victim + n_v51_update_manual_task_answer(["/v51/update-manual-task-answer"]) + n_v51_update_manual_task --> n_v51_update_manual_task_answer + n_v51_victims --> n_v51_change_service + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_victims --> n_v51_onb_service_lead + n_v51_victims --> n_v51_victim + n_v51_victims --> n_v51_vlo + n_v51_onb_vlo_answer(["/v51/onb/vlo-answer"]) + n_v51_vlo --> n_v51_onb_vlo_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_onb_vlo_answer,n_v51_change_service_answer,n_v51_change_task_due_date_answer,n_v51_sign_in_answer,n_v51_task_assignee_answer,n_v51_onb_tasks_clear_filters,n_v51_update_manual_task_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_vcl_start_task,n_v51_onb_tasks external; +``` + +## V51 — Victim contact log (vcl) + +```mermaid +flowchart LR + n_v51_vcl_follow_up_log_follow_up["Log a follow-up
/v51/vcl/follow-up/log-follow-up"] + n_v51_vcl_pre_draft_contacted_by["How did you contact the victim?
/v51/vcl/pre-draft/contacted-by"] + n_v51_vcl_follow_up_email_details["Follow-up email details
/v51/vcl/follow-up/email-details"] + n_v51_vcl_send_email_details["Email details
/v51/vcl/send/email-details"] + n_v51_vcl_follow_up_letter_logged["Follow-up letter logged
/v51/vcl/follow-up/letter-logged"] + n_v51_vcl_follow_up_email_logged["Follow-up email logged
/v51/vcl/follow-up/email-logged"] + n_v51_vcl_draft_stopped_charge["Stopped charge reason
/v51/vcl/draft/stopped-charge"] + n_v51_vcl_call_text_message_details["Text message details
/v51/vcl/call/text-message-details"] + n_v51_vcl_draft_vcl_type["Communication type
/v51/vcl/draft/vcl-type"] + n_v51_vcl_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/vcl/pre-draft/not-contacted-reason"] + n_v51_vcl_call_next_attempt_moc["Next attempt method of contact
/v51/vcl/call/next-attempt-moc"] + n_v51_vcl_draft_substantially_altered_charge["Substantially altered charge
/v51/vcl/draft/substantially-altered-charge"] + n_v51_vcl_call_was_text_message_sent["Was a text message sent to the victim?
/v51/vcl/call/was-text-message-sent"] + n_v51_vcl_send_letter_details["Letter details
/v51/vcl/send/letter-details"] + n_v51_vcl_call_phone_call["Telephone call
/v51/vcl/call/phone-call"] + n_v51_vcl_call_follow_up_moc["Follow-up method of contact
/v51/vcl/call/follow-up-moc"] + n_v51_vcl_follow_up_letter_details["Follow-up letter details
/v51/vcl/follow-up/letter-details"] + n_v51_vcl_call_follow_up_moc_answer(["/v51/vcl/call/follow-up-moc-answer"]) + n_v51_vcl_call_follow_up_moc --> n_v51_vcl_call_follow_up_moc_answer + n_v51_vcl_call_next_attempt_moc_answer(["/v51/vcl/call/next-attempt-moc-answer"]) + n_v51_vcl_call_next_attempt_moc --> n_v51_vcl_call_next_attempt_moc_answer + n_v51_vcl_call_phone_call_answer(["/v51/vcl/call/phone-call-answer"]) + n_v51_vcl_call_phone_call --> n_v51_vcl_call_phone_call_answer + n_v51_vcl_call_text_message_details_answer(["/v51/vcl/call/text-message-details-answer"]) + n_v51_vcl_call_text_message_details --> n_v51_vcl_call_text_message_details_answer + n_v51_vcl_call_was_text_message_sent_answer(["/v51/vcl/call/was-text-message-sent-answer"]) + n_v51_vcl_call_was_text_message_sent --> n_v51_vcl_call_was_text_message_sent_answer + n_v51_vcl_draft_stopped_charge_answer(["/v51/vcl/draft/stopped-charge-answer"]) + n_v51_vcl_draft_stopped_charge --> n_v51_vcl_draft_stopped_charge_answer + n_v51_vcl_draft_substantially_altered_charge_answer(["/v51/vcl/draft/substantially-altered-charge-answer"]) + n_v51_vcl_draft_substantially_altered_charge --> n_v51_vcl_draft_substantially_altered_charge_answer + n_v51_vcl_draft_vcl_type_answer(["/v51/vcl/draft/vcl-type-answer"]) + n_v51_vcl_draft_vcl_type --> n_v51_vcl_draft_vcl_type_answer + n_v51_vcl_follow_up_email_details_answer(["/v51/vcl/follow-up/email-details-answer"]) + n_v51_vcl_follow_up_email_details --> n_v51_vcl_follow_up_email_details_answer + n_v51_victim["Victim
/v51/victim"] + n_v51_vcl_follow_up_email_logged --> n_v51_victim + n_v51_vcl_follow_up_letter_details_answer(["/v51/vcl/follow-up/letter-details-answer"]) + n_v51_vcl_follow_up_letter_details --> n_v51_vcl_follow_up_letter_details_answer + n_v51_vcl_follow_up_letter_logged --> n_v51_victim + n_v51_vcl_follow_up_log_follow_up_answer(["/v51/vcl/follow-up/log-follow-up-answer"]) + n_v51_vcl_follow_up_log_follow_up --> n_v51_vcl_follow_up_log_follow_up_answer + n_v51_vcl_pre_draft_contacted_by_answer(["/v51/vcl/pre-draft/contacted-by-answer"]) + n_v51_vcl_pre_draft_contacted_by --> n_v51_vcl_pre_draft_contacted_by_answer + n_v51_vcl_pre_draft_not_contacted_reason_answer(["/v51/vcl/pre-draft/not-contacted-reason-answer"]) + n_v51_vcl_pre_draft_not_contacted_reason --> n_v51_vcl_pre_draft_not_contacted_reason_answer + n_v51_vcl_send_email_details_answer(["/v51/vcl/send/email-details-answer"]) + n_v51_vcl_send_email_details --> n_v51_vcl_send_email_details_answer + n_v51_vcl_send_letter_details_answer(["/v51/vcl/send/letter-details-answer"]) + n_v51_vcl_send_letter_details --> n_v51_vcl_send_letter_details_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_vcl_pre_draft_not_contacted_reason_answer,n_v51_vcl_draft_vcl_type_answer,n_v51_vcl_call_follow_up_moc_answer,n_v51_vcl_draft_stopped_charge_answer,n_v51_vcl_pre_draft_contacted_by_answer,n_v51_vcl_send_email_details_answer,n_v51_vcl_follow_up_letter_details_answer,n_v51_vcl_call_phone_call_answer,n_v51_vcl_call_text_message_details_answer,n_v51_vcl_follow_up_email_details_answer,n_v51_vcl_call_was_text_message_sent_answer,n_v51_vcl_send_letter_details_answer,n_v51_vcl_draft_substantially_altered_charge_answer,n_v51_vcl_call_next_attempt_moc_answer,n_v51_vcl_follow_up_log_follow_up_answer answer; +``` + +## V51 — Victim + +```mermaid +flowchart LR + n_v51_victim_victim_details_service["Change service
/v51/victim/victim-details/service"] + n_v51_victim_victim_details_pmoc_police["Preferred method of contact for police
/v51/victim/victim-details/pmoc-police"] + n_v51_victim_new_task_task_already_exists["This task already exists
/v51/victim/new-task/task-already-exists"] + n_v51_victim_victim_details_risk_level["Domestic abuse risk level
/v51/victim/victim-details/risk-level"] + n_v51_victim_index_withtasks_v2["Victim
/v51/victim/index-withtasks-v2"] + n_v51_victim_victim_details_date_of_birth["Victim's date of birth
/v51/victim/victim-details/date-of-birth"] + n_v51_victim_index_withtasks_v3["Victim
/v51/victim/index-withtasks-v3"] + n_v51_victim_victim_details_full_name["Victim's full name
/v51/victim/victim-details/full-name"] + n_v51_victim_victim_details_address["Victim's address
/v51/victim/victim-details/address"] + n_v51_victim_victim_details_power_of_attorney["Power of attorney details
/v51/victim/victim-details/power-of-attorney"] + n_v51_victim_new_task_task_created["Victim onboarded
/v51/victim/new-task/task-created"] + n_v51_victim_victim_details_disability["Disability or access needs
/v51/victim/victim-details/disability"] + n_v51_victim_victim_details_correspondence_language["Preferred correspondence language
/v51/victim/victim-details/correspondence-language"] + n_v51_victim_case_information_area["Change area
/v51/victim/case-information/area"] + n_v51_victim_victim_details_email_address["Victim's email address
/v51/victim/victim-details/email-address"] + n_v51_victim_victim_details_wants_contact["Do they want to be contacted?
/v51/victim/victim-details/wants-contact"] + n_v51_victim_task_details_another_task2["Victim record
/v51/victim/task-details/another-task2"] + n_v51_victim_victim_details_vps_status["VPS status
/v51/victim/victim-details/vps-status"] + n_v51_victim_task_details_decision_to_charge["Victim record
/v51/victim/task-details/decision-to-charge"] + n_v51_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v51/victim/victim-details/reasonable-adjustments"] + n_v51_victim_task_details_outcome_logged["Victim record
/v51/victim/task-details/outcome-logged"] + n_v51_victim_victim_details_category["Victim category
/v51/victim/victim-details/category"] + n_v51_victim_index_withtasks_v4["Victim
/v51/victim/index-withtasks-v4"] + n_v51_victim_victim_details_contact_times["Preferred contact times
/v51/victim/victim-details/contact-times"] + n_v51_victim_new_task_task_selection["Task selection
/v51/victim/new-task/task-selection"] + n_v51_victim_case_information_charging_type["Change charging type
/v51/victim/case-information/charging-type"] + n_v51_victim_victim_details_ethnicity["Victim ethnicity
/v51/victim/victim-details/ethnicity"] + n_v51_victim_victim_details_preferred_name["Victim's preferred name
/v51/victim/victim-details/preferred-name"] + n_v51_victim_new_task_manual_task["Set a reminder
/v51/victim/new-task/manual-task"] + n_v51_victim_task_details_another_task1["Victim record
/v51/victim/task-details/another-task1"] + n_v51_victim_victim_details_telephone_number["Victim's telephone number
/v51/victim/victim-details/telephone-number"] + n_v51_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v51/victim/case-contacts/idva"] + n_v51_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v51/victim/case-contacts/family-liaison-officer"] + n_v51_victim_index_notasks["Victim
/v51/victim/index-notasks"] + n_v51_victim_victim_details_translator_needed["Translator needed
/v51/victim/victim-details/translator-needed"] + n_v51_victim_new_task_check_task["Check the task details are correct
/v51/victim/new-task/check-task"] + n_v51_victim_new_task_meeting_purpose["Task selection
/v51/victim/new-task/meeting-purpose"] + n_v51_victim_victim_details_pmoc["Preferred method of contact
/v51/victim/victim-details/pmoc"] + n_v51_victim_victim_details_victim_representative["Victim representative details
/v51/victim/victim-details/victim-representative"] + n_v51_victim_victim_details_gender["Victim gender
/v51/victim/victim-details/gender"] + n_v51_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v51/victim/case-contacts/isva"] + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_victim_victim_details_religion["Religion or belief
/v51/victim/victim-details/religion"] + n_v51_victim_index_withtasks["Victim
/v51/victim/index-withtasks"] + n_v51_victim_victim_details_previous_convictions["Previous convictions
/v51/victim/victim-details/previous-convictions"] + n_v51_victim["Victim
/v51/victim"] + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim + n_v51_victim_case_contacts_family_liaison_officer_answer(["/v51/victim/case-contacts/family-liaison-officer-answer"]) + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_answer + n_v51_victim_case_contacts_family_liaison_officer_delete[/"/v51/victim/case-contacts/family-liaison-officer-delete"/] + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_delete + n_v51_victim_case_contacts_idva --> n_v51_victim + n_v51_victim_case_contacts_idva_answer(["/v51/victim/case-contacts/idva-answer"]) + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_answer + n_v51_victim_case_contacts_idva_delete[/"/v51/victim/case-contacts/idva-delete"/] + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_delete + n_v51_victim_case_contacts_isva --> n_v51_victim + n_v51_victim_case_contacts_isva_answer(["/v51/victim/case-contacts/isva-answer"]) + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_answer + n_v51_victim_case_contacts_isva_delete[/"/v51/victim/case-contacts/isva-delete"/] + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_delete + n_v51_victim_case_information_area_answer(["/v51/victim/case-information/area-answer"]) + n_v51_victim_case_information_area --> n_v51_victim_case_information_area_answer + n_v51_victim_case_information_charging_type_answer(["/v51/victim/case-information/charging-type-answer"]) + n_v51_victim_case_information_charging_type --> n_v51_victim_case_information_charging_type_answer + n_v51_victim_index_notasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v3 --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v4 --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_check_task_answer(["/v51/victim/new-task/check-task-answer"]) + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_check_task_answer + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_meeting_purpose + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_manual_task_answer(["/v51/victim/new-task/manual-task-answer"]) + n_v51_victim_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_victim_new_task_meeting_purpose_answer(["/v51/victim/new-task/meeting-purpose-answer"]) + n_v51_victim_new_task_meeting_purpose --> n_v51_victim_new_task_meeting_purpose_answer + n_v51_victim_new_task_task_already_exists_answer(["/v51/victim/new-task/task-already-exists-answer"]) + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_already_exists_answer + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_task_created --> n_v51_victim + n_v51_victim_new_task_task_due_date_answer(["/v51/victim/new-task/task-due-date-answer"]) + n_v51_victim_new_task_task_due_date --> n_v51_victim_new_task_task_due_date_answer + n_v51_victim_new_task_next_task_answer(["/v51/victim/new-task/next-task-answer"]) + n_v51_victim_new_task_task_selection --> n_v51_victim_new_task_next_task_answer + n_v51_victim_victim_details_address_answer(["/v51/victim/victim-details/address-answer"]) + n_v51_victim_victim_details_address --> n_v51_victim_victim_details_address_answer + n_v51_victim_victim_details_category_answer(["/v51/victim/victim-details/category-answer"]) + n_v51_victim_victim_details_category --> n_v51_victim_victim_details_category_answer + n_v51_victim_victim_details_contact_times_answer(["/v51/victim/victim-details/contact-times-answer"]) + n_v51_victim_victim_details_contact_times --> n_v51_victim_victim_details_contact_times_answer + n_v51_victim_victim_details_correspondence_language_answer(["/v51/victim/victim-details/correspondence-language-answer"]) + n_v51_victim_victim_details_correspondence_language --> n_v51_victim_victim_details_correspondence_language_answer + n_v51_victim_victim_details_date_of_birth_answer(["/v51/victim/victim-details/date-of-birth-answer"]) + n_v51_victim_victim_details_date_of_birth --> n_v51_victim_victim_details_date_of_birth_answer + n_v51_victim_victim_details_disability_answer(["/v51/victim/victim-details/disability-answer"]) + n_v51_victim_victim_details_disability --> n_v51_victim_victim_details_disability_answer + n_v51_victim_victim_details_email_address_answer(["/v51/victim/victim-details/email-address-answer"]) + n_v51_victim_victim_details_email_address --> n_v51_victim_victim_details_email_address_answer + n_v51_victim_victim_details_ethnicity_answer(["/v51/victim/victim-details/ethnicity-answer"]) + n_v51_victim_victim_details_ethnicity --> n_v51_victim_victim_details_ethnicity_answer + n_v51_victim_victim_details_full_name_answer(["/v51/victim/victim-details/full-name-answer"]) + n_v51_victim_victim_details_full_name --> n_v51_victim_victim_details_full_name_answer + n_v51_victim_victim_details_gender_answer(["/v51/victim/victim-details/gender-answer"]) + n_v51_victim_victim_details_gender --> n_v51_victim_victim_details_gender_answer + n_v51_victim_victim_details_pmoc_answer(["/v51/victim/victim-details/pmoc-answer"]) + n_v51_victim_victim_details_pmoc --> n_v51_victim_victim_details_pmoc_answer + n_v51_victim_victim_details_pmoc_police_answer(["/v51/victim/victim-details/pmoc-police-answer"]) + n_v51_victim_victim_details_pmoc_police --> n_v51_victim_victim_details_pmoc_police_answer + n_v51_victim_victim_details_power_of_attorney_answer(["/v51/victim/victim-details/power-of-attorney-answer"]) + n_v51_victim_victim_details_power_of_attorney --> n_v51_victim_victim_details_power_of_attorney_answer + n_v51_victim_victim_details_preferred_name_answer(["/v51/victim/victim-details/preferred-name-answer"]) + n_v51_victim_victim_details_preferred_name --> n_v51_victim_victim_details_preferred_name_answer + n_v51_victim_victim_details_previous_convictions_answer(["/v51/victim/victim-details/previous-convictions-answer"]) + n_v51_victim_victim_details_previous_convictions --> n_v51_victim_victim_details_previous_convictions_answer + n_v51_victim_victim_details_reasonable_adjustments_answer(["/v51/victim/victim-details/reasonable-adjustments-answer"]) + n_v51_victim_victim_details_reasonable_adjustments --> n_v51_victim_victim_details_reasonable_adjustments_answer + n_v51_victim_victim_details_religion_answer(["/v51/victim/victim-details/religion-answer"]) + n_v51_victim_victim_details_religion --> n_v51_victim_victim_details_religion_answer + n_v51_victim_victim_details_risk_level_answer(["/v51/victim/victim-details/risk-level-answer"]) + n_v51_victim_victim_details_risk_level --> n_v51_victim_victim_details_risk_level_answer + n_v51_victim_victim_details_service_answer(["/v51/victim/victim-details/service-answer"]) + n_v51_victim_victim_details_service --> n_v51_victim_victim_details_service_answer + n_v51_victim_victim_details_telephone_number_answer(["/v51/victim/victim-details/telephone-number-answer"]) + n_v51_victim_victim_details_telephone_number --> n_v51_victim_victim_details_telephone_number_answer + n_v51_victim_victim_details_translator_needed_answer(["/v51/victim/victim-details/translator-needed-answer"]) + n_v51_victim_victim_details_translator_needed --> n_v51_victim_victim_details_translator_needed_answer + n_v51_victim_victim_details_victim_representative_answer(["/v51/victim/victim-details/victim-representative-answer"]) + n_v51_victim_victim_details_victim_representative --> n_v51_victim_victim_details_victim_representative_answer + n_v51_victim_victim_details_vps_status_answer(["/v51/victim/victim-details/vps-status-answer"]) + n_v51_victim_victim_details_vps_status --> n_v51_victim_victim_details_vps_status_answer + n_v51_victim_victim_details_wants_contact_answer(["/v51/victim/victim-details/wants-contact-answer"]) + n_v51_victim_victim_details_wants_contact --> n_v51_victim_victim_details_wants_contact_answer + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_victim_victim_details_email_address_answer,n_v51_victim_victim_details_wants_contact_answer,n_v51_victim_new_task_manual_task_answer,n_v51_victim_case_information_charging_type_answer,n_v51_victim_new_task_check_task_answer,n_v51_victim_victim_details_vps_status_answer,n_v51_victim_victim_details_correspondence_language_answer,n_v51_victim_victim_details_victim_representative_answer,n_v51_victim_new_task_task_due_date_answer,n_v51_victim_victim_details_previous_convictions_answer,n_v51_victim_victim_details_pmoc_answer,n_v51_victim_victim_details_gender_answer,n_v51_victim_victim_details_category_answer,n_v51_victim_case_contacts_family_liaison_officer_answer,n_v51_victim_new_task_next_task_answer,n_v51_victim_case_information_area_answer,n_v51_victim_victim_details_telephone_number_answer,n_v51_victim_new_task_meeting_purpose_answer,n_v51_victim_victim_details_preferred_name_answer,n_v51_victim_victim_details_reasonable_adjustments_answer,n_v51_victim_victim_details_power_of_attorney_answer,n_v51_victim_victim_details_religion_answer,n_v51_victim_victim_details_full_name_answer,n_v51_victim_victim_details_pmoc_police_answer,n_v51_victim_victim_details_service_answer,n_v51_victim_victim_details_disability_answer,n_v51_victim_new_task_task_already_exists_answer,n_v51_victim_victim_details_address_answer,n_v51_victim_case_contacts_idva_answer,n_v51_victim_victim_details_translator_needed_answer,n_v51_victim_victim_details_contact_times_answer,n_v51_victim_case_contacts_isva_answer,n_v51_victim_victim_details_risk_level_answer,n_v51_victim_victim_details_date_of_birth_answer,n_v51_victim_victim_details_ethnicity_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_victim_case_contacts_family_liaison_officer_delete,n_v51_victim_case_contacts_idva_delete,n_v51_victim_case_contacts_isva_delete external; +``` + +## V51 — WFT meetings (wft-meetings) + +```mermaid +flowchart LR + n_v51_wft_meetings_new_task_task_selection["Task selection
/v51/wft-meetings/new-task/task-selection"] + n_v51_wft_meetings_new_task_task_created["Victim onboarded
/v51/wft-meetings/new-task/task-created"] + n_v51_wft_meetings_victims["Victims
/v51/wft-meetings/victims"] + n_v51_wft_meetings_new_task_purposet["Task selection
/v51/wft-meetings/new-task/purposet"] + n_v51_wft_meetings_log_offer_response["Tasks
/v51/wft-meetings/log-offer-response"] + n_v51_wft_meetings_new_task_manual_task["Set a reminder
/v51/wft-meetings/new-task/manual-task"] + n_v51_wft_meetings_log_offer_response_check["Tasks
/v51/wft-meetings/log-offer-response-check"] + n_v51_wft_meetings_tasks["Tasks
/v51/wft-meetings/tasks"] + n_v51_wft_meetings_log_arranged_meeting_check["Tasks
/v51/wft-meetings/log-arranged-meeting-check"] + n_v51_wft_meetings_tasks2["Tasks
/v51/wft-meetings/tasks2"] + n_v51_wft_meetings_log_meeting_outcome["Tasks
/v51/wft-meetings/log-meeting-outcome"] + n_v51_wft_meetings_log_meeting_outcome_check["Tasks
/v51/wft-meetings/log-meeting-outcome-check"] + n_v51_wft_meetings_new_task_check_task["Check the task details are correct
/v51/wft-meetings/new-task/check-task"] + n_v51_wft_meetings_log_offer_task["Tasks
/v51/wft-meetings/log-offer-task"] + n_v51_wft_meetings_new_task_task_due_date["Task due date
/v51/wft-meetings/new-task/task-due-date"] + n_v51_wft_meetings_log_arranged_meeting["Tasks
/v51/wft-meetings/log-arranged-meeting"] + n_v51_onb_tasks_clear_filters(["/v51/onb/tasks/clear-filters"]) + n_v51_wft_meetings_log_arranged_meeting --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_arranged_meeting_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_task --> n_v51_onb_tasks_clear_filters + n_v51_victim_new_task_manual_task["Set a reminder
/v51/victim/new-task/manual-task"] + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_task_selection["Task selection
/v51/victim/new-task/task-selection"] + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_manual_task_answer(["/v51/victim/new-task/manual-task-answer"]) + n_v51_wft_meetings_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_wft_meetings_new_task_purposet_answer(["/v51/wft-meetings/new-task/purposet-answer"]) + n_v51_wft_meetings_new_task_purposet --> n_v51_wft_meetings_new_task_purposet_answer + n_v51_wft_meetings_new_task_task_due_date_answer(["/v51/wft-meetings/new-task/task-due-date-answer"]) + n_v51_wft_meetings_new_task_task_due_date --> n_v51_wft_meetings_new_task_task_due_date_answer + n_v51_wft_meetings_new_task_next_task_answer(["/v51/wft-meetings/new-task/next-task-answer"]) + n_v51_wft_meetings_new_task_task_selection --> n_v51_wft_meetings_new_task_next_task_answer + n_v51_change_task_due_date["Change task due date
/v51/change-task-due-date"] + n_v51_wft_meetings_tasks --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks --> n_v51_onb_tasks_clear_filters + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_wft_meetings_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_wft_meetings_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_wft_meetings_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_pcd_pre_draft_check_details[/"/v51/pcd/pre-draft/check-details"/] + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_check_details + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_wft_meetings_tasks --> n_v51_pcd_send_email_details + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_wft_meetings_tasks --> n_v51_pcd_send_letter_details + n_v51_task_assignee["Task Assignee
/v51/task-assignee"] + n_v51_wft_meetings_tasks --> n_v51_task_assignee + n_v51_victim["Victim
/v51/victim"] + n_v51_wft_meetings_tasks --> n_v51_victim + n_v51_wft_meetings_tasks2 --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks2 --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_follow_up_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_next_attempt_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_was_text_message_sent + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_check_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_contacted_by + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_email_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_letter_details + n_v51_wft_meetings_tasks2 --> n_v51_task_assignee + n_v51_wft_meetings_tasks2 --> n_v51_victim + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_wft_meetings_victims --> n_v51_onb_service_lead + n_v51_wft_meetings_victims --> n_v51_victim + n_v51_vlo["Victim liaison officer
/v51/vlo"] + n_v51_wft_meetings_victims --> n_v51_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_victim_new_task_manual_task_answer,n_v51_wft_meetings_new_task_next_task_answer,n_v51_wft_meetings_new_task_task_due_date_answer,n_v51_wft_meetings_new_task_purposet_answer,n_v51_onb_tasks_clear_filters answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_pcd_pre_draft_check_details external; +``` + +## V50 — full flow (all routes) + +```mermaid +flowchart LR + n_v50_victim_victim_details_pmoc["Preferred method of contact
/v50/victim/victim-details/pmoc"] + n_v50_wft_meetings_victims["Victims
/v50/wft-meetings/victims"] + n_v50_other_letter_logged["Letter logged
/v50/other/letter-logged"] + n_v50_overview["Overview
/v50/overview"] + n_v50_victim_victim_details_telephone_number["Victim's telephone number
/v50/victim/victim-details/telephone-number"] + n_v50_wft_meetings_new_task_task_created["Victim onboarded
/v50/wft-meetings/new-task/task-created"] + n_v50_overview2["Overview
/v50/overview2"] + n_v50_victim_victim_details_risk_level["Domestic abuse risk level
/v50/victim/victim-details/risk-level"] + n_v50_case_locked_self_locked["Case locked
/v50/case-locked/self-locked"] + n_v50_victim_victim_details_vps_status["VPS status
/v50/victim/victim-details/vps-status"] + n_v50_pcd_call_phone_call_1["Telephone call 1
/v50/pcd/call/phone-call-1"] + n_v50_victim_index_withtasks["Victim
/v50/victim/index-withtasks"] + n_v50_victim_index_withtasks_v4["Victim
/v50/victim/index-withtasks-v4"] + n_v50_onb_manual_task["Create a task
/v50/onb/manual-task"] + n_v50_case_locked_by_someone_else["Case locked
/v50/case-locked/by-someone-else"] + n_v50_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v50/pcd/call/was-text-message-sent"] + n_v50_overview3["Overview
/v50/overview3"] + n_v50_victim_victim_details_disability["Disability or access needs
/v50/victim/victim-details/disability"] + n_v50_task_updated["Victim onboarded
/v50/task-updated"] + n_v50_pcd_follow_up_email_logged["Follow-up email logged
/v50/pcd/follow-up/email-logged"] + n_v50_victim_index_notasks["Victim
/v50/victim/index-notasks"] + n_v50_victim_victim_details_contact_times["Preferred contact times
/v50/victim/victim-details/contact-times"] + n_v50_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v50/victim/case-contacts/isva"] + n_v50_onb_meeting_purpose["Task selection
/v50/onb/meeting-purpose"] + n_v50_victim_victim_details_wants_contact["Do they want to be contacted?
/v50/victim/victim-details/wants-contact"] + n_v50_victim_victim_details_previous_convictions["Previous convictions
/v50/victim/victim-details/previous-convictions"] + n_v50_wft_meetings_new_task_check_task["Check the task details are correct
/v50/wft-meetings/new-task/check-task"] + n_v50_wft_meetings_new_task_manual_task["Set a reminder
/v50/wft-meetings/new-task/manual-task"] + n_v50_pcd_follow_up_telephone_call["Follow-up telephone call
/v50/pcd/follow-up/telephone-call"] + n_v50_victim_case_information_charging_type["Change charging type
/v50/victim/case-information/charging-type"] + n_v50_overview6_vlo["Overview
/v50/overview6-vlo"] + n_v50_wft_meetings_tasks["Tasks
/v50/wft-meetings/tasks"] + n_v50_other_text_message_logged["Text message logged
/v50/other/text-message-logged"] + n_v50_pcd_call_phone_call_3["Telephone call 3 details
/v50/pcd/call/phone-call-3"] + n_v50_victim_victim_details_ethnicity["Victim ethnicity
/v50/victim/victim-details/ethnicity"] + n_v50_victim_task_details_another_task2["Victim record
/v50/victim/task-details/another-task2"] + n_v50_wft_meetings_log_offer_response_check["Tasks
/v50/wft-meetings/log-offer-response-check"] + n_v50_victim_task_details_decision_to_charge_order["Victim record
/v50/victim/task-details/decision-to-charge-order"] + n_v50_onb_check_task_vlo["Victim liaison officer
/v50/onb/check-task-vlo"] + n_v50_wft_meetings_tasks2["Tasks
/v50/wft-meetings/tasks2"] + n_v50_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v50/pcd/follow-up/not-contacted-logged"] + n_v50_overview6_vlm["Overview
/v50/overview6-vlm"] + n_v50_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v50/victim/case-contacts/idva"] + n_v50_victim_new_task_manual_task["Set a reminder
/v50/victim/new-task/manual-task"] + n_v50_other_call_logged["Telephone call logged
/v50/other/call-logged"] + n_v50_pcd_send_letter_details["Letter details
/v50/pcd/send/letter-details"] + n_v50_wft_meetings_log_arranged_meeting["Tasks
/v50/wft-meetings/log-arranged-meeting"] + n_v50_victim_task_details_outcome_logged2["Victim record
/v50/victim/task-details/outcome-logged2"] + n_v50_task_assignee["Task Assignee
/v50/task-assignee"] + n_v50_pcd_pre_draft_contacted_by["How did you contact the victim?
/v50/pcd/pre-draft/contacted-by"] + n_v50_victim_victim_details_translator_needed["Translator needed
/v50/victim/victim-details/translator-needed"] + n_v50_victim_victim_details_preferred_name["Victim's preferred name
/v50/victim/victim-details/preferred-name"] + n_v50_onb_pmoc["Preferred method of contact
/v50/onb/pmoc"] + n_v50_wft_meetings_new_task_task_due_date["Task due date
/v50/wft-meetings/new-task/task-due-date"] + n_v50_victim_new_task_meeting_purpose["Task selection
/v50/victim/new-task/meeting-purpose"] + n_v50_victim_victim_details_religion["Religion or belief
/v50/victim/victim-details/religion"] + n_v50_wft_meetings_new_task_task_selection["Task selection
/v50/wft-meetings/new-task/task-selection"] + n_v50_other_email_details["Log an email
/v50/other/email-details"] + n_v50_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/pre-draft/not-contacted-reason"] + n_v50_victim_case_information_area["Change area
/v50/victim/case-information/area"] + n_v50_overview6_initial["Overview
/v50/overview6-initial"] + n_v50_victim_task_details_decision_to_charge["Victim record
/v50/victim/task-details/decision-to-charge"] + n_v50_onb_check_details["Check the details before drafting the letter
/v50/onb/check-details"] + n_v50_wft_meetings_log_meeting_outcome["Tasks
/v50/wft-meetings/log-meeting-outcome"] + n_v50_wft_meetings_log_offer_task["Tasks
/v50/wft-meetings/log-offer-task"] + n_v50_victim_victim_details_correspondence_language["Preferred correspondence language
/v50/victim/victim-details/correspondence-language"] + n_v50_victims["Victims
/v50/victims"] + n_v50_victim_victim_details_full_name["Victim's full name
/v50/victim/victim-details/full-name"] + n_v50_change_task_due_date["Change task due date
/v50/change-task-due-date"] + n_v50_pcd_send_letter_logged["Letter logged
/v50/pcd/send/letter-logged"] + n_v50_victim_victim_details_date_of_birth["Victim's date of birth
/v50/victim/victim-details/date-of-birth"] + n_v50_onb_check_details_pmoc["Preferred method of contact
/v50/onb/check-details/pmoc"] + n_v50_other_contacted_by["How did you contact the victim?
/v50/other/contacted-by"] + n_v50_victim_new_task_task_selection["Task selection
/v50/victim/new-task/task-selection"] + n_v50_vlo["Victim liaison officer
/v50/vlo"] + n_v50_victim_victim_details_power_of_attorney["Power of attorney details
/v50/victim/victim-details/power-of-attorney"] + n_v50_other_other_logged["Other communication logged
/v50/other/other-logged"] + n_v50_victim_index_withtasks_v3["Victim
/v50/victim/index-withtasks-v3"] + n_v50_wft_meetings_log_offer_response["Tasks
/v50/wft-meetings/log-offer-response"] + n_v50_other_in_person_logged["In-person meeting logged
/v50/other/in-person-logged"] + n_v50_pcd_follow_up_call_logged["Follow-up telephone call logged
/v50/pcd/follow-up/call-logged"] + n_v50_pcd_draft_task_already_exists["This task already exists
/v50/pcd/draft/task-already-exists"] + n_v50_pcd_follow_up_letter_details["Follow-up letter details
/v50/pcd/follow-up/letter-details"] + n_v50_victim_victim_details_address["Victim's address
/v50/victim/victim-details/address"] + n_v50_victim_task_details_another_task1["Victim record
/v50/victim/task-details/another-task1"] + n_v50_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v50/onb/check-details/preferred-correspondence-language"] + n_v50_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v50/pcd/follow-up/not-contacted-reason"] + n_v50_victim_task_details_another_task3["Victim record
/v50/victim/task-details/another-task3"] + n_v50_onb_check_details_risk_level["Domestic abuse risk level
/v50/onb/check-details/risk-level"] + n_v50_other_in_person["Log an in-person conversation
/v50/other/in-person"] + n_v50_pcd_call_phone_call_2["Telephone call 2
/v50/pcd/call/phone-call-2"] + n_v50_pcd_send_email_details["Email details
/v50/pcd/send/email-details"] + n_v50_victim_new_task_task_already_exists["This task already exists
/v50/victim/new-task/task-already-exists"] + n_v50_victim_new_task_task_created["Victim onboarded
/v50/victim/new-task/task-created"] + n_v50_onb_check_details_vps_status["VPS status
/v50/onb/check-details/vps-status"] + n_v50_victim_new_task_task_due_date["Task due date
/v50/victim/new-task/task-due-date"] + n_v50_pcd_draft_first_hearing["First hearing
/v50/pcd/draft/first-hearing"] + n_v50_pcd_send_email_logged["Email logged
/v50/pcd/send/email-logged"] + n_v50_victim["Victim
/v50/victim"] + n_v50_victim_victim_details_service["Change service
/v50/victim/victim-details/service"] + n_v50_victim_victim_details_category["Victim category
/v50/victim/victim-details/category"] + n_v50_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v50/victim/victim-details/reasonable-adjustments"] + n_v50_other_log["Log a communication
/v50/other/log"] + n_v50_onb_onboarded["Victim onboarded
/v50/onb/onboarded"] + n_v50_onb_next_task["Next task
/v50/onb/next-task"] + n_v50_other_letter_details["Log a letter
/v50/other/letter-details"] + n_v50_sign_in["Sign in to your account
/v50/sign-in"] + n_v50_victim_victim_details_pmoc_police["Preferred method of contact for police
/v50/victim/victim-details/pmoc-police"] + n_v50_victim_index_withtasks_v2["Victim
/v50/victim/index-withtasks-v2"] + n_v50_update_manual_task["Update task status
/v50/update-manual-task"] + n_v50_onb_service_lead["Service lead
/v50/onb/service-lead"] + n_v50_pcd_draft_pcd_type["Charging decision type
/v50/pcd/draft/pcd-type"] + n_v50_victim_task_details_outcome_logged["Victim record
/v50/victim/task-details/outcome-logged"] + n_v50_onb_next_task_due_date["Task due date
/v50/onb/next-task-due-date"] + n_v50_pcd_pre_draft_check_eligibility["Check eligibility
/v50/pcd/pre-draft/check-eligibility"] + n_v50_pcd_call_next_attempt_moc["Next attempt method of contact
/v50/pcd/call/next-attempt-moc"] + n_v50_other_telephone_call["Log a telephone call
/v50/other/telephone-call"] + n_v50_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v50/victim/case-contacts/family-liaison-officer"] + n_v50_change_service["Change service
/v50/change-service"] + n_v50_wft_meetings_log_arranged_meeting_check["Tasks
/v50/wft-meetings/log-arranged-meeting-check"] + n_v50_onb_check_details_translator_needed["Translator needed
/v50/onb/check-details/translator-needed"] + n_v50_onb_check_task["Check the task details are correct
/v50/onb/check-task"] + n_v50_next_task_due_date["Task due date
/v50/next-task-due-date"] + n_v50_pcd_call_text_message_details["Text message details
/v50/pcd/call/text-message-details"] + n_v50_wft_meetings_new_task_purposet["Task selection
/v50/wft-meetings/new-task/purposet"] + n_v50_wft_meetings_log_meeting_outcome_check["Tasks
/v50/wft-meetings/log-meeting-outcome-check"] + n_v50_victim_new_task_check_task["Check the task details are correct
/v50/victim/new-task/check-task"] + n_v50_other_email_logged["Email logged
/v50/other/email-logged"] + n_v50_onb_check_details_case_type["Charging type
/v50/onb/check-details/case-type"] + n_v50_onb_check_details_preferred_name["Preferred name
/v50/onb/check-details/preferred-name"] + n_v50_pcd_follow_up_email_details["Follow-up email details
/v50/pcd/follow-up/email-details"] + n_v50_victim_victim_details_gender["Victim gender
/v50/victim/victim-details/gender"] + n_v50_overview4["Overview
/v50/overview4"] + n_v50_tasks["Tasks
/v50/tasks"] + n_v50_onb_check_details_preferred_contact_times["Preferred contact times
/v50/onb/check-details/preferred-contact-times"] + n_v50_pcd_call_follow_up_moc["Follow-up method of contact
/v50/pcd/call/follow-up-moc"] + n_v50_victim_victim_details_email_address["Victim's email address
/v50/victim/victim-details/email-address"] + n_v50_pcd_follow_up_log_follow_up["Log a follow-up
/v50/pcd/follow-up/log-follow-up"] + n_v50_other_other["Log other communication
/v50/other/other"] + n_v50_overview5["Overview
/v50/overview5"] + n_v50_pcd_follow_up_letter_logged["Follow-up letter logged
/v50/pcd/follow-up/letter-logged"] + n_v50_victim_victim_details_victim_representative["Victim representative details
/v50/victim/victim-details/victim-representative"] + n_v50_other_text_message["Log a text message
/v50/other/text-message"] + n_v50_pcd_victim[/"/v50/pcd/victim"/] + n_v50_case_locked_by_someone_else --> n_v50_pcd_victim + n_v50_case_locked_self_locked --> n_v50_pcd_victim + n_v50_change_service_answer(["/v50/change-service-answer"]) + n_v50_change_service --> n_v50_change_service_answer + n_v50_change_task_due_date_answer(["/v50/change-task-due-date-answer"]) + n_v50_change_task_due_date --> n_v50_change_task_due_date_answer + n_v50_next_task_due_date --> n_v50_change_task_due_date_answer + n_v50_onb_check_details_answer(["/v50/onb/check-details-answer"]) + n_v50_onb_check_details --> n_v50_onb_check_details_answer + n_v50_onb_check_details --> n_v50_onb_check_details_case_type + n_v50_onb_check_details --> n_v50_onb_check_details_pmoc + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_contact_times + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_correspondence_language + n_v50_onb_check_details --> n_v50_onb_check_details_preferred_name + n_v50_onb_check_details --> n_v50_onb_check_details_risk_level + n_v50_onb_check_details --> n_v50_onb_check_details_translator_needed + n_v50_onb_check_details --> n_v50_onb_check_details_vps_status + n_v50_onb_check_details --> n_v50_onb_check_task_vlo + n_v50_onb_check_details --> n_v50_onb_service_lead + n_v50_check_details_case_type_answer(["/v50/check-details/case-type-answer"]) + n_v50_onb_check_details_case_type --> n_v50_check_details_case_type_answer + n_v50_check_details_pmoc_answer(["/v50/check-details/pmoc-answer"]) + n_v50_onb_check_details_pmoc --> n_v50_check_details_pmoc_answer + n_v50_check_details_preferred_contact_times_answer(["/v50/check-details/preferred-contact-times-answer"]) + n_v50_onb_check_details_preferred_contact_times --> n_v50_check_details_preferred_contact_times_answer + n_v50_check_details_preferred_correspondence_language_answer(["/v50/check-details/preferred-correspondence-language-answer"]) + n_v50_onb_check_details_preferred_correspondence_language --> n_v50_check_details_preferred_correspondence_language_answer + n_v50_check_details_preferred_name_answer(["/v50/check-details/preferred-name-answer"]) + n_v50_onb_check_details_preferred_name --> n_v50_check_details_preferred_name_answer + n_v50_check_details_risk_level_answer(["/v50/check-details/risk-level-answer"]) + n_v50_onb_check_details_risk_level --> n_v50_check_details_risk_level_answer + n_v50_check_details_translator_needed_answer(["/v50/check-details/translator-needed-answer"]) + n_v50_onb_check_details_translator_needed --> n_v50_check_details_translator_needed_answer + n_v50_check_details_vps_status_answer(["/v50/check-details/vps-status-answer"]) + n_v50_onb_check_details_vps_status --> n_v50_check_details_vps_status_answer + n_v50_onb_check_task_answer(["/v50/onb/check-task-answer"]) + n_v50_onb_check_task --> n_v50_onb_check_task_answer + n_v50_onb_check_task --> n_v50_onb_manual_task + n_v50_onb_check_task --> n_v50_onb_meeting_purpose + n_v50_onb_check_task --> n_v50_onb_next_task + n_v50_onb_check_task --> n_v50_onb_next_task_due_date + n_v50_onb_check_task_vlo_answer(["/v50/onb/check-task-vlo-answer"]) + n_v50_onb_check_task_vlo --> n_v50_onb_check_task_vlo_answer + n_v50_onb_manual_task_answer(["/v50/onb/manual-task-answer"]) + n_v50_onb_manual_task --> n_v50_onb_manual_task_answer + n_v50_onb_meeting_purpose_answer(["/v50/onb/meeting-purpose-answer"]) + n_v50_onb_meeting_purpose --> n_v50_onb_meeting_purpose_answer + n_v50_onb_next_task_answer(["/v50/onb/next-task-answer"]) + n_v50_onb_next_task --> n_v50_onb_next_task_answer + n_v50_onb_next_task_due_date_answer(["/v50/onb/next-task-due-date-answer"]) + n_v50_onb_next_task_due_date --> n_v50_onb_next_task_due_date_answer + n_v50_onb_onboarded --> n_v50_victims + n_v50_onb_pmoc_answer(["/v50/onb/pmoc-answer"]) + n_v50_onb_pmoc --> n_v50_onb_pmoc_answer + n_v50_onb_service_lead_answer(["/v50/onb/service-lead-answer"]) + n_v50_onb_service_lead --> n_v50_onb_service_lead_answer + n_v50_other_call_logged --> n_v50_victim + n_v50_other_contacted_by_answer(["/v50/other/contacted-by-answer"]) + n_v50_other_contacted_by --> n_v50_other_contacted_by_answer + n_v50_other_email_details_answer(["/v50/other/email-details-answer"]) + n_v50_other_email_details --> n_v50_other_email_details_answer + n_v50_other_email_logged --> n_v50_victim + n_v50_other_in_person_answer(["/v50/other/in-person-answer"]) + n_v50_other_in_person --> n_v50_other_in_person_answer + n_v50_other_in_person_logged --> n_v50_victim + n_v50_other_letter_details_answer(["/v50/other/letter-details-answer"]) + n_v50_other_letter_details --> n_v50_other_letter_details_answer + n_v50_other_letter_logged --> n_v50_victim + n_v50_other_other_details_answer(["/v50/other/other-details-answer"]) + n_v50_other_other --> n_v50_other_other_details_answer + n_v50_other_other_logged --> n_v50_victim + n_v50_other_telephone_call_answer(["/v50/other/telephone-call-answer"]) + n_v50_other_telephone_call --> n_v50_other_telephone_call_answer + n_v50_other_text_message_answer(["/v50/other/text-message-answer"]) + n_v50_other_text_message --> n_v50_other_text_message_answer + n_v50_other_text_message_logged --> n_v50_victim + n_v50_onb_tasks[/"/v50/onb/tasks"/] + n_v50_overview --> n_v50_onb_tasks + n_v50_pcd_call_follow_up_moc_answer(["/v50/pcd/call/follow-up-moc-answer"]) + n_v50_pcd_call_follow_up_moc --> n_v50_pcd_call_follow_up_moc_answer + n_v50_pcd_call_next_attempt_moc_answer(["/v50/pcd/call/next-attempt-moc-answer"]) + n_v50_pcd_call_next_attempt_moc --> n_v50_pcd_call_next_attempt_moc_answer + n_v50_pcd_call_phone_call_1_answer(["/v50/pcd/call/phone-call-1-answer"]) + n_v50_pcd_call_phone_call_1 --> n_v50_pcd_call_phone_call_1_answer + n_v50_pcd_call_phone_call_2_answer(["/v50/pcd/call/phone-call-2-answer"]) + n_v50_pcd_call_phone_call_2 --> n_v50_pcd_call_phone_call_2_answer + n_v50_pcd_call_phone_call_3_answer(["/v50/pcd/call/phone-call-3-answer"]) + n_v50_pcd_call_phone_call_3 --> n_v50_pcd_call_phone_call_3_answer + n_v50_pcd_call_text_message_details_answer(["/v50/pcd/call/text-message-details-answer"]) + n_v50_pcd_call_text_message_details --> n_v50_pcd_call_text_message_details_answer + n_v50_pcd_call_was_text_message_sent_answer(["/v50/pcd/call/was-text-message-sent-answer"]) + n_v50_pcd_call_was_text_message_sent --> n_v50_pcd_call_was_text_message_sent_answer + n_v50_pcd_draft_first_hearing_answer(["/v50/pcd/draft/first-hearing-answer"]) + n_v50_pcd_draft_first_hearing --> n_v50_pcd_draft_first_hearing_answer + n_v50_pcd_draft_pcd_type_answer(["/v50/pcd/draft/pcd-type-answer"]) + n_v50_pcd_draft_pcd_type --> n_v50_pcd_draft_pcd_type_answer + n_v50_pcd_draft_task_already_exists_answer(["/v50/pcd/draft/task-already-exists-answer"]) + n_v50_pcd_draft_task_already_exists --> n_v50_pcd_draft_task_already_exists_answer + n_v50_pcd_draft_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_pcd_follow_up_call_logged --> n_v50_victim + n_v50_pcd_follow_up_email_details_answer(["/v50/pcd/follow-up/email-details-answer"]) + n_v50_pcd_follow_up_email_details --> n_v50_pcd_follow_up_email_details_answer + n_v50_pcd_follow_up_email_logged --> n_v50_victim + n_v50_pcd_follow_up_letter_details_answer(["/v50/pcd/follow-up/letter-details-answer"]) + n_v50_pcd_follow_up_letter_details --> n_v50_pcd_follow_up_letter_details_answer + n_v50_pcd_follow_up_letter_logged --> n_v50_victim + n_v50_pcd_follow_up_log_follow_up_answer(["/v50/pcd/follow-up/log-follow-up-answer"]) + n_v50_pcd_follow_up_log_follow_up --> n_v50_pcd_follow_up_log_follow_up_answer + n_v50_pcd_follow_up_not_contacted_logged --> n_v50_victim + n_v50_pcd_follow_up_not_contacted_reason_answer(["/v50/pcd/follow-up/not-contacted-reason-answer"]) + n_v50_pcd_follow_up_not_contacted_reason --> n_v50_pcd_follow_up_not_contacted_reason_answer + n_v50_pcd_follow_up_telephone_call_answer(["/v50/pcd/follow-up/telephone-call-answer"]) + n_v50_pcd_follow_up_telephone_call --> n_v50_pcd_follow_up_telephone_call_answer + n_v50_pcd_pre_draft_check_eligibility_answer(["/v50/pcd/pre-draft/check-eligibility-answer"]) + n_v50_pcd_pre_draft_check_eligibility --> n_v50_pcd_pre_draft_check_eligibility_answer + n_v50_pcd_pre_draft_contacted_by_answer(["/v50/pcd/pre-draft/contacted-by-answer"]) + n_v50_pcd_pre_draft_contacted_by --> n_v50_pcd_pre_draft_contacted_by_answer + n_v50_pcd_pre_draft_not_contacted_reason_answer(["/v50/pcd/pre-draft/not-contacted-reason-answer"]) + n_v50_pcd_pre_draft_not_contacted_reason --> n_v50_pcd_pre_draft_not_contacted_reason_answer + n_v50_pcd_send_email_details_answer(["/v50/pcd/send/email-details-answer"]) + n_v50_pcd_send_email_details --> n_v50_pcd_send_email_details_answer + n_v50_pcd_send_email_logged --> n_v50_victim + n_v50_pcd_send_letter_details_answer(["/v50/pcd/send/letter-details-answer"]) + n_v50_pcd_send_letter_details --> n_v50_pcd_send_letter_details_answer + n_v50_pcd_send_letter_logged --> n_v50_victim + n_v50_sign_in_answer(["/v50/sign-in-answer"]) + n_v50_sign_in --> n_v50_sign_in_answer + n_v50_task_assignee_answer(["/v50/task-assignee-answer"]) + n_v50_task_assignee --> n_v50_task_assignee_answer + n_v50_task_updated --> n_v50_tasks + n_v50_tasks --> n_v50_next_task_due_date + n_v50_onb_tasks_clear_filters(["/v50/onb/tasks/clear-filters"]) + n_v50_tasks --> n_v50_onb_tasks_clear_filters + n_v50_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_tasks --> n_v50_pcd_send_email_details + n_v50_tasks --> n_v50_pcd_send_letter_details + n_v50_tasks --> n_v50_task_assignee + n_v50_tasks --> n_v50_update_manual_task + n_v50_vcl_call_follow_up_moc[/"/v50/vcl/call/follow-up-moc"/] + n_v50_tasks --> n_v50_vcl_call_follow_up_moc + n_v50_vcl_call_next_attempt_moc[/"/v50/vcl/call/next-attempt-moc"/] + n_v50_tasks --> n_v50_vcl_call_next_attempt_moc + n_v50_vcl_call_was_text_message_sent[/"/v50/vcl/call/was-text-message-sent"/] + n_v50_tasks --> n_v50_vcl_call_was_text_message_sent + n_v50_vcl_pre_draft_contacted_by[/"/v50/vcl/pre-draft/contacted-by"/] + n_v50_tasks --> n_v50_vcl_pre_draft_contacted_by + n_v50_vcl_send_email_details[/"/v50/vcl/send/email-details"/] + n_v50_tasks --> n_v50_vcl_send_email_details + n_v50_vcl_send_letter_details[/"/v50/vcl/send/letter-details"/] + n_v50_tasks --> n_v50_vcl_send_letter_details + n_v50_tasks --> n_v50_victim + n_v50_update_manual_task_answer(["/v50/update-manual-task-answer"]) + n_v50_update_manual_task --> n_v50_update_manual_task_answer + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim + n_v50_victim_case_contacts_family_liaison_officer_answer(["/v50/victim/case-contacts/family-liaison-officer-answer"]) + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_answer + n_v50_victim_case_contacts_family_liaison_officer_delete[/"/v50/victim/case-contacts/family-liaison-officer-delete"/] + n_v50_victim_case_contacts_family_liaison_officer --> n_v50_victim_case_contacts_family_liaison_officer_delete + n_v50_victim_case_contacts_idva --> n_v50_victim + n_v50_victim_case_contacts_idva_answer(["/v50/victim/case-contacts/idva-answer"]) + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_answer + n_v50_victim_case_contacts_idva_delete[/"/v50/victim/case-contacts/idva-delete"/] + n_v50_victim_case_contacts_idva --> n_v50_victim_case_contacts_idva_delete + n_v50_victim_case_contacts_isva --> n_v50_victim + n_v50_victim_case_contacts_isva_answer(["/v50/victim/case-contacts/isva-answer"]) + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_answer + n_v50_victim_case_contacts_isva_delete[/"/v50/victim/case-contacts/isva-delete"/] + n_v50_victim_case_contacts_isva --> n_v50_victim_case_contacts_isva_delete + n_v50_victim_case_information_area_answer(["/v50/victim/case-information/area-answer"]) + n_v50_victim_case_information_area --> n_v50_victim_case_information_area_answer + n_v50_victim_case_information_charging_type_answer(["/v50/victim/case-information/charging-type-answer"]) + n_v50_victim_case_information_charging_type --> n_v50_victim_case_information_charging_type_answer + n_v50_victim_index_notasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v3 --> n_v50_victim_new_task_task_selection + n_v50_victim_index_withtasks_v4 --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_check_task_answer(["/v50/victim/new-task/check-task-answer"]) + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_check_task_answer + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_meeting_purpose + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_victim_new_task_manual_task_answer(["/v50/victim/new-task/manual-task-answer"]) + n_v50_victim_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_victim_new_task_meeting_purpose_answer(["/v50/victim/new-task/meeting-purpose-answer"]) + n_v50_victim_new_task_meeting_purpose --> n_v50_victim_new_task_meeting_purpose_answer + n_v50_victim_new_task_task_already_exists_answer(["/v50/victim/new-task/task-already-exists-answer"]) + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_already_exists_answer + n_v50_victim_new_task_task_already_exists --> n_v50_victim_new_task_task_due_date + n_v50_victim_new_task_task_created --> n_v50_victim + n_v50_victim_new_task_task_due_date_answer(["/v50/victim/new-task/task-due-date-answer"]) + n_v50_victim_new_task_task_due_date --> n_v50_victim_new_task_task_due_date_answer + n_v50_victim_new_task_next_task_answer(["/v50/victim/new-task/next-task-answer"]) + n_v50_victim_new_task_task_selection --> n_v50_victim_new_task_next_task_answer + n_v50_victim_victim_details_address_answer(["/v50/victim/victim-details/address-answer"]) + n_v50_victim_victim_details_address --> n_v50_victim_victim_details_address_answer + n_v50_victim_victim_details_category_answer(["/v50/victim/victim-details/category-answer"]) + n_v50_victim_victim_details_category --> n_v50_victim_victim_details_category_answer + n_v50_victim_victim_details_contact_times_answer(["/v50/victim/victim-details/contact-times-answer"]) + n_v50_victim_victim_details_contact_times --> n_v50_victim_victim_details_contact_times_answer + n_v50_victim_victim_details_correspondence_language_answer(["/v50/victim/victim-details/correspondence-language-answer"]) + n_v50_victim_victim_details_correspondence_language --> n_v50_victim_victim_details_correspondence_language_answer + n_v50_victim_victim_details_date_of_birth_answer(["/v50/victim/victim-details/date-of-birth-answer"]) + n_v50_victim_victim_details_date_of_birth --> n_v50_victim_victim_details_date_of_birth_answer + n_v50_victim_victim_details_disability_answer(["/v50/victim/victim-details/disability-answer"]) + n_v50_victim_victim_details_disability --> n_v50_victim_victim_details_disability_answer + n_v50_victim_victim_details_email_address_answer(["/v50/victim/victim-details/email-address-answer"]) + n_v50_victim_victim_details_email_address --> n_v50_victim_victim_details_email_address_answer + n_v50_victim_victim_details_ethnicity_answer(["/v50/victim/victim-details/ethnicity-answer"]) + n_v50_victim_victim_details_ethnicity --> n_v50_victim_victim_details_ethnicity_answer + n_v50_victim_victim_details_full_name_answer(["/v50/victim/victim-details/full-name-answer"]) + n_v50_victim_victim_details_full_name --> n_v50_victim_victim_details_full_name_answer + n_v50_victim_victim_details_gender_answer(["/v50/victim/victim-details/gender-answer"]) + n_v50_victim_victim_details_gender --> n_v50_victim_victim_details_gender_answer + n_v50_victim_victim_details_pmoc_answer(["/v50/victim/victim-details/pmoc-answer"]) + n_v50_victim_victim_details_pmoc --> n_v50_victim_victim_details_pmoc_answer + n_v50_victim_victim_details_pmoc_police_answer(["/v50/victim/victim-details/pmoc-police-answer"]) + n_v50_victim_victim_details_pmoc_police --> n_v50_victim_victim_details_pmoc_police_answer + n_v50_victim_victim_details_power_of_attorney_answer(["/v50/victim/victim-details/power-of-attorney-answer"]) + n_v50_victim_victim_details_power_of_attorney --> n_v50_victim_victim_details_power_of_attorney_answer + n_v50_victim_victim_details_preferred_name_answer(["/v50/victim/victim-details/preferred-name-answer"]) + n_v50_victim_victim_details_preferred_name --> n_v50_victim_victim_details_preferred_name_answer + n_v50_victim_victim_details_previous_convictions_answer(["/v50/victim/victim-details/previous-convictions-answer"]) + n_v50_victim_victim_details_previous_convictions --> n_v50_victim_victim_details_previous_convictions_answer + n_v50_victim_victim_details_reasonable_adjustments_answer(["/v50/victim/victim-details/reasonable-adjustments-answer"]) + n_v50_victim_victim_details_reasonable_adjustments --> n_v50_victim_victim_details_reasonable_adjustments_answer + n_v50_victim_victim_details_religion_answer(["/v50/victim/victim-details/religion-answer"]) + n_v50_victim_victim_details_religion --> n_v50_victim_victim_details_religion_answer + n_v50_victim_victim_details_risk_level_answer(["/v50/victim/victim-details/risk-level-answer"]) + n_v50_victim_victim_details_risk_level --> n_v50_victim_victim_details_risk_level_answer + n_v50_victim_victim_details_service_answer(["/v50/victim/victim-details/service-answer"]) + n_v50_victim_victim_details_service --> n_v50_victim_victim_details_service_answer + n_v50_victim_victim_details_telephone_number_answer(["/v50/victim/victim-details/telephone-number-answer"]) + n_v50_victim_victim_details_telephone_number --> n_v50_victim_victim_details_telephone_number_answer + n_v50_victim_victim_details_translator_needed_answer(["/v50/victim/victim-details/translator-needed-answer"]) + n_v50_victim_victim_details_translator_needed --> n_v50_victim_victim_details_translator_needed_answer + n_v50_victim_victim_details_victim_representative_answer(["/v50/victim/victim-details/victim-representative-answer"]) + n_v50_victim_victim_details_victim_representative --> n_v50_victim_victim_details_victim_representative_answer + n_v50_victim_victim_details_vps_status_answer(["/v50/victim/victim-details/vps-status-answer"]) + n_v50_victim_victim_details_vps_status --> n_v50_victim_victim_details_vps_status_answer + n_v50_victim_victim_details_wants_contact_answer(["/v50/victim/victim-details/wants-contact-answer"]) + n_v50_victim_victim_details_wants_contact --> n_v50_victim_victim_details_wants_contact_answer + n_v50_victims --> n_v50_change_service + n_v50_victims --> n_v50_onb_service_lead + n_v50_victims --> n_v50_victim + n_v50_victims --> n_v50_vlo + n_v50_onb_vlo_answer(["/v50/onb/vlo-answer"]) + n_v50_vlo --> n_v50_onb_vlo_answer + n_v50_wft_meetings_log_arranged_meeting --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_arranged_meeting_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_meeting_outcome_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_response_check --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_log_offer_task --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_manual_task + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_due_date + n_v50_wft_meetings_new_task_check_task --> n_v50_victim_new_task_task_selection + n_v50_wft_meetings_new_task_manual_task --> n_v50_victim_new_task_manual_task_answer + n_v50_wft_meetings_new_task_purposet_answer(["/v50/wft-meetings/new-task/purposet-answer"]) + n_v50_wft_meetings_new_task_purposet --> n_v50_wft_meetings_new_task_purposet_answer + n_v50_wft_meetings_new_task_task_due_date_answer(["/v50/wft-meetings/new-task/task-due-date-answer"]) + n_v50_wft_meetings_new_task_task_due_date --> n_v50_wft_meetings_new_task_task_due_date_answer + n_v50_wft_meetings_new_task_next_task_answer(["/v50/wft-meetings/new-task/next-task-answer"]) + n_v50_wft_meetings_new_task_task_selection --> n_v50_wft_meetings_new_task_next_task_answer + n_v50_wft_meetings_tasks --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_tasks --> n_v50_pcd_call_follow_up_moc + n_v50_wft_meetings_tasks --> n_v50_pcd_call_next_attempt_moc + n_v50_wft_meetings_tasks --> n_v50_pcd_call_was_text_message_sent + n_v50_pcd_pre_draft_check_details[/"/v50/pcd/pre-draft/check-details"/] + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_check_details + n_v50_wft_meetings_tasks --> n_v50_pcd_pre_draft_contacted_by + n_v50_wft_meetings_tasks --> n_v50_pcd_send_email_details + n_v50_wft_meetings_tasks --> n_v50_pcd_send_letter_details + n_v50_wft_meetings_tasks --> n_v50_task_assignee + n_v50_wft_meetings_tasks --> n_v50_victim + n_v50_wft_meetings_tasks2 --> n_v50_change_task_due_date + n_v50_wft_meetings_tasks2 --> n_v50_onb_tasks_clear_filters + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_follow_up_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_next_attempt_moc + n_v50_wft_meetings_tasks2 --> n_v50_pcd_call_was_text_message_sent + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_check_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_pre_draft_contacted_by + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_email_details + n_v50_wft_meetings_tasks2 --> n_v50_pcd_send_letter_details + n_v50_wft_meetings_tasks2 --> n_v50_task_assignee + n_v50_wft_meetings_tasks2 --> n_v50_victim + n_v50_wft_meetings_victims --> n_v50_onb_service_lead + n_v50_wft_meetings_victims --> n_v50_victim + n_v50_wft_meetings_victims --> n_v50_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v50_onb_meeting_purpose_answer,n_v50_other_contacted_by_answer,n_v50_onb_pmoc_answer,n_v50_update_manual_task_answer,n_v50_victim_case_information_charging_type_answer,n_v50_check_details_pmoc_answer,n_v50_pcd_draft_first_hearing_answer,n_v50_pcd_send_letter_details_answer,n_v50_pcd_draft_task_already_exists_answer,n_v50_pcd_call_phone_call_1_answer,n_v50_wft_meetings_new_task_next_task_answer,n_v50_victim_victim_details_contact_times_answer,n_v50_change_task_due_date_answer,n_v50_other_telephone_call_answer,n_v50_victim_victim_details_address_answer,n_v50_pcd_call_was_text_message_sent_answer,n_v50_victim_case_information_area_answer,n_v50_pcd_follow_up_not_contacted_reason_answer,n_v50_onb_vlo_answer,n_v50_victim_victim_details_disability_answer,n_v50_pcd_pre_draft_not_contacted_reason_answer,n_v50_onb_next_task_answer,n_v50_check_details_preferred_name_answer,n_v50_victim_victim_details_pmoc_answer,n_v50_onb_check_task_answer,n_v50_victim_victim_details_telephone_number_answer,n_v50_pcd_call_phone_call_2_answer,n_v50_onb_tasks_clear_filters,n_v50_victim_victim_details_wants_contact_answer,n_v50_onb_next_task_due_date_answer,n_v50_other_letter_details_answer,n_v50_victim_victim_details_religion_answer,n_v50_change_service_answer,n_v50_victim_victim_details_reasonable_adjustments_answer,n_v50_victim_new_task_task_due_date_answer,n_v50_victim_new_task_next_task_answer,n_v50_victim_victim_details_translator_needed_answer,n_v50_victim_new_task_meeting_purpose_answer,n_v50_pcd_pre_draft_check_eligibility_answer,n_v50_victim_case_contacts_idva_answer,n_v50_other_in_person_answer,n_v50_victim_victim_details_preferred_name_answer,n_v50_onb_check_details_answer,n_v50_wft_meetings_new_task_task_due_date_answer,n_v50_victim_victim_details_date_of_birth_answer,n_v50_victim_victim_details_previous_convictions_answer,n_v50_pcd_follow_up_email_details_answer,n_v50_pcd_pre_draft_contacted_by_answer,n_v50_victim_case_contacts_family_liaison_officer_answer,n_v50_victim_new_task_check_task_answer,n_v50_check_details_translator_needed_answer,n_v50_check_details_vps_status_answer,n_v50_pcd_follow_up_telephone_call_answer,n_v50_victim_victim_details_full_name_answer,n_v50_victim_victim_details_ethnicity_answer,n_v50_pcd_call_follow_up_moc_answer,n_v50_onb_check_task_vlo_answer,n_v50_other_email_details_answer,n_v50_pcd_call_phone_call_3_answer,n_v50_victim_victim_details_gender_answer,n_v50_pcd_call_text_message_details_answer,n_v50_victim_victim_details_vps_status_answer,n_v50_check_details_risk_level_answer,n_v50_other_text_message_answer,n_v50_sign_in_answer,n_v50_victim_victim_details_victim_representative_answer,n_v50_pcd_call_next_attempt_moc_answer,n_v50_check_details_preferred_correspondence_language_answer,n_v50_victim_victim_details_category_answer,n_v50_onb_manual_task_answer,n_v50_victim_victim_details_power_of_attorney_answer,n_v50_victim_case_contacts_isva_answer,n_v50_check_details_case_type_answer,n_v50_pcd_follow_up_letter_details_answer,n_v50_victim_victim_details_pmoc_police_answer,n_v50_pcd_send_email_details_answer,n_v50_victim_victim_details_email_address_answer,n_v50_wft_meetings_new_task_purposet_answer,n_v50_victim_victim_details_correspondence_language_answer,n_v50_onb_service_lead_answer,n_v50_victim_new_task_task_already_exists_answer,n_v50_victim_victim_details_risk_level_answer,n_v50_pcd_draft_pcd_type_answer,n_v50_task_assignee_answer,n_v50_check_details_preferred_contact_times_answer,n_v50_victim_victim_details_service_answer,n_v50_victim_new_task_manual_task_answer,n_v50_other_other_details_answer,n_v50_pcd_follow_up_log_follow_up_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v50_vcl_send_letter_details,n_v50_pcd_pre_draft_check_details,n_v50_vcl_pre_draft_contacted_by,n_v50_vcl_call_was_text_message_sent,n_v50_onb_tasks,n_v50_victim_case_contacts_idva_delete,n_v50_pcd_victim,n_v50_vcl_call_next_attempt_moc,n_v50_vcl_call_follow_up_moc,n_v50_victim_case_contacts_family_liaison_officer_delete,n_v50_vcl_send_email_details,n_v50_victim_case_contacts_isva_delete external; +``` + +## V51 — full flow (all routes) + +```mermaid +flowchart LR + n_v51_pcd_send_letter_details["Letter details
/v51/pcd/send/letter-details"] + n_v51_onb_check_details_preferred_name["Preferred name
/v51/onb/check-details/preferred-name"] + n_v51_next_task_due_date["Task due date
/v51/next-task-due-date"] + n_v51_victim_victim_details_date_of_birth["Victim's date of birth
/v51/victim/victim-details/date-of-birth"] + n_v51_victim_victim_details_full_name["Victim's full name
/v51/victim/victim-details/full-name"] + n_v51_overview5["Overview
/v51/overview5"] + n_v51_pcd_call_text_message_details["Text message details
/v51/pcd/call/text-message-details"] + n_v51_vlo["Victim liaison officer
/v51/vlo"] + n_v51_victim_victim_details_address["Victim's address
/v51/victim/victim-details/address"] + n_v51_other_text_message_logged["Text message logged
/v51/other/text-message-logged"] + n_v51_victim_victim_details_power_of_attorney["Power of attorney details
/v51/victim/victim-details/power-of-attorney"] + n_v51_victim_new_task_task_created["Victim onboarded
/v51/victim/new-task/task-created"] + n_v51_onb_check_details_translator_needed["Translator needed
/v51/onb/check-details/translator-needed"] + n_v51_victim_victim_details_disability["Disability or access needs
/v51/victim/victim-details/disability"] + n_v51_pcd_call_phone_call_2["Telephone call 2
/v51/pcd/call/phone-call-2"] + n_v51_pcd_send_letter_logged["Letter logged
/v51/pcd/send/letter-logged"] + n_v51_victim_case_information_area["Change area
/v51/victim/case-information/area"] + n_v51_other_log["Log a communication
/v51/other/log"] + n_v51_pcd_draft_pcd_type["Charging decision type
/v51/pcd/draft/pcd-type"] + n_v51_victim_task_details_another_task2["Victim record
/v51/victim/task-details/another-task2"] + n_v51_other_contacted_by["How did you contact the victim?
/v51/other/contacted-by"] + n_v51_pcd_draft_first_hearing["First hearing
/v51/pcd/draft/first-hearing"] + n_v51_pcd_call_next_attempt_moc["Next attempt method of contact
/v51/pcd/call/next-attempt-moc"] + n_v51_pcd_call_follow_up_moc["Follow-up method of contact
/v51/pcd/call/follow-up-moc"] + n_v51_victim_victim_details_reasonable_adjustments["Reasonable adjustments
/v51/victim/victim-details/reasonable-adjustments"] + n_v51_wft_meetings_log_offer_response_check["Tasks
/v51/wft-meetings/log-offer-response-check"] + n_v51_vcl_follow_up_email_logged["Follow-up email logged
/v51/vcl/follow-up/email-logged"] + n_v51_victim_victim_details_category["Victim category
/v51/victim/victim-details/category"] + n_v51_onb_check_task_vlo["Victim liaison officer
/v51/onb/check-task-vlo"] + n_v51_task_updated["Victim onboarded
/v51/task-updated"] + n_v51_other_telephone_call["Log a telephone call
/v51/other/telephone-call"] + n_v51_pcd_call_phone_call_3["Telephone call 3 details
/v51/pcd/call/phone-call-3"] + n_v51_pcd_follow_up_letter_details["Follow-up letter details
/v51/pcd/follow-up/letter-details"] + n_v51_onb_check_details_vps_status["VPS status
/v51/onb/check-details/vps-status"] + n_v51_onb_check_task["Check the task details are correct
/v51/onb/check-task"] + n_v51_other_other_logged["Other communication logged
/v51/other/other-logged"] + n_v51_overview6_vlm["Overview
/v51/overview6-vlm"] + n_v51_update_manual_task["Update task status
/v51/update-manual-task"] + n_v51_other_other["Log other communication
/v51/other/other"] + n_v51_onb_manual_task["Create a task
/v51/onb/manual-task"] + n_v51_vcl_follow_up_email_details["Follow-up email details
/v51/vcl/follow-up/email-details"] + n_v51_overview4["Overview
/v51/overview4"] + n_v51_wft_meetings_tasks2["Tasks
/v51/wft-meetings/tasks2"] + n_v51_pcd_follow_up_letter_logged["Follow-up letter logged
/v51/pcd/follow-up/letter-logged"] + n_v51_vcl_draft_vcl_type["Communication type
/v51/vcl/draft/vcl-type"] + n_v51_victim_victim_details_preferred_name["Victim's preferred name
/v51/victim/victim-details/preferred-name"] + n_v51_pcd_follow_up_log_follow_up["Log a follow-up
/v51/pcd/follow-up/log-follow-up"] + n_v51_victims["Victims
/v51/victims"] + n_v51_wft_meetings_new_task_check_task["Check the task details are correct
/v51/wft-meetings/new-task/check-task"] + n_v51_vcl_call_next_attempt_moc["Next attempt method of contact
/v51/vcl/call/next-attempt-moc"] + n_v51_onb_next_task_due_date["Task due date
/v51/onb/next-task-due-date"] + n_v51_onb_check_details_case_type["Charging type
/v51/onb/check-details/case-type"] + n_v51_wft_meetings_log_arranged_meeting["Tasks
/v51/wft-meetings/log-arranged-meeting"] + n_v51_other_text_message["Log a text message
/v51/other/text-message"] + n_v51_victim_task_details_another_task1["Victim record
/v51/victim/task-details/another-task1"] + n_v51_onb_check_details_risk_level["Domestic abuse risk level
/v51/onb/check-details/risk-level"] + n_v51_wft_meetings_new_task_task_selection["Task selection
/v51/wft-meetings/new-task/task-selection"] + n_v51_change_task_due_date["Change task due date
/v51/change-task-due-date"] + n_v51_victim_case_contacts_family_liaison_officer["Family Liaison Officer
/v51/victim/case-contacts/family-liaison-officer"] + n_v51_victim_index_notasks["Victim
/v51/victim/index-notasks"] + n_v51_pcd_follow_up_not_contacted_logged["Decision not to contact logged
/v51/pcd/follow-up/not-contacted-logged"] + n_v51_pcd_pre_draft_check_eligibility["Check eligibility
/v51/pcd/pre-draft/check-eligibility"] + n_v51_victim["Victim
/v51/victim"] + n_v51_victim_victim_details_translator_needed["Translator needed
/v51/victim/victim-details/translator-needed"] + n_v51_overview2["Overview
/v51/overview2"] + n_v51_other_in_person_logged["In-person meeting logged
/v51/other/in-person-logged"] + n_v51_victim_new_task_check_task["Check the task details are correct
/v51/victim/new-task/check-task"] + n_v51_victim_new_task_meeting_purpose["Task selection
/v51/victim/new-task/meeting-purpose"] + n_v51_victim_victim_details_pmoc["Preferred method of contact
/v51/victim/victim-details/pmoc"] + n_v51_victim_victim_details_gender["Victim gender
/v51/victim/victim-details/gender"] + n_v51_wft_meetings_log_offer_response["Tasks
/v51/wft-meetings/log-offer-response"] + n_v51_vcl_draft_stopped_charge["Stopped charge reason
/v51/vcl/draft/stopped-charge"] + n_v51_other_email_details["Log an email
/v51/other/email-details"] + n_v51_wft_meetings_new_task_purposet["Task selection
/v51/wft-meetings/new-task/purposet"] + n_v51_onb_meeting_purpose["Task selection
/v51/onb/meeting-purpose"] + n_v51_other_in_person["Log an in-person conversation
/v51/other/in-person"] + n_v51_wft_meetings_log_meeting_outcome["Tasks
/v51/wft-meetings/log-meeting-outcome"] + n_v51_victim_case_contacts_isva["Independent Sexual Violence Advisor (ISVA)
/v51/victim/case-contacts/isva"] + n_v51_wft_meetings_log_meeting_outcome_check["Tasks
/v51/wft-meetings/log-meeting-outcome-check"] + n_v51_sign_in["Sign in to your account
/v51/sign-in"] + n_v51_victim_victim_details_religion["Religion or belief
/v51/victim/victim-details/religion"] + n_v51_case_locked_self_locked["Case locked
/v51/case-locked/self-locked"] + n_v51_onb_check_details["Check the details before drafting the letter
/v51/onb/check-details"] + n_v51_other_letter_details["Log a letter
/v51/other/letter-details"] + n_v51_pcd_call_was_text_message_sent["Was a text message sent to the victim?
/v51/pcd/call/was-text-message-sent"] + n_v51_victim_victim_details_service["Change service
/v51/victim/victim-details/service"] + n_v51_onb_next_task["Next task
/v51/onb/next-task"] + n_v51_victim_victim_details_pmoc_police["Preferred method of contact for police
/v51/victim/victim-details/pmoc-police"] + n_v51_victim_new_task_task_already_exists["This task already exists
/v51/victim/new-task/task-already-exists"] + n_v51_wft_meetings_victims["Victims
/v51/wft-meetings/victims"] + n_v51_victim_victim_details_risk_level["Domestic abuse risk level
/v51/victim/victim-details/risk-level"] + n_v51_vcl_send_email_details["Email details
/v51/vcl/send/email-details"] + n_v51_other_call_logged["Telephone call logged
/v51/other/call-logged"] + n_v51_victim_index_withtasks_v2["Victim
/v51/victim/index-withtasks-v2"] + n_v51_victim_index_withtasks_v3["Victim
/v51/victim/index-withtasks-v3"] + n_v51_pcd_pre_draft_contacted_by["How did you contact the victim?
/v51/pcd/pre-draft/contacted-by"] + n_v51_overview6_initial["Overview
/v51/overview6-initial"] + n_v51_task_assignee["Task Assignee
/v51/task-assignee"] + n_v51_onb_check_details_preferred_contact_times["Preferred contact times
/v51/onb/check-details/preferred-contact-times"] + n_v51_onb_pmoc["Preferred method of contact
/v51/onb/pmoc"] + n_v51_vcl_call_phone_call["Telephone call
/v51/vcl/call/phone-call"] + n_v51_victim_victim_details_correspondence_language["Preferred correspondence language
/v51/victim/victim-details/correspondence-language"] + n_v51_victim_victim_details_email_address["Victim's email address
/v51/victim/victim-details/email-address"] + n_v51_victim_victim_details_wants_contact["Do they want to be contacted?
/v51/victim/victim-details/wants-contact"] + n_v51_victim_victim_details_vps_status["VPS status
/v51/victim/victim-details/vps-status"] + n_v51_pcd_follow_up_email_details["Follow-up email details
/v51/pcd/follow-up/email-details"] + n_v51_pcd_send_email_details["Email details
/v51/pcd/send/email-details"] + n_v51_victim_task_details_decision_to_charge["Victim record
/v51/victim/task-details/decision-to-charge"] + n_v51_victim_task_details_outcome_logged["Victim record
/v51/victim/task-details/outcome-logged"] + n_v51_victim_index_withtasks_v4["Victim
/v51/victim/index-withtasks-v4"] + n_v51_onb_onboarded["Victim onboarded
/v51/onb/onboarded"] + n_v51_victim_victim_details_contact_times["Preferred contact times
/v51/victim/victim-details/contact-times"] + n_v51_wft_meetings_log_arranged_meeting_check["Tasks
/v51/wft-meetings/log-arranged-meeting-check"] + n_v51_pcd_follow_up_email_logged["Follow-up email logged
/v51/pcd/follow-up/email-logged"] + n_v51_vcl_call_text_message_details["Text message details
/v51/vcl/call/text-message-details"] + n_v51_onb_service_lead["Service lead
/v51/onb/service-lead"] + n_v51_victim_new_task_task_selection["Task selection
/v51/victim/new-task/task-selection"] + n_v51_vcl_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/vcl/pre-draft/not-contacted-reason"] + n_v51_pcd_call_phone_call_1["Telephone call 1
/v51/pcd/call/phone-call-1"] + n_v51_wft_meetings_new_task_task_due_date["Task due date
/v51/wft-meetings/new-task/task-due-date"] + n_v51_vcl_send_letter_details["Letter details
/v51/vcl/send/letter-details"] + n_v51_other_letter_logged["Letter logged
/v51/other/letter-logged"] + n_v51_victim_case_information_charging_type["Change charging type
/v51/victim/case-information/charging-type"] + n_v51_vcl_call_follow_up_moc["Follow-up method of contact
/v51/vcl/call/follow-up-moc"] + n_v51_vcl_follow_up_letter_details["Follow-up letter details
/v51/vcl/follow-up/letter-details"] + n_v51_other_email_logged["Email logged
/v51/other/email-logged"] + n_v51_wft_meetings_new_task_task_created["Victim onboarded
/v51/wft-meetings/new-task/task-created"] + n_v51_tasks["Tasks
/v51/tasks"] + n_v51_pcd_draft_task_already_exists["This task already exists
/v51/pcd/draft/task-already-exists"] + n_v51_victim_victim_details_ethnicity["Victim ethnicity
/v51/victim/victim-details/ethnicity"] + n_v51_case_locked_by_someone_else["Case locked
/v51/case-locked/by-someone-else"] + n_v51_pcd_follow_up_telephone_call["Follow-up telephone call
/v51/pcd/follow-up/telephone-call"] + n_v51_vcl_follow_up_letter_logged["Follow-up letter logged
/v51/vcl/follow-up/letter-logged"] + n_v51_onb_check_details_pmoc["Preferred method of contact
/v51/onb/check-details/pmoc"] + n_v51_wft_meetings_new_task_manual_task["Set a reminder
/v51/wft-meetings/new-task/manual-task"] + n_v51_wft_meetings_tasks["Tasks
/v51/wft-meetings/tasks"] + n_v51_victim_new_task_manual_task["Set a reminder
/v51/victim/new-task/manual-task"] + n_v51_vcl_call_was_text_message_sent["Was a text message sent to the victim?
/v51/vcl/call/was-text-message-sent"] + n_v51_wft_meetings_log_offer_task["Tasks
/v51/wft-meetings/log-offer-task"] + n_v51_victim_victim_details_telephone_number["Victim's telephone number
/v51/victim/victim-details/telephone-number"] + n_v51_victim_case_contacts_idva["Independent Domestic Violence Advisor (IDVA)
/v51/victim/case-contacts/idva"] + n_v51_vcl_follow_up_log_follow_up["Log a follow-up
/v51/vcl/follow-up/log-follow-up"] + n_v51_overview3["Overview
/v51/overview3"] + n_v51_pcd_send_email_logged["Email logged
/v51/pcd/send/email-logged"] + n_v51_vcl_pre_draft_contacted_by["How did you contact the victim?
/v51/vcl/pre-draft/contacted-by"] + n_v51_overview["Overview
/v51/overview"] + n_v51_overview6_vlo["Overview
/v51/overview6-vlo"] + n_v51_victim_victim_details_victim_representative["Victim representative details
/v51/victim/victim-details/victim-representative"] + n_v51_pcd_follow_up_call_logged["Follow-up telephone call logged
/v51/pcd/follow-up/call-logged"] + n_v51_change_service["Change service
/v51/change-service"] + n_v51_vcl_draft_substantially_altered_charge["Substantially altered charge
/v51/vcl/draft/substantially-altered-charge"] + n_v51_victim_new_task_task_due_date["Task due date
/v51/victim/new-task/task-due-date"] + n_v51_onb_check_details_preferred_correspondence_language["Preferred correspondence language
/v51/onb/check-details/preferred-correspondence-language"] + n_v51_pcd_follow_up_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/follow-up/not-contacted-reason"] + n_v51_victim_index_withtasks["Victim
/v51/victim/index-withtasks"] + n_v51_victim_victim_details_previous_convictions["Previous convictions
/v51/victim/victim-details/previous-convictions"] + n_v51_pcd_pre_draft_not_contacted_reason["Reason for not contacting the victim
/v51/pcd/pre-draft/not-contacted-reason"] + n_v51_pcd_victim[/"/v51/pcd/victim"/] + n_v51_case_locked_by_someone_else --> n_v51_pcd_victim + n_v51_case_locked_self_locked --> n_v51_pcd_victim + n_v51_change_service_answer(["/v51/change-service-answer"]) + n_v51_change_service --> n_v51_change_service_answer + n_v51_change_task_due_date_answer(["/v51/change-task-due-date-answer"]) + n_v51_change_task_due_date --> n_v51_change_task_due_date_answer + n_v51_next_task_due_date --> n_v51_change_task_due_date_answer + n_v51_onb_check_details_answer(["/v51/onb/check-details-answer"]) + n_v51_onb_check_details --> n_v51_onb_check_details_answer + n_v51_onb_check_details --> n_v51_onb_check_details_case_type + n_v51_onb_check_details --> n_v51_onb_check_details_pmoc + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_contact_times + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_correspondence_language + n_v51_onb_check_details --> n_v51_onb_check_details_preferred_name + n_v51_onb_check_details --> n_v51_onb_check_details_risk_level + n_v51_onb_check_details --> n_v51_onb_check_details_translator_needed + n_v51_onb_check_details --> n_v51_onb_check_details_vps_status + n_v51_onb_check_details --> n_v51_onb_check_task_vlo + n_v51_onb_check_details --> n_v51_onb_service_lead + n_v51_check_details_case_type_answer(["/v51/check-details/case-type-answer"]) + n_v51_onb_check_details_case_type --> n_v51_check_details_case_type_answer + n_v51_check_details_pmoc_answer(["/v51/check-details/pmoc-answer"]) + n_v51_onb_check_details_pmoc --> n_v51_check_details_pmoc_answer + n_v51_check_details_preferred_contact_times_answer(["/v51/check-details/preferred-contact-times-answer"]) + n_v51_onb_check_details_preferred_contact_times --> n_v51_check_details_preferred_contact_times_answer + n_v51_check_details_preferred_correspondence_language_answer(["/v51/check-details/preferred-correspondence-language-answer"]) + n_v51_onb_check_details_preferred_correspondence_language --> n_v51_check_details_preferred_correspondence_language_answer + n_v51_check_details_preferred_name_answer(["/v51/check-details/preferred-name-answer"]) + n_v51_onb_check_details_preferred_name --> n_v51_check_details_preferred_name_answer + n_v51_check_details_risk_level_answer(["/v51/check-details/risk-level-answer"]) + n_v51_onb_check_details_risk_level --> n_v51_check_details_risk_level_answer + n_v51_check_details_translator_needed_answer(["/v51/check-details/translator-needed-answer"]) + n_v51_onb_check_details_translator_needed --> n_v51_check_details_translator_needed_answer + n_v51_check_details_vps_status_answer(["/v51/check-details/vps-status-answer"]) + n_v51_onb_check_details_vps_status --> n_v51_check_details_vps_status_answer + n_v51_onb_check_task_answer(["/v51/onb/check-task-answer"]) + n_v51_onb_check_task --> n_v51_onb_check_task_answer + n_v51_onb_check_task --> n_v51_onb_manual_task + n_v51_onb_check_task --> n_v51_onb_meeting_purpose + n_v51_onb_check_task --> n_v51_onb_next_task + n_v51_onb_check_task --> n_v51_onb_next_task_due_date + n_v51_onb_check_task_vlo_answer(["/v51/onb/check-task-vlo-answer"]) + n_v51_onb_check_task_vlo --> n_v51_onb_check_task_vlo_answer + n_v51_onb_manual_task_answer(["/v51/onb/manual-task-answer"]) + n_v51_onb_manual_task --> n_v51_onb_manual_task_answer + n_v51_onb_meeting_purpose_answer(["/v51/onb/meeting-purpose-answer"]) + n_v51_onb_meeting_purpose --> n_v51_onb_meeting_purpose_answer + n_v51_onb_next_task_answer(["/v51/onb/next-task-answer"]) + n_v51_onb_next_task --> n_v51_onb_next_task_answer + n_v51_onb_next_task_due_date_answer(["/v51/onb/next-task-due-date-answer"]) + n_v51_onb_next_task_due_date --> n_v51_onb_next_task_due_date_answer + n_v51_onb_onboarded --> n_v51_victims + n_v51_onb_pmoc_answer(["/v51/onb/pmoc-answer"]) + n_v51_onb_pmoc --> n_v51_onb_pmoc_answer + n_v51_onb_service_lead_answer(["/v51/onb/service-lead-answer"]) + n_v51_onb_service_lead --> n_v51_onb_service_lead_answer + n_v51_other_call_logged --> n_v51_victim + n_v51_other_contacted_by_answer(["/v51/other/contacted-by-answer"]) + n_v51_other_contacted_by --> n_v51_other_contacted_by_answer + n_v51_other_email_details_answer(["/v51/other/email-details-answer"]) + n_v51_other_email_details --> n_v51_other_email_details_answer + n_v51_other_email_logged --> n_v51_victim + n_v51_other_in_person_answer(["/v51/other/in-person-answer"]) + n_v51_other_in_person --> n_v51_other_in_person_answer + n_v51_other_in_person_logged --> n_v51_victim + n_v51_other_letter_details_answer(["/v51/other/letter-details-answer"]) + n_v51_other_letter_details --> n_v51_other_letter_details_answer + n_v51_other_letter_logged --> n_v51_victim + n_v51_other_other_details_answer(["/v51/other/other-details-answer"]) + n_v51_other_other --> n_v51_other_other_details_answer + n_v51_other_other_logged --> n_v51_victim + n_v51_other_telephone_call_answer(["/v51/other/telephone-call-answer"]) + n_v51_other_telephone_call --> n_v51_other_telephone_call_answer + n_v51_other_text_message_answer(["/v51/other/text-message-answer"]) + n_v51_other_text_message --> n_v51_other_text_message_answer + n_v51_other_text_message_logged --> n_v51_victim + n_v51_onb_tasks[/"/v51/onb/tasks"/] + n_v51_overview --> n_v51_onb_tasks + n_v51_pcd_call_follow_up_moc_answer(["/v51/pcd/call/follow-up-moc-answer"]) + n_v51_pcd_call_follow_up_moc --> n_v51_pcd_call_follow_up_moc_answer + n_v51_pcd_call_next_attempt_moc_answer(["/v51/pcd/call/next-attempt-moc-answer"]) + n_v51_pcd_call_next_attempt_moc --> n_v51_pcd_call_next_attempt_moc_answer + n_v51_pcd_call_phone_call_1_answer(["/v51/pcd/call/phone-call-1-answer"]) + n_v51_pcd_call_phone_call_1 --> n_v51_pcd_call_phone_call_1_answer + n_v51_pcd_call_phone_call_2_answer(["/v51/pcd/call/phone-call-2-answer"]) + n_v51_pcd_call_phone_call_2 --> n_v51_pcd_call_phone_call_2_answer + n_v51_pcd_call_phone_call_3_answer(["/v51/pcd/call/phone-call-3-answer"]) + n_v51_pcd_call_phone_call_3 --> n_v51_pcd_call_phone_call_3_answer + n_v51_pcd_call_text_message_details_answer(["/v51/pcd/call/text-message-details-answer"]) + n_v51_pcd_call_text_message_details --> n_v51_pcd_call_text_message_details_answer + n_v51_pcd_call_was_text_message_sent_answer(["/v51/pcd/call/was-text-message-sent-answer"]) + n_v51_pcd_call_was_text_message_sent --> n_v51_pcd_call_was_text_message_sent_answer + n_v51_pcd_draft_first_hearing_answer(["/v51/pcd/draft/first-hearing-answer"]) + n_v51_pcd_draft_first_hearing --> n_v51_pcd_draft_first_hearing_answer + n_v51_pcd_draft_pcd_type_answer(["/v51/pcd/draft/pcd-type-answer"]) + n_v51_pcd_draft_pcd_type --> n_v51_pcd_draft_pcd_type_answer + n_v51_pcd_draft_task_already_exists_answer(["/v51/pcd/draft/task-already-exists-answer"]) + n_v51_pcd_draft_task_already_exists --> n_v51_pcd_draft_task_already_exists_answer + n_v51_pcd_draft_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_pcd_follow_up_call_logged --> n_v51_victim + n_v51_pcd_follow_up_email_details_answer(["/v51/pcd/follow-up/email-details-answer"]) + n_v51_pcd_follow_up_email_details --> n_v51_pcd_follow_up_email_details_answer + n_v51_pcd_follow_up_email_logged --> n_v51_victim + n_v51_pcd_follow_up_letter_details_answer(["/v51/pcd/follow-up/letter-details-answer"]) + n_v51_pcd_follow_up_letter_details --> n_v51_pcd_follow_up_letter_details_answer + n_v51_pcd_follow_up_letter_logged --> n_v51_victim + n_v51_pcd_follow_up_log_follow_up_answer(["/v51/pcd/follow-up/log-follow-up-answer"]) + n_v51_pcd_follow_up_log_follow_up --> n_v51_pcd_follow_up_log_follow_up_answer + n_v51_pcd_follow_up_not_contacted_logged --> n_v51_victim + n_v51_pcd_follow_up_not_contacted_reason_answer(["/v51/pcd/follow-up/not-contacted-reason-answer"]) + n_v51_pcd_follow_up_not_contacted_reason --> n_v51_pcd_follow_up_not_contacted_reason_answer + n_v51_pcd_follow_up_telephone_call_answer(["/v51/pcd/follow-up/telephone-call-answer"]) + n_v51_pcd_follow_up_telephone_call --> n_v51_pcd_follow_up_telephone_call_answer + n_v51_pcd_pre_draft_check_eligibility_answer(["/v51/pcd/pre-draft/check-eligibility-answer"]) + n_v51_pcd_pre_draft_check_eligibility --> n_v51_pcd_pre_draft_check_eligibility_answer + n_v51_pcd_pre_draft_contacted_by_answer(["/v51/pcd/pre-draft/contacted-by-answer"]) + n_v51_pcd_pre_draft_contacted_by --> n_v51_pcd_pre_draft_contacted_by_answer + n_v51_pcd_pre_draft_not_contacted_reason_answer(["/v51/pcd/pre-draft/not-contacted-reason-answer"]) + n_v51_pcd_pre_draft_not_contacted_reason --> n_v51_pcd_pre_draft_not_contacted_reason_answer + n_v51_pcd_send_email_details_answer(["/v51/pcd/send/email-details-answer"]) + n_v51_pcd_send_email_details --> n_v51_pcd_send_email_details_answer + n_v51_pcd_send_email_logged --> n_v51_victim + n_v51_pcd_send_letter_details_answer(["/v51/pcd/send/letter-details-answer"]) + n_v51_pcd_send_letter_details --> n_v51_pcd_send_letter_details_answer + n_v51_pcd_send_letter_logged --> n_v51_victim + n_v51_sign_in_answer(["/v51/sign-in-answer"]) + n_v51_sign_in --> n_v51_sign_in_answer + n_v51_task_assignee_answer(["/v51/task-assignee-answer"]) + n_v51_task_assignee --> n_v51_task_assignee_answer + n_v51_task_updated --> n_v51_tasks + n_v51_tasks --> n_v51_next_task_due_date + n_v51_onb_tasks_clear_filters(["/v51/onb/tasks/clear-filters"]) + n_v51_tasks --> n_v51_onb_tasks_clear_filters + n_v51_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_tasks --> n_v51_pcd_send_email_details + n_v51_tasks --> n_v51_pcd_send_letter_details + n_v51_tasks --> n_v51_task_assignee + n_v51_tasks --> n_v51_update_manual_task + n_v51_tasks --> n_v51_vcl_call_follow_up_moc + n_v51_tasks --> n_v51_vcl_call_next_attempt_moc + n_v51_tasks --> n_v51_vcl_call_was_text_message_sent + n_v51_tasks --> n_v51_vcl_send_email_details + n_v51_tasks --> n_v51_vcl_send_letter_details + n_v51_vcl_start_task[/"/v51/vcl/start-task"/] + n_v51_tasks --> n_v51_vcl_start_task + n_v51_tasks --> n_v51_victim + n_v51_update_manual_task_answer(["/v51/update-manual-task-answer"]) + n_v51_update_manual_task --> n_v51_update_manual_task_answer + n_v51_vcl_call_follow_up_moc_answer(["/v51/vcl/call/follow-up-moc-answer"]) + n_v51_vcl_call_follow_up_moc --> n_v51_vcl_call_follow_up_moc_answer + n_v51_vcl_call_next_attempt_moc_answer(["/v51/vcl/call/next-attempt-moc-answer"]) + n_v51_vcl_call_next_attempt_moc --> n_v51_vcl_call_next_attempt_moc_answer + n_v51_vcl_call_phone_call_answer(["/v51/vcl/call/phone-call-answer"]) + n_v51_vcl_call_phone_call --> n_v51_vcl_call_phone_call_answer + n_v51_vcl_call_text_message_details_answer(["/v51/vcl/call/text-message-details-answer"]) + n_v51_vcl_call_text_message_details --> n_v51_vcl_call_text_message_details_answer + n_v51_vcl_call_was_text_message_sent_answer(["/v51/vcl/call/was-text-message-sent-answer"]) + n_v51_vcl_call_was_text_message_sent --> n_v51_vcl_call_was_text_message_sent_answer + n_v51_vcl_draft_stopped_charge_answer(["/v51/vcl/draft/stopped-charge-answer"]) + n_v51_vcl_draft_stopped_charge --> n_v51_vcl_draft_stopped_charge_answer + n_v51_vcl_draft_substantially_altered_charge_answer(["/v51/vcl/draft/substantially-altered-charge-answer"]) + n_v51_vcl_draft_substantially_altered_charge --> n_v51_vcl_draft_substantially_altered_charge_answer + n_v51_vcl_draft_vcl_type_answer(["/v51/vcl/draft/vcl-type-answer"]) + n_v51_vcl_draft_vcl_type --> n_v51_vcl_draft_vcl_type_answer + n_v51_vcl_follow_up_email_details_answer(["/v51/vcl/follow-up/email-details-answer"]) + n_v51_vcl_follow_up_email_details --> n_v51_vcl_follow_up_email_details_answer + n_v51_vcl_follow_up_email_logged --> n_v51_victim + n_v51_vcl_follow_up_letter_details_answer(["/v51/vcl/follow-up/letter-details-answer"]) + n_v51_vcl_follow_up_letter_details --> n_v51_vcl_follow_up_letter_details_answer + n_v51_vcl_follow_up_letter_logged --> n_v51_victim + n_v51_vcl_follow_up_log_follow_up_answer(["/v51/vcl/follow-up/log-follow-up-answer"]) + n_v51_vcl_follow_up_log_follow_up --> n_v51_vcl_follow_up_log_follow_up_answer + n_v51_vcl_pre_draft_contacted_by_answer(["/v51/vcl/pre-draft/contacted-by-answer"]) + n_v51_vcl_pre_draft_contacted_by --> n_v51_vcl_pre_draft_contacted_by_answer + n_v51_vcl_pre_draft_not_contacted_reason_answer(["/v51/vcl/pre-draft/not-contacted-reason-answer"]) + n_v51_vcl_pre_draft_not_contacted_reason --> n_v51_vcl_pre_draft_not_contacted_reason_answer + n_v51_vcl_send_email_details_answer(["/v51/vcl/send/email-details-answer"]) + n_v51_vcl_send_email_details --> n_v51_vcl_send_email_details_answer + n_v51_vcl_send_letter_details_answer(["/v51/vcl/send/letter-details-answer"]) + n_v51_vcl_send_letter_details --> n_v51_vcl_send_letter_details_answer + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim + n_v51_victim_case_contacts_family_liaison_officer_answer(["/v51/victim/case-contacts/family-liaison-officer-answer"]) + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_answer + n_v51_victim_case_contacts_family_liaison_officer_delete[/"/v51/victim/case-contacts/family-liaison-officer-delete"/] + n_v51_victim_case_contacts_family_liaison_officer --> n_v51_victim_case_contacts_family_liaison_officer_delete + n_v51_victim_case_contacts_idva --> n_v51_victim + n_v51_victim_case_contacts_idva_answer(["/v51/victim/case-contacts/idva-answer"]) + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_answer + n_v51_victim_case_contacts_idva_delete[/"/v51/victim/case-contacts/idva-delete"/] + n_v51_victim_case_contacts_idva --> n_v51_victim_case_contacts_idva_delete + n_v51_victim_case_contacts_isva --> n_v51_victim + n_v51_victim_case_contacts_isva_answer(["/v51/victim/case-contacts/isva-answer"]) + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_answer + n_v51_victim_case_contacts_isva_delete[/"/v51/victim/case-contacts/isva-delete"/] + n_v51_victim_case_contacts_isva --> n_v51_victim_case_contacts_isva_delete + n_v51_victim_case_information_area_answer(["/v51/victim/case-information/area-answer"]) + n_v51_victim_case_information_area --> n_v51_victim_case_information_area_answer + n_v51_victim_case_information_charging_type_answer(["/v51/victim/case-information/charging-type-answer"]) + n_v51_victim_case_information_charging_type --> n_v51_victim_case_information_charging_type_answer + n_v51_victim_index_notasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v3 --> n_v51_victim_new_task_task_selection + n_v51_victim_index_withtasks_v4 --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_check_task_answer(["/v51/victim/new-task/check-task-answer"]) + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_check_task_answer + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_meeting_purpose + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_victim_new_task_manual_task_answer(["/v51/victim/new-task/manual-task-answer"]) + n_v51_victim_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_victim_new_task_meeting_purpose_answer(["/v51/victim/new-task/meeting-purpose-answer"]) + n_v51_victim_new_task_meeting_purpose --> n_v51_victim_new_task_meeting_purpose_answer + n_v51_victim_new_task_task_already_exists_answer(["/v51/victim/new-task/task-already-exists-answer"]) + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_already_exists_answer + n_v51_victim_new_task_task_already_exists --> n_v51_victim_new_task_task_due_date + n_v51_victim_new_task_task_created --> n_v51_victim + n_v51_victim_new_task_task_due_date_answer(["/v51/victim/new-task/task-due-date-answer"]) + n_v51_victim_new_task_task_due_date --> n_v51_victim_new_task_task_due_date_answer + n_v51_victim_new_task_next_task_answer(["/v51/victim/new-task/next-task-answer"]) + n_v51_victim_new_task_task_selection --> n_v51_victim_new_task_next_task_answer + n_v51_victim_victim_details_address_answer(["/v51/victim/victim-details/address-answer"]) + n_v51_victim_victim_details_address --> n_v51_victim_victim_details_address_answer + n_v51_victim_victim_details_category_answer(["/v51/victim/victim-details/category-answer"]) + n_v51_victim_victim_details_category --> n_v51_victim_victim_details_category_answer + n_v51_victim_victim_details_contact_times_answer(["/v51/victim/victim-details/contact-times-answer"]) + n_v51_victim_victim_details_contact_times --> n_v51_victim_victim_details_contact_times_answer + n_v51_victim_victim_details_correspondence_language_answer(["/v51/victim/victim-details/correspondence-language-answer"]) + n_v51_victim_victim_details_correspondence_language --> n_v51_victim_victim_details_correspondence_language_answer + n_v51_victim_victim_details_date_of_birth_answer(["/v51/victim/victim-details/date-of-birth-answer"]) + n_v51_victim_victim_details_date_of_birth --> n_v51_victim_victim_details_date_of_birth_answer + n_v51_victim_victim_details_disability_answer(["/v51/victim/victim-details/disability-answer"]) + n_v51_victim_victim_details_disability --> n_v51_victim_victim_details_disability_answer + n_v51_victim_victim_details_email_address_answer(["/v51/victim/victim-details/email-address-answer"]) + n_v51_victim_victim_details_email_address --> n_v51_victim_victim_details_email_address_answer + n_v51_victim_victim_details_ethnicity_answer(["/v51/victim/victim-details/ethnicity-answer"]) + n_v51_victim_victim_details_ethnicity --> n_v51_victim_victim_details_ethnicity_answer + n_v51_victim_victim_details_full_name_answer(["/v51/victim/victim-details/full-name-answer"]) + n_v51_victim_victim_details_full_name --> n_v51_victim_victim_details_full_name_answer + n_v51_victim_victim_details_gender_answer(["/v51/victim/victim-details/gender-answer"]) + n_v51_victim_victim_details_gender --> n_v51_victim_victim_details_gender_answer + n_v51_victim_victim_details_pmoc_answer(["/v51/victim/victim-details/pmoc-answer"]) + n_v51_victim_victim_details_pmoc --> n_v51_victim_victim_details_pmoc_answer + n_v51_victim_victim_details_pmoc_police_answer(["/v51/victim/victim-details/pmoc-police-answer"]) + n_v51_victim_victim_details_pmoc_police --> n_v51_victim_victim_details_pmoc_police_answer + n_v51_victim_victim_details_power_of_attorney_answer(["/v51/victim/victim-details/power-of-attorney-answer"]) + n_v51_victim_victim_details_power_of_attorney --> n_v51_victim_victim_details_power_of_attorney_answer + n_v51_victim_victim_details_preferred_name_answer(["/v51/victim/victim-details/preferred-name-answer"]) + n_v51_victim_victim_details_preferred_name --> n_v51_victim_victim_details_preferred_name_answer + n_v51_victim_victim_details_previous_convictions_answer(["/v51/victim/victim-details/previous-convictions-answer"]) + n_v51_victim_victim_details_previous_convictions --> n_v51_victim_victim_details_previous_convictions_answer + n_v51_victim_victim_details_reasonable_adjustments_answer(["/v51/victim/victim-details/reasonable-adjustments-answer"]) + n_v51_victim_victim_details_reasonable_adjustments --> n_v51_victim_victim_details_reasonable_adjustments_answer + n_v51_victim_victim_details_religion_answer(["/v51/victim/victim-details/religion-answer"]) + n_v51_victim_victim_details_religion --> n_v51_victim_victim_details_religion_answer + n_v51_victim_victim_details_risk_level_answer(["/v51/victim/victim-details/risk-level-answer"]) + n_v51_victim_victim_details_risk_level --> n_v51_victim_victim_details_risk_level_answer + n_v51_victim_victim_details_service_answer(["/v51/victim/victim-details/service-answer"]) + n_v51_victim_victim_details_service --> n_v51_victim_victim_details_service_answer + n_v51_victim_victim_details_telephone_number_answer(["/v51/victim/victim-details/telephone-number-answer"]) + n_v51_victim_victim_details_telephone_number --> n_v51_victim_victim_details_telephone_number_answer + n_v51_victim_victim_details_translator_needed_answer(["/v51/victim/victim-details/translator-needed-answer"]) + n_v51_victim_victim_details_translator_needed --> n_v51_victim_victim_details_translator_needed_answer + n_v51_victim_victim_details_victim_representative_answer(["/v51/victim/victim-details/victim-representative-answer"]) + n_v51_victim_victim_details_victim_representative --> n_v51_victim_victim_details_victim_representative_answer + n_v51_victim_victim_details_vps_status_answer(["/v51/victim/victim-details/vps-status-answer"]) + n_v51_victim_victim_details_vps_status --> n_v51_victim_victim_details_vps_status_answer + n_v51_victim_victim_details_wants_contact_answer(["/v51/victim/victim-details/wants-contact-answer"]) + n_v51_victim_victim_details_wants_contact --> n_v51_victim_victim_details_wants_contact_answer + n_v51_victims --> n_v51_change_service + n_v51_victims --> n_v51_onb_service_lead + n_v51_victims --> n_v51_victim + n_v51_victims --> n_v51_vlo + n_v51_onb_vlo_answer(["/v51/onb/vlo-answer"]) + n_v51_vlo --> n_v51_onb_vlo_answer + n_v51_wft_meetings_log_arranged_meeting --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_arranged_meeting_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_meeting_outcome_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_response_check --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_log_offer_task --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_manual_task + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_due_date + n_v51_wft_meetings_new_task_check_task --> n_v51_victim_new_task_task_selection + n_v51_wft_meetings_new_task_manual_task --> n_v51_victim_new_task_manual_task_answer + n_v51_wft_meetings_new_task_purposet_answer(["/v51/wft-meetings/new-task/purposet-answer"]) + n_v51_wft_meetings_new_task_purposet --> n_v51_wft_meetings_new_task_purposet_answer + n_v51_wft_meetings_new_task_task_due_date_answer(["/v51/wft-meetings/new-task/task-due-date-answer"]) + n_v51_wft_meetings_new_task_task_due_date --> n_v51_wft_meetings_new_task_task_due_date_answer + n_v51_wft_meetings_new_task_next_task_answer(["/v51/wft-meetings/new-task/next-task-answer"]) + n_v51_wft_meetings_new_task_task_selection --> n_v51_wft_meetings_new_task_next_task_answer + n_v51_wft_meetings_tasks --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_tasks --> n_v51_pcd_call_follow_up_moc + n_v51_wft_meetings_tasks --> n_v51_pcd_call_next_attempt_moc + n_v51_wft_meetings_tasks --> n_v51_pcd_call_was_text_message_sent + n_v51_pcd_pre_draft_check_details[/"/v51/pcd/pre-draft/check-details"/] + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_check_details + n_v51_wft_meetings_tasks --> n_v51_pcd_pre_draft_contacted_by + n_v51_wft_meetings_tasks --> n_v51_pcd_send_email_details + n_v51_wft_meetings_tasks --> n_v51_pcd_send_letter_details + n_v51_wft_meetings_tasks --> n_v51_task_assignee + n_v51_wft_meetings_tasks --> n_v51_victim + n_v51_wft_meetings_tasks2 --> n_v51_change_task_due_date + n_v51_wft_meetings_tasks2 --> n_v51_onb_tasks_clear_filters + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_follow_up_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_next_attempt_moc + n_v51_wft_meetings_tasks2 --> n_v51_pcd_call_was_text_message_sent + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_check_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_pre_draft_contacted_by + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_email_details + n_v51_wft_meetings_tasks2 --> n_v51_pcd_send_letter_details + n_v51_wft_meetings_tasks2 --> n_v51_task_assignee + n_v51_wft_meetings_tasks2 --> n_v51_victim + n_v51_wft_meetings_victims --> n_v51_onb_service_lead + n_v51_wft_meetings_victims --> n_v51_victim + n_v51_wft_meetings_victims --> n_v51_vlo + classDef answer fill:#fff2cc,stroke:#d6b656,color:#333; + class n_v51_pcd_call_was_text_message_sent_answer,n_v51_victim_victim_details_email_address_answer,n_v51_victim_victim_details_wants_contact_answer,n_v51_check_details_preferred_contact_times_answer,n_v51_vcl_pre_draft_not_contacted_reason_answer,n_v51_victim_new_task_manual_task_answer,n_v51_victim_case_information_charging_type_answer,n_v51_update_manual_task_answer,n_v51_victim_new_task_check_task_answer,n_v51_check_details_pmoc_answer,n_v51_pcd_call_phone_call_2_answer,n_v51_victim_victim_details_correspondence_language_answer,n_v51_onb_next_task_answer,n_v51_victim_victim_details_vps_status_answer,n_v51_victim_victim_details_victim_representative_answer,n_v51_pcd_send_letter_details_answer,n_v51_victim_new_task_task_due_date_answer,n_v51_onb_check_task_answer,n_v51_other_other_details_answer,n_v51_pcd_draft_pcd_type_answer,n_v51_pcd_send_email_details_answer,n_v51_victim_victim_details_previous_convictions_answer,n_v51_victim_victim_details_pmoc_answer,n_v51_pcd_call_follow_up_moc_answer,n_v51_pcd_call_phone_call_1_answer,n_v51_vcl_send_letter_details_answer,n_v51_pcd_follow_up_not_contacted_reason_answer,n_v51_victim_victim_details_gender_answer,n_v51_pcd_call_phone_call_3_answer,n_v51_victim_victim_details_category_answer,n_v51_victim_case_contacts_family_liaison_officer_answer,n_v51_pcd_call_text_message_details_answer,n_v51_other_letter_details_answer,n_v51_pcd_pre_draft_not_contacted_reason_answer,n_v51_onb_meeting_purpose_answer,n_v51_vcl_call_follow_up_moc_answer,n_v51_victim_new_task_next_task_answer,n_v51_change_task_due_date_answer,n_v51_vcl_pre_draft_contacted_by_answer,n_v51_victim_case_information_area_answer,n_v51_onb_next_task_due_date_answer,n_v51_other_telephone_call_answer,n_v51_victim_victim_details_telephone_number_answer,n_v51_check_details_preferred_correspondence_language_answer,n_v51_pcd_draft_first_hearing_answer,n_v51_wft_meetings_new_task_purposet_answer,n_v51_victim_new_task_meeting_purpose_answer,n_v51_check_details_vps_status_answer,n_v51_pcd_pre_draft_contacted_by_answer,n_v51_victim_victim_details_preferred_name_answer,n_v51_victim_victim_details_reasonable_adjustments_answer,n_v51_check_details_case_type_answer,n_v51_vcl_call_was_text_message_sent_answer,n_v51_victim_victim_details_power_of_attorney_answer,n_v51_onb_service_lead_answer,n_v51_pcd_follow_up_telephone_call_answer,n_v51_victim_victim_details_religion_answer,n_v51_vcl_draft_vcl_type_answer,n_v51_vcl_draft_stopped_charge_answer,n_v51_victim_victim_details_full_name_answer,n_v51_pcd_follow_up_email_details_answer,n_v51_vcl_send_email_details_answer,n_v51_other_contacted_by_answer,n_v51_onb_check_details_answer,n_v51_pcd_pre_draft_check_eligibility_answer,n_v51_pcd_follow_up_letter_details_answer,n_v51_vcl_call_phone_call_answer,n_v51_vcl_follow_up_letter_details_answer,n_v51_victim_victim_details_pmoc_police_answer,n_v51_victim_victim_details_service_answer,n_v51_task_assignee_answer,n_v51_vcl_follow_up_email_details_answer,n_v51_victim_victim_details_disability_answer,n_v51_pcd_draft_task_already_exists_answer,n_v51_pcd_follow_up_log_follow_up_answer,n_v51_victim_new_task_task_already_exists_answer,n_v51_vcl_call_next_attempt_moc_answer,n_v51_victim_victim_details_address_answer,n_v51_victim_case_contacts_idva_answer,n_v51_onb_vlo_answer,n_v51_change_service_answer,n_v51_check_details_risk_level_answer,n_v51_onb_manual_task_answer,n_v51_wft_meetings_new_task_next_task_answer,n_v51_victim_victim_details_translator_needed_answer,n_v51_check_details_translator_needed_answer,n_v51_other_in_person_answer,n_v51_victim_victim_details_contact_times_answer,n_v51_sign_in_answer,n_v51_wft_meetings_new_task_task_due_date_answer,n_v51_onb_check_task_vlo_answer,n_v51_vcl_call_text_message_details_answer,n_v51_check_details_preferred_name_answer,n_v51_other_email_details_answer,n_v51_pcd_call_next_attempt_moc_answer,n_v51_victim_case_contacts_isva_answer,n_v51_victim_victim_details_risk_level_answer,n_v51_victim_victim_details_date_of_birth_answer,n_v51_vcl_draft_substantially_altered_charge_answer,n_v51_victim_victim_details_ethnicity_answer,n_v51_onb_pmoc_answer,n_v51_vcl_follow_up_log_follow_up_answer,n_v51_onb_tasks_clear_filters,n_v51_other_text_message_answer answer; + classDef external fill:#f5f5f5,stroke:#999,color:#333,stroke-dasharray:4 3; + class n_v51_victim_case_contacts_family_liaison_officer_delete,n_v51_vcl_start_task,n_v51_pcd_victim,n_v51_pcd_pre_draft_check_details,n_v51_victim_case_contacts_idva_delete,n_v51_onb_tasks,n_v51_victim_case_contacts_isva_delete external; +``` + diff --git a/docs/v50-v51-routes.csv b/docs/v50-v51-routes.csv new file mode 100644 index 00000000..2728a1b3 --- /dev/null +++ b/docs/v50-v51-routes.csv @@ -0,0 +1,301 @@ +Version,URL,Page title,Template,Linked from,Links to,Session variables,Validation,Conditional logic +v50,/v50/case-locked/by-someone-else,Case locked,v50/case-locked/by-someone-else.html,,/v50/pcd/victim,,None (prototype redirect), +v50,/v50/case-locked/self-locked,Case locked,v50/case-locked/self-locked.html,,/v50/pcd/victim,,None (prototype redirect), +v50,/v50/change-service,Change service,v50/change-service.html,/v50/victims,/v50/change-service-answer,"service, serviceLead, victimForename, victimSurname",None (prototype redirect), +v50,/v50/change-task-due-date,Change task due date,v50/change-task-due-date.html,"/v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/change-task-due-date-answer,"reasonForDueDateChange, taskDueDate",None (prototype redirect),newDueDate === previousDueDate +v50,/v50/next-task-due-date,Task due date,v50/next-task-due-date.html,/v50/tasks,/v50/change-task-due-date-answer,taskDueDate,None (prototype redirect),newDueDate === previousDueDate +v50,/v50/onb/check-details,Check the details before drafting the letter,v50/onb/check-details/index.html,,"/v50/onb/check-details-answer, /v50/onb/check-details/case-type, /v50/onb/check-details/pmoc, /v50/onb/check-details/preferred-contact-times, /v50/onb/check-details/preferred-correspondence-language, /v50/onb/check-details/preferred-name, /v50/onb/check-details/risk-level, /v50/onb/check-details/translator-needed, /v50/onb/check-details/vps-status, /v50/onb/check-task-vlo, /v50/onb/service-lead","caseType, detailChange, onboardedStatus, pmoc, preferredContactTimes, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, preferredName, riskLevel, serviceLead, successNotification, translatorNeeded, victimForename, victimSurname, vlo, vpsStatus",None (prototype redirect),"(data['successNotification'] == ""yes"") and (data['onboardedStatus'] == ""Yes"") | data['detailChange'] == ""no"" | data['serviceLead'] == 'Not aligned' | data['serviceLead'] == ""Not aligned"" | data['preferredCorrespondenceLanguage'] == ""Other"" | data['vlo'] | data['caseType'] | data['riskLevel'] | data['pmoc'] | data['preferredCorrespondenceLanguage'] == ""English"" or data['preferredCorrespondenceLanguage'] == ""Welsh"" or data['preferredCorrespondenceLanguage'] == ""Other"" | data['preferredCorrespondenceLanguage'] == ""Other"" | data['translatorNeeded'] == ""Yes"" or data['translatorNeeded'] == ""No"" | data['preferredContactTimes'] | data['preferredName'] | data['vpsStatus']" +v50,/v50/onb/check-details/case-type,Charging type,v50/onb/check-details/case-type.html,/v50/onb/check-details,/v50/check-details/case-type-answer,,None (prototype redirect), +v50,/v50/onb/check-details/pmoc,Preferred method of contact,v50/onb/check-details/pmoc.html,/v50/onb/check-details,/v50/check-details/pmoc-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-details/preferred-contact-times,Preferred contact times,v50/onb/check-details/preferred-contact-times.html,/v50/onb/check-details,/v50/check-details/preferred-contact-times-answer,"preferredContactTimes, victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-details/preferred-correspondence-language,Preferred correspondence language,v50/onb/check-details/preferred-correspondence-language.html,/v50/onb/check-details,/v50/check-details/preferred-correspondence-language-answer,"preferredCorrespondenceLanguageOther, victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-details/preferred-name,Preferred name,v50/onb/check-details/preferred-name.html,/v50/onb/check-details,/v50/check-details/preferred-name-answer,"preferredName, victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-details/risk-level,Domestic abuse risk level,v50/onb/check-details/risk-level.html,/v50/onb/check-details,/v50/check-details/risk-level-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-details/translator-needed,Translator needed,v50/onb/check-details/translator-needed.html,/v50/onb/check-details,/v50/check-details/translator-needed-answer,"translatorNeededDetails, victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-details/vps-status,VPS status,v50/onb/check-details/vps-status.html,/v50/onb/check-details,/v50/check-details/vps-status-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/check-task,Check the task details are correct,v50/onb/check-task.html,,"/v50/onb/check-task-answer, /v50/onb/manual-task, /v50/onb/meeting-purpose, /v50/onb/next-task, /v50/onb/next-task-due-date","manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] | data['nextTask'] == ""dtc"" | data['nextTask'] == ""no-task"" | data['nextTask'] == ""meeting-offer"" or data['nextTask'] == ""meeting-arranged"" or data['nextTask'] == ""meeting-outcome"" | data['meetingPurpose'] == ""pre-trial"" | data['manualTask'] == ""yes"" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == """" | data['taskDueDate'] | data['nextTask'] == ""no-task""" +v50,/v50/onb/check-task-vlo,Victim liaison officer,v50/onb/check-task-vlo.html,/v50/onb/check-details,/v50/onb/check-task-vlo-answer,"victimForename, victimSurname, vlo",None (prototype redirect),request.session.data.vloReturnTo === 'check-task' | request.session.data.vloReturnTo === 'check-details' +v50,/v50/onb/manual-task,Create a task,v50/onb/manual-task.html,/v50/onb/check-task,/v50/onb/manual-task-answer,"manualTaskName, taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/meeting-purpose,Task selection,v50/onb/meeting-purpose.html,/v50/onb/check-task,/v50/onb/meeting-purpose-answer,meetingPurposeDetails,None (prototype redirect), +v50,/v50/onb/next-task,Next task,v50/onb/next-task.html,/v50/onb/check-task,/v50/onb/next-task-answer,"nextTask, victimForename, victimSurname",None (prototype redirect),"nextTask == ""other"" | nextTask == ""no-task"" | nextTask == ""meeting-offer"" || nextTask == ""meeting-arranged"" || nextTask == ""meeting-outcome""" +v50,/v50/onb/next-task-due-date,Task due date,v50/onb/next-task-due-date.html,/v50/onb/check-task,/v50/onb/next-task-due-date-answer,taskDueDate,None (prototype redirect), +v50,/v50/onb/onboarded,Victim onboarded,v50/onb/onboarded.html,,/v50/victims,"manualTaskName, nextTask, taskDueDate, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] == ""dtc""" +v50,/v50/onb/pmoc,Preferred method of contact,v50/onb/pmoc.html,,/v50/onb/pmoc-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/onb/service-lead,Service lead,v50/onb/service-lead.html,"/v50/onb/check-details, /v50/victims, /v50/wft-meetings/victims",/v50/onb/service-lead-answer,"victimForename, victimSurname",None (prototype redirect),"onboardedStatus == ""no""" +v50,/v50/other/call-logged,Telephone call logged,v50/other/call-logged.html,,/v50/victim,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/other/contacted-by,How did you contact the victim?,v50/other/contacted-by.html,,/v50/other/contacted-by-answer,"contactedBy, otherContactMethod, victimForename, victimSurname",None (prototype redirect),"contactedBy == ""call"" | contactedBy == ""email"" | contactedBy == ""post"" | contactedBy == ""text"" | contactedBy == ""in-person"" | contactedBy == ""other""" +v50,/v50/other/email-details,Log an email,v50/other/email-details.html,,/v50/other/email-details-answer,"otherCommunications, otherEmailDate, otherEmailHour, otherEmailMinutes, otherEmailType, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v50,/v50/other/email-logged,Email logged,v50/other/email-logged.html,,/v50/victim,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/other/in-person,Log an in-person conversation,v50/other/in-person.html,,/v50/other/in-person-answer,"otherCommunications, otherInPersonDate, otherInPersonHour, otherInPersonMinutes, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v50,/v50/other/in-person-logged,In-person meeting logged,v50/other/in-person-logged.html,,/v50/victim,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/other/letter-details,Log a letter,v50/other/letter-details.html,,/v50/other/letter-details-answer,"otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherLetterDate, otherLetterHour, otherLetterMinutes, otherLetterType, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v50,/v50/other/letter-logged,Letter logged,v50/other/letter-logged.html,,/v50/victim,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/other/log,Log a communication,v50/other/log.html,,,"dateOfCommunicationDay, dateOfCommunicationMonth, dateOfCommunicationYear, individualOtherName, purposeOfCommunication",None (prototype redirect), +v50,/v50/other/other,Log other communication,v50/other/other.html,,/v50/other/other-details-answer,"otherCommsDate, otherCommsHour, otherCommsMinutes, otherCommsType, otherCommunications, otherContactMethod, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v50,/v50/other/other-logged,Other communication logged,v50/other/other-logged.html,,/v50/victim,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/other/telephone-call,Log a telephone call,v50/other/telephone-call.html,,/v50/other/telephone-call-answer,"otherCallDate, otherCallHour, otherCallMinutes, otherCallType, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v50,/v50/other/text-message,Log a text message,v50/other/text-message.html,,/v50/other/text-message-answer,"otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherTextMessageDate, otherTextMessageHour, otherTextMessageMinutes, otherTextMessageType, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v50,/v50/other/text-message-logged,Text message logged,v50/other/text-message-logged.html,,/v50/victim,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/overview,Overview,v50/overview.html,,/v50/onb/tasks,,None (prototype redirect), +v50,/v50/overview2,Overview,v50/overview2.html,,,,JS submit guard, +v50,/v50/overview3,Overview,v50/overview3.html,,,,JS submit guard, +v50,/v50/overview4,Overview,v50/overview4.html,,,,JS submit guard, +v50,/v50/overview5,Overview,v50/overview5.html,,,,JS submit guard, +v50,/v50/overview6-initial,Overview,v50/overview6-initial.html,,,,None (prototype redirect), +v50,/v50/overview6-vlm,Overview,v50/overview6-vlm.html,,,,None (prototype redirect), +v50,/v50/overview6-vlo,Overview,v50/overview6-vlo.html,,,,None (prototype redirect), +v50,/v50/pcd/call/follow-up-moc,Follow-up method of contact,v50/pcd/call/follow-up-moc.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/pcd/call/follow-up-moc-answer,"pcdCallAttempt, pcdFumoc, victimForename, victimSurname",None (prototype redirect),"pcdFumoc == ""Email"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2"" | pcdFumoc == ""Post"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2""" +v50,/v50/pcd/call/next-attempt-moc,Next attempt method of contact,v50/pcd/call/next-attempt-moc.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/pcd/call/next-attempt-moc-answer,"pcdAttemptToContactAgain, pcdCallAttempt",None (prototype redirect),"pcdAttemptToContactAgain == ""call"" | pcdCallAttempt == ""1"" | pcdAttemptToContactAgain == ""email"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2""" +v50,/v50/pcd/call/phone-call-1,Telephone call 1,v50/pcd/call/phone-call-1.html,,/v50/pcd/call/phone-call-1-answer,"pcdCallDate1, pcdVictimInformed1",None (prototype redirect),"pcdVictimInformed1 == ""Yes""" +v50,/v50/pcd/call/phone-call-2,Telephone call 2,v50/pcd/call/phone-call-2.html,,/v50/pcd/call/phone-call-2-answer,"pcdCallDate2, pcdVictimInformed2",None (prototype redirect),"pcdVictimInformed2 == ""Yes""" +v50,/v50/pcd/call/phone-call-3,Telephone call 3 details,v50/pcd/call/phone-call-3.html,,/v50/pcd/call/phone-call-3-answer,"pcdCallDate3, pcdVictimInformed3",None (prototype redirect),"pcdVictimInformed3 == ""Yes""" +v50,/v50/pcd/call/text-message-details,Text message details,v50/pcd/call/text-message-details.html,,/v50/pcd/call/text-message-details-answer,pcdCallDate1,None (prototype redirect), +v50,/v50/pcd/call/was-text-message-sent,Was a text message sent to the victim?,v50/pcd/call/was-text-message-sent.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/pcd/call/was-text-message-sent-answer,"pcdWasTextMessageSent, victimForename, victimSurname",None (prototype redirect),"pcdWasTextMessageSent == ""Yes""" +v50,/v50/pcd/draft/first-hearing,First hearing,v50/pcd/draft/first-hearing.html,,/v50/pcd/draft/first-hearing-answer,"firstHearingDate, firstHearingLocation",None (prototype redirect), +v50,/v50/pcd/draft/pcd-type,Charging decision type,v50/pcd/draft/pcd-type.html,,/v50/pcd/draft/pcd-type-answer,"existingTask, pcdType, victimForename, victimSurname",None (prototype redirect),"pcdType == ""dtc"" | existingTask == ""dtc"" | pcdType == ""nfa"" | existingTask == ""nfa""" +v50,/v50/pcd/draft/task-already-exists,This task already exists,v50/pcd/draft/task-already-exists.html,,"/v50/pcd/draft/task-already-exists-answer, /v50/victim/new-task/task-due-date","existingTask, existingTaskDueDate, pcdType, victimForename, victimSurname",None (prototype redirect),"data['existingTask'] == ""dtc"" | data['existingTaskDueDate']" +v50,/v50/pcd/follow-up/call-logged,Follow-up telephone call logged,v50/pcd/follow-up/call-logged.html,,/v50/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v50,/v50/pcd/follow-up/email-details,Follow-up email details,v50/pcd/follow-up/email-details.html,,/v50/pcd/follow-up/email-details-answer,"followUpEmailDispatchDate, followUpEmailDispatchNotes",error markup, +v50,/v50/pcd/follow-up/email-logged,Follow-up email logged,v50/pcd/follow-up/email-logged.html,,/v50/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v50,/v50/pcd/follow-up/letter-details,Follow-up letter details,v50/pcd/follow-up/letter-details.html,,/v50/pcd/follow-up/letter-details-answer,"followUpLetterDispatchDate, followUpLetterDispatchNotes",error markup, +v50,/v50/pcd/follow-up/letter-logged,Follow-up letter logged,v50/pcd/follow-up/letter-logged.html,,/v50/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v50,/v50/pcd/follow-up/log-follow-up,Log a follow-up,v50/pcd/follow-up/log-follow-up.html,,/v50/pcd/follow-up/log-follow-up-answer,"pcdFollowUpType, victimForename, victimSurname",error markup,"pcdFollowUpType == ""call"" | pcdFollowUpType == ""email"" | pcdFollowUpType == ""not-contacted""" +v50,/v50/pcd/follow-up/not-contacted-logged,Decision not to contact logged,v50/pcd/follow-up/not-contacted-logged.html,,/v50/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v50,/v50/pcd/follow-up/not-contacted-reason,Reason for not contacting the victim,v50/pcd/follow-up/not-contacted-reason.html,,/v50/pcd/follow-up/not-contacted-reason-answer,"followUpNotContactedReason, victimForename, victimSurname",error markup, +v50,/v50/pcd/follow-up/telephone-call,Follow-up telephone call,v50/pcd/follow-up/telephone-call.html,,/v50/pcd/follow-up/telephone-call-answer,"followUpCallDate, followUpCallHour, followUpCallMinutes, followUpCallNotes, followUpCallType, followUpVictimInformed",None (prototype redirect), +v50,/v50/pcd/pre-draft/check-eligibility,Check eligibility,v50/pcd/pre-draft/check-eligibility.html,,/v50/pcd/pre-draft/check-eligibility-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/pcd/pre-draft/contacted-by,How did you contact the victim?,v50/pcd/pre-draft/contacted-by.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/pcd/pre-draft/contacted-by-answer,"contactedBy, successReason, victimForename, victimSurname",None (prototype redirect),"data['successReason'] != ""task-created"" | contactedBy == ""call"" | contactedBy == ""email"" | contactedBy == ""post"" | contactedBy == ""not-contacted""" +v50,/v50/pcd/pre-draft/not-contacted-reason,Reason for not contacting the victim,v50/pcd/pre-draft/not-contacted-reason.html,,/v50/pcd/pre-draft/not-contacted-reason-answer,"notContactedReason, victimForename, victimSurname",None (prototype redirect), +v50,/v50/pcd/send/email-details,Email details,v50/pcd/send/email-details.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/pcd/send/email-details-answer,emailDispatchDate,None (prototype redirect), +v50,/v50/pcd/send/email-logged,Email logged,v50/pcd/send/email-logged.html,,/v50/victim,"contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"") | (data['contactedBy'] == ""call"") | (data['pcdCallAttempt'] == ""1"") | (data['pcdVictimInformed1'] == ""Yes"") | (data['pcdVictimInformed2'] == ""Yes"") | (data['pcdVictimInformed3'] == ""Yes"")" +v50,/v50/pcd/send/letter-details,Letter details,v50/pcd/send/letter-details.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/pcd/send/letter-details-answer,letterDispatchDate,None (prototype redirect), +v50,/v50/pcd/send/letter-logged,Letter logged,v50/pcd/send/letter-logged.html,,/v50/victim,"contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"") | (data['contactedBy'] == ""call"") | (data['pcdCallAttempt'] == ""1"") | (data['pcdVictimInformed1'] == ""Yes"") | (data['pcdVictimInformed2'] == ""Yes"") | (data['pcdVictimInformed3'] == ""Yes"")" +v50,/v50/sign-in,Sign in to your account,v50/sign-in.html,,/v50/sign-in-answer,password,None (prototype redirect), +v50,/v50/task-assignee,Task Assignee,v50/task-assignee.html,"/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2",/v50/task-assignee-answer,"task-assignee, taskAssignee",None (prototype redirect), +v50,/v50/task-updated,Victim onboarded,v50/task-updated.html,,/v50/tasks,"taskDueDate, taskName",None (prototype redirect), +v50,/v50/tasks,Tasks,v50/tasks.html,/v50/task-updated,"/v50/next-task-due-date, /v50/onb/tasks/clear-filters, /v50/pcd/call/follow-up-moc, /v50/pcd/call/next-attempt-moc, /v50/pcd/call/was-text-message-sent, /v50/pcd/pre-draft/contacted-by, /v50/pcd/send/email-details, /v50/pcd/send/letter-details, /v50/task-assignee, /v50/update-manual-task, /v50/vcl/call/follow-up-moc, /v50/vcl/call/next-attempt-moc, /v50/vcl/call/was-text-message-sent, /v50/vcl/pre-draft/contacted-by, /v50/vcl/send/email-details, /v50/vcl/send/letter-details, /v50/victim","area, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, onboardedStatus, pcdFumoc, pcdSent, pcdStatus, service, serviceLead, taskAssignee, taskDueDate, vclFumoc, vclStatus, victimForename, victimSurname, vlo",None (prototype redirect),"loop.index == 6 | (data['pcdSent'] == ""yes"") or (data['pcdFumoc'] == ""None"") or (data['nextTask'] == """") or (data['nextTask'] == ""no-task"") | (data['nextTask'] == ""dtc"") | data['meetingPurpose'] == ""pre-trial"" | data['taskDueDate'] | data['onboardedStatus'] == 'Yes' | (data['nextTask'] == ""dtc"") or (data['nextTask'] == ""nfa"") | (data['pcdStatus'] == ""log-not-started"") | (data['pcdFumoc'] == ""Email"") | (data['vclStatus'] == ""log-not-started"") | (data['vclFumoc'] == ""Email"") | record.purpose | record.dueDateTag" +v50,/v50/update-manual-task,Update task status,v50/update-manual-task.html,/v50/tasks,/v50/update-manual-task-answer,"manualTaskName, taskAction, taskDueDate, taskNote",None (prototype redirect),"data['taskDueDate'] | data['taskNote'] == """" | request.body['taskAction'] === 'complete'" +v50,/v50/victim,Victim,v50/victim/index.html,"/v50/other/call-logged, /v50/other/email-logged, /v50/other/in-person-logged, /v50/other/letter-logged, /v50/other/other-logged, /v50/other/text-message-logged, /v50/pcd/follow-up/call-logged, /v50/pcd/follow-up/email-logged, /v50/pcd/follow-up/letter-logged, /v50/pcd/follow-up/not-contacted-logged, /v50/pcd/send/email-logged, /v50/pcd/send/letter-logged, /v50/tasks, /v50/victim/case-contacts/family-liaison-officer, /v50/victim/case-contacts/idva, /v50/victim/case-contacts/isva, /v50/victim/new-task/task-created, /v50/victims, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2, /v50/wft-meetings/victims",,"area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v50,/v50/victim/case-contacts/family-liaison-officer,Family Liaison Officer,v50/victim/case-contacts/family-liaison-officer.html,,"/v50/victim, /v50/victim/case-contacts/family-liaison-officer-answer, /v50/victim/case-contacts/family-liaison-officer-delete","familyLiaisonOfficerDeleted, familyLiaisonOfficerEmailAddress, familyLiaisonOfficerForename, familyLiaisonOfficerName, familyLiaisonOfficerPhoneNumber, familyLiaisonOfficerSurname",None (prototype redirect),isExisting | isExisting +v50,/v50/victim/case-contacts/idva,Independent Domestic Violence Advisor (IDVA),v50/victim/case-contacts/idva.html,,"/v50/victim, /v50/victim/case-contacts/idva-answer, /v50/victim/case-contacts/idva-delete","idvaAddressLine1, idvaAddressLine2, idvaAddressLine3, idvaAddressLine4, idvaAddressLine5, idvaCity, idvaCounty, idvaDeleted, idvaEmailAddress, idvaName, idvaPhoneNumber, idvaPostCode",None (prototype redirect),isExisting | isExisting +v50,/v50/victim/case-contacts/isva,Independent Sexual Violence Advisor (ISVA),v50/victim/case-contacts/isva.html,,"/v50/victim, /v50/victim/case-contacts/isva-answer, /v50/victim/case-contacts/isva-delete","isvaAddressLine1, isvaAddressLine2, isvaAddressLine3, isvaAddressLine4, isvaAddressLine5, isvaCity, isvaCounty, isvaDeleted, isvaEmailAddress, isvaName, isvaPhoneNumber, isvaPostCode",None (prototype redirect),isExisting | isExisting +v50,/v50/victim/case-information/area,Change area,v50/victim/case-information/area.html,,/v50/victim/case-information/area-answer,area,None (prototype redirect), +v50,/v50/victim/case-information/charging-type,Change charging type,v50/victim/case-information/charging-type.html,,/v50/victim/case-information/charging-type-answer,,None (prototype redirect), +v50,/v50/victim/index-notasks,Victim,v50/victim/index-notasks.html,,/v50/victim/new-task/task-selection,"area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v50,/v50/victim/index-withtasks,Victim,v50/victim/index-withtasks.html,,/v50/victim/new-task/task-selection,"area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v50,/v50/victim/index-withtasks-v2,Victim,v50/victim/index-withtasks-v2.html,,,"area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v50,/v50/victim/index-withtasks-v3,Victim,v50/victim/index-withtasks-v3.html,,/v50/victim/new-task/task-selection,"area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v50,/v50/victim/index-withtasks-v4,Victim,v50/victim/index-withtasks-v4.html,,/v50/victim/new-task/task-selection,"area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v50,/v50/victim/new-task/check-task,Check the task details are correct,v50/victim/new-task/check-task.html,,"/v50/victim/new-task/check-task-answer, /v50/victim/new-task/manual-task, /v50/victim/new-task/meeting-purpose, /v50/victim/new-task/task-due-date, /v50/victim/new-task/task-selection","existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, existingTaskNote, manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] | data['nextTask'] == ""dtc"" | data['nextTask'] == ""meeting-offer"" or data['nextTask'] == ""meeting-arranged"" or data['nextTask'] == ""meeting-outcome"" | data['meetingPurpose'] == ""pre-trial"" | data['manualTask'] == ""yes"" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == """" | data['taskDueDate'] | duplicateNonMeeting || duplicateMeeting" +v50,/v50/victim/new-task/manual-task,Set a reminder,v50/victim/new-task/manual-task.html,"/v50/victim/new-task/check-task, /v50/wft-meetings/new-task/check-task",/v50/victim/new-task/manual-task-answer,"manualTaskName, taskNote, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/new-task/meeting-purpose,Task selection,v50/victim/new-task/meeting-purpose.html,/v50/victim/new-task/check-task,/v50/victim/new-task/meeting-purpose-answer,"existingMeetingPurpose, existingTask, meetingPurposeDetails, nextTask",None (prototype redirect), +v50,/v50/victim/new-task/task-already-exists,This task already exists,v50/victim/new-task/task-already-exists.html,,"/v50/victim/new-task/task-already-exists-answer, /v50/victim/new-task/task-due-date","existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, taskDueDate, victimForename, victimSurname",None (prototype redirect),"data['existingTask'] == ""meeting-offer"" or data['existingTask'] == ""meeting-arranged"" or data['existingTask'] == ""meeting-outcome"" | data['existingMeetingPurpose'] == ""pre-trial"" | data['existingTask'] == ""dtc"" | data['existingTask'] == ""meeting-offer"" or data['existingTask'] == ""meeting-arranged"" or data['existingTask'] == ""meeting-outcome"" | data['existingMeetingPurpose'] == ""pre-trial"" | data['existingTaskDueDate']" +v50,/v50/victim/new-task/task-created,Victim onboarded,v50/victim/new-task/task-created.html,,/v50/victim,"manualTaskName, nextTask, taskDueDate",None (prototype redirect),"data['nextTask'] == ""dtc""" +v50,/v50/victim/new-task/task-due-date,Task due date,v50/victim/new-task/task-due-date.html,"/v50/pcd/draft/task-already-exists, /v50/victim/new-task/check-task, /v50/victim/new-task/task-already-exists, /v50/wft-meetings/new-task/check-task",/v50/victim/new-task/task-due-date-answer,"existingTaskDueDate, taskDueDate",None (prototype redirect),fromTaskAlreadyExists | fromPcd | fromCheck and data['taskDueDate'] | request.body.fromTaskAlreadyExists === 'yes' | request.body.fromPcd === 'yes' +v50,/v50/victim/new-task/task-selection,Task selection,v50/victim/new-task/task-selection.html,"/v50/victim/index-notasks, /v50/victim/index-withtasks, /v50/victim/index-withtasks-v3, /v50/victim/index-withtasks-v4, /v50/victim/new-task/check-task, /v50/wft-meetings/new-task/check-task",/v50/victim/new-task/next-task-answer,"existingTask, nextTask, victimForename, victimSurname",None (prototype redirect),"nextTask == ""dtc"" | nextTask == ""nfa"" | nextTask == ""stopped-charge"" | nextTask == ""altered-charge"" | nextTask == ""other"" | nextTask == ""no-task"" | nextTask == ""meeting-offer"" || nextTask == ""meeting-arranged"" || nextTask == ""meeting-outcome""" +v50,/v50/victim/task-details/another-task1,Victim record,v50/victim/task-details/another-task1.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/task-details/another-task2,Victim record,v50/victim/task-details/another-task2.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/task-details/another-task3,Victim record,v50/victim/task-details/another-task3.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/task-details/decision-to-charge,Victim record,v50/victim/task-details/decision-to-charge.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/task-details/decision-to-charge-order,Victim record,v50/victim/task-details/decision-to-charge-order.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/task-details/outcome-logged,Victim record,v50/victim/task-details/outcome-logged.html,,,"caseUrn, subTab, victimForename, victimSurname",None (prototype redirect),"(data['subTab'] == ""ptm"")" +v50,/v50/victim/task-details/outcome-logged2,Victim record,v50/victim/task-details/outcome-logged2.html,,,"caseUrn, subTab, victimForename, victimSurname",None (prototype redirect),"(data['subTab'] == ""ptm"")" +v50,/v50/victim/victim-details/address,Victim's address,v50/victim/victim-details/address.html,,/v50/victim/victim-details/address-answer,"victimAddressLine1, victimAddressLine2, victimAddressLine3, victimAddressLine4, victimAddressLine5, victimForename, victimPostCode, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/category,Victim category,v50/victim/victim-details/category.html,,/v50/victim/victim-details/category-answer,"victimForename, victimSurname",None (prototype redirect),opt.hint +v50,/v50/victim/victim-details/contact-times,Preferred contact times,v50/victim/victim-details/contact-times.html,,/v50/victim/victim-details/contact-times-answer,"preferredContactTimes, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/correspondence-language,Preferred correspondence language,v50/victim/victim-details/correspondence-language.html,,/v50/victim/victim-details/correspondence-language-answer,"preferredCorrespondenceLanguageOther, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/date-of-birth,Victim's date of birth,v50/victim/victim-details/date-of-birth.html,,/v50/victim/victim-details/date-of-birth-answer,"victimDobDay, victimDobMonth, victimDobYear, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/disability,Disability or access needs,v50/victim/victim-details/disability.html,,/v50/victim/victim-details/disability-answer,"victimDisability, victimDisabilityDetails",None (prototype redirect), +v50,/v50/victim/victim-details/email-address,Victim's email address,v50/victim/victim-details/email-address.html,,/v50/victim/victim-details/email-address-answer,"victimEmailAddress, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/ethnicity,Victim ethnicity,v50/victim/victim-details/ethnicity.html,,/v50/victim/victim-details/ethnicity-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/full-name,Victim's full name,v50/victim/victim-details/full-name.html,,/v50/victim/victim-details/full-name-answer,"victimForename, victimSurname, victimTitle",None (prototype redirect), +v50,/v50/victim/victim-details/gender,Victim gender,v50/victim/victim-details/gender.html,,/v50/victim/victim-details/gender-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/pmoc,Preferred method of contact,v50/victim/victim-details/pmoc.html,,/v50/victim/victim-details/pmoc-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/pmoc-police,Preferred method of contact for police,v50/victim/victim-details/pmoc-police.html,,/v50/victim/victim-details/pmoc-police-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/power-of-attorney,Power of attorney details,v50/victim/victim-details/power-of-attorney.html,,/v50/victim/victim-details/power-of-attorney-answer,"powerOfAttorneyEmail, powerOfAttorneyName, powerOfAttorneyPhone",None (prototype redirect), +v50,/v50/victim/victim-details/preferred-name,Victim's preferred name,v50/victim/victim-details/preferred-name.html,,/v50/victim/victim-details/preferred-name-answer,"victimForename, victimPreferredName, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/previous-convictions,Previous convictions,v50/victim/victim-details/previous-convictions.html,,/v50/victim/victim-details/previous-convictions-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/reasonable-adjustments,Reasonable adjustments,v50/victim/victim-details/reasonable-adjustments.html,,/v50/victim/victim-details/reasonable-adjustments-answer,"reasonableAdjustments, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/religion,Religion or belief,v50/victim/victim-details/religion.html,,/v50/victim/victim-details/religion-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/risk-level,Domestic abuse risk level,v50/victim/victim-details/risk-level.html,,/v50/victim/victim-details/risk-level-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/service,Change service,v50/victim/victim-details/service.html,,/v50/victim/victim-details/service-answer,"service, serviceLead, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/telephone-number,Victim's telephone number,v50/victim/victim-details/telephone-number.html,,/v50/victim/victim-details/telephone-number-answer,"victimForename, victimHomePhone, victimPhoneNumber, victimSurname, victimWorkPhone",None (prototype redirect), +v50,/v50/victim/victim-details/translator-needed,Translator needed,v50/victim/victim-details/translator-needed.html,,/v50/victim/victim-details/translator-needed-answer,"translatorNeededDetails, victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/victim-representative,Victim representative details,v50/victim/victim-details/victim-representative.html,,/v50/victim/victim-details/victim-representative-answer,"victimRepresentativeEmail, victimRepresentativeName, victimRepresentativePhone",None (prototype redirect), +v50,/v50/victim/victim-details/vps-status,VPS status,v50/victim/victim-details/vps-status.html,,/v50/victim/victim-details/vps-status-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victim/victim-details/wants-contact,Do they want to be contacted?,v50/victim/victim-details/wants-contact.html,,/v50/victim/victim-details/wants-contact-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/victims,Victims,v50/victims.html,/v50/onb/onboarded,"/v50/change-service, /v50/onb/service-lead, /v50/victim, /v50/vlo","area, caseUrn, onboardedStatus, service, serviceLead, victimForename, victimSurname, vlo",None (prototype redirect),"vloNameParts | length == 2 | data['serviceLead'] == 'Not aligned' | vlo.checked | record.surname == 'PALMER' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['serviceLead'] == 'Not aligned' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | record.onboarded | record.area | record.service in ['Universal', 'Enhanced', 'RASSO'] | record.onboarded" +v50,/v50/vlo,Victim liaison officer,v50/vlo.html,"/v50/victims, /v50/wft-meetings/victims",/v50/onb/vlo-answer,"victimForename, victimSurname, vlo",None (prototype redirect), +v50,/v50/wft-meetings/log-arranged-meeting,Tasks,v50/wft-meetings/log-arranged-meeting.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/log-arranged-meeting-check,Tasks,v50/wft-meetings/log-arranged-meeting-check.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/log-meeting-outcome,Tasks,v50/wft-meetings/log-meeting-outcome.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/log-meeting-outcome-check,Tasks,v50/wft-meetings/log-meeting-outcome-check.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/log-offer-response,Tasks,v50/wft-meetings/log-offer-response.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/log-offer-response-check,Tasks,v50/wft-meetings/log-offer-response-check.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/log-offer-task,Tasks,v50/wft-meetings/log-offer-task.html,,/v50/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v50,/v50/wft-meetings/new-task/check-task,Check the task details are correct,v50/wft-meetings/new-task/check-task.html,,"/v50/victim/new-task/manual-task, /v50/victim/new-task/task-due-date, /v50/victim/new-task/task-selection","manualTask, nextTask, taskDueDate, taskName, taskNote, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] | data['manualTask'] == ""yes"" | data['taskName'] | data['taskDueDate'] | data['taskNote'] == """" | data['taskDueDate']" +v50,/v50/wft-meetings/new-task/manual-task,Set a reminder,v50/wft-meetings/new-task/manual-task.html,,/v50/victim/new-task/manual-task-answer,"taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect), +v50,/v50/wft-meetings/new-task/purposet,Task selection,v50/wft-meetings/new-task/purposet.html,,/v50/wft-meetings/new-task/purposet-answer,purposet,None (prototype redirect), +v50,/v50/wft-meetings/new-task/task-created,Victim onboarded,v50/wft-meetings/new-task/task-created.html,,,"manualTask, nextTask, taskDueDate, taskName, victimForename, victimSurname",None (prototype redirect),"data['manualTask'] == ""yes""" +v50,/v50/wft-meetings/new-task/task-due-date,Task due date,v50/wft-meetings/new-task/task-due-date.html,,/v50/wft-meetings/new-task/task-due-date-answer,taskDueDate,None (prototype redirect), +v50,/v50/wft-meetings/new-task/task-selection,Task selection,v50/wft-meetings/new-task/task-selection.html,,/v50/wft-meetings/new-task/next-task-answer,"victimForename, victimSurname",None (prototype redirect), +v50,/v50/wft-meetings/tasks,Tasks,v50/wft-meetings/tasks.html,,"/v50/change-task-due-date, /v50/onb/tasks/clear-filters, /v50/pcd/call/follow-up-moc, /v50/pcd/call/next-attempt-moc, /v50/pcd/call/was-text-message-sent, /v50/pcd/pre-draft/check-details, /v50/pcd/pre-draft/contacted-by, /v50/pcd/send/email-details, /v50/pcd/send/letter-details, /v50/task-assignee, /v50/victim","area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo",None (prototype redirect),"assigneeNameParts | length == 2 | (data['pcdSent'] == ""yes"") or (data['pcdFumoc'] == ""None"") | (data['pcdType'] == ""dtc"") | (data['pcdStatus'] == ""check-details"") | (data['pcdFumoc'] == ""email"")" +v50,/v50/wft-meetings/tasks2,Tasks,v50/wft-meetings/tasks2.html,,"/v50/change-task-due-date, /v50/onb/tasks/clear-filters, /v50/pcd/call/follow-up-moc, /v50/pcd/call/next-attempt-moc, /v50/pcd/call/was-text-message-sent, /v50/pcd/pre-draft/check-details, /v50/pcd/pre-draft/contacted-by, /v50/pcd/send/email-details, /v50/pcd/send/letter-details, /v50/task-assignee, /v50/victim","area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo",None (prototype redirect),"assigneeNameParts | length == 2 | (data['pcdSent'] == ""yes"") or (data['pcdFumoc'] == ""None"") | (data['pcdType'] == ""dtc"") | (data['pcdStatus'] == ""check-details"") | (data['pcdFumoc'] == ""email"")" +v50,/v50/wft-meetings/victims,Victims,v50/wft-meetings/victims.html,,"/v50/onb/service-lead, /v50/victim, /v50/vlo","area, caseUrn, onboardedStatus, serviceLead, victimForename, victimSurname, vlo",None (prototype redirect),vloNameParts | length == 2 | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] != 'Yes' | data['onboardedStatus'] == 'Yes' +v51,/v51/case-locked/by-someone-else,Case locked,v51/case-locked/by-someone-else.html,,/v51/pcd/victim,,None (prototype redirect), +v51,/v51/case-locked/self-locked,Case locked,v51/case-locked/self-locked.html,,/v51/pcd/victim,,None (prototype redirect), +v51,/v51/change-service,Change service,v51/change-service.html,/v51/victims,/v51/change-service-answer,"service, serviceLead, victimForename, victimSurname",None (prototype redirect), +v51,/v51/change-task-due-date,Change task due date,v51/change-task-due-date.html,"/v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/change-task-due-date-answer,"reasonForDueDateChange, taskDueDate",None (prototype redirect),newDueDate === previousDueDate +v51,/v51/next-task-due-date,Task due date,v51/next-task-due-date.html,/v51/tasks,/v51/change-task-due-date-answer,taskDueDate,None (prototype redirect),newDueDate === previousDueDate +v51,/v51/onb/check-details,Check the details before drafting the letter,v51/onb/check-details/index.html,,"/v51/onb/check-details-answer, /v51/onb/check-details/case-type, /v51/onb/check-details/pmoc, /v51/onb/check-details/preferred-contact-times, /v51/onb/check-details/preferred-correspondence-language, /v51/onb/check-details/preferred-name, /v51/onb/check-details/risk-level, /v51/onb/check-details/translator-needed, /v51/onb/check-details/vps-status, /v51/onb/check-task-vlo, /v51/onb/service-lead","caseType, detailChange, onboardedStatus, pmoc, preferredContactTimes, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, preferredName, riskLevel, serviceLead, successNotification, translatorNeeded, victimForename, victimSurname, vlo, vpsStatus",None (prototype redirect),"(data['successNotification'] == ""yes"") and (data['onboardedStatus'] == ""Yes"") | data['detailChange'] == ""no"" | data['serviceLead'] == 'Not aligned' | data['serviceLead'] == ""Not aligned"" | data['preferredCorrespondenceLanguage'] == ""Other"" | data['vlo'] | data['caseType'] | data['riskLevel'] | data['pmoc'] | data['preferredCorrespondenceLanguage'] == ""English"" or data['preferredCorrespondenceLanguage'] == ""Welsh"" or data['preferredCorrespondenceLanguage'] == ""Other"" | data['preferredCorrespondenceLanguage'] == ""Other"" | data['translatorNeeded'] == ""Yes"" or data['translatorNeeded'] == ""No"" | data['preferredContactTimes'] | data['preferredName'] | data['vpsStatus']" +v51,/v51/onb/check-details/case-type,Charging type,v51/onb/check-details/case-type.html,/v51/onb/check-details,/v51/check-details/case-type-answer,,None (prototype redirect), +v51,/v51/onb/check-details/pmoc,Preferred method of contact,v51/onb/check-details/pmoc.html,/v51/onb/check-details,/v51/check-details/pmoc-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-details/preferred-contact-times,Preferred contact times,v51/onb/check-details/preferred-contact-times.html,/v51/onb/check-details,/v51/check-details/preferred-contact-times-answer,"preferredContactTimes, victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-details/preferred-correspondence-language,Preferred correspondence language,v51/onb/check-details/preferred-correspondence-language.html,/v51/onb/check-details,/v51/check-details/preferred-correspondence-language-answer,"preferredCorrespondenceLanguageOther, victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-details/preferred-name,Preferred name,v51/onb/check-details/preferred-name.html,/v51/onb/check-details,/v51/check-details/preferred-name-answer,"preferredName, victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-details/risk-level,Domestic abuse risk level,v51/onb/check-details/risk-level.html,/v51/onb/check-details,/v51/check-details/risk-level-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-details/translator-needed,Translator needed,v51/onb/check-details/translator-needed.html,/v51/onb/check-details,/v51/check-details/translator-needed-answer,"translatorNeededDetails, victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-details/vps-status,VPS status,v51/onb/check-details/vps-status.html,/v51/onb/check-details,/v51/check-details/vps-status-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/check-task,Check the task details are correct,v51/onb/check-task.html,,"/v51/onb/check-task-answer, /v51/onb/manual-task, /v51/onb/meeting-purpose, /v51/onb/next-task, /v51/onb/next-task-due-date","manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] | data['nextTask'] == ""dtc"" | data['nextTask'] == ""no-task"" | data['nextTask'] == ""meeting-offer"" or data['nextTask'] == ""meeting-arranged"" or data['nextTask'] == ""meeting-outcome"" | data['meetingPurpose'] == ""pre-trial"" | data['manualTask'] == ""yes"" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == """" | data['taskDueDate'] | data['nextTask'] == ""no-task""" +v51,/v51/onb/check-task-vlo,Victim liaison officer,v51/onb/check-task-vlo.html,/v51/onb/check-details,/v51/onb/check-task-vlo-answer,"victimForename, victimSurname, vlo",None (prototype redirect),request.session.data.vloReturnTo === 'check-task' | request.session.data.vloReturnTo === 'check-details' +v51,/v51/onb/manual-task,Create a task,v51/onb/manual-task.html,/v51/onb/check-task,/v51/onb/manual-task-answer,"manualTaskName, taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/meeting-purpose,Task selection,v51/onb/meeting-purpose.html,/v51/onb/check-task,/v51/onb/meeting-purpose-answer,meetingPurposeDetails,None (prototype redirect), +v51,/v51/onb/next-task,Next task,v51/onb/next-task.html,/v51/onb/check-task,/v51/onb/next-task-answer,"nextTask, victimForename, victimSurname",None (prototype redirect),"nextTask == ""other"" | nextTask == ""no-task"" | nextTask == ""meeting-offer"" || nextTask == ""meeting-arranged"" || nextTask == ""meeting-outcome""" +v51,/v51/onb/next-task-due-date,Task due date,v51/onb/next-task-due-date.html,/v51/onb/check-task,/v51/onb/next-task-due-date-answer,taskDueDate,None (prototype redirect), +v51,/v51/onb/onboarded,Victim onboarded,v51/onb/onboarded.html,,/v51/victims,"manualTaskName, nextTask, taskDueDate, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] == ""dtc""" +v51,/v51/onb/pmoc,Preferred method of contact,v51/onb/pmoc.html,,/v51/onb/pmoc-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/onb/service-lead,Service lead,v51/onb/service-lead.html,"/v51/onb/check-details, /v51/victims, /v51/wft-meetings/victims",/v51/onb/service-lead-answer,"victimForename, victimSurname",None (prototype redirect),"onboardedStatus == ""no""" +v51,/v51/other/call-logged,Telephone call logged,v51/other/call-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/other/contacted-by,How did you contact the victim?,v51/other/contacted-by.html,,/v51/other/contacted-by-answer,"contactedBy, otherContactMethod, victimForename, victimSurname",None (prototype redirect),"contactedBy == ""call"" | contactedBy == ""email"" | contactedBy == ""post"" | contactedBy == ""text"" | contactedBy == ""in-person"" | contactedBy == ""other""" +v51,/v51/other/email-details,Log an email,v51/other/email-details.html,,/v51/other/email-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, otherCommunications, otherEmailDate, otherEmailHour, otherEmailMinutes, otherEmailType, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(request.session.data['otherCommunications']) +v51,/v51/other/email-logged,Email logged,v51/other/email-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/other/in-person,Log an in-person conversation,v51/other/in-person.html,,/v51/other/in-person-answer,"otherCommunications, otherInPersonDate, otherInPersonHour, otherInPersonMinutes, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v51,/v51/other/in-person-logged,In-person meeting logged,v51/other/in-person-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/other/letter-details,Log a letter,v51/other/letter-details.html,,/v51/other/letter-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherLetterDate, otherLetterHour, otherLetterMinutes, otherLetterType, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(request.session.data['otherCommunications']) +v51,/v51/other/letter-logged,Letter logged,v51/other/letter-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/other/log,Log a communication,v51/other/log.html,,,"dateOfCommunicationDay, dateOfCommunicationMonth, dateOfCommunicationYear, individualOtherName, purposeOfCommunication",None (prototype redirect), +v51,/v51/other/other,Log other communication,v51/other/other.html,,/v51/other/other-details-answer,"otherCommsDate, otherCommsHour, otherCommsMinutes, otherCommsType, otherCommunications, otherContactMethod, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v51,/v51/other/other-logged,Other communication logged,v51/other/other-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/other/telephone-call,Log a telephone call,v51/other/telephone-call.html,,/v51/other/telephone-call-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, otherCallDate, otherCallHour, otherCallMinutes, otherCallType, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(request.session.data['otherCommunications']) +v51,/v51/other/text-message,Log a text message,v51/other/text-message.html,,/v51/other/text-message-answer,"otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherTextMessageDate, otherTextMessageHour, otherTextMessageMinutes, otherTextMessageType, purposeOfCommunication, victimForename, victimSurname",None (prototype redirect),!Array.isArray(request.session.data['otherCommunications']) +v51,/v51/other/text-message-logged,Text message logged,v51/other/text-message-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/overview,Overview,v51/overview.html,,/v51/onb/tasks,,None (prototype redirect), +v51,/v51/overview2,Overview,v51/overview2.html,,,,JS submit guard, +v51,/v51/overview3,Overview,v51/overview3.html,,,,JS submit guard, +v51,/v51/overview4,Overview,v51/overview4.html,,,,JS submit guard, +v51,/v51/overview5,Overview,v51/overview5.html,,,,JS submit guard, +v51,/v51/overview6-initial,Overview,v51/overview6-initial.html,,,,None (prototype redirect), +v51,/v51/overview6-vlm,Overview,v51/overview6-vlm.html,,,,None (prototype redirect), +v51,/v51/overview6-vlo,Overview,v51/overview6-vlo.html,,,,None (prototype redirect), +v51,/v51/pcd/call/follow-up-moc,Follow-up method of contact,v51/pcd/call/follow-up-moc.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/pcd/call/follow-up-moc-answer,"pcdCallAttempt, pcdFumoc, victimForename, victimSurname",None (prototype redirect),"pcdFumoc == ""Email"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2"" | pcdFumoc == ""Post"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2""" +v51,/v51/pcd/call/next-attempt-moc,Next attempt method of contact,v51/pcd/call/next-attempt-moc.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/pcd/call/next-attempt-moc-answer,"pcdAttemptToContactAgain, pcdCallAttempt",None (prototype redirect),"pcdAttemptToContactAgain == ""call"" | pcdCallAttempt == ""1"" | pcdAttemptToContactAgain == ""email"" | pcdCallAttempt == ""1"" | pcdCallAttempt == ""2""" +v51,/v51/pcd/call/phone-call-1,Telephone call 1,v51/pcd/call/phone-call-1.html,,/v51/pcd/call/phone-call-1-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate1, pcdVictimInformed1, victimForename, victimSurname",None (prototype redirect),"data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | pcdVictimInformed1 == ""Yes""" +v51,/v51/pcd/call/phone-call-2,Telephone call 2,v51/pcd/call/phone-call-2.html,,/v51/pcd/call/phone-call-2-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate2, pcdVictimInformed2, victimForename, victimSurname",None (prototype redirect),"data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | pcdVictimInformed2 == ""Yes""" +v51,/v51/pcd/call/phone-call-3,Telephone call 3 details,v51/pcd/call/phone-call-3.html,,/v51/pcd/call/phone-call-3-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate3, pcdVictimInformed3, victimForename, victimSurname",None (prototype redirect),"data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | pcdVictimInformed3 == ""Yes""" +v51,/v51/pcd/call/text-message-details,Text message details,v51/pcd/call/text-message-details.html,,/v51/pcd/call/text-message-details-answer,pcdCallDate1,None (prototype redirect), +v51,/v51/pcd/call/was-text-message-sent,Was a text message sent to the victim?,v51/pcd/call/was-text-message-sent.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/pcd/call/was-text-message-sent-answer,"pcdWasTextMessageSent, victimForename, victimSurname",None (prototype redirect),"pcdWasTextMessageSent == ""Yes""" +v51,/v51/pcd/draft/first-hearing,First hearing,v51/pcd/draft/first-hearing.html,,/v51/pcd/draft/first-hearing-answer,"firstHearingDate, firstHearingLocation",None (prototype redirect), +v51,/v51/pcd/draft/pcd-type,Charging decision type,v51/pcd/draft/pcd-type.html,,/v51/pcd/draft/pcd-type-answer,"existingTask, pcdType, victimForename, victimSurname",None (prototype redirect),"pcdType == ""dtc"" | existingTask == ""dtc"" | pcdType == ""nfa"" | existingTask == ""nfa""" +v51,/v51/pcd/draft/task-already-exists,This task already exists,v51/pcd/draft/task-already-exists.html,,"/v51/pcd/draft/task-already-exists-answer, /v51/victim/new-task/task-due-date","existingTask, existingTaskDueDate, pcdType, victimForename, victimSurname",None (prototype redirect),"data['existingTask'] == ""dtc"" | data['existingTaskDueDate']" +v51,/v51/pcd/follow-up/call-logged,Follow-up telephone call logged,v51/pcd/follow-up/call-logged.html,,/v51/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v51,/v51/pcd/follow-up/email-details,Follow-up email details,v51/pcd/follow-up/email-details.html,,/v51/pcd/follow-up/email-details-answer,"followUpEmailDispatchDate, followUpEmailDispatchNotes, followUpEmailIndividual, followUpEmailIndividualName, followUpEmailIndividualRole, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname",error markup,data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/pcd/follow-up/email-logged,Follow-up email logged,v51/pcd/follow-up/email-logged.html,,/v51/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v51,/v51/pcd/follow-up/letter-details,Follow-up letter details,v51/pcd/follow-up/letter-details.html,,/v51/pcd/follow-up/letter-details-answer,"followUpLetterDispatchDate, followUpLetterDispatchNotes, followUpLetterIndividual, followUpLetterIndividualName, followUpLetterIndividualRole, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname",error markup,data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/pcd/follow-up/letter-logged,Follow-up letter logged,v51/pcd/follow-up/letter-logged.html,,/v51/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v51,/v51/pcd/follow-up/log-follow-up,Log a follow-up,v51/pcd/follow-up/log-follow-up.html,,/v51/pcd/follow-up/log-follow-up-answer,"pcdFollowUpType, victimForename, victimSurname",error markup,"pcdFollowUpType == ""call"" | pcdFollowUpType == ""email"" | pcdFollowUpType == ""not-contacted""" +v51,/v51/pcd/follow-up/not-contacted-logged,Decision not to contact logged,v51/pcd/follow-up/not-contacted-logged.html,,/v51/victim,"pcdType, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"")" +v51,/v51/pcd/follow-up/not-contacted-reason,Reason for not contacting the victim,v51/pcd/follow-up/not-contacted-reason.html,,/v51/pcd/follow-up/not-contacted-reason-answer,"followUpNotContactedReason, victimForename, victimSurname",error markup, +v51,/v51/pcd/follow-up/telephone-call,Follow-up telephone call,v51/pcd/follow-up/telephone-call.html,,/v51/pcd/follow-up/telephone-call-answer,"followUpCallDate, followUpCallHour, followUpCallIndividual, followUpCallIndividualName, followUpCallIndividualRole, followUpCallMinutes, followUpCallNotes, followUpCallType, followUpVictimInformed, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/pcd/pre-draft/check-eligibility,Check eligibility,v51/pcd/pre-draft/check-eligibility.html,,/v51/pcd/pre-draft/check-eligibility-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/pcd/pre-draft/contacted-by,How did you contact the victim?,v51/pcd/pre-draft/contacted-by.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/pcd/pre-draft/contacted-by-answer,"contactedBy, successReason, victimForename, victimSurname",None (prototype redirect),"data['successReason'] != ""task-created"" | contactedBy == ""call"" | contactedBy == ""email"" | contactedBy == ""post"" | contactedBy == ""not-contacted""" +v51,/v51/pcd/pre-draft/not-contacted-reason,Reason for not contacting the victim,v51/pcd/pre-draft/not-contacted-reason.html,,/v51/pcd/pre-draft/not-contacted-reason-answer,"notContactedReason, victimForename, victimSurname",None (prototype redirect), +v51,/v51/pcd/send/email-details,Email details,v51/pcd/send/email-details.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/pcd/send/email-details-answer,"emailDispatchDate, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/pcd/send/email-logged,Email logged,v51/pcd/send/email-logged.html,,/v51/victim,"contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"") | (data['contactedBy'] == ""call"") | (data['pcdCallAttempt'] == ""1"") | (data['pcdVictimInformed1'] == ""Yes"") | (data['pcdVictimInformed2'] == ""Yes"") | (data['pcdVictimInformed3'] == ""Yes"")" +v51,/v51/pcd/send/letter-details,Letter details,v51/pcd/send/letter-details.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/pcd/send/letter-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, letterDispatchDate, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/pcd/send/letter-logged,Letter logged,v51/pcd/send/letter-logged.html,,/v51/victim,"contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname",None (prototype redirect),"(data['pcdType'] == ""dtc"") | (data['contactedBy'] == ""call"") | (data['pcdCallAttempt'] == ""1"") | (data['pcdVictimInformed1'] == ""Yes"") | (data['pcdVictimInformed2'] == ""Yes"") | (data['pcdVictimInformed3'] == ""Yes"")" +v51,/v51/sign-in,Sign in to your account,v51/sign-in.html,,/v51/sign-in-answer,password,None (prototype redirect), +v51,/v51/task-assignee,Task Assignee,v51/task-assignee.html,"/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2",/v51/task-assignee-answer,"task-assignee, taskAssignee",None (prototype redirect), +v51,/v51/task-updated,Victim onboarded,v51/task-updated.html,,/v51/tasks,"taskDueDate, taskName",None (prototype redirect), +v51,/v51/tasks,Tasks,v51/tasks.html,/v51/task-updated,"/v51/next-task-due-date, /v51/onb/tasks/clear-filters, /v51/pcd/call/follow-up-moc, /v51/pcd/call/next-attempt-moc, /v51/pcd/call/was-text-message-sent, /v51/pcd/pre-draft/contacted-by, /v51/pcd/send/email-details, /v51/pcd/send/letter-details, /v51/task-assignee, /v51/update-manual-task, /v51/vcl/call/follow-up-moc, /v51/vcl/call/next-attempt-moc, /v51/vcl/call/was-text-message-sent, /v51/vcl/send/email-details, /v51/vcl/send/letter-details, /v51/vcl/start-task, /v51/victim","area, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, onboardedStatus, pcdFumoc, pcdSent, pcdStatus, service, serviceLead, taskAssignee, taskDueDate, vclFumoc, vclStatus, victimForename, victimSurname, vlo",None (prototype redirect),"loop.index == 6 | ((data['pcdSent'] == ""yes"") or (data['pcdFumoc'] == ""None"") or (data['nextTask'] == """") or (data['nextTask'] == ""no-task"")) and (data['nextTask'] != ""stopped-charge"") and (data['nextTask'] != ""altered-charge"") | (data['nextTask'] == ""dtc"") | data['meetingPurpose'] == ""pre-trial"" | data['taskDueDate'] | data['onboardedStatus'] == 'Yes' | (data['nextTask'] == ""dtc"") or (data['nextTask'] == ""nfa"") | (data['pcdStatus'] == ""log-not-started"") | (data['pcdFumoc'] == ""Email"") | (data['vclStatus'] == ""log-not-started"") | (data['vclFumoc'] == ""Email"") | record.purpose | record.dueDateTag" +v51,/v51/update-manual-task,Update task status,v51/update-manual-task.html,/v51/tasks,/v51/update-manual-task-answer,"manualTaskName, taskAction, taskDueDate, taskNote",None (prototype redirect),"data['taskDueDate'] | data['taskNote'] == """" | request.body['taskAction'] === 'complete'" +v51,/v51/vcl/call/follow-up-moc,Follow-up method of contact,v51/vcl/call/follow-up-moc.html,/v51/tasks,/v51/vcl/call/follow-up-moc-answer,"vdFumoc, vdNoFumocDetails, victimForename, victimSurname",None (prototype redirect),"fumoc == ""Email"" | fumoc == ""Post""" +v51,/v51/vcl/call/next-attempt-moc,Next attempt method of contact,v51/vcl/call/next-attempt-moc.html,/v51/tasks,/v51/vcl/call/next-attempt-moc-answer,"vdCallAttempts, vdNextMoc",None (prototype redirect),"(data['vdCallAttempts'] | length) < 3 | nextMoc == ""call"" | nextMoc == ""email""" +v51,/v51/vcl/call/phone-call,Telephone call,v51/vcl/call/phone-call.html,,/v51/vcl/call/phone-call-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, vdCallAttempts, vdCallDate, vdCallHour, vdCallIndividual, vdCallIndividualName, vdCallIndividualRole, vdCallMinutes, vdCallNotes, vdCallType, vdVictimInformed, victimForename, victimSurname",None (prototype redirect),"data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(data['vdCallAttempts']) | informed == ""Yes"" | attemptCount == 1" +v51,/v51/vcl/call/text-message-details,Text message details,v51/vcl/call/text-message-details.html,,/v51/vcl/call/text-message-details-answer,"vdCallAttempts, vdSecondCallHour, vdSecondCallMinutes, vdTextMessageDate, vdTextMessageHour, vdTextMessageMinutes, vdThirdCallHour, vdThirdCallMinutes, vdWasTextMessageSent",None (prototype redirect),last +v51,/v51/vcl/call/was-text-message-sent,Was a text message sent to the victim?,v51/vcl/call/was-text-message-sent.html,/v51/tasks,/v51/vcl/call/was-text-message-sent-answer,"vdCallAttempts, vdWasTextMessageSent, victimForename, victimSurname",None (prototype redirect),"last | data['vdWasTextMessageSent'] == ""Yes""" +v51,/v51/vcl/draft/stopped-charge,Stopped charge reason,v51/vcl/draft/stopped-charge.html,,/v51/vcl/draft/stopped-charge-answer,,None (prototype redirect), +v51,/v51/vcl/draft/substantially-altered-charge,Substantially altered charge,v51/vcl/draft/substantially-altered-charge.html,,/v51/vcl/draft/substantially-altered-charge-answer,,None (prototype redirect), +v51,/v51/vcl/draft/vcl-type,Communication type,v51/vcl/draft/vcl-type.html,,/v51/vcl/draft/vcl-type-answer,"commType, vdType, victimForename, victimSurname",None (prototype redirect),"commType == ""dtc"" || commType == ""nfa"" | field !== 'vdType' | commType == ""stopped-charge""" +v51,/v51/vcl/follow-up/email-details,Follow-up email details,v51/vcl/follow-up/email-details.html,,/v51/vcl/follow-up/email-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, vclFollowUpEmailDate, vclFollowUpEmailIndividual, vclFollowUpEmailIndividualName, vclFollowUpEmailIndividualRole, vclFollowUpEmailNotes, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/vcl/follow-up/email-logged,Follow-up email logged,v51/vcl/follow-up/email-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/vcl/follow-up/letter-details,Follow-up letter details,v51/vcl/follow-up/letter-details.html,,/v51/vcl/follow-up/letter-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, vclFollowUpLetterDate, vclFollowUpLetterIndividual, vclFollowUpLetterIndividualName, vclFollowUpLetterIndividualRole, vclFollowUpLetterNotes, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/vcl/follow-up/letter-logged,Follow-up letter logged,v51/vcl/follow-up/letter-logged.html,,/v51/victim,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/vcl/follow-up/log-follow-up,Log a follow-up,v51/vcl/follow-up/log-follow-up.html,,/v51/vcl/follow-up/log-follow-up-answer,"vclFollowUpType, victimForename, victimSurname",error markup,"followUpType == ""email""" +v51,/v51/vcl/pre-draft/contacted-by,How did you contact the victim?,v51/vcl/pre-draft/contacted-by.html,,/v51/vcl/pre-draft/contacted-by-answer,"vdContactedBy, victimForename, victimSurname",None (prototype redirect),"contactedBy == ""call"" | contactedBy == ""email"" | contactedBy == ""post""" +v51,/v51/vcl/pre-draft/not-contacted-reason,Reason for not contacting the victim,v51/vcl/pre-draft/not-contacted-reason.html,,/v51/vcl/pre-draft/not-contacted-reason-answer,"vdNotContactedReason, victimForename, victimSurname",None (prototype redirect), +v51,/v51/vcl/send/email-details,Email details,v51/vcl/send/email-details.html,/v51/tasks,/v51/vcl/send/email-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, vdEmailDate, vdEmailNotes, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/vcl/send/letter-details,Letter details,v51/vcl/send/letter-details.html,/v51/tasks,/v51/vcl/send/letter-details-answer,"idvaDeleted, idvaName, isvaDeleted, isvaName, vdLetterDate, vdLetterNotes, victimForename, victimSurname",None (prototype redirect),data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' +v51,/v51/victim,Victim,v51/victim/index.html,"/v51/other/call-logged, /v51/other/email-logged, /v51/other/in-person-logged, /v51/other/letter-logged, /v51/other/other-logged, /v51/other/text-message-logged, /v51/pcd/follow-up/call-logged, /v51/pcd/follow-up/email-logged, /v51/pcd/follow-up/letter-logged, /v51/pcd/follow-up/not-contacted-logged, /v51/pcd/send/email-logged, /v51/pcd/send/letter-logged, /v51/tasks, /v51/vcl/follow-up/email-logged, /v51/vcl/follow-up/letter-logged, /v51/victim/case-contacts/family-liaison-officer, /v51/victim/case-contacts/idva, /v51/victim/case-contacts/isva, /v51/victim/new-task/task-created, /v51/victims, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2, /v51/wft-meetings/victims",,"area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v51,/v51/victim/case-contacts/family-liaison-officer,Family Liaison Officer,v51/victim/case-contacts/family-liaison-officer.html,,"/v51/victim, /v51/victim/case-contacts/family-liaison-officer-answer, /v51/victim/case-contacts/family-liaison-officer-delete","familyLiaisonOfficerDeleted, familyLiaisonOfficerEmailAddress, familyLiaisonOfficerForename, familyLiaisonOfficerName, familyLiaisonOfficerPhoneNumber, familyLiaisonOfficerSurname",None (prototype redirect),isExisting | isExisting +v51,/v51/victim/case-contacts/idva,Independent Domestic Violence Advisor (IDVA),v51/victim/case-contacts/idva.html,,"/v51/victim, /v51/victim/case-contacts/idva-answer, /v51/victim/case-contacts/idva-delete","idvaAddressLine1, idvaAddressLine2, idvaAddressLine3, idvaAddressLine4, idvaAddressLine5, idvaCity, idvaCounty, idvaDeleted, idvaEmailAddress, idvaName, idvaPhoneNumber, idvaPostCode",None (prototype redirect),isExisting | isExisting +v51,/v51/victim/case-contacts/isva,Independent Sexual Violence Advisor (ISVA),v51/victim/case-contacts/isva.html,,"/v51/victim, /v51/victim/case-contacts/isva-answer, /v51/victim/case-contacts/isva-delete","isvaAddressLine1, isvaAddressLine2, isvaAddressLine3, isvaAddressLine4, isvaAddressLine5, isvaCity, isvaCounty, isvaDeleted, isvaEmailAddress, isvaName, isvaPhoneNumber, isvaPostCode",None (prototype redirect),isExisting | isExisting +v51,/v51/victim/case-information/area,Change area,v51/victim/case-information/area.html,,/v51/victim/case-information/area-answer,area,None (prototype redirect), +v51,/v51/victim/case-information/charging-type,Change charging type,v51/victim/case-information/charging-type.html,,/v51/victim/case-information/charging-type-answer,,None (prototype redirect), +v51,/v51/victim/index-notasks,Victim,v51/victim/index-notasks.html,,/v51/victim/new-task/task-selection,"area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v51,/v51/victim/index-withtasks,Victim,v51/victim/index-withtasks.html,,/v51/victim/new-task/task-selection,"area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v51,/v51/victim/index-withtasks-v2,Victim,v51/victim/index-withtasks-v2.html,,,"area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v51,/v51/victim/index-withtasks-v3,Victim,v51/victim/index-withtasks-v3.html,,/v51/victim/new-task/task-selection,"area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v51,/v51/victim/index-withtasks-v4,Victim,v51/victim/index-withtasks-v4.html,,/v51/victim/new-task/task-selection,"area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus",JS submit guard,"(data['case-locked'] == ""by-someone-else"") | (data['success'] == ""yes"") and (data['successReason'] == ""charging-type-updated"" or data['successReason'] == ""area-updated"") | (data['successReason'] == ""charging-type-updated"") | (data['successReason'] == ""email-address-updated"") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == ""Not aligned"" | (data['successReason'] == ""not-informed-after-call-1"") or (data['successReason'] == ""informed-after-call-1"")" +v51,/v51/victim/new-task/check-task,Check the task details are correct,v51/victim/new-task/check-task.html,,"/v51/victim/new-task/check-task-answer, /v51/victim/new-task/manual-task, /v51/victim/new-task/meeting-purpose, /v51/victim/new-task/task-due-date, /v51/victim/new-task/task-selection","existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, existingTaskNote, manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] | data['nextTask'] == ""dtc"" | data['nextTask'] == ""meeting-offer"" or data['nextTask'] == ""meeting-arranged"" or data['nextTask'] == ""meeting-outcome"" | data['meetingPurpose'] == ""pre-trial"" | data['manualTask'] == ""yes"" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == """" | data['taskDueDate'] | duplicateNonMeeting || duplicateMeeting" +v51,/v51/victim/new-task/manual-task,Set a reminder,v51/victim/new-task/manual-task.html,"/v51/victim/new-task/check-task, /v51/wft-meetings/new-task/check-task",/v51/victim/new-task/manual-task-answer,"manualTaskName, taskNote, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/new-task/meeting-purpose,Task selection,v51/victim/new-task/meeting-purpose.html,/v51/victim/new-task/check-task,/v51/victim/new-task/meeting-purpose-answer,"existingMeetingPurpose, existingTask, meetingPurposeDetails, nextTask",None (prototype redirect), +v51,/v51/victim/new-task/task-already-exists,This task already exists,v51/victim/new-task/task-already-exists.html,,"/v51/victim/new-task/task-already-exists-answer, /v51/victim/new-task/task-due-date","existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, taskDueDate, victimForename, victimSurname",None (prototype redirect),"data['existingTask'] == ""meeting-offer"" or data['existingTask'] == ""meeting-arranged"" or data['existingTask'] == ""meeting-outcome"" | data['existingMeetingPurpose'] == ""pre-trial"" | data['existingTask'] == ""dtc"" | data['existingTask'] == ""meeting-offer"" or data['existingTask'] == ""meeting-arranged"" or data['existingTask'] == ""meeting-outcome"" | data['existingMeetingPurpose'] == ""pre-trial"" | data['existingTaskDueDate']" +v51,/v51/victim/new-task/task-created,Victim onboarded,v51/victim/new-task/task-created.html,,/v51/victim,"manualTaskName, nextTask, taskDueDate",None (prototype redirect),"data['nextTask'] == ""dtc""" +v51,/v51/victim/new-task/task-due-date,Task due date,v51/victim/new-task/task-due-date.html,"/v51/pcd/draft/task-already-exists, /v51/victim/new-task/check-task, /v51/victim/new-task/task-already-exists, /v51/wft-meetings/new-task/check-task",/v51/victim/new-task/task-due-date-answer,"existingTaskDueDate, taskDueDate",None (prototype redirect),fromTaskAlreadyExists | fromPcd | fromCheck and data['taskDueDate'] | request.body.fromTaskAlreadyExists === 'yes' | request.body.fromPcd === 'yes' +v51,/v51/victim/new-task/task-selection,Task selection,v51/victim/new-task/task-selection.html,"/v51/victim/index-notasks, /v51/victim/index-withtasks, /v51/victim/index-withtasks-v3, /v51/victim/index-withtasks-v4, /v51/victim/new-task/check-task, /v51/wft-meetings/new-task/check-task",/v51/victim/new-task/next-task-answer,"existingTask, nextTask, victimForename, victimSurname",None (prototype redirect),"nextTask == ""dtc"" | nextTask == ""nfa"" | nextTask == ""stopped-charge"" | nextTask == ""altered-charge"" | nextTask == ""other"" | nextTask == ""no-task"" | nextTask == ""meeting-offer"" || nextTask == ""meeting-arranged"" || nextTask == ""meeting-outcome""" +v51,/v51/victim/task-details/another-task1,Victim record,v51/victim/task-details/another-task1.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/task-details/another-task2,Victim record,v51/victim/task-details/another-task2.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/task-details/decision-to-charge,Victim record,v51/victim/task-details/decision-to-charge.html,,,"caseUrn, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/task-details/outcome-logged,Victim record,v51/victim/task-details/outcome-logged.html,,,"caseUrn, subTab, victimForename, victimSurname",None (prototype redirect),"(data['subTab'] == ""ptm"")" +v51,/v51/victim/victim-details/address,Victim's address,v51/victim/victim-details/address.html,,/v51/victim/victim-details/address-answer,"victimAddressLine1, victimAddressLine2, victimAddressLine3, victimAddressLine4, victimAddressLine5, victimForename, victimPostCode, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/category,Victim category,v51/victim/victim-details/category.html,,/v51/victim/victim-details/category-answer,"victimForename, victimSurname",None (prototype redirect),opt.hint +v51,/v51/victim/victim-details/contact-times,Preferred contact times,v51/victim/victim-details/contact-times.html,,/v51/victim/victim-details/contact-times-answer,"preferredContactTimes, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/correspondence-language,Preferred correspondence language,v51/victim/victim-details/correspondence-language.html,,/v51/victim/victim-details/correspondence-language-answer,"preferredCorrespondenceLanguageOther, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/date-of-birth,Victim's date of birth,v51/victim/victim-details/date-of-birth.html,,/v51/victim/victim-details/date-of-birth-answer,"victimDobDay, victimDobMonth, victimDobYear, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/disability,Disability or access needs,v51/victim/victim-details/disability.html,,/v51/victim/victim-details/disability-answer,"victimDisability, victimDisabilityDetails",None (prototype redirect), +v51,/v51/victim/victim-details/email-address,Victim's email address,v51/victim/victim-details/email-address.html,,/v51/victim/victim-details/email-address-answer,"victimEmailAddress, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/ethnicity,Victim ethnicity,v51/victim/victim-details/ethnicity.html,,/v51/victim/victim-details/ethnicity-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/full-name,Victim's full name,v51/victim/victim-details/full-name.html,,/v51/victim/victim-details/full-name-answer,"victimForename, victimSurname, victimTitle",None (prototype redirect), +v51,/v51/victim/victim-details/gender,Victim gender,v51/victim/victim-details/gender.html,,/v51/victim/victim-details/gender-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/pmoc,Preferred method of contact,v51/victim/victim-details/pmoc.html,,/v51/victim/victim-details/pmoc-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/pmoc-police,Preferred method of contact for police,v51/victim/victim-details/pmoc-police.html,,/v51/victim/victim-details/pmoc-police-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/power-of-attorney,Power of attorney details,v51/victim/victim-details/power-of-attorney.html,,/v51/victim/victim-details/power-of-attorney-answer,"powerOfAttorneyEmail, powerOfAttorneyName, powerOfAttorneyPhone",None (prototype redirect), +v51,/v51/victim/victim-details/preferred-name,Victim's preferred name,v51/victim/victim-details/preferred-name.html,,/v51/victim/victim-details/preferred-name-answer,"victimForename, victimPreferredName, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/previous-convictions,Previous convictions,v51/victim/victim-details/previous-convictions.html,,/v51/victim/victim-details/previous-convictions-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/reasonable-adjustments,Reasonable adjustments,v51/victim/victim-details/reasonable-adjustments.html,,/v51/victim/victim-details/reasonable-adjustments-answer,"reasonableAdjustments, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/religion,Religion or belief,v51/victim/victim-details/religion.html,,/v51/victim/victim-details/religion-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/risk-level,Domestic abuse risk level,v51/victim/victim-details/risk-level.html,,/v51/victim/victim-details/risk-level-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/service,Change service,v51/victim/victim-details/service.html,,/v51/victim/victim-details/service-answer,"service, serviceLead, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/telephone-number,Victim's telephone number,v51/victim/victim-details/telephone-number.html,,/v51/victim/victim-details/telephone-number-answer,"victimForename, victimHomePhone, victimPhoneNumber, victimSurname, victimWorkPhone",None (prototype redirect), +v51,/v51/victim/victim-details/translator-needed,Translator needed,v51/victim/victim-details/translator-needed.html,,/v51/victim/victim-details/translator-needed-answer,"translatorNeededDetails, victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/victim-representative,Victim representative details,v51/victim/victim-details/victim-representative.html,,/v51/victim/victim-details/victim-representative-answer,"victimRepresentativeEmail, victimRepresentativeName, victimRepresentativePhone",None (prototype redirect), +v51,/v51/victim/victim-details/vps-status,VPS status,v51/victim/victim-details/vps-status.html,,/v51/victim/victim-details/vps-status-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victim/victim-details/wants-contact,Do they want to be contacted?,v51/victim/victim-details/wants-contact.html,,/v51/victim/victim-details/wants-contact-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/victims,Victims,v51/victims.html,/v51/onb/onboarded,"/v51/change-service, /v51/onb/service-lead, /v51/victim, /v51/vlo","area, caseUrn, onboardedStatus, service, serviceLead, victimForename, victimSurname, vlo",None (prototype redirect),"vloNameParts | length == 2 | data['serviceLead'] == 'Not aligned' | vlo.checked | record.surname == 'PALMER' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['serviceLead'] == 'Not aligned' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | record.onboarded | record.area | record.service in ['Universal', 'Enhanced', 'RASSO'] | record.onboarded" +v51,/v51/vlo,Victim liaison officer,v51/vlo.html,"/v51/victims, /v51/wft-meetings/victims",/v51/onb/vlo-answer,"victimForename, victimSurname, vlo",None (prototype redirect), +v51,/v51/wft-meetings/log-arranged-meeting,Tasks,v51/wft-meetings/log-arranged-meeting.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/log-arranged-meeting-check,Tasks,v51/wft-meetings/log-arranged-meeting-check.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/log-meeting-outcome,Tasks,v51/wft-meetings/log-meeting-outcome.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/log-meeting-outcome-check,Tasks,v51/wft-meetings/log-meeting-outcome-check.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/log-offer-response,Tasks,v51/wft-meetings/log-offer-response.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/log-offer-response-check,Tasks,v51/wft-meetings/log-offer-response-check.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/log-offer-task,Tasks,v51/wft-meetings/log-offer-task.html,,/v51/onb/tasks/clear-filters,"taskAssignee, taskDueDate",None (prototype redirect),assigneeNameParts | length == 2 +v51,/v51/wft-meetings/new-task/check-task,Check the task details are correct,v51/wft-meetings/new-task/check-task.html,,"/v51/victim/new-task/manual-task, /v51/victim/new-task/task-due-date, /v51/victim/new-task/task-selection","manualTask, nextTask, taskDueDate, taskName, taskNote, victimForename, victimSurname",None (prototype redirect),"data['nextTask'] | data['manualTask'] == ""yes"" | data['taskName'] | data['taskDueDate'] | data['taskNote'] == """" | data['taskDueDate']" +v51,/v51/wft-meetings/new-task/manual-task,Set a reminder,v51/wft-meetings/new-task/manual-task.html,,/v51/victim/new-task/manual-task-answer,"taskDueDate, taskNote, victimForename, victimSurname",None (prototype redirect), +v51,/v51/wft-meetings/new-task/purposet,Task selection,v51/wft-meetings/new-task/purposet.html,,/v51/wft-meetings/new-task/purposet-answer,purposet,None (prototype redirect), +v51,/v51/wft-meetings/new-task/task-created,Victim onboarded,v51/wft-meetings/new-task/task-created.html,,,"manualTask, nextTask, taskDueDate, taskName, victimForename, victimSurname",None (prototype redirect),"data['manualTask'] == ""yes""" +v51,/v51/wft-meetings/new-task/task-due-date,Task due date,v51/wft-meetings/new-task/task-due-date.html,,/v51/wft-meetings/new-task/task-due-date-answer,taskDueDate,None (prototype redirect), +v51,/v51/wft-meetings/new-task/task-selection,Task selection,v51/wft-meetings/new-task/task-selection.html,,/v51/wft-meetings/new-task/next-task-answer,"victimForename, victimSurname",None (prototype redirect), +v51,/v51/wft-meetings/tasks,Tasks,v51/wft-meetings/tasks.html,,"/v51/change-task-due-date, /v51/onb/tasks/clear-filters, /v51/pcd/call/follow-up-moc, /v51/pcd/call/next-attempt-moc, /v51/pcd/call/was-text-message-sent, /v51/pcd/pre-draft/check-details, /v51/pcd/pre-draft/contacted-by, /v51/pcd/send/email-details, /v51/pcd/send/letter-details, /v51/task-assignee, /v51/victim","area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo",None (prototype redirect),"assigneeNameParts | length == 2 | (data['pcdSent'] == ""yes"") or (data['pcdFumoc'] == ""None"") | (data['pcdType'] == ""dtc"") | (data['pcdStatus'] == ""check-details"") | (data['pcdFumoc'] == ""email"")" +v51,/v51/wft-meetings/tasks2,Tasks,v51/wft-meetings/tasks2.html,,"/v51/change-task-due-date, /v51/onb/tasks/clear-filters, /v51/pcd/call/follow-up-moc, /v51/pcd/call/next-attempt-moc, /v51/pcd/call/was-text-message-sent, /v51/pcd/pre-draft/check-details, /v51/pcd/pre-draft/contacted-by, /v51/pcd/send/email-details, /v51/pcd/send/letter-details, /v51/task-assignee, /v51/victim","area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo",None (prototype redirect),"assigneeNameParts | length == 2 | (data['pcdSent'] == ""yes"") or (data['pcdFumoc'] == ""None"") | (data['pcdType'] == ""dtc"") | (data['pcdStatus'] == ""check-details"") | (data['pcdFumoc'] == ""email"")" +v51,/v51/wft-meetings/victims,Victims,v51/wft-meetings/victims.html,,"/v51/onb/service-lead, /v51/victim, /v51/vlo","area, caseUrn, onboardedStatus, serviceLead, victimForename, victimSurname, vlo",None (prototype redirect),vloNameParts | length == 2 | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] != 'Yes' | data['onboardedStatus'] == 'Yes' diff --git a/docs/v50-v51-routes.html b/docs/v50-v51-routes.html new file mode 100644 index 00000000..e56bf0bc --- /dev/null +++ b/docs/v50-v51-routes.html @@ -0,0 +1,83 @@ + + + + + +VCA prototype — v50 & v51 route inventory + + + +
+

VCA prototype — route inventory

+

Every page route in the v50 and v51 prototypes (300 routes). Generated from app/views and app/routes. Click a column header to sort; use the box to filter.

+
+
+ + + + +
+
+ + + + + +
VersionURLPage titleTemplateLinked fromLinks toSession variablesValidationConditional logic
v50/v50/case-locked/by-someone-elseCase lockedv50/case-locked/by-someone-else.htmlNone (prototype redirect)
v50/v50/case-locked/self-lockedCase lockedv50/case-locked/self-locked.htmlNone (prototype redirect)
v50/v50/change-serviceChange servicev50/change-service.html/v50/victimsservice, serviceLead, victimForename, victimSurnameNone (prototype redirect)
v50/v50/change-task-due-dateChange task due datev50/change-task-due-date.html/v50/wft-meetings/tasks, /v50/wft-meetings/tasks2reasonForDueDateChange, taskDueDateNone (prototype redirect)newDueDate === previousDueDate
v50/v50/next-task-due-dateTask due datev50/next-task-due-date.html/v50/taskstaskDueDateNone (prototype redirect)newDueDate === previousDueDate
v50/v50/onb/check-detailsCheck the details before drafting the letterv50/onb/check-details/index.htmlcaseType, detailChange, onboardedStatus, pmoc, preferredContactTimes, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, preferredName, riskLevel, serviceLead, successNotification, translatorNeeded, victimForename, victimSurname, vlo, vpsStatusNone (prototype redirect)(data['successNotification'] == "yes") and (data['onboardedStatus'] == "Yes") | data['detailChange'] == "no" | data['serviceLead'] == 'Not aligned' | data['serviceLead'] == "Not aligned" | data['preferredCorrespondenceLanguage'] == "Other" | data['vlo'] | data['caseType'] | data['riskLevel'] | data['pmoc'] | data['preferredCorrespondenceLanguage'] == "English" or data['preferredCorrespondenceLanguage'] == "Welsh" or data['preferredCorrespondenceLanguage'] == "Other" | data['preferredCorrespondenceLanguage'] == "Other" | data['translatorNeeded'] == "Yes" or data['translatorNeeded'] == "No" | data['preferredContactTimes'] | data['preferredName'] | data['vpsStatus']
v50/v50/onb/check-details/case-typeCharging typev50/onb/check-details/case-type.html/v50/onb/check-detailsNone (prototype redirect)
v50/v50/onb/check-details/pmocPreferred method of contactv50/onb/check-details/pmoc.html/v50/onb/check-detailsvictimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-details/preferred-contact-timesPreferred contact timesv50/onb/check-details/preferred-contact-times.html/v50/onb/check-detailspreferredContactTimes, victimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-details/preferred-correspondence-languagePreferred correspondence languagev50/onb/check-details/preferred-correspondence-language.html/v50/onb/check-detailspreferredCorrespondenceLanguageOther, victimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-details/preferred-namePreferred namev50/onb/check-details/preferred-name.html/v50/onb/check-detailspreferredName, victimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-details/risk-levelDomestic abuse risk levelv50/onb/check-details/risk-level.html/v50/onb/check-detailsvictimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-details/translator-neededTranslator neededv50/onb/check-details/translator-needed.html/v50/onb/check-detailstranslatorNeededDetails, victimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-details/vps-statusVPS statusv50/onb/check-details/vps-status.html/v50/onb/check-detailsvictimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/check-taskCheck the task details are correctv50/onb/check-task.htmlmanualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] | data['nextTask'] == "dtc" | data['nextTask'] == "no-task" | data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" | data['meetingPurpose'] == "pre-trial" | data['manualTask'] == "yes" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == "" | data['taskDueDate'] | data['nextTask'] == "no-task"
v50/v50/onb/check-task-vloVictim liaison officerv50/onb/check-task-vlo.html/v50/onb/check-detailsvictimForename, victimSurname, vloNone (prototype redirect)request.session.data.vloReturnTo === 'check-task' | request.session.data.vloReturnTo === 'check-details'
v50/v50/onb/manual-taskCreate a taskv50/onb/manual-task.html/v50/onb/check-taskmanualTaskName, taskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/meeting-purposeTask selectionv50/onb/meeting-purpose.html/v50/onb/check-taskmeetingPurposeDetailsNone (prototype redirect)
v50/v50/onb/next-taskNext taskv50/onb/next-task.html/v50/onb/check-tasknextTask, victimForename, victimSurnameNone (prototype redirect)nextTask == "other" | nextTask == "no-task" | nextTask == "meeting-offer" || nextTask == "meeting-arranged" || nextTask == "meeting-outcome"
v50/v50/onb/next-task-due-dateTask due datev50/onb/next-task-due-date.html/v50/onb/check-tasktaskDueDateNone (prototype redirect)
v50/v50/onb/onboardedVictim onboardedv50/onb/onboarded.htmlmanualTaskName, nextTask, taskDueDate, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] == "dtc"
v50/v50/onb/pmocPreferred method of contactv50/onb/pmoc.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/onb/service-leadService leadv50/onb/service-lead.html/v50/onb/check-details, /v50/victims, /v50/wft-meetings/victimsvictimForename, victimSurnameNone (prototype redirect)onboardedStatus == "no"
v50/v50/other/call-loggedTelephone call loggedv50/other/call-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/other/contacted-byHow did you contact the victim?v50/other/contacted-by.htmlcontactedBy, otherContactMethod, victimForename, victimSurnameNone (prototype redirect)contactedBy == "call" | contactedBy == "email" | contactedBy == "post" | contactedBy == "text" | contactedBy == "in-person" | contactedBy == "other"
v50/v50/other/email-detailsLog an emailv50/other/email-details.htmlotherCommunications, otherEmailDate, otherEmailHour, otherEmailMinutes, otherEmailType, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v50/v50/other/email-loggedEmail loggedv50/other/email-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/other/in-personLog an in-person conversationv50/other/in-person.htmlotherCommunications, otherInPersonDate, otherInPersonHour, otherInPersonMinutes, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v50/v50/other/in-person-loggedIn-person meeting loggedv50/other/in-person-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/other/letter-detailsLog a letterv50/other/letter-details.htmlotherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherLetterDate, otherLetterHour, otherLetterMinutes, otherLetterType, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v50/v50/other/letter-loggedLetter loggedv50/other/letter-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/other/logLog a communicationv50/other/log.htmldateOfCommunicationDay, dateOfCommunicationMonth, dateOfCommunicationYear, individualOtherName, purposeOfCommunicationNone (prototype redirect)
v50/v50/other/otherLog other communicationv50/other/other.htmlotherCommsDate, otherCommsHour, otherCommsMinutes, otherCommsType, otherCommunications, otherContactMethod, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v50/v50/other/other-loggedOther communication loggedv50/other/other-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/other/telephone-callLog a telephone callv50/other/telephone-call.htmlotherCallDate, otherCallHour, otherCallMinutes, otherCallType, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v50/v50/other/text-messageLog a text messagev50/other/text-message.htmlotherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherTextMessageDate, otherTextMessageHour, otherTextMessageMinutes, otherTextMessageType, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v50/v50/other/text-message-loggedText message loggedv50/other/text-message-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/overviewOverviewv50/overview.htmlNone (prototype redirect)
v50/v50/overview2Overviewv50/overview2.htmlJS submit guard
v50/v50/overview3Overviewv50/overview3.htmlJS submit guard
v50/v50/overview4Overviewv50/overview4.htmlJS submit guard
v50/v50/overview5Overviewv50/overview5.htmlJS submit guard
v50/v50/overview6-initialOverviewv50/overview6-initial.htmlNone (prototype redirect)
v50/v50/overview6-vlmOverviewv50/overview6-vlm.htmlNone (prototype redirect)
v50/v50/overview6-vloOverviewv50/overview6-vlo.htmlNone (prototype redirect)
v50/v50/pcd/call/follow-up-mocFollow-up method of contactv50/pcd/call/follow-up-moc.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2pcdCallAttempt, pcdFumoc, victimForename, victimSurnameNone (prototype redirect)pcdFumoc == "Email" | pcdCallAttempt == "1" | pcdCallAttempt == "2" | pcdFumoc == "Post" | pcdCallAttempt == "1" | pcdCallAttempt == "2" | pcdCallAttempt == "1" | pcdCallAttempt == "2"
v50/v50/pcd/call/next-attempt-mocNext attempt method of contactv50/pcd/call/next-attempt-moc.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2pcdAttemptToContactAgain, pcdCallAttemptNone (prototype redirect)pcdAttemptToContactAgain == "call" | pcdCallAttempt == "1" | pcdAttemptToContactAgain == "email" | pcdCallAttempt == "1" | pcdCallAttempt == "2"
v50/v50/pcd/call/phone-call-1Telephone call 1v50/pcd/call/phone-call-1.htmlpcdCallDate1, pcdVictimInformed1None (prototype redirect)pcdVictimInformed1 == "Yes"
v50/v50/pcd/call/phone-call-2Telephone call 2v50/pcd/call/phone-call-2.htmlpcdCallDate2, pcdVictimInformed2None (prototype redirect)pcdVictimInformed2 == "Yes"
v50/v50/pcd/call/phone-call-3Telephone call 3 detailsv50/pcd/call/phone-call-3.htmlpcdCallDate3, pcdVictimInformed3None (prototype redirect)pcdVictimInformed3 == "Yes"
v50/v50/pcd/call/text-message-detailsText message detailsv50/pcd/call/text-message-details.htmlpcdCallDate1None (prototype redirect)
v50/v50/pcd/call/was-text-message-sentWas a text message sent to the victim?v50/pcd/call/was-text-message-sent.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2pcdWasTextMessageSent, victimForename, victimSurnameNone (prototype redirect)pcdWasTextMessageSent == "Yes"
v50/v50/pcd/draft/first-hearingFirst hearingv50/pcd/draft/first-hearing.htmlfirstHearingDate, firstHearingLocationNone (prototype redirect)
v50/v50/pcd/draft/pcd-typeCharging decision typev50/pcd/draft/pcd-type.htmlexistingTask, pcdType, victimForename, victimSurnameNone (prototype redirect)pcdType == "dtc" | existingTask == "dtc" | pcdType == "nfa" | existingTask == "nfa"
v50/v50/pcd/draft/task-already-existsThis task already existsv50/pcd/draft/task-already-exists.htmlexistingTask, existingTaskDueDate, pcdType, victimForename, victimSurnameNone (prototype redirect)data['existingTask'] == "dtc" | data['existingTaskDueDate']
v50/v50/pcd/follow-up/call-loggedFollow-up telephone call loggedv50/pcd/follow-up/call-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v50/v50/pcd/follow-up/email-detailsFollow-up email detailsv50/pcd/follow-up/email-details.htmlfollowUpEmailDispatchDate, followUpEmailDispatchNoteserror markup
v50/v50/pcd/follow-up/email-loggedFollow-up email loggedv50/pcd/follow-up/email-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v50/v50/pcd/follow-up/letter-detailsFollow-up letter detailsv50/pcd/follow-up/letter-details.htmlfollowUpLetterDispatchDate, followUpLetterDispatchNoteserror markup
v50/v50/pcd/follow-up/letter-loggedFollow-up letter loggedv50/pcd/follow-up/letter-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v50/v50/pcd/follow-up/log-follow-upLog a follow-upv50/pcd/follow-up/log-follow-up.htmlpcdFollowUpType, victimForename, victimSurnameerror markuppcdFollowUpType == "call" | pcdFollowUpType == "email" | pcdFollowUpType == "not-contacted"
v50/v50/pcd/follow-up/not-contacted-loggedDecision not to contact loggedv50/pcd/follow-up/not-contacted-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v50/v50/pcd/follow-up/not-contacted-reasonReason for not contacting the victimv50/pcd/follow-up/not-contacted-reason.htmlfollowUpNotContactedReason, victimForename, victimSurnameerror markup
v50/v50/pcd/follow-up/telephone-callFollow-up telephone callv50/pcd/follow-up/telephone-call.htmlfollowUpCallDate, followUpCallHour, followUpCallMinutes, followUpCallNotes, followUpCallType, followUpVictimInformedNone (prototype redirect)
v50/v50/pcd/pre-draft/check-eligibilityCheck eligibilityv50/pcd/pre-draft/check-eligibility.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/pcd/pre-draft/contacted-byHow did you contact the victim?v50/pcd/pre-draft/contacted-by.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2contactedBy, successReason, victimForename, victimSurnameNone (prototype redirect)data['successReason'] != "task-created" | contactedBy == "call" | contactedBy == "email" | contactedBy == "post" | contactedBy == "not-contacted"
v50/v50/pcd/pre-draft/not-contacted-reasonReason for not contacting the victimv50/pcd/pre-draft/not-contacted-reason.htmlnotContactedReason, victimForename, victimSurnameNone (prototype redirect)
v50/v50/pcd/send/email-detailsEmail detailsv50/pcd/send/email-details.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2emailDispatchDateNone (prototype redirect)
v50/v50/pcd/send/email-loggedEmail loggedv50/pcd/send/email-logged.htmlcontactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc") | (data['contactedBy'] == "call") | (data['pcdCallAttempt'] == "1") | (data['pcdVictimInformed1'] == "Yes") | (data['pcdVictimInformed2'] == "Yes") | (data['pcdVictimInformed3'] == "Yes")
v50/v50/pcd/send/letter-detailsLetter detailsv50/pcd/send/letter-details.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2letterDispatchDateNone (prototype redirect)
v50/v50/pcd/send/letter-loggedLetter loggedv50/pcd/send/letter-logged.htmlcontactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc") | (data['contactedBy'] == "call") | (data['pcdCallAttempt'] == "1") | (data['pcdVictimInformed1'] == "Yes") | (data['pcdVictimInformed2'] == "Yes") | (data['pcdVictimInformed3'] == "Yes")
v50/v50/sign-inSign in to your accountv50/sign-in.htmlpasswordNone (prototype redirect)
v50/v50/task-assigneeTask Assigneev50/task-assignee.html/v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2task-assignee, taskAssigneeNone (prototype redirect)
v50/v50/task-updatedVictim onboardedv50/task-updated.htmltaskDueDate, taskNameNone (prototype redirect)
v50/v50/tasksTasksv50/tasks.html/v50/task-updatedarea, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, onboardedStatus, pcdFumoc, pcdSent, pcdStatus, service, serviceLead, taskAssignee, taskDueDate, vclFumoc, vclStatus, victimForename, victimSurname, vloNone (prototype redirect)loop.index == 6 | (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") or (data['nextTask'] == "") or (data['nextTask'] == "no-task") | (data['nextTask'] == "dtc") | data['meetingPurpose'] == "pre-trial" | data['taskDueDate'] | data['onboardedStatus'] == 'Yes' | (data['nextTask'] == "dtc") or (data['nextTask'] == "nfa") | (data['pcdStatus'] == "log-not-started") | (data['pcdFumoc'] == "Email") | (data['vclStatus'] == "log-not-started") | (data['vclFumoc'] == "Email") | record.purpose | record.dueDateTag
v50/v50/update-manual-taskUpdate task statusv50/update-manual-task.html/v50/tasksmanualTaskName, taskAction, taskDueDate, taskNoteNone (prototype redirect)data['taskDueDate'] | data['taskNote'] == "" | request.body['taskAction'] === 'complete'
v50/v50/victimVictimv50/victim/index.html/v50/other/call-logged, /v50/other/email-logged, /v50/other/in-person-logged, /v50/other/letter-logged, /v50/other/other-logged, /v50/other/text-message-logged, /v50/pcd/follow-up/call-logged, /v50/pcd/follow-up/email-logged, /v50/pcd/follow-up/letter-logged, /v50/pcd/follow-up/not-contacted-logged, /v50/pcd/send/email-logged, /v50/pcd/send/letter-logged, /v50/tasks, /v50/victim/case-contacts/family-liaison-officer, /v50/victim/case-contacts/idva, /v50/victim/case-contacts/isva, /v50/victim/new-task/task-created, /v50/victims, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2, /v50/wft-meetings/victimsarea, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v50/v50/victim/case-contacts/family-liaison-officerFamily Liaison Officerv50/victim/case-contacts/family-liaison-officer.htmlfamilyLiaisonOfficerDeleted, familyLiaisonOfficerEmailAddress, familyLiaisonOfficerForename, familyLiaisonOfficerName, familyLiaisonOfficerPhoneNumber, familyLiaisonOfficerSurnameNone (prototype redirect)isExisting | isExisting
v50/v50/victim/case-contacts/idvaIndependent Domestic Violence Advisor (IDVA)v50/victim/case-contacts/idva.htmlidvaAddressLine1, idvaAddressLine2, idvaAddressLine3, idvaAddressLine4, idvaAddressLine5, idvaCity, idvaCounty, idvaDeleted, idvaEmailAddress, idvaName, idvaPhoneNumber, idvaPostCodeNone (prototype redirect)isExisting | isExisting
v50/v50/victim/case-contacts/isvaIndependent Sexual Violence Advisor (ISVA)v50/victim/case-contacts/isva.htmlisvaAddressLine1, isvaAddressLine2, isvaAddressLine3, isvaAddressLine4, isvaAddressLine5, isvaCity, isvaCounty, isvaDeleted, isvaEmailAddress, isvaName, isvaPhoneNumber, isvaPostCodeNone (prototype redirect)isExisting | isExisting
v50/v50/victim/case-information/areaChange areav50/victim/case-information/area.htmlareaNone (prototype redirect)
v50/v50/victim/case-information/charging-typeChange charging typev50/victim/case-information/charging-type.htmlNone (prototype redirect)
v50/v50/victim/index-notasksVictimv50/victim/index-notasks.htmlarea, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v50/v50/victim/index-withtasksVictimv50/victim/index-withtasks.htmlarea, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v50/v50/victim/index-withtasks-v2Victimv50/victim/index-withtasks-v2.htmlarea, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v50/v50/victim/index-withtasks-v3Victimv50/victim/index-withtasks-v3.htmlarea, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v50/v50/victim/index-withtasks-v4Victimv50/victim/index-withtasks-v4.htmlarea, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v50/v50/victim/new-task/check-taskCheck the task details are correctv50/victim/new-task/check-task.htmlexistingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, existingTaskNote, manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] | data['nextTask'] == "dtc" | data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" | data['meetingPurpose'] == "pre-trial" | data['manualTask'] == "yes" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == "" | data['taskDueDate'] | duplicateNonMeeting || duplicateMeeting
v50/v50/victim/new-task/manual-taskSet a reminderv50/victim/new-task/manual-task.html/v50/victim/new-task/check-task, /v50/wft-meetings/new-task/check-taskmanualTaskName, taskNote, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/new-task/meeting-purposeTask selectionv50/victim/new-task/meeting-purpose.html/v50/victim/new-task/check-taskexistingMeetingPurpose, existingTask, meetingPurposeDetails, nextTaskNone (prototype redirect)
v50/v50/victim/new-task/task-already-existsThis task already existsv50/victim/new-task/task-already-exists.htmlexistingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, taskDueDate, victimForename, victimSurnameNone (prototype redirect)data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" | data['existingMeetingPurpose'] == "pre-trial" | data['existingTask'] == "dtc" | data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" | data['existingMeetingPurpose'] == "pre-trial" | data['existingTaskDueDate']
v50/v50/victim/new-task/task-createdVictim onboardedv50/victim/new-task/task-created.htmlmanualTaskName, nextTask, taskDueDateNone (prototype redirect)data['nextTask'] == "dtc"
v50/v50/victim/new-task/task-due-dateTask due datev50/victim/new-task/task-due-date.html/v50/pcd/draft/task-already-exists, /v50/victim/new-task/check-task, /v50/victim/new-task/task-already-exists, /v50/wft-meetings/new-task/check-taskexistingTaskDueDate, taskDueDateNone (prototype redirect)fromTaskAlreadyExists | fromPcd | fromCheck and data['taskDueDate'] | request.body.fromTaskAlreadyExists === 'yes' | request.body.fromPcd === 'yes'
v50/v50/victim/new-task/task-selectionTask selectionv50/victim/new-task/task-selection.html/v50/victim/index-notasks, /v50/victim/index-withtasks, /v50/victim/index-withtasks-v3, /v50/victim/index-withtasks-v4, /v50/victim/new-task/check-task, /v50/wft-meetings/new-task/check-taskexistingTask, nextTask, victimForename, victimSurnameNone (prototype redirect)nextTask == "dtc" | nextTask == "nfa" | nextTask == "stopped-charge" | nextTask == "altered-charge" | nextTask == "other" | nextTask == "no-task" | nextTask == "meeting-offer" || nextTask == "meeting-arranged" || nextTask == "meeting-outcome"
v50/v50/victim/task-details/another-task1Victim recordv50/victim/task-details/another-task1.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/task-details/another-task2Victim recordv50/victim/task-details/another-task2.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/task-details/another-task3Victim recordv50/victim/task-details/another-task3.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/task-details/decision-to-chargeVictim recordv50/victim/task-details/decision-to-charge.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/task-details/decision-to-charge-orderVictim recordv50/victim/task-details/decision-to-charge-order.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/task-details/outcome-loggedVictim recordv50/victim/task-details/outcome-logged.htmlcaseUrn, subTab, victimForename, victimSurnameNone (prototype redirect)(data['subTab'] == "ptm")
v50/v50/victim/task-details/outcome-logged2Victim recordv50/victim/task-details/outcome-logged2.htmlcaseUrn, subTab, victimForename, victimSurnameNone (prototype redirect)(data['subTab'] == "ptm")
v50/v50/victim/victim-details/addressVictim's addressv50/victim/victim-details/address.htmlvictimAddressLine1, victimAddressLine2, victimAddressLine3, victimAddressLine4, victimAddressLine5, victimForename, victimPostCode, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/categoryVictim categoryv50/victim/victim-details/category.htmlvictimForename, victimSurnameNone (prototype redirect)opt.hint
v50/v50/victim/victim-details/contact-timesPreferred contact timesv50/victim/victim-details/contact-times.htmlpreferredContactTimes, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/correspondence-languagePreferred correspondence languagev50/victim/victim-details/correspondence-language.htmlpreferredCorrespondenceLanguageOther, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/date-of-birthVictim's date of birthv50/victim/victim-details/date-of-birth.htmlvictimDobDay, victimDobMonth, victimDobYear, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/disabilityDisability or access needsv50/victim/victim-details/disability.htmlvictimDisability, victimDisabilityDetailsNone (prototype redirect)
v50/v50/victim/victim-details/email-addressVictim's email addressv50/victim/victim-details/email-address.htmlvictimEmailAddress, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/ethnicityVictim ethnicityv50/victim/victim-details/ethnicity.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/full-nameVictim's full namev50/victim/victim-details/full-name.htmlvictimForename, victimSurname, victimTitleNone (prototype redirect)
v50/v50/victim/victim-details/genderVictim genderv50/victim/victim-details/gender.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/pmocPreferred method of contactv50/victim/victim-details/pmoc.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/pmoc-policePreferred method of contact for policev50/victim/victim-details/pmoc-police.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/power-of-attorneyPower of attorney detailsv50/victim/victim-details/power-of-attorney.htmlpowerOfAttorneyEmail, powerOfAttorneyName, powerOfAttorneyPhoneNone (prototype redirect)
v50/v50/victim/victim-details/preferred-nameVictim's preferred namev50/victim/victim-details/preferred-name.htmlvictimForename, victimPreferredName, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/previous-convictionsPrevious convictionsv50/victim/victim-details/previous-convictions.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/reasonable-adjustmentsReasonable adjustmentsv50/victim/victim-details/reasonable-adjustments.htmlreasonableAdjustments, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/religionReligion or beliefv50/victim/victim-details/religion.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/risk-levelDomestic abuse risk levelv50/victim/victim-details/risk-level.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/serviceChange servicev50/victim/victim-details/service.htmlservice, serviceLead, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/telephone-numberVictim's telephone numberv50/victim/victim-details/telephone-number.htmlvictimForename, victimHomePhone, victimPhoneNumber, victimSurname, victimWorkPhoneNone (prototype redirect)
v50/v50/victim/victim-details/translator-neededTranslator neededv50/victim/victim-details/translator-needed.htmltranslatorNeededDetails, victimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/victim-representativeVictim representative detailsv50/victim/victim-details/victim-representative.htmlvictimRepresentativeEmail, victimRepresentativeName, victimRepresentativePhoneNone (prototype redirect)
v50/v50/victim/victim-details/vps-statusVPS statusv50/victim/victim-details/vps-status.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victim/victim-details/wants-contactDo they want to be contacted?v50/victim/victim-details/wants-contact.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/victimsVictimsv50/victims.html/v50/onb/onboardedarea, caseUrn, onboardedStatus, service, serviceLead, victimForename, victimSurname, vloNone (prototype redirect)vloNameParts | length == 2 | data['serviceLead'] == 'Not aligned' | vlo.checked | record.surname == 'PALMER' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['serviceLead'] == 'Not aligned' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | record.onboarded | record.area | record.service in ['Universal', 'Enhanced', 'RASSO'] | record.onboarded
v50/v50/vloVictim liaison officerv50/vlo.html/v50/victims, /v50/wft-meetings/victimsvictimForename, victimSurname, vloNone (prototype redirect)
v50/v50/wft-meetings/log-arranged-meetingTasksv50/wft-meetings/log-arranged-meeting.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/log-arranged-meeting-checkTasksv50/wft-meetings/log-arranged-meeting-check.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/log-meeting-outcomeTasksv50/wft-meetings/log-meeting-outcome.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/log-meeting-outcome-checkTasksv50/wft-meetings/log-meeting-outcome-check.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/log-offer-responseTasksv50/wft-meetings/log-offer-response.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/log-offer-response-checkTasksv50/wft-meetings/log-offer-response-check.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/log-offer-taskTasksv50/wft-meetings/log-offer-task.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v50/v50/wft-meetings/new-task/check-taskCheck the task details are correctv50/wft-meetings/new-task/check-task.htmlmanualTask, nextTask, taskDueDate, taskName, taskNote, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] | data['manualTask'] == "yes" | data['taskName'] | data['taskDueDate'] | data['taskNote'] == "" | data['taskDueDate']
v50/v50/wft-meetings/new-task/manual-taskSet a reminderv50/wft-meetings/new-task/manual-task.htmltaskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)
v50/v50/wft-meetings/new-task/purposetTask selectionv50/wft-meetings/new-task/purposet.htmlpurposetNone (prototype redirect)
v50/v50/wft-meetings/new-task/task-createdVictim onboardedv50/wft-meetings/new-task/task-created.htmlmanualTask, nextTask, taskDueDate, taskName, victimForename, victimSurnameNone (prototype redirect)data['manualTask'] == "yes"
v50/v50/wft-meetings/new-task/task-due-dateTask due datev50/wft-meetings/new-task/task-due-date.htmltaskDueDateNone (prototype redirect)
v50/v50/wft-meetings/new-task/task-selectionTask selectionv50/wft-meetings/new-task/task-selection.htmlvictimForename, victimSurnameNone (prototype redirect)
v50/v50/wft-meetings/tasksTasksv50/wft-meetings/tasks.htmlarea, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vloNone (prototype redirect)assigneeNameParts | length == 2 | (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") | (data['pcdType'] == "dtc") | (data['pcdStatus'] == "check-details") | (data['pcdFumoc'] == "email")
v50/v50/wft-meetings/tasks2Tasksv50/wft-meetings/tasks2.htmlarea, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vloNone (prototype redirect)assigneeNameParts | length == 2 | (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") | (data['pcdType'] == "dtc") | (data['pcdStatus'] == "check-details") | (data['pcdFumoc'] == "email")
v50/v50/wft-meetings/victimsVictimsv50/wft-meetings/victims.htmlarea, caseUrn, onboardedStatus, serviceLead, victimForename, victimSurname, vloNone (prototype redirect)vloNameParts | length == 2 | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] != 'Yes' | data['onboardedStatus'] == 'Yes'
v51/v51/case-locked/by-someone-elseCase lockedv51/case-locked/by-someone-else.htmlNone (prototype redirect)
v51/v51/case-locked/self-lockedCase lockedv51/case-locked/self-locked.htmlNone (prototype redirect)
v51/v51/change-serviceChange servicev51/change-service.html/v51/victimsservice, serviceLead, victimForename, victimSurnameNone (prototype redirect)
v51/v51/change-task-due-dateChange task due datev51/change-task-due-date.html/v51/wft-meetings/tasks, /v51/wft-meetings/tasks2reasonForDueDateChange, taskDueDateNone (prototype redirect)newDueDate === previousDueDate
v51/v51/next-task-due-dateTask due datev51/next-task-due-date.html/v51/taskstaskDueDateNone (prototype redirect)newDueDate === previousDueDate
v51/v51/onb/check-detailsCheck the details before drafting the letterv51/onb/check-details/index.htmlcaseType, detailChange, onboardedStatus, pmoc, preferredContactTimes, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, preferredName, riskLevel, serviceLead, successNotification, translatorNeeded, victimForename, victimSurname, vlo, vpsStatusNone (prototype redirect)(data['successNotification'] == "yes") and (data['onboardedStatus'] == "Yes") | data['detailChange'] == "no" | data['serviceLead'] == 'Not aligned' | data['serviceLead'] == "Not aligned" | data['preferredCorrespondenceLanguage'] == "Other" | data['vlo'] | data['caseType'] | data['riskLevel'] | data['pmoc'] | data['preferredCorrespondenceLanguage'] == "English" or data['preferredCorrespondenceLanguage'] == "Welsh" or data['preferredCorrespondenceLanguage'] == "Other" | data['preferredCorrespondenceLanguage'] == "Other" | data['translatorNeeded'] == "Yes" or data['translatorNeeded'] == "No" | data['preferredContactTimes'] | data['preferredName'] | data['vpsStatus']
v51/v51/onb/check-details/case-typeCharging typev51/onb/check-details/case-type.html/v51/onb/check-detailsNone (prototype redirect)
v51/v51/onb/check-details/pmocPreferred method of contactv51/onb/check-details/pmoc.html/v51/onb/check-detailsvictimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-details/preferred-contact-timesPreferred contact timesv51/onb/check-details/preferred-contact-times.html/v51/onb/check-detailspreferredContactTimes, victimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-details/preferred-correspondence-languagePreferred correspondence languagev51/onb/check-details/preferred-correspondence-language.html/v51/onb/check-detailspreferredCorrespondenceLanguageOther, victimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-details/preferred-namePreferred namev51/onb/check-details/preferred-name.html/v51/onb/check-detailspreferredName, victimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-details/risk-levelDomestic abuse risk levelv51/onb/check-details/risk-level.html/v51/onb/check-detailsvictimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-details/translator-neededTranslator neededv51/onb/check-details/translator-needed.html/v51/onb/check-detailstranslatorNeededDetails, victimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-details/vps-statusVPS statusv51/onb/check-details/vps-status.html/v51/onb/check-detailsvictimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/check-taskCheck the task details are correctv51/onb/check-task.htmlmanualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] | data['nextTask'] == "dtc" | data['nextTask'] == "no-task" | data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" | data['meetingPurpose'] == "pre-trial" | data['manualTask'] == "yes" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == "" | data['taskDueDate'] | data['nextTask'] == "no-task"
v51/v51/onb/check-task-vloVictim liaison officerv51/onb/check-task-vlo.html/v51/onb/check-detailsvictimForename, victimSurname, vloNone (prototype redirect)request.session.data.vloReturnTo === 'check-task' | request.session.data.vloReturnTo === 'check-details'
v51/v51/onb/manual-taskCreate a taskv51/onb/manual-task.html/v51/onb/check-taskmanualTaskName, taskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/meeting-purposeTask selectionv51/onb/meeting-purpose.html/v51/onb/check-taskmeetingPurposeDetailsNone (prototype redirect)
v51/v51/onb/next-taskNext taskv51/onb/next-task.html/v51/onb/check-tasknextTask, victimForename, victimSurnameNone (prototype redirect)nextTask == "other" | nextTask == "no-task" | nextTask == "meeting-offer" || nextTask == "meeting-arranged" || nextTask == "meeting-outcome"
v51/v51/onb/next-task-due-dateTask due datev51/onb/next-task-due-date.html/v51/onb/check-tasktaskDueDateNone (prototype redirect)
v51/v51/onb/onboardedVictim onboardedv51/onb/onboarded.htmlmanualTaskName, nextTask, taskDueDate, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] == "dtc"
v51/v51/onb/pmocPreferred method of contactv51/onb/pmoc.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/onb/service-leadService leadv51/onb/service-lead.html/v51/onb/check-details, /v51/victims, /v51/wft-meetings/victimsvictimForename, victimSurnameNone (prototype redirect)onboardedStatus == "no"
v51/v51/other/call-loggedTelephone call loggedv51/other/call-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/other/contacted-byHow did you contact the victim?v51/other/contacted-by.htmlcontactedBy, otherContactMethod, victimForename, victimSurnameNone (prototype redirect)contactedBy == "call" | contactedBy == "email" | contactedBy == "post" | contactedBy == "text" | contactedBy == "in-person" | contactedBy == "other"
v51/v51/other/email-detailsLog an emailv51/other/email-details.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, otherCommunications, otherEmailDate, otherEmailHour, otherEmailMinutes, otherEmailType, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(request.session.data['otherCommunications'])
v51/v51/other/email-loggedEmail loggedv51/other/email-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/other/in-personLog an in-person conversationv51/other/in-person.htmlotherCommunications, otherInPersonDate, otherInPersonHour, otherInPersonMinutes, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v51/v51/other/in-person-loggedIn-person meeting loggedv51/other/in-person-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/other/letter-detailsLog a letterv51/other/letter-details.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherLetterDate, otherLetterHour, otherLetterMinutes, otherLetterType, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(request.session.data['otherCommunications'])
v51/v51/other/letter-loggedLetter loggedv51/other/letter-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/other/logLog a communicationv51/other/log.htmldateOfCommunicationDay, dateOfCommunicationMonth, dateOfCommunicationYear, individualOtherName, purposeOfCommunicationNone (prototype redirect)
v51/v51/other/otherLog other communicationv51/other/other.htmlotherCommsDate, otherCommsHour, otherCommsMinutes, otherCommsType, otherCommunications, otherContactMethod, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v51/v51/other/other-loggedOther communication loggedv51/other/other-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/other/telephone-callLog a telephone callv51/other/telephone-call.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, otherCallDate, otherCallHour, otherCallMinutes, otherCallType, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(request.session.data['otherCommunications'])
v51/v51/other/text-messageLog a text messagev51/other/text-message.htmlotherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherTextMessageDate, otherTextMessageHour, otherTextMessageMinutes, otherTextMessageType, purposeOfCommunication, victimForename, victimSurnameNone (prototype redirect)!Array.isArray(request.session.data['otherCommunications'])
v51/v51/other/text-message-loggedText message loggedv51/other/text-message-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/overviewOverviewv51/overview.htmlNone (prototype redirect)
v51/v51/overview2Overviewv51/overview2.htmlJS submit guard
v51/v51/overview3Overviewv51/overview3.htmlJS submit guard
v51/v51/overview4Overviewv51/overview4.htmlJS submit guard
v51/v51/overview5Overviewv51/overview5.htmlJS submit guard
v51/v51/overview6-initialOverviewv51/overview6-initial.htmlNone (prototype redirect)
v51/v51/overview6-vlmOverviewv51/overview6-vlm.htmlNone (prototype redirect)
v51/v51/overview6-vloOverviewv51/overview6-vlo.htmlNone (prototype redirect)
v51/v51/pcd/call/follow-up-mocFollow-up method of contactv51/pcd/call/follow-up-moc.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2pcdCallAttempt, pcdFumoc, victimForename, victimSurnameNone (prototype redirect)pcdFumoc == "Email" | pcdCallAttempt == "1" | pcdCallAttempt == "2" | pcdFumoc == "Post" | pcdCallAttempt == "1" | pcdCallAttempt == "2" | pcdCallAttempt == "1" | pcdCallAttempt == "2"
v51/v51/pcd/call/next-attempt-mocNext attempt method of contactv51/pcd/call/next-attempt-moc.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2pcdAttemptToContactAgain, pcdCallAttemptNone (prototype redirect)pcdAttemptToContactAgain == "call" | pcdCallAttempt == "1" | pcdAttemptToContactAgain == "email" | pcdCallAttempt == "1" | pcdCallAttempt == "2"
v51/v51/pcd/call/phone-call-1Telephone call 1v51/pcd/call/phone-call-1.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate1, pcdVictimInformed1, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | pcdVictimInformed1 == "Yes"
v51/v51/pcd/call/phone-call-2Telephone call 2v51/pcd/call/phone-call-2.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate2, pcdVictimInformed2, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | pcdVictimInformed2 == "Yes"
v51/v51/pcd/call/phone-call-3Telephone call 3 detailsv51/pcd/call/phone-call-3.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate3, pcdVictimInformed3, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | pcdVictimInformed3 == "Yes"
v51/v51/pcd/call/text-message-detailsText message detailsv51/pcd/call/text-message-details.htmlpcdCallDate1None (prototype redirect)
v51/v51/pcd/call/was-text-message-sentWas a text message sent to the victim?v51/pcd/call/was-text-message-sent.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2pcdWasTextMessageSent, victimForename, victimSurnameNone (prototype redirect)pcdWasTextMessageSent == "Yes"
v51/v51/pcd/draft/first-hearingFirst hearingv51/pcd/draft/first-hearing.htmlfirstHearingDate, firstHearingLocationNone (prototype redirect)
v51/v51/pcd/draft/pcd-typeCharging decision typev51/pcd/draft/pcd-type.htmlexistingTask, pcdType, victimForename, victimSurnameNone (prototype redirect)pcdType == "dtc" | existingTask == "dtc" | pcdType == "nfa" | existingTask == "nfa"
v51/v51/pcd/draft/task-already-existsThis task already existsv51/pcd/draft/task-already-exists.htmlexistingTask, existingTaskDueDate, pcdType, victimForename, victimSurnameNone (prototype redirect)data['existingTask'] == "dtc" | data['existingTaskDueDate']
v51/v51/pcd/follow-up/call-loggedFollow-up telephone call loggedv51/pcd/follow-up/call-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v51/v51/pcd/follow-up/email-detailsFollow-up email detailsv51/pcd/follow-up/email-details.htmlfollowUpEmailDispatchDate, followUpEmailDispatchNotes, followUpEmailIndividual, followUpEmailIndividualName, followUpEmailIndividualRole, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurnameerror markupdata['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/pcd/follow-up/email-loggedFollow-up email loggedv51/pcd/follow-up/email-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v51/v51/pcd/follow-up/letter-detailsFollow-up letter detailsv51/pcd/follow-up/letter-details.htmlfollowUpLetterDispatchDate, followUpLetterDispatchNotes, followUpLetterIndividual, followUpLetterIndividualName, followUpLetterIndividualRole, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurnameerror markupdata['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/pcd/follow-up/letter-loggedFollow-up letter loggedv51/pcd/follow-up/letter-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v51/v51/pcd/follow-up/log-follow-upLog a follow-upv51/pcd/follow-up/log-follow-up.htmlpcdFollowUpType, victimForename, victimSurnameerror markuppcdFollowUpType == "call" | pcdFollowUpType == "email" | pcdFollowUpType == "not-contacted"
v51/v51/pcd/follow-up/not-contacted-loggedDecision not to contact loggedv51/pcd/follow-up/not-contacted-logged.htmlpcdType, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc")
v51/v51/pcd/follow-up/not-contacted-reasonReason for not contacting the victimv51/pcd/follow-up/not-contacted-reason.htmlfollowUpNotContactedReason, victimForename, victimSurnameerror markup
v51/v51/pcd/follow-up/telephone-callFollow-up telephone callv51/pcd/follow-up/telephone-call.htmlfollowUpCallDate, followUpCallHour, followUpCallIndividual, followUpCallIndividualName, followUpCallIndividualRole, followUpCallMinutes, followUpCallNotes, followUpCallType, followUpVictimInformed, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/pcd/pre-draft/check-eligibilityCheck eligibilityv51/pcd/pre-draft/check-eligibility.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/pcd/pre-draft/contacted-byHow did you contact the victim?v51/pcd/pre-draft/contacted-by.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2contactedBy, successReason, victimForename, victimSurnameNone (prototype redirect)data['successReason'] != "task-created" | contactedBy == "call" | contactedBy == "email" | contactedBy == "post" | contactedBy == "not-contacted"
v51/v51/pcd/pre-draft/not-contacted-reasonReason for not contacting the victimv51/pcd/pre-draft/not-contacted-reason.htmlnotContactedReason, victimForename, victimSurnameNone (prototype redirect)
v51/v51/pcd/send/email-detailsEmail detailsv51/pcd/send/email-details.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2emailDispatchDate, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/pcd/send/email-loggedEmail loggedv51/pcd/send/email-logged.htmlcontactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc") | (data['contactedBy'] == "call") | (data['pcdCallAttempt'] == "1") | (data['pcdVictimInformed1'] == "Yes") | (data['pcdVictimInformed2'] == "Yes") | (data['pcdVictimInformed3'] == "Yes")
v51/v51/pcd/send/letter-detailsLetter detailsv51/pcd/send/letter-details.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2idvaDeleted, idvaName, isvaDeleted, isvaName, letterDispatchDate, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/pcd/send/letter-loggedLetter loggedv51/pcd/send/letter-logged.htmlcontactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurnameNone (prototype redirect)(data['pcdType'] == "dtc") | (data['contactedBy'] == "call") | (data['pcdCallAttempt'] == "1") | (data['pcdVictimInformed1'] == "Yes") | (data['pcdVictimInformed2'] == "Yes") | (data['pcdVictimInformed3'] == "Yes")
v51/v51/sign-inSign in to your accountv51/sign-in.htmlpasswordNone (prototype redirect)
v51/v51/task-assigneeTask Assigneev51/task-assignee.html/v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2task-assignee, taskAssigneeNone (prototype redirect)
v51/v51/task-updatedVictim onboardedv51/task-updated.htmltaskDueDate, taskNameNone (prototype redirect)
v51/v51/tasksTasksv51/tasks.html/v51/task-updatedarea, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, onboardedStatus, pcdFumoc, pcdSent, pcdStatus, service, serviceLead, taskAssignee, taskDueDate, vclFumoc, vclStatus, victimForename, victimSurname, vloNone (prototype redirect)loop.index == 6 | ((data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") or (data['nextTask'] == "") or (data['nextTask'] == "no-task")) and (data['nextTask'] != "stopped-charge") and (data['nextTask'] != "altered-charge") | (data['nextTask'] == "dtc") | data['meetingPurpose'] == "pre-trial" | data['taskDueDate'] | data['onboardedStatus'] == 'Yes' | (data['nextTask'] == "dtc") or (data['nextTask'] == "nfa") | (data['pcdStatus'] == "log-not-started") | (data['pcdFumoc'] == "Email") | (data['vclStatus'] == "log-not-started") | (data['vclFumoc'] == "Email") | record.purpose | record.dueDateTag
v51/v51/update-manual-taskUpdate task statusv51/update-manual-task.html/v51/tasksmanualTaskName, taskAction, taskDueDate, taskNoteNone (prototype redirect)data['taskDueDate'] | data['taskNote'] == "" | request.body['taskAction'] === 'complete'
v51/v51/vcl/call/follow-up-mocFollow-up method of contactv51/vcl/call/follow-up-moc.html/v51/tasksvdFumoc, vdNoFumocDetails, victimForename, victimSurnameNone (prototype redirect)fumoc == "Email" | fumoc == "Post"
v51/v51/vcl/call/next-attempt-mocNext attempt method of contactv51/vcl/call/next-attempt-moc.html/v51/tasksvdCallAttempts, vdNextMocNone (prototype redirect)(data['vdCallAttempts'] | length) < 3 | nextMoc == "call" | nextMoc == "email"
v51/v51/vcl/call/phone-callTelephone callv51/vcl/call/phone-call.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, vdCallAttempts, vdCallDate, vdCallHour, vdCallIndividual, vdCallIndividualName, vdCallIndividualRole, vdCallMinutes, vdCallNotes, vdCallType, vdVictimInformed, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes' | !Array.isArray(data['vdCallAttempts']) | informed == "Yes" | attemptCount == 1
v51/v51/vcl/call/text-message-detailsText message detailsv51/vcl/call/text-message-details.htmlvdCallAttempts, vdSecondCallHour, vdSecondCallMinutes, vdTextMessageDate, vdTextMessageHour, vdTextMessageMinutes, vdThirdCallHour, vdThirdCallMinutes, vdWasTextMessageSentNone (prototype redirect)last
v51/v51/vcl/call/was-text-message-sentWas a text message sent to the victim?v51/vcl/call/was-text-message-sent.html/v51/tasksvdCallAttempts, vdWasTextMessageSent, victimForename, victimSurnameNone (prototype redirect)last | data['vdWasTextMessageSent'] == "Yes"
v51/v51/vcl/draft/stopped-chargeStopped charge reasonv51/vcl/draft/stopped-charge.htmlNone (prototype redirect)
v51/v51/vcl/draft/substantially-altered-chargeSubstantially altered chargev51/vcl/draft/substantially-altered-charge.htmlNone (prototype redirect)
v51/v51/vcl/draft/vcl-typeCommunication typev51/vcl/draft/vcl-type.htmlcommType, vdType, victimForename, victimSurnameNone (prototype redirect)commType == "dtc" || commType == "nfa" | field !== 'vdType' | commType == "stopped-charge"
v51/v51/vcl/follow-up/email-detailsFollow-up email detailsv51/vcl/follow-up/email-details.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, vclFollowUpEmailDate, vclFollowUpEmailIndividual, vclFollowUpEmailIndividualName, vclFollowUpEmailIndividualRole, vclFollowUpEmailNotes, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/vcl/follow-up/email-loggedFollow-up email loggedv51/vcl/follow-up/email-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/vcl/follow-up/letter-detailsFollow-up letter detailsv51/vcl/follow-up/letter-details.htmlidvaDeleted, idvaName, isvaDeleted, isvaName, vclFollowUpLetterDate, vclFollowUpLetterIndividual, vclFollowUpLetterIndividualName, vclFollowUpLetterIndividualRole, vclFollowUpLetterNotes, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/vcl/follow-up/letter-loggedFollow-up letter loggedv51/vcl/follow-up/letter-logged.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/vcl/follow-up/log-follow-upLog a follow-upv51/vcl/follow-up/log-follow-up.htmlvclFollowUpType, victimForename, victimSurnameerror markupfollowUpType == "email"
v51/v51/vcl/pre-draft/contacted-byHow did you contact the victim?v51/vcl/pre-draft/contacted-by.htmlvdContactedBy, victimForename, victimSurnameNone (prototype redirect)contactedBy == "call" | contactedBy == "email" | contactedBy == "post"
v51/v51/vcl/pre-draft/not-contacted-reasonReason for not contacting the victimv51/vcl/pre-draft/not-contacted-reason.htmlvdNotContactedReason, victimForename, victimSurnameNone (prototype redirect)
v51/v51/vcl/send/email-detailsEmail detailsv51/vcl/send/email-details.html/v51/tasksidvaDeleted, idvaName, isvaDeleted, isvaName, vdEmailDate, vdEmailNotes, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/vcl/send/letter-detailsLetter detailsv51/vcl/send/letter-details.html/v51/tasksidvaDeleted, idvaName, isvaDeleted, isvaName, vdLetterDate, vdLetterNotes, victimForename, victimSurnameNone (prototype redirect)data['isvaName'] and data['isvaDeleted'] != 'yes' | data['idvaName'] and data['idvaDeleted'] != 'yes'
v51/v51/victimVictimv51/victim/index.html/v51/other/call-logged, /v51/other/email-logged, /v51/other/in-person-logged, /v51/other/letter-logged, /v51/other/other-logged, /v51/other/text-message-logged, /v51/pcd/follow-up/call-logged, /v51/pcd/follow-up/email-logged, /v51/pcd/follow-up/letter-logged, /v51/pcd/follow-up/not-contacted-logged, /v51/pcd/send/email-logged, /v51/pcd/send/letter-logged, /v51/tasks, /v51/vcl/follow-up/email-logged, /v51/vcl/follow-up/letter-logged, /v51/victim/case-contacts/family-liaison-officer, /v51/victim/case-contacts/idva, /v51/victim/case-contacts/isva, /v51/victim/new-task/task-created, /v51/victims, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2, /v51/wft-meetings/victimsarea, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v51/v51/victim/case-contacts/family-liaison-officerFamily Liaison Officerv51/victim/case-contacts/family-liaison-officer.htmlfamilyLiaisonOfficerDeleted, familyLiaisonOfficerEmailAddress, familyLiaisonOfficerForename, familyLiaisonOfficerName, familyLiaisonOfficerPhoneNumber, familyLiaisonOfficerSurnameNone (prototype redirect)isExisting | isExisting
v51/v51/victim/case-contacts/idvaIndependent Domestic Violence Advisor (IDVA)v51/victim/case-contacts/idva.htmlidvaAddressLine1, idvaAddressLine2, idvaAddressLine3, idvaAddressLine4, idvaAddressLine5, idvaCity, idvaCounty, idvaDeleted, idvaEmailAddress, idvaName, idvaPhoneNumber, idvaPostCodeNone (prototype redirect)isExisting | isExisting
v51/v51/victim/case-contacts/isvaIndependent Sexual Violence Advisor (ISVA)v51/victim/case-contacts/isva.htmlisvaAddressLine1, isvaAddressLine2, isvaAddressLine3, isvaAddressLine4, isvaAddressLine5, isvaCity, isvaCounty, isvaDeleted, isvaEmailAddress, isvaName, isvaPhoneNumber, isvaPostCodeNone (prototype redirect)isExisting | isExisting
v51/v51/victim/case-information/areaChange areav51/victim/case-information/area.htmlareaNone (prototype redirect)
v51/v51/victim/case-information/charging-typeChange charging typev51/victim/case-information/charging-type.htmlNone (prototype redirect)
v51/v51/victim/index-notasksVictimv51/victim/index-notasks.htmlarea, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v51/v51/victim/index-withtasksVictimv51/victim/index-withtasks.htmlarea, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v51/v51/victim/index-withtasks-v2Victimv51/victim/index-withtasks-v2.htmlarea, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v51/v51/victim/index-withtasks-v3Victimv51/victim/index-withtasks-v3.htmlarea, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v51/v51/victim/index-withtasks-v4Victimv51/victim/index-withtasks-v4.htmlarea, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatusJS submit guard(data['case-locked'] == "by-someone-else") | (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") | (data['successReason'] == "charging-type-updated") | (data['successReason'] == "email-address-updated") | data['preferredCorrespondenceLanguage'] == 'Other' | data['serviceLead'] == "Not aligned" | (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1")
v51/v51/victim/new-task/check-taskCheck the task details are correctv51/victim/new-task/check-task.htmlexistingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, existingTaskNote, manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] | data['nextTask'] == "dtc" | data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" | data['meetingPurpose'] == "pre-trial" | data['manualTask'] == "yes" | data['manualTaskName'] | data['taskDueDate'] | data['taskNote'] == "" | data['taskDueDate'] | duplicateNonMeeting || duplicateMeeting
v51/v51/victim/new-task/manual-taskSet a reminderv51/victim/new-task/manual-task.html/v51/victim/new-task/check-task, /v51/wft-meetings/new-task/check-taskmanualTaskName, taskNote, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/new-task/meeting-purposeTask selectionv51/victim/new-task/meeting-purpose.html/v51/victim/new-task/check-taskexistingMeetingPurpose, existingTask, meetingPurposeDetails, nextTaskNone (prototype redirect)
v51/v51/victim/new-task/task-already-existsThis task already existsv51/victim/new-task/task-already-exists.htmlexistingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, taskDueDate, victimForename, victimSurnameNone (prototype redirect)data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" | data['existingMeetingPurpose'] == "pre-trial" | data['existingTask'] == "dtc" | data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" | data['existingMeetingPurpose'] == "pre-trial" | data['existingTaskDueDate']
v51/v51/victim/new-task/task-createdVictim onboardedv51/victim/new-task/task-created.htmlmanualTaskName, nextTask, taskDueDateNone (prototype redirect)data['nextTask'] == "dtc"
v51/v51/victim/new-task/task-due-dateTask due datev51/victim/new-task/task-due-date.html/v51/pcd/draft/task-already-exists, /v51/victim/new-task/check-task, /v51/victim/new-task/task-already-exists, /v51/wft-meetings/new-task/check-taskexistingTaskDueDate, taskDueDateNone (prototype redirect)fromTaskAlreadyExists | fromPcd | fromCheck and data['taskDueDate'] | request.body.fromTaskAlreadyExists === 'yes' | request.body.fromPcd === 'yes'
v51/v51/victim/new-task/task-selectionTask selectionv51/victim/new-task/task-selection.html/v51/victim/index-notasks, /v51/victim/index-withtasks, /v51/victim/index-withtasks-v3, /v51/victim/index-withtasks-v4, /v51/victim/new-task/check-task, /v51/wft-meetings/new-task/check-taskexistingTask, nextTask, victimForename, victimSurnameNone (prototype redirect)nextTask == "dtc" | nextTask == "nfa" | nextTask == "stopped-charge" | nextTask == "altered-charge" | nextTask == "other" | nextTask == "no-task" | nextTask == "meeting-offer" || nextTask == "meeting-arranged" || nextTask == "meeting-outcome"
v51/v51/victim/task-details/another-task1Victim recordv51/victim/task-details/another-task1.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/task-details/another-task2Victim recordv51/victim/task-details/another-task2.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/task-details/decision-to-chargeVictim recordv51/victim/task-details/decision-to-charge.htmlcaseUrn, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/task-details/outcome-loggedVictim recordv51/victim/task-details/outcome-logged.htmlcaseUrn, subTab, victimForename, victimSurnameNone (prototype redirect)(data['subTab'] == "ptm")
v51/v51/victim/victim-details/addressVictim's addressv51/victim/victim-details/address.htmlvictimAddressLine1, victimAddressLine2, victimAddressLine3, victimAddressLine4, victimAddressLine5, victimForename, victimPostCode, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/categoryVictim categoryv51/victim/victim-details/category.htmlvictimForename, victimSurnameNone (prototype redirect)opt.hint
v51/v51/victim/victim-details/contact-timesPreferred contact timesv51/victim/victim-details/contact-times.htmlpreferredContactTimes, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/correspondence-languagePreferred correspondence languagev51/victim/victim-details/correspondence-language.htmlpreferredCorrespondenceLanguageOther, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/date-of-birthVictim's date of birthv51/victim/victim-details/date-of-birth.htmlvictimDobDay, victimDobMonth, victimDobYear, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/disabilityDisability or access needsv51/victim/victim-details/disability.htmlvictimDisability, victimDisabilityDetailsNone (prototype redirect)
v51/v51/victim/victim-details/email-addressVictim's email addressv51/victim/victim-details/email-address.htmlvictimEmailAddress, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/ethnicityVictim ethnicityv51/victim/victim-details/ethnicity.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/full-nameVictim's full namev51/victim/victim-details/full-name.htmlvictimForename, victimSurname, victimTitleNone (prototype redirect)
v51/v51/victim/victim-details/genderVictim genderv51/victim/victim-details/gender.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/pmocPreferred method of contactv51/victim/victim-details/pmoc.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/pmoc-policePreferred method of contact for policev51/victim/victim-details/pmoc-police.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/power-of-attorneyPower of attorney detailsv51/victim/victim-details/power-of-attorney.htmlpowerOfAttorneyEmail, powerOfAttorneyName, powerOfAttorneyPhoneNone (prototype redirect)
v51/v51/victim/victim-details/preferred-nameVictim's preferred namev51/victim/victim-details/preferred-name.htmlvictimForename, victimPreferredName, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/previous-convictionsPrevious convictionsv51/victim/victim-details/previous-convictions.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/reasonable-adjustmentsReasonable adjustmentsv51/victim/victim-details/reasonable-adjustments.htmlreasonableAdjustments, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/religionReligion or beliefv51/victim/victim-details/religion.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/risk-levelDomestic abuse risk levelv51/victim/victim-details/risk-level.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/serviceChange servicev51/victim/victim-details/service.htmlservice, serviceLead, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/telephone-numberVictim's telephone numberv51/victim/victim-details/telephone-number.htmlvictimForename, victimHomePhone, victimPhoneNumber, victimSurname, victimWorkPhoneNone (prototype redirect)
v51/v51/victim/victim-details/translator-neededTranslator neededv51/victim/victim-details/translator-needed.htmltranslatorNeededDetails, victimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/victim-representativeVictim representative detailsv51/victim/victim-details/victim-representative.htmlvictimRepresentativeEmail, victimRepresentativeName, victimRepresentativePhoneNone (prototype redirect)
v51/v51/victim/victim-details/vps-statusVPS statusv51/victim/victim-details/vps-status.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victim/victim-details/wants-contactDo they want to be contacted?v51/victim/victim-details/wants-contact.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/victimsVictimsv51/victims.html/v51/onb/onboardedarea, caseUrn, onboardedStatus, service, serviceLead, victimForename, victimSurname, vloNone (prototype redirect)vloNameParts | length == 2 | data['serviceLead'] == 'Not aligned' | vlo.checked | record.surname == 'PALMER' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['serviceLead'] == 'Not aligned' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | record.onboarded | record.area | record.service in ['Universal', 'Enhanced', 'RASSO'] | record.onboarded
v51/v51/vloVictim liaison officerv51/vlo.html/v51/victims, /v51/wft-meetings/victimsvictimForename, victimSurname, vloNone (prototype redirect)
v51/v51/wft-meetings/log-arranged-meetingTasksv51/wft-meetings/log-arranged-meeting.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/log-arranged-meeting-checkTasksv51/wft-meetings/log-arranged-meeting-check.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/log-meeting-outcomeTasksv51/wft-meetings/log-meeting-outcome.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/log-meeting-outcome-checkTasksv51/wft-meetings/log-meeting-outcome-check.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/log-offer-responseTasksv51/wft-meetings/log-offer-response.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/log-offer-response-checkTasksv51/wft-meetings/log-offer-response-check.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/log-offer-taskTasksv51/wft-meetings/log-offer-task.htmltaskAssignee, taskDueDateNone (prototype redirect)assigneeNameParts | length == 2
v51/v51/wft-meetings/new-task/check-taskCheck the task details are correctv51/wft-meetings/new-task/check-task.htmlmanualTask, nextTask, taskDueDate, taskName, taskNote, victimForename, victimSurnameNone (prototype redirect)data['nextTask'] | data['manualTask'] == "yes" | data['taskName'] | data['taskDueDate'] | data['taskNote'] == "" | data['taskDueDate']
v51/v51/wft-meetings/new-task/manual-taskSet a reminderv51/wft-meetings/new-task/manual-task.htmltaskDueDate, taskNote, victimForename, victimSurnameNone (prototype redirect)
v51/v51/wft-meetings/new-task/purposetTask selectionv51/wft-meetings/new-task/purposet.htmlpurposetNone (prototype redirect)
v51/v51/wft-meetings/new-task/task-createdVictim onboardedv51/wft-meetings/new-task/task-created.htmlmanualTask, nextTask, taskDueDate, taskName, victimForename, victimSurnameNone (prototype redirect)data['manualTask'] == "yes"
v51/v51/wft-meetings/new-task/task-due-dateTask due datev51/wft-meetings/new-task/task-due-date.htmltaskDueDateNone (prototype redirect)
v51/v51/wft-meetings/new-task/task-selectionTask selectionv51/wft-meetings/new-task/task-selection.htmlvictimForename, victimSurnameNone (prototype redirect)
v51/v51/wft-meetings/tasksTasksv51/wft-meetings/tasks.htmlarea, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vloNone (prototype redirect)assigneeNameParts | length == 2 | (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") | (data['pcdType'] == "dtc") | (data['pcdStatus'] == "check-details") | (data['pcdFumoc'] == "email")
v51/v51/wft-meetings/tasks2Tasksv51/wft-meetings/tasks2.htmlarea, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vloNone (prototype redirect)assigneeNameParts | length == 2 | (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") | (data['pcdType'] == "dtc") | (data['pcdStatus'] == "check-details") | (data['pcdFumoc'] == "email")
v51/v51/wft-meetings/victimsVictimsv51/wft-meetings/victims.htmlarea, caseUrn, onboardedStatus, serviceLead, victimForename, victimSurname, vloNone (prototype redirect)vloNameParts | length == 2 | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] == 'Yes' | data['onboardedStatus'] != 'Yes' | data['onboardedStatus'] == 'Yes'
+
+ + + \ No newline at end of file diff --git a/docs/v50-v51-routes.md b/docs/v50-v51-routes.md new file mode 100644 index 00000000..adff85bd --- /dev/null +++ b/docs/v50-v51-routes.md @@ -0,0 +1,391 @@ +# VCA prototype — v50 & v51 route inventory + +Complete inventory of every page route in the **v50** and **v51** prototypes (300 routes total — v50: 143, v51: 157). + +Generated from `app/views/{v50,v51}` (templates extending `layouts/main.html`) cross-referenced with the `router.get/post` handlers in `app/routes/v50.js` and `app/routes/v51.js`. **Session variables** and **Conditional logic** merge the template's own `data['…']` / `{% if %}` usage with the values read and branching performed by the POST `-answer` handler each page submits to. + +> This is a GOV.UK Prototype Kit app, so there is essentially no server-side validation — POST handlers simply `redirect`. The **Validation** column flags the few pages that contain GOV.UK error markup, a `required` attribute, or a JS submit guard. + +Companion files: [`v50-v51-routes.csv`](./v50-v51-routes.csv) (spreadsheets) and [`v50-v51-routes.html`](./v50-v51-routes.html) (interactive filter/sort). + + +## V50 routes + + +### v50/(root pages) + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/change-service | Change service | v50/change-service.html | /v50/victims | /v50/change-service-answer | service, serviceLead, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/change-task-due-date | Change task due date | v50/change-task-due-date.html | /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/change-task-due-date-answer | reasonForDueDateChange, taskDueDate | None (prototype redirect) | newDueDate === previousDueDate | +| /v50/next-task-due-date | Task due date | v50/next-task-due-date.html | /v50/tasks | /v50/change-task-due-date-answer | taskDueDate | None (prototype redirect) | newDueDate === previousDueDate | +| /v50/overview | Overview | v50/overview.html | — | /v50/onb/tasks | — | None (prototype redirect) | — | +| /v50/overview2 | Overview | v50/overview2.html | — | — | — | JS submit guard | — | +| /v50/overview3 | Overview | v50/overview3.html | — | — | — | JS submit guard | — | +| /v50/overview4 | Overview | v50/overview4.html | — | — | — | JS submit guard | — | +| /v50/overview5 | Overview | v50/overview5.html | — | — | — | JS submit guard | — | +| /v50/overview6-initial | Overview | v50/overview6-initial.html | — | — | — | None (prototype redirect) | — | +| /v50/overview6-vlm | Overview | v50/overview6-vlm.html | — | — | — | None (prototype redirect) | — | +| /v50/overview6-vlo | Overview | v50/overview6-vlo.html | — | — | — | None (prototype redirect) | — | +| /v50/sign-in | Sign in to your account | v50/sign-in.html | — | /v50/sign-in-answer | password | None (prototype redirect) | — | +| /v50/task-assignee | Task Assignee | v50/task-assignee.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/task-assignee-answer | task-assignee, taskAssignee | None (prototype redirect) | — | +| /v50/task-updated | Victim onboarded | v50/task-updated.html | — | /v50/tasks | taskDueDate, taskName | None (prototype redirect) | — | +| /v50/tasks | Tasks | v50/tasks.html | /v50/task-updated | /v50/next-task-due-date, /v50/onb/tasks/clear-filters, /v50/pcd/call/follow-up-moc, /v50/pcd/call/next-attempt-moc, /v50/pcd/call/was-text-message-sent, /v50/pcd/pre-draft/contacted-by, /v50/pcd/send/email-details, /v50/pcd/send/letter-details, /v50/task-assignee, /v50/update-manual-task, /v50/vcl/call/follow-up-moc, /v50/vcl/call/next-attempt-moc, /v50/vcl/call/was-text-message-sent, /v50/vcl/pre-draft/contacted-by, /v50/vcl/send/email-details, /v50/vcl/send/letter-details, /v50/victim | area, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, onboardedStatus, pcdFumoc, pcdSent, pcdStatus, service, serviceLead, taskAssignee, taskDueDate, vclFumoc, vclStatus, victimForename, victimSurname, vlo | None (prototype redirect) | loop.index == 6 \| (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") or (data['nextTask'] == "") or (data['nextTask'] == "no-task") \| (data['nextTask'] == "dtc") \| data['meetingPurpose'] == "pre-trial" \| data['taskDueDate'] \| data['onboardedStatus'] == 'Yes' \| (data['nextTask'] == "dtc") or (data['nextTask'] == "nfa") \| (data['pcdStatus'] == "log-not-started") \| (data['pcdFumoc'] == "Email") \| (data['vclStatus'] == "log-not-started") \| (data['vclFumoc'] == "Email") \| record.purpose \| record.dueDateTag | +| /v50/update-manual-task | Update task status | v50/update-manual-task.html | /v50/tasks | /v50/update-manual-task-answer | manualTaskName, taskAction, taskDueDate, taskNote | None (prototype redirect) | data['taskDueDate'] \| data['taskNote'] == "" \| request.body['taskAction'] === 'complete' | +| /v50/victims | Victims | v50/victims.html | /v50/onb/onboarded | /v50/change-service, /v50/onb/service-lead, /v50/victim, /v50/vlo | area, caseUrn, onboardedStatus, service, serviceLead, victimForename, victimSurname, vlo | None (prototype redirect) | vloNameParts \| length == 2 \| data['serviceLead'] == 'Not aligned' \| vlo.checked \| record.surname == 'PALMER' \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] == 'Yes' \| data['serviceLead'] == 'Not aligned' \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] == 'Yes' \| record.onboarded \| record.area \| record.service in ['Universal', 'Enhanced', 'RASSO'] \| record.onboarded | +| /v50/vlo | Victim liaison officer | v50/vlo.html | /v50/victims, /v50/wft-meetings/victims | /v50/onb/vlo-answer | victimForename, victimSurname, vlo | None (prototype redirect) | — | + +### v50/case-locked + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/case-locked/by-someone-else | Case locked | v50/case-locked/by-someone-else.html | — | /v50/pcd/victim | — | None (prototype redirect) | — | +| /v50/case-locked/self-locked | Case locked | v50/case-locked/self-locked.html | — | /v50/pcd/victim | — | None (prototype redirect) | — | + +### v50/onb + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/onb/check-details | Check the details before drafting the letter | v50/onb/check-details/index.html | — | /v50/onb/check-details-answer, /v50/onb/check-details/case-type, /v50/onb/check-details/pmoc, /v50/onb/check-details/preferred-contact-times, /v50/onb/check-details/preferred-correspondence-language, /v50/onb/check-details/preferred-name, /v50/onb/check-details/risk-level, /v50/onb/check-details/translator-needed, /v50/onb/check-details/vps-status, /v50/onb/check-task-vlo, /v50/onb/service-lead | caseType, detailChange, onboardedStatus, pmoc, preferredContactTimes, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, preferredName, riskLevel, serviceLead, successNotification, translatorNeeded, victimForename, victimSurname, vlo, vpsStatus | None (prototype redirect) | (data['successNotification'] == "yes") and (data['onboardedStatus'] == "Yes") \| data['detailChange'] == "no" \| data['serviceLead'] == 'Not aligned' \| data['serviceLead'] == "Not aligned" \| data['preferredCorrespondenceLanguage'] == "Other" \| data['vlo'] \| data['caseType'] \| data['riskLevel'] \| data['pmoc'] \| data['preferredCorrespondenceLanguage'] == "English" or data['preferredCorrespondenceLanguage'] == "Welsh" or data['preferredCorrespondenceLanguage'] == "Other" \| data['preferredCorrespondenceLanguage'] == "Other" \| data['translatorNeeded'] == "Yes" or data['translatorNeeded'] == "No" \| data['preferredContactTimes'] \| data['preferredName'] \| data['vpsStatus'] | +| /v50/onb/check-details/case-type | Charging type | v50/onb/check-details/case-type.html | /v50/onb/check-details | /v50/check-details/case-type-answer | — | None (prototype redirect) | — | +| /v50/onb/check-details/pmoc | Preferred method of contact | v50/onb/check-details/pmoc.html | /v50/onb/check-details | /v50/check-details/pmoc-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-details/preferred-contact-times | Preferred contact times | v50/onb/check-details/preferred-contact-times.html | /v50/onb/check-details | /v50/check-details/preferred-contact-times-answer | preferredContactTimes, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-details/preferred-correspondence-language | Preferred correspondence language | v50/onb/check-details/preferred-correspondence-language.html | /v50/onb/check-details | /v50/check-details/preferred-correspondence-language-answer | preferredCorrespondenceLanguageOther, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-details/preferred-name | Preferred name | v50/onb/check-details/preferred-name.html | /v50/onb/check-details | /v50/check-details/preferred-name-answer | preferredName, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-details/risk-level | Domestic abuse risk level | v50/onb/check-details/risk-level.html | /v50/onb/check-details | /v50/check-details/risk-level-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-details/translator-needed | Translator needed | v50/onb/check-details/translator-needed.html | /v50/onb/check-details | /v50/check-details/translator-needed-answer | translatorNeededDetails, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-details/vps-status | VPS status | v50/onb/check-details/vps-status.html | /v50/onb/check-details | /v50/check-details/vps-status-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/check-task | Check the task details are correct | v50/onb/check-task.html | — | /v50/onb/check-task-answer, /v50/onb/manual-task, /v50/onb/meeting-purpose, /v50/onb/next-task, /v50/onb/next-task-due-date | manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] \| data['nextTask'] == "dtc" \| data['nextTask'] == "no-task" \| data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" \| data['meetingPurpose'] == "pre-trial" \| data['manualTask'] == "yes" \| data['manualTaskName'] \| data['taskDueDate'] \| data['taskNote'] == "" \| data['taskDueDate'] \| data['nextTask'] == "no-task" | +| /v50/onb/check-task-vlo | Victim liaison officer | v50/onb/check-task-vlo.html | /v50/onb/check-details | /v50/onb/check-task-vlo-answer | victimForename, victimSurname, vlo | None (prototype redirect) | request.session.data.vloReturnTo === 'check-task' \| request.session.data.vloReturnTo === 'check-details' | +| /v50/onb/manual-task | Create a task | v50/onb/manual-task.html | /v50/onb/check-task | /v50/onb/manual-task-answer | manualTaskName, taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/meeting-purpose | Task selection | v50/onb/meeting-purpose.html | /v50/onb/check-task | /v50/onb/meeting-purpose-answer | meetingPurposeDetails | None (prototype redirect) | — | +| /v50/onb/next-task | Next task | v50/onb/next-task.html | /v50/onb/check-task | /v50/onb/next-task-answer | nextTask, victimForename, victimSurname | None (prototype redirect) | nextTask == "other" \| nextTask == "no-task" \| nextTask == "meeting-offer" \|\| nextTask == "meeting-arranged" \|\| nextTask == "meeting-outcome" | +| /v50/onb/next-task-due-date | Task due date | v50/onb/next-task-due-date.html | /v50/onb/check-task | /v50/onb/next-task-due-date-answer | taskDueDate | None (prototype redirect) | — | +| /v50/onb/onboarded | Victim onboarded | v50/onb/onboarded.html | — | /v50/victims | manualTaskName, nextTask, taskDueDate, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] == "dtc" | +| /v50/onb/pmoc | Preferred method of contact | v50/onb/pmoc.html | — | /v50/onb/pmoc-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/onb/service-lead | Service lead | v50/onb/service-lead.html | /v50/onb/check-details, /v50/victims, /v50/wft-meetings/victims | /v50/onb/service-lead-answer | victimForename, victimSurname | None (prototype redirect) | onboardedStatus == "no" | + +### v50/other + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/other/call-logged | Telephone call logged | v50/other/call-logged.html | — | /v50/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/other/contacted-by | How did you contact the victim? | v50/other/contacted-by.html | — | /v50/other/contacted-by-answer | contactedBy, otherContactMethod, victimForename, victimSurname | None (prototype redirect) | contactedBy == "call" \| contactedBy == "email" \| contactedBy == "post" \| contactedBy == "text" \| contactedBy == "in-person" \| contactedBy == "other" | +| /v50/other/email-details | Log an email | v50/other/email-details.html | — | /v50/other/email-details-answer | otherCommunications, otherEmailDate, otherEmailHour, otherEmailMinutes, otherEmailType, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v50/other/email-logged | Email logged | v50/other/email-logged.html | — | /v50/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/other/in-person | Log an in-person conversation | v50/other/in-person.html | — | /v50/other/in-person-answer | otherCommunications, otherInPersonDate, otherInPersonHour, otherInPersonMinutes, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v50/other/in-person-logged | In-person meeting logged | v50/other/in-person-logged.html | — | /v50/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/other/letter-details | Log a letter | v50/other/letter-details.html | — | /v50/other/letter-details-answer | otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherLetterDate, otherLetterHour, otherLetterMinutes, otherLetterType, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v50/other/letter-logged | Letter logged | v50/other/letter-logged.html | — | /v50/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/other/log | Log a communication | v50/other/log.html | — | — | dateOfCommunicationDay, dateOfCommunicationMonth, dateOfCommunicationYear, individualOtherName, purposeOfCommunication | None (prototype redirect) | — | +| /v50/other/other | Log other communication | v50/other/other.html | — | /v50/other/other-details-answer | otherCommsDate, otherCommsHour, otherCommsMinutes, otherCommsType, otherCommunications, otherContactMethod, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v50/other/other-logged | Other communication logged | v50/other/other-logged.html | — | /v50/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/other/telephone-call | Log a telephone call | v50/other/telephone-call.html | — | /v50/other/telephone-call-answer | otherCallDate, otherCallHour, otherCallMinutes, otherCallType, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v50/other/text-message | Log a text message | v50/other/text-message.html | — | /v50/other/text-message-answer | otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherTextMessageDate, otherTextMessageHour, otherTextMessageMinutes, otherTextMessageType, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v50/other/text-message-logged | Text message logged | v50/other/text-message-logged.html | — | /v50/victim | victimForename, victimSurname | None (prototype redirect) | — | + +### v50/pcd + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/pcd/call/follow-up-moc | Follow-up method of contact | v50/pcd/call/follow-up-moc.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/pcd/call/follow-up-moc-answer | pcdCallAttempt, pcdFumoc, victimForename, victimSurname | None (prototype redirect) | pcdFumoc == "Email" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" \| pcdFumoc == "Post" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" | +| /v50/pcd/call/next-attempt-moc | Next attempt method of contact | v50/pcd/call/next-attempt-moc.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/pcd/call/next-attempt-moc-answer | pcdAttemptToContactAgain, pcdCallAttempt | None (prototype redirect) | pcdAttemptToContactAgain == "call" \| pcdCallAttempt == "1" \| pcdAttemptToContactAgain == "email" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" | +| /v50/pcd/call/phone-call-1 | Telephone call 1 | v50/pcd/call/phone-call-1.html | — | /v50/pcd/call/phone-call-1-answer | pcdCallDate1, pcdVictimInformed1 | None (prototype redirect) | pcdVictimInformed1 == "Yes" | +| /v50/pcd/call/phone-call-2 | Telephone call 2 | v50/pcd/call/phone-call-2.html | — | /v50/pcd/call/phone-call-2-answer | pcdCallDate2, pcdVictimInformed2 | None (prototype redirect) | pcdVictimInformed2 == "Yes" | +| /v50/pcd/call/phone-call-3 | Telephone call 3 details | v50/pcd/call/phone-call-3.html | — | /v50/pcd/call/phone-call-3-answer | pcdCallDate3, pcdVictimInformed3 | None (prototype redirect) | pcdVictimInformed3 == "Yes" | +| /v50/pcd/call/text-message-details | Text message details | v50/pcd/call/text-message-details.html | — | /v50/pcd/call/text-message-details-answer | pcdCallDate1 | None (prototype redirect) | — | +| /v50/pcd/call/was-text-message-sent | Was a text message sent to the victim? | v50/pcd/call/was-text-message-sent.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/pcd/call/was-text-message-sent-answer | pcdWasTextMessageSent, victimForename, victimSurname | None (prototype redirect) | pcdWasTextMessageSent == "Yes" | +| /v50/pcd/draft/first-hearing | First hearing | v50/pcd/draft/first-hearing.html | — | /v50/pcd/draft/first-hearing-answer | firstHearingDate, firstHearingLocation | None (prototype redirect) | — | +| /v50/pcd/draft/pcd-type | Charging decision type | v50/pcd/draft/pcd-type.html | — | /v50/pcd/draft/pcd-type-answer | existingTask, pcdType, victimForename, victimSurname | None (prototype redirect) | pcdType == "dtc" \| existingTask == "dtc" \| pcdType == "nfa" \| existingTask == "nfa" | +| /v50/pcd/draft/task-already-exists | This task already exists | v50/pcd/draft/task-already-exists.html | — | /v50/pcd/draft/task-already-exists-answer, /v50/victim/new-task/task-due-date | existingTask, existingTaskDueDate, pcdType, victimForename, victimSurname | None (prototype redirect) | data['existingTask'] == "dtc" \| data['existingTaskDueDate'] | +| /v50/pcd/follow-up/call-logged | Follow-up telephone call logged | v50/pcd/follow-up/call-logged.html | — | /v50/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v50/pcd/follow-up/email-details | Follow-up email details | v50/pcd/follow-up/email-details.html | — | /v50/pcd/follow-up/email-details-answer | followUpEmailDispatchDate, followUpEmailDispatchNotes | error markup | — | +| /v50/pcd/follow-up/email-logged | Follow-up email logged | v50/pcd/follow-up/email-logged.html | — | /v50/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v50/pcd/follow-up/letter-details | Follow-up letter details | v50/pcd/follow-up/letter-details.html | — | /v50/pcd/follow-up/letter-details-answer | followUpLetterDispatchDate, followUpLetterDispatchNotes | error markup | — | +| /v50/pcd/follow-up/letter-logged | Follow-up letter logged | v50/pcd/follow-up/letter-logged.html | — | /v50/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v50/pcd/follow-up/log-follow-up | Log a follow-up | v50/pcd/follow-up/log-follow-up.html | — | /v50/pcd/follow-up/log-follow-up-answer | pcdFollowUpType, victimForename, victimSurname | error markup | pcdFollowUpType == "call" \| pcdFollowUpType == "email" \| pcdFollowUpType == "not-contacted" | +| /v50/pcd/follow-up/not-contacted-logged | Decision not to contact logged | v50/pcd/follow-up/not-contacted-logged.html | — | /v50/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v50/pcd/follow-up/not-contacted-reason | Reason for not contacting the victim | v50/pcd/follow-up/not-contacted-reason.html | — | /v50/pcd/follow-up/not-contacted-reason-answer | followUpNotContactedReason, victimForename, victimSurname | error markup | — | +| /v50/pcd/follow-up/telephone-call | Follow-up telephone call | v50/pcd/follow-up/telephone-call.html | — | /v50/pcd/follow-up/telephone-call-answer | followUpCallDate, followUpCallHour, followUpCallMinutes, followUpCallNotes, followUpCallType, followUpVictimInformed | None (prototype redirect) | — | +| /v50/pcd/pre-draft/check-eligibility | Check eligibility | v50/pcd/pre-draft/check-eligibility.html | — | /v50/pcd/pre-draft/check-eligibility-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/pcd/pre-draft/contacted-by | How did you contact the victim? | v50/pcd/pre-draft/contacted-by.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/pcd/pre-draft/contacted-by-answer | contactedBy, successReason, victimForename, victimSurname | None (prototype redirect) | data['successReason'] != "task-created" \| contactedBy == "call" \| contactedBy == "email" \| contactedBy == "post" \| contactedBy == "not-contacted" | +| /v50/pcd/pre-draft/not-contacted-reason | Reason for not contacting the victim | v50/pcd/pre-draft/not-contacted-reason.html | — | /v50/pcd/pre-draft/not-contacted-reason-answer | notContactedReason, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/pcd/send/email-details | Email details | v50/pcd/send/email-details.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/pcd/send/email-details-answer | emailDispatchDate | None (prototype redirect) | — | +| /v50/pcd/send/email-logged | Email logged | v50/pcd/send/email-logged.html | — | /v50/victim | contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") \| (data['contactedBy'] == "call") \| (data['pcdCallAttempt'] == "1") \| (data['pcdVictimInformed1'] == "Yes") \| (data['pcdVictimInformed2'] == "Yes") \| (data['pcdVictimInformed3'] == "Yes") | +| /v50/pcd/send/letter-details | Letter details | v50/pcd/send/letter-details.html | /v50/tasks, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2 | /v50/pcd/send/letter-details-answer | letterDispatchDate | None (prototype redirect) | — | +| /v50/pcd/send/letter-logged | Letter logged | v50/pcd/send/letter-logged.html | — | /v50/victim | contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") \| (data['contactedBy'] == "call") \| (data['pcdCallAttempt'] == "1") \| (data['pcdVictimInformed1'] == "Yes") \| (data['pcdVictimInformed2'] == "Yes") \| (data['pcdVictimInformed3'] == "Yes") | + +### v50/victim + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/victim | Victim | v50/victim/index.html | /v50/other/call-logged, /v50/other/email-logged, /v50/other/in-person-logged, /v50/other/letter-logged, /v50/other/other-logged, /v50/other/text-message-logged, /v50/pcd/follow-up/call-logged, /v50/pcd/follow-up/email-logged, /v50/pcd/follow-up/letter-logged, /v50/pcd/follow-up/not-contacted-logged, /v50/pcd/send/email-logged, /v50/pcd/send/letter-logged, /v50/tasks, /v50/victim/case-contacts/family-liaison-officer, /v50/victim/case-contacts/idva, /v50/victim/case-contacts/isva, /v50/victim/new-task/task-created, /v50/victims, /v50/wft-meetings/tasks, /v50/wft-meetings/tasks2, /v50/wft-meetings/victims | — | area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v50/victim/case-contacts/family-liaison-officer | Family Liaison Officer | v50/victim/case-contacts/family-liaison-officer.html | — | /v50/victim, /v50/victim/case-contacts/family-liaison-officer-answer, /v50/victim/case-contacts/family-liaison-officer-delete | familyLiaisonOfficerDeleted, familyLiaisonOfficerEmailAddress, familyLiaisonOfficerForename, familyLiaisonOfficerName, familyLiaisonOfficerPhoneNumber, familyLiaisonOfficerSurname | None (prototype redirect) | isExisting \| isExisting | +| /v50/victim/case-contacts/idva | Independent Domestic Violence Advisor (IDVA) | v50/victim/case-contacts/idva.html | — | /v50/victim, /v50/victim/case-contacts/idva-answer, /v50/victim/case-contacts/idva-delete | idvaAddressLine1, idvaAddressLine2, idvaAddressLine3, idvaAddressLine4, idvaAddressLine5, idvaCity, idvaCounty, idvaDeleted, idvaEmailAddress, idvaName, idvaPhoneNumber, idvaPostCode | None (prototype redirect) | isExisting \| isExisting | +| /v50/victim/case-contacts/isva | Independent Sexual Violence Advisor (ISVA) | v50/victim/case-contacts/isva.html | — | /v50/victim, /v50/victim/case-contacts/isva-answer, /v50/victim/case-contacts/isva-delete | isvaAddressLine1, isvaAddressLine2, isvaAddressLine3, isvaAddressLine4, isvaAddressLine5, isvaCity, isvaCounty, isvaDeleted, isvaEmailAddress, isvaName, isvaPhoneNumber, isvaPostCode | None (prototype redirect) | isExisting \| isExisting | +| /v50/victim/case-information/area | Change area | v50/victim/case-information/area.html | — | /v50/victim/case-information/area-answer | area | None (prototype redirect) | — | +| /v50/victim/case-information/charging-type | Change charging type | v50/victim/case-information/charging-type.html | — | /v50/victim/case-information/charging-type-answer | — | None (prototype redirect) | — | +| /v50/victim/index-notasks | Victim | v50/victim/index-notasks.html | — | /v50/victim/new-task/task-selection | area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v50/victim/index-withtasks | Victim | v50/victim/index-withtasks.html | — | /v50/victim/new-task/task-selection | area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v50/victim/index-withtasks-v2 | Victim | v50/victim/index-withtasks-v2.html | — | — | area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v50/victim/index-withtasks-v3 | Victim | v50/victim/index-withtasks-v3.html | — | /v50/victim/new-task/task-selection | area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v50/victim/index-withtasks-v4 | Victim | v50/victim/index-withtasks-v4.html | — | /v50/victim/new-task/task-selection | area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v50/victim/new-task/check-task | Check the task details are correct | v50/victim/new-task/check-task.html | — | /v50/victim/new-task/check-task-answer, /v50/victim/new-task/manual-task, /v50/victim/new-task/meeting-purpose, /v50/victim/new-task/task-due-date, /v50/victim/new-task/task-selection | existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, existingTaskNote, manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] \| data['nextTask'] == "dtc" \| data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" \| data['meetingPurpose'] == "pre-trial" \| data['manualTask'] == "yes" \| data['manualTaskName'] \| data['taskDueDate'] \| data['taskNote'] == "" \| data['taskDueDate'] \| duplicateNonMeeting \|\| duplicateMeeting | +| /v50/victim/new-task/manual-task | Set a reminder | v50/victim/new-task/manual-task.html | /v50/victim/new-task/check-task, /v50/wft-meetings/new-task/check-task | /v50/victim/new-task/manual-task-answer | manualTaskName, taskNote, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/new-task/meeting-purpose | Task selection | v50/victim/new-task/meeting-purpose.html | /v50/victim/new-task/check-task | /v50/victim/new-task/meeting-purpose-answer | existingMeetingPurpose, existingTask, meetingPurposeDetails, nextTask | None (prototype redirect) | — | +| /v50/victim/new-task/task-already-exists | This task already exists | v50/victim/new-task/task-already-exists.html | — | /v50/victim/new-task/task-already-exists-answer, /v50/victim/new-task/task-due-date | existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, taskDueDate, victimForename, victimSurname | None (prototype redirect) | data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" \| data['existingMeetingPurpose'] == "pre-trial" \| data['existingTask'] == "dtc" \| data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" \| data['existingMeetingPurpose'] == "pre-trial" \| data['existingTaskDueDate'] | +| /v50/victim/new-task/task-created | Victim onboarded | v50/victim/new-task/task-created.html | — | /v50/victim | manualTaskName, nextTask, taskDueDate | None (prototype redirect) | data['nextTask'] == "dtc" | +| /v50/victim/new-task/task-due-date | Task due date | v50/victim/new-task/task-due-date.html | /v50/pcd/draft/task-already-exists, /v50/victim/new-task/check-task, /v50/victim/new-task/task-already-exists, /v50/wft-meetings/new-task/check-task | /v50/victim/new-task/task-due-date-answer | existingTaskDueDate, taskDueDate | None (prototype redirect) | fromTaskAlreadyExists \| fromPcd \| fromCheck and data['taskDueDate'] \| request.body.fromTaskAlreadyExists === 'yes' \| request.body.fromPcd === 'yes' | +| /v50/victim/new-task/task-selection | Task selection | v50/victim/new-task/task-selection.html | /v50/victim/index-notasks, /v50/victim/index-withtasks, /v50/victim/index-withtasks-v3, /v50/victim/index-withtasks-v4, /v50/victim/new-task/check-task, /v50/wft-meetings/new-task/check-task | /v50/victim/new-task/next-task-answer | existingTask, nextTask, victimForename, victimSurname | None (prototype redirect) | nextTask == "dtc" \| nextTask == "nfa" \| nextTask == "stopped-charge" \| nextTask == "altered-charge" \| nextTask == "other" \| nextTask == "no-task" \| nextTask == "meeting-offer" \|\| nextTask == "meeting-arranged" \|\| nextTask == "meeting-outcome" | +| /v50/victim/task-details/another-task1 | Victim record | v50/victim/task-details/another-task1.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/task-details/another-task2 | Victim record | v50/victim/task-details/another-task2.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/task-details/another-task3 | Victim record | v50/victim/task-details/another-task3.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/task-details/decision-to-charge | Victim record | v50/victim/task-details/decision-to-charge.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/task-details/decision-to-charge-order | Victim record | v50/victim/task-details/decision-to-charge-order.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/task-details/outcome-logged | Victim record | v50/victim/task-details/outcome-logged.html | — | — | caseUrn, subTab, victimForename, victimSurname | None (prototype redirect) | (data['subTab'] == "ptm") | +| /v50/victim/task-details/outcome-logged2 | Victim record | v50/victim/task-details/outcome-logged2.html | — | — | caseUrn, subTab, victimForename, victimSurname | None (prototype redirect) | (data['subTab'] == "ptm") | +| /v50/victim/victim-details/address | Victim's address | v50/victim/victim-details/address.html | — | /v50/victim/victim-details/address-answer | victimAddressLine1, victimAddressLine2, victimAddressLine3, victimAddressLine4, victimAddressLine5, victimForename, victimPostCode, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/category | Victim category | v50/victim/victim-details/category.html | — | /v50/victim/victim-details/category-answer | victimForename, victimSurname | None (prototype redirect) | opt.hint | +| /v50/victim/victim-details/contact-times | Preferred contact times | v50/victim/victim-details/contact-times.html | — | /v50/victim/victim-details/contact-times-answer | preferredContactTimes, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/correspondence-language | Preferred correspondence language | v50/victim/victim-details/correspondence-language.html | — | /v50/victim/victim-details/correspondence-language-answer | preferredCorrespondenceLanguageOther, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/date-of-birth | Victim's date of birth | v50/victim/victim-details/date-of-birth.html | — | /v50/victim/victim-details/date-of-birth-answer | victimDobDay, victimDobMonth, victimDobYear, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/disability | Disability or access needs | v50/victim/victim-details/disability.html | — | /v50/victim/victim-details/disability-answer | victimDisability, victimDisabilityDetails | None (prototype redirect) | — | +| /v50/victim/victim-details/email-address | Victim's email address | v50/victim/victim-details/email-address.html | — | /v50/victim/victim-details/email-address-answer | victimEmailAddress, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/ethnicity | Victim ethnicity | v50/victim/victim-details/ethnicity.html | — | /v50/victim/victim-details/ethnicity-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/full-name | Victim's full name | v50/victim/victim-details/full-name.html | — | /v50/victim/victim-details/full-name-answer | victimForename, victimSurname, victimTitle | None (prototype redirect) | — | +| /v50/victim/victim-details/gender | Victim gender | v50/victim/victim-details/gender.html | — | /v50/victim/victim-details/gender-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/pmoc | Preferred method of contact | v50/victim/victim-details/pmoc.html | — | /v50/victim/victim-details/pmoc-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/pmoc-police | Preferred method of contact for police | v50/victim/victim-details/pmoc-police.html | — | /v50/victim/victim-details/pmoc-police-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/power-of-attorney | Power of attorney details | v50/victim/victim-details/power-of-attorney.html | — | /v50/victim/victim-details/power-of-attorney-answer | powerOfAttorneyEmail, powerOfAttorneyName, powerOfAttorneyPhone | None (prototype redirect) | — | +| /v50/victim/victim-details/preferred-name | Victim's preferred name | v50/victim/victim-details/preferred-name.html | — | /v50/victim/victim-details/preferred-name-answer | victimForename, victimPreferredName, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/previous-convictions | Previous convictions | v50/victim/victim-details/previous-convictions.html | — | /v50/victim/victim-details/previous-convictions-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/reasonable-adjustments | Reasonable adjustments | v50/victim/victim-details/reasonable-adjustments.html | — | /v50/victim/victim-details/reasonable-adjustments-answer | reasonableAdjustments, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/religion | Religion or belief | v50/victim/victim-details/religion.html | — | /v50/victim/victim-details/religion-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/risk-level | Domestic abuse risk level | v50/victim/victim-details/risk-level.html | — | /v50/victim/victim-details/risk-level-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/service | Change service | v50/victim/victim-details/service.html | — | /v50/victim/victim-details/service-answer | service, serviceLead, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/telephone-number | Victim's telephone number | v50/victim/victim-details/telephone-number.html | — | /v50/victim/victim-details/telephone-number-answer | victimForename, victimHomePhone, victimPhoneNumber, victimSurname, victimWorkPhone | None (prototype redirect) | — | +| /v50/victim/victim-details/translator-needed | Translator needed | v50/victim/victim-details/translator-needed.html | — | /v50/victim/victim-details/translator-needed-answer | translatorNeededDetails, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/victim-representative | Victim representative details | v50/victim/victim-details/victim-representative.html | — | /v50/victim/victim-details/victim-representative-answer | victimRepresentativeEmail, victimRepresentativeName, victimRepresentativePhone | None (prototype redirect) | — | +| /v50/victim/victim-details/vps-status | VPS status | v50/victim/victim-details/vps-status.html | — | /v50/victim/victim-details/vps-status-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/victim/victim-details/wants-contact | Do they want to be contacted? | v50/victim/victim-details/wants-contact.html | — | /v50/victim/victim-details/wants-contact-answer | victimForename, victimSurname | None (prototype redirect) | — | + +### v50/wft-meetings + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v50/wft-meetings/log-arranged-meeting | Tasks | v50/wft-meetings/log-arranged-meeting.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/log-arranged-meeting-check | Tasks | v50/wft-meetings/log-arranged-meeting-check.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/log-meeting-outcome | Tasks | v50/wft-meetings/log-meeting-outcome.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/log-meeting-outcome-check | Tasks | v50/wft-meetings/log-meeting-outcome-check.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/log-offer-response | Tasks | v50/wft-meetings/log-offer-response.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/log-offer-response-check | Tasks | v50/wft-meetings/log-offer-response-check.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/log-offer-task | Tasks | v50/wft-meetings/log-offer-task.html | — | /v50/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v50/wft-meetings/new-task/check-task | Check the task details are correct | v50/wft-meetings/new-task/check-task.html | — | /v50/victim/new-task/manual-task, /v50/victim/new-task/task-due-date, /v50/victim/new-task/task-selection | manualTask, nextTask, taskDueDate, taskName, taskNote, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] \| data['manualTask'] == "yes" \| data['taskName'] \| data['taskDueDate'] \| data['taskNote'] == "" \| data['taskDueDate'] | +| /v50/wft-meetings/new-task/manual-task | Set a reminder | v50/wft-meetings/new-task/manual-task.html | — | /v50/victim/new-task/manual-task-answer | taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | — | +| /v50/wft-meetings/new-task/purposet | Task selection | v50/wft-meetings/new-task/purposet.html | — | /v50/wft-meetings/new-task/purposet-answer | purposet | None (prototype redirect) | — | +| /v50/wft-meetings/new-task/task-created | Victim onboarded | v50/wft-meetings/new-task/task-created.html | — | — | manualTask, nextTask, taskDueDate, taskName, victimForename, victimSurname | None (prototype redirect) | data['manualTask'] == "yes" | +| /v50/wft-meetings/new-task/task-due-date | Task due date | v50/wft-meetings/new-task/task-due-date.html | — | /v50/wft-meetings/new-task/task-due-date-answer | taskDueDate | None (prototype redirect) | — | +| /v50/wft-meetings/new-task/task-selection | Task selection | v50/wft-meetings/new-task/task-selection.html | — | /v50/wft-meetings/new-task/next-task-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v50/wft-meetings/tasks | Tasks | v50/wft-meetings/tasks.html | — | /v50/change-task-due-date, /v50/onb/tasks/clear-filters, /v50/pcd/call/follow-up-moc, /v50/pcd/call/next-attempt-moc, /v50/pcd/call/was-text-message-sent, /v50/pcd/pre-draft/check-details, /v50/pcd/pre-draft/contacted-by, /v50/pcd/send/email-details, /v50/pcd/send/letter-details, /v50/task-assignee, /v50/victim | area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo | None (prototype redirect) | assigneeNameParts \| length == 2 \| (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") \| (data['pcdType'] == "dtc") \| (data['pcdStatus'] == "check-details") \| (data['pcdFumoc'] == "email") | +| /v50/wft-meetings/tasks2 | Tasks | v50/wft-meetings/tasks2.html | — | /v50/change-task-due-date, /v50/onb/tasks/clear-filters, /v50/pcd/call/follow-up-moc, /v50/pcd/call/next-attempt-moc, /v50/pcd/call/was-text-message-sent, /v50/pcd/pre-draft/check-details, /v50/pcd/pre-draft/contacted-by, /v50/pcd/send/email-details, /v50/pcd/send/letter-details, /v50/task-assignee, /v50/victim | area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo | None (prototype redirect) | assigneeNameParts \| length == 2 \| (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") \| (data['pcdType'] == "dtc") \| (data['pcdStatus'] == "check-details") \| (data['pcdFumoc'] == "email") | +| /v50/wft-meetings/victims | Victims | v50/wft-meetings/victims.html | — | /v50/onb/service-lead, /v50/victim, /v50/vlo | area, caseUrn, onboardedStatus, serviceLead, victimForename, victimSurname, vlo | None (prototype redirect) | vloNameParts \| length == 2 \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] != 'Yes' \| data['onboardedStatus'] == 'Yes' | + +## V51 routes + + +### v51/(root pages) + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/change-service | Change service | v51/change-service.html | /v51/victims | /v51/change-service-answer | service, serviceLead, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/change-task-due-date | Change task due date | v51/change-task-due-date.html | /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/change-task-due-date-answer | reasonForDueDateChange, taskDueDate | None (prototype redirect) | newDueDate === previousDueDate | +| /v51/next-task-due-date | Task due date | v51/next-task-due-date.html | /v51/tasks | /v51/change-task-due-date-answer | taskDueDate | None (prototype redirect) | newDueDate === previousDueDate | +| /v51/overview | Overview | v51/overview.html | — | /v51/onb/tasks | — | None (prototype redirect) | — | +| /v51/overview2 | Overview | v51/overview2.html | — | — | — | JS submit guard | — | +| /v51/overview3 | Overview | v51/overview3.html | — | — | — | JS submit guard | — | +| /v51/overview4 | Overview | v51/overview4.html | — | — | — | JS submit guard | — | +| /v51/overview5 | Overview | v51/overview5.html | — | — | — | JS submit guard | — | +| /v51/overview6-initial | Overview | v51/overview6-initial.html | — | — | — | None (prototype redirect) | — | +| /v51/overview6-vlm | Overview | v51/overview6-vlm.html | — | — | — | None (prototype redirect) | — | +| /v51/overview6-vlo | Overview | v51/overview6-vlo.html | — | — | — | None (prototype redirect) | — | +| /v51/sign-in | Sign in to your account | v51/sign-in.html | — | /v51/sign-in-answer | password | None (prototype redirect) | — | +| /v51/task-assignee | Task Assignee | v51/task-assignee.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/task-assignee-answer | task-assignee, taskAssignee | None (prototype redirect) | — | +| /v51/task-updated | Victim onboarded | v51/task-updated.html | — | /v51/tasks | taskDueDate, taskName | None (prototype redirect) | — | +| /v51/tasks | Tasks | v51/tasks.html | /v51/task-updated | /v51/next-task-due-date, /v51/onb/tasks/clear-filters, /v51/pcd/call/follow-up-moc, /v51/pcd/call/next-attempt-moc, /v51/pcd/call/was-text-message-sent, /v51/pcd/pre-draft/contacted-by, /v51/pcd/send/email-details, /v51/pcd/send/letter-details, /v51/task-assignee, /v51/update-manual-task, /v51/vcl/call/follow-up-moc, /v51/vcl/call/next-attempt-moc, /v51/vcl/call/was-text-message-sent, /v51/vcl/send/email-details, /v51/vcl/send/letter-details, /v51/vcl/start-task, /v51/victim | area, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, onboardedStatus, pcdFumoc, pcdSent, pcdStatus, service, serviceLead, taskAssignee, taskDueDate, vclFumoc, vclStatus, victimForename, victimSurname, vlo | None (prototype redirect) | loop.index == 6 \| ((data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") or (data['nextTask'] == "") or (data['nextTask'] == "no-task")) and (data['nextTask'] != "stopped-charge") and (data['nextTask'] != "altered-charge") \| (data['nextTask'] == "dtc") \| data['meetingPurpose'] == "pre-trial" \| data['taskDueDate'] \| data['onboardedStatus'] == 'Yes' \| (data['nextTask'] == "dtc") or (data['nextTask'] == "nfa") \| (data['pcdStatus'] == "log-not-started") \| (data['pcdFumoc'] == "Email") \| (data['vclStatus'] == "log-not-started") \| (data['vclFumoc'] == "Email") \| record.purpose \| record.dueDateTag | +| /v51/update-manual-task | Update task status | v51/update-manual-task.html | /v51/tasks | /v51/update-manual-task-answer | manualTaskName, taskAction, taskDueDate, taskNote | None (prototype redirect) | data['taskDueDate'] \| data['taskNote'] == "" \| request.body['taskAction'] === 'complete' | +| /v51/victims | Victims | v51/victims.html | /v51/onb/onboarded | /v51/change-service, /v51/onb/service-lead, /v51/victim, /v51/vlo | area, caseUrn, onboardedStatus, service, serviceLead, victimForename, victimSurname, vlo | None (prototype redirect) | vloNameParts \| length == 2 \| data['serviceLead'] == 'Not aligned' \| vlo.checked \| record.surname == 'PALMER' \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] == 'Yes' \| data['serviceLead'] == 'Not aligned' \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] == 'Yes' \| record.onboarded \| record.area \| record.service in ['Universal', 'Enhanced', 'RASSO'] \| record.onboarded | +| /v51/vlo | Victim liaison officer | v51/vlo.html | /v51/victims, /v51/wft-meetings/victims | /v51/onb/vlo-answer | victimForename, victimSurname, vlo | None (prototype redirect) | — | + +### v51/case-locked + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/case-locked/by-someone-else | Case locked | v51/case-locked/by-someone-else.html | — | /v51/pcd/victim | — | None (prototype redirect) | — | +| /v51/case-locked/self-locked | Case locked | v51/case-locked/self-locked.html | — | /v51/pcd/victim | — | None (prototype redirect) | — | + +### v51/onb + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/onb/check-details | Check the details before drafting the letter | v51/onb/check-details/index.html | — | /v51/onb/check-details-answer, /v51/onb/check-details/case-type, /v51/onb/check-details/pmoc, /v51/onb/check-details/preferred-contact-times, /v51/onb/check-details/preferred-correspondence-language, /v51/onb/check-details/preferred-name, /v51/onb/check-details/risk-level, /v51/onb/check-details/translator-needed, /v51/onb/check-details/vps-status, /v51/onb/check-task-vlo, /v51/onb/service-lead | caseType, detailChange, onboardedStatus, pmoc, preferredContactTimes, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, preferredName, riskLevel, serviceLead, successNotification, translatorNeeded, victimForename, victimSurname, vlo, vpsStatus | None (prototype redirect) | (data['successNotification'] == "yes") and (data['onboardedStatus'] == "Yes") \| data['detailChange'] == "no" \| data['serviceLead'] == 'Not aligned' \| data['serviceLead'] == "Not aligned" \| data['preferredCorrespondenceLanguage'] == "Other" \| data['vlo'] \| data['caseType'] \| data['riskLevel'] \| data['pmoc'] \| data['preferredCorrespondenceLanguage'] == "English" or data['preferredCorrespondenceLanguage'] == "Welsh" or data['preferredCorrespondenceLanguage'] == "Other" \| data['preferredCorrespondenceLanguage'] == "Other" \| data['translatorNeeded'] == "Yes" or data['translatorNeeded'] == "No" \| data['preferredContactTimes'] \| data['preferredName'] \| data['vpsStatus'] | +| /v51/onb/check-details/case-type | Charging type | v51/onb/check-details/case-type.html | /v51/onb/check-details | /v51/check-details/case-type-answer | — | None (prototype redirect) | — | +| /v51/onb/check-details/pmoc | Preferred method of contact | v51/onb/check-details/pmoc.html | /v51/onb/check-details | /v51/check-details/pmoc-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-details/preferred-contact-times | Preferred contact times | v51/onb/check-details/preferred-contact-times.html | /v51/onb/check-details | /v51/check-details/preferred-contact-times-answer | preferredContactTimes, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-details/preferred-correspondence-language | Preferred correspondence language | v51/onb/check-details/preferred-correspondence-language.html | /v51/onb/check-details | /v51/check-details/preferred-correspondence-language-answer | preferredCorrespondenceLanguageOther, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-details/preferred-name | Preferred name | v51/onb/check-details/preferred-name.html | /v51/onb/check-details | /v51/check-details/preferred-name-answer | preferredName, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-details/risk-level | Domestic abuse risk level | v51/onb/check-details/risk-level.html | /v51/onb/check-details | /v51/check-details/risk-level-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-details/translator-needed | Translator needed | v51/onb/check-details/translator-needed.html | /v51/onb/check-details | /v51/check-details/translator-needed-answer | translatorNeededDetails, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-details/vps-status | VPS status | v51/onb/check-details/vps-status.html | /v51/onb/check-details | /v51/check-details/vps-status-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/check-task | Check the task details are correct | v51/onb/check-task.html | — | /v51/onb/check-task-answer, /v51/onb/manual-task, /v51/onb/meeting-purpose, /v51/onb/next-task, /v51/onb/next-task-due-date | manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] \| data['nextTask'] == "dtc" \| data['nextTask'] == "no-task" \| data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" \| data['meetingPurpose'] == "pre-trial" \| data['manualTask'] == "yes" \| data['manualTaskName'] \| data['taskDueDate'] \| data['taskNote'] == "" \| data['taskDueDate'] \| data['nextTask'] == "no-task" | +| /v51/onb/check-task-vlo | Victim liaison officer | v51/onb/check-task-vlo.html | /v51/onb/check-details | /v51/onb/check-task-vlo-answer | victimForename, victimSurname, vlo | None (prototype redirect) | request.session.data.vloReturnTo === 'check-task' \| request.session.data.vloReturnTo === 'check-details' | +| /v51/onb/manual-task | Create a task | v51/onb/manual-task.html | /v51/onb/check-task | /v51/onb/manual-task-answer | manualTaskName, taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/meeting-purpose | Task selection | v51/onb/meeting-purpose.html | /v51/onb/check-task | /v51/onb/meeting-purpose-answer | meetingPurposeDetails | None (prototype redirect) | — | +| /v51/onb/next-task | Next task | v51/onb/next-task.html | /v51/onb/check-task | /v51/onb/next-task-answer | nextTask, victimForename, victimSurname | None (prototype redirect) | nextTask == "other" \| nextTask == "no-task" \| nextTask == "meeting-offer" \|\| nextTask == "meeting-arranged" \|\| nextTask == "meeting-outcome" | +| /v51/onb/next-task-due-date | Task due date | v51/onb/next-task-due-date.html | /v51/onb/check-task | /v51/onb/next-task-due-date-answer | taskDueDate | None (prototype redirect) | — | +| /v51/onb/onboarded | Victim onboarded | v51/onb/onboarded.html | — | /v51/victims | manualTaskName, nextTask, taskDueDate, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] == "dtc" | +| /v51/onb/pmoc | Preferred method of contact | v51/onb/pmoc.html | — | /v51/onb/pmoc-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/onb/service-lead | Service lead | v51/onb/service-lead.html | /v51/onb/check-details, /v51/victims, /v51/wft-meetings/victims | /v51/onb/service-lead-answer | victimForename, victimSurname | None (prototype redirect) | onboardedStatus == "no" | + +### v51/other + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/other/call-logged | Telephone call logged | v51/other/call-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/other/contacted-by | How did you contact the victim? | v51/other/contacted-by.html | — | /v51/other/contacted-by-answer | contactedBy, otherContactMethod, victimForename, victimSurname | None (prototype redirect) | contactedBy == "call" \| contactedBy == "email" \| contactedBy == "post" \| contactedBy == "text" \| contactedBy == "in-person" \| contactedBy == "other" | +| /v51/other/email-details | Log an email | v51/other/email-details.html | — | /v51/other/email-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, otherCommunications, otherEmailDate, otherEmailHour, otherEmailMinutes, otherEmailType, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| !Array.isArray(request.session.data['otherCommunications']) | +| /v51/other/email-logged | Email logged | v51/other/email-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/other/in-person | Log an in-person conversation | v51/other/in-person.html | — | /v51/other/in-person-answer | otherCommunications, otherInPersonDate, otherInPersonHour, otherInPersonMinutes, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v51/other/in-person-logged | In-person meeting logged | v51/other/in-person-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/other/letter-details | Log a letter | v51/other/letter-details.html | — | /v51/other/letter-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherLetterDate, otherLetterHour, otherLetterMinutes, otherLetterType, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| !Array.isArray(request.session.data['otherCommunications']) | +| /v51/other/letter-logged | Letter logged | v51/other/letter-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/other/log | Log a communication | v51/other/log.html | — | — | dateOfCommunicationDay, dateOfCommunicationMonth, dateOfCommunicationYear, individualOtherName, purposeOfCommunication | None (prototype redirect) | — | +| /v51/other/other | Log other communication | v51/other/other.html | — | /v51/other/other-details-answer | otherCommsDate, otherCommsHour, otherCommsMinutes, otherCommsType, otherCommunications, otherContactMethod, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v51/other/other-logged | Other communication logged | v51/other/other-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/other/telephone-call | Log a telephone call | v51/other/telephone-call.html | — | /v51/other/telephone-call-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, otherCallDate, otherCallHour, otherCallMinutes, otherCallType, otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| !Array.isArray(request.session.data['otherCommunications']) | +| /v51/other/text-message | Log a text message | v51/other/text-message.html | — | /v51/other/text-message-answer | otherCommunications, otherIndividual, otherIndividualName, otherIndividualRole, otherTextMessageDate, otherTextMessageHour, otherTextMessageMinutes, otherTextMessageType, purposeOfCommunication, victimForename, victimSurname | None (prototype redirect) | !Array.isArray(request.session.data['otherCommunications']) | +| /v51/other/text-message-logged | Text message logged | v51/other/text-message-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | + +### v51/pcd + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/pcd/call/follow-up-moc | Follow-up method of contact | v51/pcd/call/follow-up-moc.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/pcd/call/follow-up-moc-answer | pcdCallAttempt, pcdFumoc, victimForename, victimSurname | None (prototype redirect) | pcdFumoc == "Email" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" \| pcdFumoc == "Post" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" | +| /v51/pcd/call/next-attempt-moc | Next attempt method of contact | v51/pcd/call/next-attempt-moc.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/pcd/call/next-attempt-moc-answer | pcdAttemptToContactAgain, pcdCallAttempt | None (prototype redirect) | pcdAttemptToContactAgain == "call" \| pcdCallAttempt == "1" \| pcdAttemptToContactAgain == "email" \| pcdCallAttempt == "1" \| pcdCallAttempt == "2" | +| /v51/pcd/call/phone-call-1 | Telephone call 1 | v51/pcd/call/phone-call-1.html | — | /v51/pcd/call/phone-call-1-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate1, pcdVictimInformed1, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| pcdVictimInformed1 == "Yes" | +| /v51/pcd/call/phone-call-2 | Telephone call 2 | v51/pcd/call/phone-call-2.html | — | /v51/pcd/call/phone-call-2-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate2, pcdVictimInformed2, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| pcdVictimInformed2 == "Yes" | +| /v51/pcd/call/phone-call-3 | Telephone call 3 details | v51/pcd/call/phone-call-3.html | — | /v51/pcd/call/phone-call-3-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, pcdCallDate3, pcdVictimInformed3, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| pcdVictimInformed3 == "Yes" | +| /v51/pcd/call/text-message-details | Text message details | v51/pcd/call/text-message-details.html | — | /v51/pcd/call/text-message-details-answer | pcdCallDate1 | None (prototype redirect) | — | +| /v51/pcd/call/was-text-message-sent | Was a text message sent to the victim? | v51/pcd/call/was-text-message-sent.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/pcd/call/was-text-message-sent-answer | pcdWasTextMessageSent, victimForename, victimSurname | None (prototype redirect) | pcdWasTextMessageSent == "Yes" | +| /v51/pcd/draft/first-hearing | First hearing | v51/pcd/draft/first-hearing.html | — | /v51/pcd/draft/first-hearing-answer | firstHearingDate, firstHearingLocation | None (prototype redirect) | — | +| /v51/pcd/draft/pcd-type | Charging decision type | v51/pcd/draft/pcd-type.html | — | /v51/pcd/draft/pcd-type-answer | existingTask, pcdType, victimForename, victimSurname | None (prototype redirect) | pcdType == "dtc" \| existingTask == "dtc" \| pcdType == "nfa" \| existingTask == "nfa" | +| /v51/pcd/draft/task-already-exists | This task already exists | v51/pcd/draft/task-already-exists.html | — | /v51/pcd/draft/task-already-exists-answer, /v51/victim/new-task/task-due-date | existingTask, existingTaskDueDate, pcdType, victimForename, victimSurname | None (prototype redirect) | data['existingTask'] == "dtc" \| data['existingTaskDueDate'] | +| /v51/pcd/follow-up/call-logged | Follow-up telephone call logged | v51/pcd/follow-up/call-logged.html | — | /v51/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v51/pcd/follow-up/email-details | Follow-up email details | v51/pcd/follow-up/email-details.html | — | /v51/pcd/follow-up/email-details-answer | followUpEmailDispatchDate, followUpEmailDispatchNotes, followUpEmailIndividual, followUpEmailIndividualName, followUpEmailIndividualRole, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname | error markup | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/pcd/follow-up/email-logged | Follow-up email logged | v51/pcd/follow-up/email-logged.html | — | /v51/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v51/pcd/follow-up/letter-details | Follow-up letter details | v51/pcd/follow-up/letter-details.html | — | /v51/pcd/follow-up/letter-details-answer | followUpLetterDispatchDate, followUpLetterDispatchNotes, followUpLetterIndividual, followUpLetterIndividualName, followUpLetterIndividualRole, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname | error markup | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/pcd/follow-up/letter-logged | Follow-up letter logged | v51/pcd/follow-up/letter-logged.html | — | /v51/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v51/pcd/follow-up/log-follow-up | Log a follow-up | v51/pcd/follow-up/log-follow-up.html | — | /v51/pcd/follow-up/log-follow-up-answer | pcdFollowUpType, victimForename, victimSurname | error markup | pcdFollowUpType == "call" \| pcdFollowUpType == "email" \| pcdFollowUpType == "not-contacted" | +| /v51/pcd/follow-up/not-contacted-logged | Decision not to contact logged | v51/pcd/follow-up/not-contacted-logged.html | — | /v51/victim | pcdType, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") | +| /v51/pcd/follow-up/not-contacted-reason | Reason for not contacting the victim | v51/pcd/follow-up/not-contacted-reason.html | — | /v51/pcd/follow-up/not-contacted-reason-answer | followUpNotContactedReason, victimForename, victimSurname | error markup | — | +| /v51/pcd/follow-up/telephone-call | Follow-up telephone call | v51/pcd/follow-up/telephone-call.html | — | /v51/pcd/follow-up/telephone-call-answer | followUpCallDate, followUpCallHour, followUpCallIndividual, followUpCallIndividualName, followUpCallIndividualRole, followUpCallMinutes, followUpCallNotes, followUpCallType, followUpVictimInformed, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/pcd/pre-draft/check-eligibility | Check eligibility | v51/pcd/pre-draft/check-eligibility.html | — | /v51/pcd/pre-draft/check-eligibility-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/pcd/pre-draft/contacted-by | How did you contact the victim? | v51/pcd/pre-draft/contacted-by.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/pcd/pre-draft/contacted-by-answer | contactedBy, successReason, victimForename, victimSurname | None (prototype redirect) | data['successReason'] != "task-created" \| contactedBy == "call" \| contactedBy == "email" \| contactedBy == "post" \| contactedBy == "not-contacted" | +| /v51/pcd/pre-draft/not-contacted-reason | Reason for not contacting the victim | v51/pcd/pre-draft/not-contacted-reason.html | — | /v51/pcd/pre-draft/not-contacted-reason-answer | notContactedReason, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/pcd/send/email-details | Email details | v51/pcd/send/email-details.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/pcd/send/email-details-answer | emailDispatchDate, idvaDeleted, idvaName, isvaDeleted, isvaName, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/pcd/send/email-logged | Email logged | v51/pcd/send/email-logged.html | — | /v51/victim | contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") \| (data['contactedBy'] == "call") \| (data['pcdCallAttempt'] == "1") \| (data['pcdVictimInformed1'] == "Yes") \| (data['pcdVictimInformed2'] == "Yes") \| (data['pcdVictimInformed3'] == "Yes") | +| /v51/pcd/send/letter-details | Letter details | v51/pcd/send/letter-details.html | /v51/tasks, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2 | /v51/pcd/send/letter-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, letterDispatchDate, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/pcd/send/letter-logged | Letter logged | v51/pcd/send/letter-logged.html | — | /v51/victim | contactedBy, pcdCallAttempt, pcdType, pcdVictimInformed1, pcdVictimInformed2, pcdVictimInformed3, victimForename, victimSurname | None (prototype redirect) | (data['pcdType'] == "dtc") \| (data['contactedBy'] == "call") \| (data['pcdCallAttempt'] == "1") \| (data['pcdVictimInformed1'] == "Yes") \| (data['pcdVictimInformed2'] == "Yes") \| (data['pcdVictimInformed3'] == "Yes") | + +### v51/vcl + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/vcl/call/follow-up-moc | Follow-up method of contact | v51/vcl/call/follow-up-moc.html | /v51/tasks | /v51/vcl/call/follow-up-moc-answer | vdFumoc, vdNoFumocDetails, victimForename, victimSurname | None (prototype redirect) | fumoc == "Email" \| fumoc == "Post" | +| /v51/vcl/call/next-attempt-moc | Next attempt method of contact | v51/vcl/call/next-attempt-moc.html | /v51/tasks | /v51/vcl/call/next-attempt-moc-answer | vdCallAttempts, vdNextMoc | None (prototype redirect) | (data['vdCallAttempts'] \| length) < 3 \| nextMoc == "call" \| nextMoc == "email" | +| /v51/vcl/call/phone-call | Telephone call | v51/vcl/call/phone-call.html | — | /v51/vcl/call/phone-call-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, vdCallAttempts, vdCallDate, vdCallHour, vdCallIndividual, vdCallIndividualName, vdCallIndividualRole, vdCallMinutes, vdCallNotes, vdCallType, vdVictimInformed, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' \| !Array.isArray(data['vdCallAttempts']) \| informed == "Yes" \| attemptCount == 1 | +| /v51/vcl/call/text-message-details | Text message details | v51/vcl/call/text-message-details.html | — | /v51/vcl/call/text-message-details-answer | vdCallAttempts, vdSecondCallHour, vdSecondCallMinutes, vdTextMessageDate, vdTextMessageHour, vdTextMessageMinutes, vdThirdCallHour, vdThirdCallMinutes, vdWasTextMessageSent | None (prototype redirect) | last | +| /v51/vcl/call/was-text-message-sent | Was a text message sent to the victim? | v51/vcl/call/was-text-message-sent.html | /v51/tasks | /v51/vcl/call/was-text-message-sent-answer | vdCallAttempts, vdWasTextMessageSent, victimForename, victimSurname | None (prototype redirect) | last \| data['vdWasTextMessageSent'] == "Yes" | +| /v51/vcl/draft/stopped-charge | Stopped charge reason | v51/vcl/draft/stopped-charge.html | — | /v51/vcl/draft/stopped-charge-answer | — | None (prototype redirect) | — | +| /v51/vcl/draft/substantially-altered-charge | Substantially altered charge | v51/vcl/draft/substantially-altered-charge.html | — | /v51/vcl/draft/substantially-altered-charge-answer | — | None (prototype redirect) | — | +| /v51/vcl/draft/vcl-type | Communication type | v51/vcl/draft/vcl-type.html | — | /v51/vcl/draft/vcl-type-answer | commType, vdType, victimForename, victimSurname | None (prototype redirect) | commType == "dtc" \|\| commType == "nfa" \| field !== 'vdType' \| commType == "stopped-charge" | +| /v51/vcl/follow-up/email-details | Follow-up email details | v51/vcl/follow-up/email-details.html | — | /v51/vcl/follow-up/email-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, vclFollowUpEmailDate, vclFollowUpEmailIndividual, vclFollowUpEmailIndividualName, vclFollowUpEmailIndividualRole, vclFollowUpEmailNotes, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/vcl/follow-up/email-logged | Follow-up email logged | v51/vcl/follow-up/email-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/vcl/follow-up/letter-details | Follow-up letter details | v51/vcl/follow-up/letter-details.html | — | /v51/vcl/follow-up/letter-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, vclFollowUpLetterDate, vclFollowUpLetterIndividual, vclFollowUpLetterIndividualName, vclFollowUpLetterIndividualRole, vclFollowUpLetterNotes, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/vcl/follow-up/letter-logged | Follow-up letter logged | v51/vcl/follow-up/letter-logged.html | — | /v51/victim | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/vcl/follow-up/log-follow-up | Log a follow-up | v51/vcl/follow-up/log-follow-up.html | — | /v51/vcl/follow-up/log-follow-up-answer | vclFollowUpType, victimForename, victimSurname | error markup | followUpType == "email" | +| /v51/vcl/pre-draft/contacted-by | How did you contact the victim? | v51/vcl/pre-draft/contacted-by.html | — | /v51/vcl/pre-draft/contacted-by-answer | vdContactedBy, victimForename, victimSurname | None (prototype redirect) | contactedBy == "call" \| contactedBy == "email" \| contactedBy == "post" | +| /v51/vcl/pre-draft/not-contacted-reason | Reason for not contacting the victim | v51/vcl/pre-draft/not-contacted-reason.html | — | /v51/vcl/pre-draft/not-contacted-reason-answer | vdNotContactedReason, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/vcl/send/email-details | Email details | v51/vcl/send/email-details.html | /v51/tasks | /v51/vcl/send/email-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, vdEmailDate, vdEmailNotes, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | +| /v51/vcl/send/letter-details | Letter details | v51/vcl/send/letter-details.html | /v51/tasks | /v51/vcl/send/letter-details-answer | idvaDeleted, idvaName, isvaDeleted, isvaName, vdLetterDate, vdLetterNotes, victimForename, victimSurname | None (prototype redirect) | data['isvaName'] and data['isvaDeleted'] != 'yes' \| data['idvaName'] and data['idvaDeleted'] != 'yes' | + +### v51/victim + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/victim | Victim | v51/victim/index.html | /v51/other/call-logged, /v51/other/email-logged, /v51/other/in-person-logged, /v51/other/letter-logged, /v51/other/other-logged, /v51/other/text-message-logged, /v51/pcd/follow-up/call-logged, /v51/pcd/follow-up/email-logged, /v51/pcd/follow-up/letter-logged, /v51/pcd/follow-up/not-contacted-logged, /v51/pcd/send/email-logged, /v51/pcd/send/letter-logged, /v51/tasks, /v51/vcl/follow-up/email-logged, /v51/vcl/follow-up/letter-logged, /v51/victim/case-contacts/family-liaison-officer, /v51/victim/case-contacts/idva, /v51/victim/case-contacts/isva, /v51/victim/new-task/task-created, /v51/victims, /v51/wft-meetings/tasks, /v51/wft-meetings/tasks2, /v51/wft-meetings/victims | — | area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v51/victim/case-contacts/family-liaison-officer | Family Liaison Officer | v51/victim/case-contacts/family-liaison-officer.html | — | /v51/victim, /v51/victim/case-contacts/family-liaison-officer-answer, /v51/victim/case-contacts/family-liaison-officer-delete | familyLiaisonOfficerDeleted, familyLiaisonOfficerEmailAddress, familyLiaisonOfficerForename, familyLiaisonOfficerName, familyLiaisonOfficerPhoneNumber, familyLiaisonOfficerSurname | None (prototype redirect) | isExisting \| isExisting | +| /v51/victim/case-contacts/idva | Independent Domestic Violence Advisor (IDVA) | v51/victim/case-contacts/idva.html | — | /v51/victim, /v51/victim/case-contacts/idva-answer, /v51/victim/case-contacts/idva-delete | idvaAddressLine1, idvaAddressLine2, idvaAddressLine3, idvaAddressLine4, idvaAddressLine5, idvaCity, idvaCounty, idvaDeleted, idvaEmailAddress, idvaName, idvaPhoneNumber, idvaPostCode | None (prototype redirect) | isExisting \| isExisting | +| /v51/victim/case-contacts/isva | Independent Sexual Violence Advisor (ISVA) | v51/victim/case-contacts/isva.html | — | /v51/victim, /v51/victim/case-contacts/isva-answer, /v51/victim/case-contacts/isva-delete | isvaAddressLine1, isvaAddressLine2, isvaAddressLine3, isvaAddressLine4, isvaAddressLine5, isvaCity, isvaCounty, isvaDeleted, isvaEmailAddress, isvaName, isvaPhoneNumber, isvaPostCode | None (prototype redirect) | isExisting \| isExisting | +| /v51/victim/case-information/area | Change area | v51/victim/case-information/area.html | — | /v51/victim/case-information/area-answer | area | None (prototype redirect) | — | +| /v51/victim/case-information/charging-type | Change charging type | v51/victim/case-information/charging-type.html | — | /v51/victim/case-information/charging-type-answer | — | None (prototype redirect) | — | +| /v51/victim/index-notasks | Victim | v51/victim/index-notasks.html | — | /v51/victim/new-task/task-selection | area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v51/victim/index-withtasks | Victim | v51/victim/index-withtasks.html | — | /v51/victim/new-task/task-selection | area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v51/victim/index-withtasks-v2 | Victim | v51/victim/index-withtasks-v2.html | — | — | area, case-locked, caseType, existingTaskDueDate, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v51/victim/index-withtasks-v3 | Victim | v51/victim/index-withtasks-v3.html | — | /v51/victim/new-task/task-selection | area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v51/victim/index-withtasks-v4 | Victim | v51/victim/index-withtasks-v4.html | — | /v51/victim/new-task/task-selection | area, case-locked, caseType, pmoc, pmocPolice, preferredCorrespondenceLanguage, preferredCorrespondenceLanguageOther, riskLevel, serviceLead, success, successReason, translatorNeeded, victimDateOfBirth, victimDisability, victimEmailAddress, victimEthnicity, victimForename, victimGender, victimPreferredName, victimPreviousConvictions, victimReligion, victimSurname, victimTitle, victimWantsContact, vpsStatus | JS submit guard | (data['case-locked'] == "by-someone-else") \| (data['success'] == "yes") and (data['successReason'] == "charging-type-updated" or data['successReason'] == "area-updated") \| (data['successReason'] == "charging-type-updated") \| (data['successReason'] == "email-address-updated") \| data['preferredCorrespondenceLanguage'] == 'Other' \| data['serviceLead'] == "Not aligned" \| (data['successReason'] == "not-informed-after-call-1") or (data['successReason'] == "informed-after-call-1") | +| /v51/victim/new-task/check-task | Check the task details are correct | v51/victim/new-task/check-task.html | — | /v51/victim/new-task/check-task-answer, /v51/victim/new-task/manual-task, /v51/victim/new-task/meeting-purpose, /v51/victim/new-task/task-due-date, /v51/victim/new-task/task-selection | existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, existingTaskNote, manualTask, manualTaskName, meetingPurpose, meetingPurposeDetails, nextTask, taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] \| data['nextTask'] == "dtc" \| data['nextTask'] == "meeting-offer" or data['nextTask'] == "meeting-arranged" or data['nextTask'] == "meeting-outcome" \| data['meetingPurpose'] == "pre-trial" \| data['manualTask'] == "yes" \| data['manualTaskName'] \| data['taskDueDate'] \| data['taskNote'] == "" \| data['taskDueDate'] \| duplicateNonMeeting \|\| duplicateMeeting | +| /v51/victim/new-task/manual-task | Set a reminder | v51/victim/new-task/manual-task.html | /v51/victim/new-task/check-task, /v51/wft-meetings/new-task/check-task | /v51/victim/new-task/manual-task-answer | manualTaskName, taskNote, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/new-task/meeting-purpose | Task selection | v51/victim/new-task/meeting-purpose.html | /v51/victim/new-task/check-task | /v51/victim/new-task/meeting-purpose-answer | existingMeetingPurpose, existingTask, meetingPurposeDetails, nextTask | None (prototype redirect) | — | +| /v51/victim/new-task/task-already-exists | This task already exists | v51/victim/new-task/task-already-exists.html | — | /v51/victim/new-task/task-already-exists-answer, /v51/victim/new-task/task-due-date | existingManualTaskName, existingMeetingPurpose, existingTask, existingTaskDueDate, taskDueDate, victimForename, victimSurname | None (prototype redirect) | data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" \| data['existingMeetingPurpose'] == "pre-trial" \| data['existingTask'] == "dtc" \| data['existingTask'] == "meeting-offer" or data['existingTask'] == "meeting-arranged" or data['existingTask'] == "meeting-outcome" \| data['existingMeetingPurpose'] == "pre-trial" \| data['existingTaskDueDate'] | +| /v51/victim/new-task/task-created | Victim onboarded | v51/victim/new-task/task-created.html | — | /v51/victim | manualTaskName, nextTask, taskDueDate | None (prototype redirect) | data['nextTask'] == "dtc" | +| /v51/victim/new-task/task-due-date | Task due date | v51/victim/new-task/task-due-date.html | /v51/pcd/draft/task-already-exists, /v51/victim/new-task/check-task, /v51/victim/new-task/task-already-exists, /v51/wft-meetings/new-task/check-task | /v51/victim/new-task/task-due-date-answer | existingTaskDueDate, taskDueDate | None (prototype redirect) | fromTaskAlreadyExists \| fromPcd \| fromCheck and data['taskDueDate'] \| request.body.fromTaskAlreadyExists === 'yes' \| request.body.fromPcd === 'yes' | +| /v51/victim/new-task/task-selection | Task selection | v51/victim/new-task/task-selection.html | /v51/victim/index-notasks, /v51/victim/index-withtasks, /v51/victim/index-withtasks-v3, /v51/victim/index-withtasks-v4, /v51/victim/new-task/check-task, /v51/wft-meetings/new-task/check-task | /v51/victim/new-task/next-task-answer | existingTask, nextTask, victimForename, victimSurname | None (prototype redirect) | nextTask == "dtc" \| nextTask == "nfa" \| nextTask == "stopped-charge" \| nextTask == "altered-charge" \| nextTask == "other" \| nextTask == "no-task" \| nextTask == "meeting-offer" \|\| nextTask == "meeting-arranged" \|\| nextTask == "meeting-outcome" | +| /v51/victim/task-details/another-task1 | Victim record | v51/victim/task-details/another-task1.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/task-details/another-task2 | Victim record | v51/victim/task-details/another-task2.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/task-details/decision-to-charge | Victim record | v51/victim/task-details/decision-to-charge.html | — | — | caseUrn, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/task-details/outcome-logged | Victim record | v51/victim/task-details/outcome-logged.html | — | — | caseUrn, subTab, victimForename, victimSurname | None (prototype redirect) | (data['subTab'] == "ptm") | +| /v51/victim/victim-details/address | Victim's address | v51/victim/victim-details/address.html | — | /v51/victim/victim-details/address-answer | victimAddressLine1, victimAddressLine2, victimAddressLine3, victimAddressLine4, victimAddressLine5, victimForename, victimPostCode, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/category | Victim category | v51/victim/victim-details/category.html | — | /v51/victim/victim-details/category-answer | victimForename, victimSurname | None (prototype redirect) | opt.hint | +| /v51/victim/victim-details/contact-times | Preferred contact times | v51/victim/victim-details/contact-times.html | — | /v51/victim/victim-details/contact-times-answer | preferredContactTimes, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/correspondence-language | Preferred correspondence language | v51/victim/victim-details/correspondence-language.html | — | /v51/victim/victim-details/correspondence-language-answer | preferredCorrespondenceLanguageOther, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/date-of-birth | Victim's date of birth | v51/victim/victim-details/date-of-birth.html | — | /v51/victim/victim-details/date-of-birth-answer | victimDobDay, victimDobMonth, victimDobYear, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/disability | Disability or access needs | v51/victim/victim-details/disability.html | — | /v51/victim/victim-details/disability-answer | victimDisability, victimDisabilityDetails | None (prototype redirect) | — | +| /v51/victim/victim-details/email-address | Victim's email address | v51/victim/victim-details/email-address.html | — | /v51/victim/victim-details/email-address-answer | victimEmailAddress, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/ethnicity | Victim ethnicity | v51/victim/victim-details/ethnicity.html | — | /v51/victim/victim-details/ethnicity-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/full-name | Victim's full name | v51/victim/victim-details/full-name.html | — | /v51/victim/victim-details/full-name-answer | victimForename, victimSurname, victimTitle | None (prototype redirect) | — | +| /v51/victim/victim-details/gender | Victim gender | v51/victim/victim-details/gender.html | — | /v51/victim/victim-details/gender-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/pmoc | Preferred method of contact | v51/victim/victim-details/pmoc.html | — | /v51/victim/victim-details/pmoc-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/pmoc-police | Preferred method of contact for police | v51/victim/victim-details/pmoc-police.html | — | /v51/victim/victim-details/pmoc-police-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/power-of-attorney | Power of attorney details | v51/victim/victim-details/power-of-attorney.html | — | /v51/victim/victim-details/power-of-attorney-answer | powerOfAttorneyEmail, powerOfAttorneyName, powerOfAttorneyPhone | None (prototype redirect) | — | +| /v51/victim/victim-details/preferred-name | Victim's preferred name | v51/victim/victim-details/preferred-name.html | — | /v51/victim/victim-details/preferred-name-answer | victimForename, victimPreferredName, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/previous-convictions | Previous convictions | v51/victim/victim-details/previous-convictions.html | — | /v51/victim/victim-details/previous-convictions-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/reasonable-adjustments | Reasonable adjustments | v51/victim/victim-details/reasonable-adjustments.html | — | /v51/victim/victim-details/reasonable-adjustments-answer | reasonableAdjustments, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/religion | Religion or belief | v51/victim/victim-details/religion.html | — | /v51/victim/victim-details/religion-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/risk-level | Domestic abuse risk level | v51/victim/victim-details/risk-level.html | — | /v51/victim/victim-details/risk-level-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/service | Change service | v51/victim/victim-details/service.html | — | /v51/victim/victim-details/service-answer | service, serviceLead, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/telephone-number | Victim's telephone number | v51/victim/victim-details/telephone-number.html | — | /v51/victim/victim-details/telephone-number-answer | victimForename, victimHomePhone, victimPhoneNumber, victimSurname, victimWorkPhone | None (prototype redirect) | — | +| /v51/victim/victim-details/translator-needed | Translator needed | v51/victim/victim-details/translator-needed.html | — | /v51/victim/victim-details/translator-needed-answer | translatorNeededDetails, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/victim-representative | Victim representative details | v51/victim/victim-details/victim-representative.html | — | /v51/victim/victim-details/victim-representative-answer | victimRepresentativeEmail, victimRepresentativeName, victimRepresentativePhone | None (prototype redirect) | — | +| /v51/victim/victim-details/vps-status | VPS status | v51/victim/victim-details/vps-status.html | — | /v51/victim/victim-details/vps-status-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/victim/victim-details/wants-contact | Do they want to be contacted? | v51/victim/victim-details/wants-contact.html | — | /v51/victim/victim-details/wants-contact-answer | victimForename, victimSurname | None (prototype redirect) | — | + +### v51/wft-meetings + +| URL | Page title | Template | Linked from | Links to | Session variables | Validation | Conditional logic | +|---|---|---|---|---|---|---|---| +| /v51/wft-meetings/log-arranged-meeting | Tasks | v51/wft-meetings/log-arranged-meeting.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/log-arranged-meeting-check | Tasks | v51/wft-meetings/log-arranged-meeting-check.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/log-meeting-outcome | Tasks | v51/wft-meetings/log-meeting-outcome.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/log-meeting-outcome-check | Tasks | v51/wft-meetings/log-meeting-outcome-check.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/log-offer-response | Tasks | v51/wft-meetings/log-offer-response.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/log-offer-response-check | Tasks | v51/wft-meetings/log-offer-response-check.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/log-offer-task | Tasks | v51/wft-meetings/log-offer-task.html | — | /v51/onb/tasks/clear-filters | taskAssignee, taskDueDate | None (prototype redirect) | assigneeNameParts \| length == 2 | +| /v51/wft-meetings/new-task/check-task | Check the task details are correct | v51/wft-meetings/new-task/check-task.html | — | /v51/victim/new-task/manual-task, /v51/victim/new-task/task-due-date, /v51/victim/new-task/task-selection | manualTask, nextTask, taskDueDate, taskName, taskNote, victimForename, victimSurname | None (prototype redirect) | data['nextTask'] \| data['manualTask'] == "yes" \| data['taskName'] \| data['taskDueDate'] \| data['taskNote'] == "" \| data['taskDueDate'] | +| /v51/wft-meetings/new-task/manual-task | Set a reminder | v51/wft-meetings/new-task/manual-task.html | — | /v51/victim/new-task/manual-task-answer | taskDueDate, taskNote, victimForename, victimSurname | None (prototype redirect) | — | +| /v51/wft-meetings/new-task/purposet | Task selection | v51/wft-meetings/new-task/purposet.html | — | /v51/wft-meetings/new-task/purposet-answer | purposet | None (prototype redirect) | — | +| /v51/wft-meetings/new-task/task-created | Victim onboarded | v51/wft-meetings/new-task/task-created.html | — | — | manualTask, nextTask, taskDueDate, taskName, victimForename, victimSurname | None (prototype redirect) | data['manualTask'] == "yes" | +| /v51/wft-meetings/new-task/task-due-date | Task due date | v51/wft-meetings/new-task/task-due-date.html | — | /v51/wft-meetings/new-task/task-due-date-answer | taskDueDate | None (prototype redirect) | — | +| /v51/wft-meetings/new-task/task-selection | Task selection | v51/wft-meetings/new-task/task-selection.html | — | /v51/wft-meetings/new-task/next-task-answer | victimForename, victimSurname | None (prototype redirect) | — | +| /v51/wft-meetings/tasks | Tasks | v51/wft-meetings/tasks.html | — | /v51/change-task-due-date, /v51/onb/tasks/clear-filters, /v51/pcd/call/follow-up-moc, /v51/pcd/call/next-attempt-moc, /v51/pcd/call/was-text-message-sent, /v51/pcd/pre-draft/check-details, /v51/pcd/pre-draft/contacted-by, /v51/pcd/send/email-details, /v51/pcd/send/letter-details, /v51/task-assignee, /v51/victim | area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo | None (prototype redirect) | assigneeNameParts \| length == 2 \| (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") \| (data['pcdType'] == "dtc") \| (data['pcdStatus'] == "check-details") \| (data['pcdFumoc'] == "email") | +| /v51/wft-meetings/tasks2 | Tasks | v51/wft-meetings/tasks2.html | — | /v51/change-task-due-date, /v51/onb/tasks/clear-filters, /v51/pcd/call/follow-up-moc, /v51/pcd/call/next-attempt-moc, /v51/pcd/call/was-text-message-sent, /v51/pcd/pre-draft/check-details, /v51/pcd/pre-draft/contacted-by, /v51/pcd/send/email-details, /v51/pcd/send/letter-details, /v51/task-assignee, /v51/victim | area, nextTask, nextTaskDueDate, pcdFumoc, pcdSent, pcdStatus, pcdType, service, taskAssignee, taskDueDate, victimForename, victimSurname, vlo | None (prototype redirect) | assigneeNameParts \| length == 2 \| (data['pcdSent'] == "yes") or (data['pcdFumoc'] == "None") \| (data['pcdType'] == "dtc") \| (data['pcdStatus'] == "check-details") \| (data['pcdFumoc'] == "email") | +| /v51/wft-meetings/victims | Victims | v51/wft-meetings/victims.html | — | /v51/onb/service-lead, /v51/victim, /v51/vlo | area, caseUrn, onboardedStatus, serviceLead, victimForename, victimSurname, vlo | None (prototype redirect) | vloNameParts \| length == 2 \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] == 'Yes' \| data['onboardedStatus'] != 'Yes' \| data['onboardedStatus'] == 'Yes' |