from django.urls import path, include from django.views.generic import RedirectView, TemplateView from atlas.models import Condition, Finding, Presentation, Structure from . import views app_name = "atlas" urlpatterns = [ path("", views.index, name="index"), path("help/", TemplateView.as_view(template_name="atlas/help.html"), name="help"), path( "create/", RedirectView.as_view(pattern_name="atlas:case_create", permanent=False), name="create", ), path( "self_review///add", views.AddSelfReview.as_view(), name="add_self_review", ), path( "self_review///update/", views.SelfReviewUpdate.as_view(), name="self_review_update", ), path( "self_review///delete/", views.SelfReviewDelete.as_view(), name="self_review_delete", ), path("author//", views.author_detail, name="author_detail"), path("author/", views.author_list, name="author_list"), path("case/", views.CaseView.as_view(), name="case_view"), path("collection//add_case", views.add_case_to_collection, name="add_case_to_collection"), path("collection/", views.CollectionView.as_view(), name="collection_view"), path("collection/user", views.user_collections, name="user_collections"), path("uploads", views.user_uploads, name="user_uploads"), path("uploads//user", views.other_user_uploads, name="other_user_uploads"), path("uploads/all", views.all_uploads, name="all_uploads"), path("uploads/new", views.new_uploads, name="new_uploads"), path("uploads/case/", views.user_uploads, name="user_uploads_case"), path("uploads//user/case/", views.other_user_uploads, name="other_user_uploads_case"), path("uploads/series_id/", views.user_uploads_series, name="user_uploads_series"), path("resource/", views.ResourceView.as_view(), name="resource_view"), path("resource//", views.resource_detail, name="resource_detail"), path("resource//view", views.resource_view, name="resource_view"), path("resource//update", views.ResourceUpdate.as_view(), name="resource_update"), path("resource//delete", views.ResourceDelete.as_view(), name="resource_delete"), path( "resource/create", views.ResourceCreate.as_view(), name="resource_create", ), path( "collection/create", views.CaseCollectionCreate.as_view(), name="exam_create", ), path("collection//clone", views.CollectionClone.as_view(), name="exam_clone"), path( "collection//delete", views.CaseCollectionDelete.as_view(), name="exam_deleted", ), path( "collection//update", views.CaseCollectionUpdate.as_view(), name="exam_update", ), path("collection/viewer", TemplateView.as_view(template_name="atlas/viewer.html"), name="collection_viewer"), path("collection/viewer_local", TemplateView.as_view(template_name="atlas/viewer_local.html"), name="collection_viewer_local"), path("collection/", views.collection_detail, name="collection_detail"), path("collection//viva", views.collection_viva, name="collection_viva"), path("collection//viva/", views.collection_viva_case, name="collection_viva_case"), path("collection//viva//series", views.collection_viva_series, name="collection_viva_series"), path( "collection//take", views.collection_take_start, name="collection_take_start", ), path("collection//authors", views.CaseCollectionAuthorUpdate.as_view(), name="collection_authors"), path( "collection//toggle_results_published", views.GenericExamViews.exam_toggle_results_published_htmx, name="exam_toggle_results_published", ), path( "collection//toggle_active", views.GenericExamViews.exam_toggle_active_htmx, name="exam_toggle_active", ), path( "collection//cids", views.GenericExamViews.exam_cids, name="exam_cids", ), path( "collection//history", views.collection_history, name="collection_history", ), path( "collection/add_cases", views.add_cases_to_collection, name="add_cases_to_collection", ), path( "collection/remove_cases", views.remove_cases_from_collection, name="remove_cases_from_collection", ), path( "collection/options", views.collection_options, name="collection_options", ), path( "collection//history//user", views.collection_history_user, name="collection_history_user", ), path( "collection//user_status", views.GenericExamViews.exam_user_status, name="exam_user_status", ), path( "collection//user_status//cid", views.GenericExamViews.exam_user_status_cid, name="exam_user_status_cid", ), path( "collection//user_status//user", views.GenericExamViews.exam_user_status_user, name="exam_user_status_user", ), #path("collection///test", views.test_form, name="test_form"), path( "exam//cids/edit", views.GenericExamViews.exam_cids_edit, name="exam_cids_edit", ), path( "exam//users/edit", views.GenericExamViews.exam_users_edit, name="exam_users_edit", ), path("exam//groups", views.ExamGroupsUpdate.as_view(), name="exam_groups_edit"), path( "collection//case//details", views.collection_case_details, name="collection_case_details", ), path( "collection//case//priors", views.collection_case_priors, name="collection_case_priors", ), path( "collection//case//dicom_json", views.collection_case_dicom_json, name="collection_case_dicom_json", ), path( "collection//case//dicom_json/review", views.collection_case_dicom_json_review, name="collection_case_dicom_json_review", ), path( "collection//question_schemas", views.collection_question_schemas, name="collection_question_schemas", ), path( "collection//reset_answers", views.collection_reset_answers, name="collection_reset_answers", ), path( "collection//reset_answers_user_list", views.collection_reset_answers_user_list, name="collection_reset_answers_user_list", ), path( "collection///reset_answers", views.collection_reset_answers_user, name="collection_reset_answers_user", ), #path( # "question_schemas_preset", # views.question_schemas_preset, # name="question_schemas_preset", #), path( "collection//cids//delete_answers", views.delete_collection_cid_answers, name="delete_collection_cid_answers", ), path( "collection//delete_answers", views.delete_collection_answers, name="delete_collection_answers", ), path( "collection//cids/edit", views.GenericExamViews.exam_cids_edit, name="exam_cids_edit", ), path( "collection//users/edit", views.GenericExamViews.exam_users_edit, name="exam_users_edit", ), path( "collection//mark", views.collection_mark_overview, name="collection_mark_overview", ), path( "collection//mark/", views.collection_mark_question, name="collection_mark_question", ), path( "collection//scores", views.collection_scores_cid, name="collection_scores_cid", ), path( "collection//take_overview//", views.collection_take_overview, name="collection_take_overview", ), path( "collection//take_overview", views.collection_take_overview_user, name="collection_take_overview_user", ), path( "collection//", views.collection_case_view, name="collection_case_view", ), path( "collection///display_setup", views.collection_case_displaysetup, name="collection_case_displaysetup", ), path( "collection///take//", views.collection_case_view_take, name="collection_case_view_take", ), path( "collection///take/", views.collection_case_view_take_user, name="collection_case_view_take_user", ), path( "collection///take/answers", views.collection_case_view_take_user_answers, name="collection_case_view_take_user_answers", ), path( "collection//json_edit", views.GenericExamViews.exam_json_edit, name="exam_json_edit", ), path( "collection//dicom_json", views.collection_dicom_json, name="collection_dicom_json", ), path("case//authors", views.CaseAuthorUpdate.as_view(), name="case_authors"), path("case//display_sets", views.case_displaysets, name="case_displaysets"), path("case//display_sets/add", views.case_displaysets_add, name="case_displaysets_add"), path("/display_sets/edit", views.case_displaysets_edit, name="case_displaysets_edit"), path("/display_sets/detail", views.case_displaysets_detail, name="case_displaysets_detail"), path("/display_sets/delete", views.case_displaysets_delete, name="case_displaysets_delete"), path( "case//dicom_json", views.case_dicom_json, name="case_dicom_json", ), path( "case//use_dates_as_descriptions", views.use_dates_as_descriptions, name="use_dates_as_descriptions", ), path( "case//collection//remove/", views.remove_case_from_collection, name="remove_case_from_collection", ), path( "case//series_remove/", views.remove_selected_series_from_case, name="remove_selected_series_from_case", ), path('case//reorder_series/', views.reorder_series, name='reorder_series'), path( "series//dicom_json", views.series_dicom_json, name="series_dicom_json", ), path('series//add-to-case/', views.add_series_to_case, name='add_series_to_case'), path('series///remove-from-case/', views.remove_series_from_case, name='remove_series_from_case'), path('series/bulk-delete/', views.series_bulk_delete, name='series_bulk_delete'), path('series_finding//details/', views.series_finding_details, name='series_finding_details'), path('series_finding/migration-status/', views.seriesfinding_migration_status, name='seriesfinding_migration_status'), path("uncategorised_dicoms/", views.uncategorised_dicoms, name="uncategorised_dicoms_view"), path("question_schema/", views.QuestionSchemaView.as_view(), name="question_schema_overview"), path("question_schema/", views.question_schema_detail, name="question_schema_detail"), path("question_schema//update", views.QuestionSchemaUpdate.as_view(), name="question_schema_update"), path("question_schema//delete", views.QuestionSchemaDelete.as_view(), name="question_schema_delete"), path("question_schema/create", views.QuestionSchemaCreate.as_view(), name="question_schema_create"), path("question_schema/schemas", views.question_schema_schemas, name="question_schema_schemas"), path("condition/", views.ConditionView.as_view(), name="condition_view"), path("categories/", views.categories_list, name="categories_list"), path("condition/", views.condition_detail, name="condition_detail"), path( "condition//delete", views.ConditionDelete.as_view(), name="condition_delete", ), path( "condition//update", views.ConditionUpdate.as_view(), name="condition_update", ), path( "condition//merge/", views.condition_merge, name="condition_merge", ), path("subspecialty/", views.SubspecialtyView.as_view(), name="subspecialty_view"), path( "subspecialty/", views.subspecialty_detail, name="subspecialty_detail" ), path("condition/create", views.ConditionCreate.as_view(), name="condition_create"), path("finding/", views.FindingView.as_view(), name="finding_view"), path("finding/", views.finding_detail, name="finding_detail"), path( "finding//delete", views.FindingDelete.as_view(), name="finding_delete" ), path( "finding//update", views.FindingUpdate.as_view(), name="finding_update" ), path("finding/create", views.FindingCreate.as_view(), name="finding_create"), path("structure/", views.StructureView.as_view(), name="structure_view"), path("structure/", views.structure_detail, name="structure_detail"), path( "structure//delete", views.StructureDelete.as_view(), name="structure_delete", ), path( "structure//update", views.StructureUpdate.as_view(), name="structure_update", ), path("structure/create", views.StructureCreate.as_view(), name="structure_create"), path("series//thumbnail/fail", views.series_thumbnail_fail, name="series_thumbnail_fail"), path("series//thumbnail", views.series_thumbnail, name="series_thumbnail"), # TODO: case context series viewing (so that we can view series in the context of a case) path("series/", views.series_detail, name="series_detail"), path("series//viewer", views.series_viewer, name="series_viewer"), path("series//authors", views.SeriesAuthorUpdate.as_view(), name="series_authors"), path("series//finding/related", views.series_finding_related, name="series_finding_related"), path("series/", views.SeriesView.as_view(), name="series_view"), path("series_image//dicom", views.series_image_dicom, name="series_image_dicom"), path( "series//", views.series_detail, name="series_edit_finding", ), path( "series//anon", views.series_anonymise_dicom, name="series_anonymise_dicom", ), path( "case//order_dicom", views.case_order_dicom, name="case_order_dicom", ), path( "series//order_dicom", views.series_order_dicom, name="series_order_dicom", ), path( "images/diff", views.image_diff, name="image_diff", ), path( "series//download", views.SeriesImagesZipView.as_view(), name="series_download", ), path( "series//order_dicom_instance", views.series_order_dicom_instance, name="series_order_dicom_instance", ), path( "series//order_dicom_SeriesInstanceUID", views.series_order_dicom_SeriesInstanceUID, name="series_order_dicom_SeriesInstanceUID", ), path( "series//order_upload_filename", views.series_order_upload_filename, name="series_order_upload_filename", ), path( "series//delete", views.SeriesDelete.as_view(), name="series_delete", ), # path("unchecked/", views.unchecked_list, name="unchecked_list"), # path("verified//", views.verified_detail, name="verified_detail"), path("case//", views.case_detail, name="case_detail"), # path("case//collection-form", views.AddCollectionToCaseView.as_view(), name="case_collection_form"), path( "case//collection-form", views.add_collection_to_case_form, name="case_collection_form", ), path("case//clone", views.AtlasClone.as_view(), name="case_clone"), path("case//clone/next", views.AtlasCloneNext.as_view(), name="case_clone_next"), # path("verified/", views.verified, name="verified"), # path("all_questions/", views.all_questions, name="all_questions"), path("case//scrap", views.atlas_scrap, name="case_scrap"), path("case//delete", views.CaseDelete.as_view(), name="case_delete"), path("case//push_to_cimar", views.push_case_to_cimar, name="push_case_to_cimar"), path("case/create/", views.AtlasCreate.as_view(), name="case_create"), path( "case/collection//create", views.AtlasCreate.as_view(), name="atlas_create_exam", ), path("series/create", views.SeriesCreate.as_view(), name="series_create"), path( "series//create", views.SeriesCreate.as_view(), name="series_id_create", ), path( "case//update", views.AtlasUpdate.as_view(), name="case_update", ), path( "case//update/series", views.AtlasSeriesUpdate.as_view(), name="case_series_update", ), path( "series//update", views.SeriesUpdate.as_view(), name="series_update", ), path( "series/add_finding", views.create_series_findings, name="add_finding", ), path( "series/delete_finding/", views.SeriesFindingDelete.as_view(), name="delete_finding", ), path( "condition-autocomplete", views.ConditionAutocomplete.as_view(model=Condition, create_field="name"), name="condition-autocomplete", ), path( "condition-autocomplete-rcr-curriculum", views.ConditionAutocompleteRCRCurriculum.as_view(model=Condition), name="condition-autocomplete-rcr-curriculum", ), path( "presentation-autocomplete", views.PresentationAutocomplete.as_view(model=Presentation, create_field="name"), name="presentation-autocomplete", ), path( "finding-autocomplete", views.FindingAutocomplete.as_view(model=Finding, create_field="name"), name="finding-autocomplete", ), path( "structure-autocomplete", views.StructureAutocomplete.as_view(model=Structure, create_field="name", validate_create=True), name="structure-autocomplete", ), path("presentation/", views.PresentationView.as_view(), name="presentation_view"), path( "presentation/", views.presentation_detail, name="presentation_detail" ), path( "process/", views.PathologicalProcessView.as_view(), name="pathological_process_view", ), path( "process/", views.pathological_process_detail, name="pathological_process_detail", ), path("combine_series/", views.combine_series, name="combine_series"), path( "case//linked/", views.linked_cases_overview, name="linked_cases_overview", ), ]