OpenREM 1.0.0b2__py3-none-any.whl → 1.0.0b3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openrem/locale/de/LC_MESSAGES/django.po +1060 -1059
- openrem/locale/django.pot +973 -972
- openrem/locale/es_MX/LC_MESSAGES/django.po +1049 -1048
- openrem/locale/it/LC_MESSAGES/django.po +1044 -1043
- openrem/locale/lt/LC_MESSAGES/django.po +989 -988
- openrem/locale/nb_NO/LC_MESSAGES/django.po +985 -984
- openrem/locale/pt_BR/LC_MESSAGES/django.po +1003 -1002
- openrem/manage.py +10 -10
- openrem/openremproject/__init__.py +1 -1
- openrem/openremproject/local_settings.py.linux +128 -128
- openrem/openremproject/local_settings.py.windows +144 -144
- openrem/openremproject/local_settings.py.windows-sqlite3 +129 -129
- openrem/openremproject/settings.py +278 -278
- openrem/openremproject/urls.py +32 -32
- openrem/openremproject/wsgi.py.example +28 -28
- openrem/remapp/__init__.py +2 -2
- openrem/remapp/admin.py +31 -31
- openrem/remapp/exports/ct_export.py +780 -753
- openrem/remapp/exports/dx_export.py +817 -805
- openrem/remapp/exports/export_common.py +931 -951
- openrem/remapp/exports/export_common_pandas.py +2422 -0
- openrem/remapp/exports/exportviews.py +815 -860
- openrem/remapp/exports/mg_csv_nhsbsp.py +292 -292
- openrem/remapp/exports/mg_export.py +673 -510
- openrem/remapp/exports/nm_export.py +796 -575
- openrem/remapp/exports/rf_export.py +1418 -1431
- openrem/remapp/extractors/ct_philips.py +424 -414
- openrem/remapp/extractors/ct_toshiba.py +2116 -2108
- openrem/remapp/extractors/dx.py +1033 -952
- openrem/remapp/extractors/extract_common.py +817 -817
- openrem/remapp/extractors/import_views.py +426 -426
- openrem/remapp/extractors/mam.py +685 -672
- openrem/remapp/extractors/nm_image.py +439 -431
- openrem/remapp/extractors/ptsizecsv2db.py +368 -368
- openrem/remapp/extractors/rdsr.py +667 -654
- openrem/remapp/extractors/rdsr_methods.py +1771 -1768
- openrem/remapp/extractors/rrdsr_methods.py +630 -622
- openrem/remapp/fixtures/openskin_safelist.json +11 -11
- openrem/remapp/forms.py +2286 -2277
- openrem/remapp/interface/chart_functions.py +2412 -2393
- openrem/remapp/interface/mod_filters.py +1241 -1243
- openrem/remapp/migrations/0001_initial.py.1-0-upgrade +1043 -1043
- openrem/remapp/models.py +3418 -3407
- openrem/remapp/netdicom/dicomviews.py +681 -683
- openrem/remapp/netdicom/qrscu.py +2646 -2646
- openrem/remapp/netdicom/tools.py +134 -134
- openrem/remapp/static/css/bootstrap-theme.css +587 -587
- openrem/remapp/static/css/bootstrap-theme.min.css +4 -4
- openrem/remapp/static/css/bootstrap.css +6800 -6800
- openrem/remapp/static/css/bootstrap.min.css +4 -4
- openrem/remapp/static/css/datepicker3.css +790 -790
- openrem/remapp/static/css/jquery.qtip.min.css +2 -2
- openrem/remapp/static/css/openrem-extra.css +442 -442
- openrem/remapp/static/css/openrem.css +96 -96
- openrem/remapp/static/css/registration.css +34 -34
- openrem/remapp/static/fonts/glyphicons-halflings-regular.svg +287 -287
- openrem/remapp/static/js/bootstrap-datepicker.js +1671 -1671
- openrem/remapp/static/js/bootstrap.js +2363 -2363
- openrem/remapp/static/js/bootstrap.min.js +6 -6
- openrem/remapp/static/js/charts/chartCommonFunctions.js +75 -75
- openrem/remapp/static/js/charts/chartFullScreen.js +41 -41
- openrem/remapp/static/js/charts/ctChartAjax.js +331 -331
- openrem/remapp/static/js/charts/dxChartAjax.js +290 -290
- openrem/remapp/static/js/charts/mgChartAjax.js +144 -144
- openrem/remapp/static/js/charts/nmChartAjax.js +64 -64
- openrem/remapp/static/js/charts/plotly-2.35.2.min.js +8 -0
- openrem/remapp/static/js/charts/rfChartAjax.js +128 -128
- openrem/remapp/static/js/chroma.min.js +32 -32
- openrem/remapp/static/js/datepicker.js +5 -5
- openrem/remapp/static/js/dicom.js +115 -115
- openrem/remapp/static/js/django_reverse/reverse.js +13 -13
- openrem/remapp/static/js/formatDate.js +7 -7
- openrem/remapp/static/js/html5shiv.min.js +8 -8
- openrem/remapp/static/js/jquery-1.11.0.min.js +4 -4
- openrem/remapp/static/js/npm.js +12 -12
- openrem/remapp/static/js/respond.min.js +4 -4
- openrem/remapp/static/js/skin-dose-maps/jquery.qtip.min.js +4 -4
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMap3dHUDObject.js +112 -112
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMap3dObject.js +367 -367
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMap3dPersonObject.js +158 -158
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMapColourScaleObject.js +153 -153
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMapObject.js +367 -367
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMapping.js +584 -584
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMapping3d.js +255 -255
- openrem/remapp/static/js/skin-dose-maps/rfSkinDoseMappingAjax.js +267 -212
- openrem/remapp/static/js/skin-dose-maps/three.min.js +835 -835
- openrem/remapp/static/js/sorttable.js +495 -495
- openrem/remapp/templates/base.html +253 -253
- openrem/remapp/templates/registration/changepassword.html +25 -25
- openrem/remapp/templates/registration/changepassworddone.html +12 -12
- openrem/remapp/templates/registration/login.html +42 -42
- openrem/remapp/templates/remapp/backgroundtaskmaximumrows_form.html +29 -29
- openrem/remapp/templates/remapp/base.html +1 -1
- openrem/remapp/templates/remapp/ctdetail.html +235 -235
- openrem/remapp/templates/remapp/ctfiltered.html +310 -310
- openrem/remapp/templates/remapp/dicomdeletesettings_form.html +31 -31
- openrem/remapp/templates/remapp/dicomqr.html +147 -147
- openrem/remapp/templates/remapp/dicomquerydetails.html +83 -83
- openrem/remapp/templates/remapp/dicomqueryimages.html +49 -49
- openrem/remapp/templates/remapp/dicomqueryseries.html +109 -109
- openrem/remapp/templates/remapp/dicomquerysummary.html +48 -48
- openrem/remapp/templates/remapp/dicomremoteqr_confirm_delete.html +60 -60
- openrem/remapp/templates/remapp/dicomremoteqr_form.html +32 -32
- openrem/remapp/templates/remapp/dicomstorescp_confirm_delete.html +53 -53
- openrem/remapp/templates/remapp/dicomstorescp_form.html +48 -48
- openrem/remapp/templates/remapp/dicomsummary.html +257 -257
- openrem/remapp/templates/remapp/displaychartoptions.html +184 -184
- openrem/remapp/templates/remapp/displayhomepageoptions.html +57 -57
- openrem/remapp/templates/remapp/displayname-count.html +6 -6
- openrem/remapp/templates/remapp/displayname-last-date.html +3 -3
- openrem/remapp/templates/remapp/displayname-modality.html +86 -105
- openrem/remapp/templates/remapp/displayname-skinmap.html +18 -18
- openrem/remapp/templates/remapp/displaynameupdate.html +100 -100
- openrem/remapp/templates/remapp/displaynameview.html +222 -219
- openrem/remapp/templates/remapp/dxdetail.html +176 -176
- openrem/remapp/templates/remapp/dxfiltered.html +324 -324
- openrem/remapp/templates/remapp/exports-active.html +25 -25
- openrem/remapp/templates/remapp/exports-complete.html +35 -35
- openrem/remapp/templates/remapp/exports-error.html +26 -26
- openrem/remapp/templates/remapp/exports-queue.html +18 -18
- openrem/remapp/templates/remapp/exports.html +191 -191
- openrem/remapp/templates/remapp/failed_summary_list.html +27 -27
- openrem/remapp/templates/remapp/filteredbase.html +162 -162
- openrem/remapp/templates/remapp/highdosemetricalertsettings_form.html +76 -76
- openrem/remapp/templates/remapp/home-list-modalities.html +94 -94
- openrem/remapp/templates/remapp/home.html +202 -202
- openrem/remapp/templates/remapp/list_filters.html +24 -24
- openrem/remapp/templates/remapp/mgdetail.html +160 -138
- openrem/remapp/templates/remapp/mgfiltered.html +311 -311
- openrem/remapp/templates/remapp/nmdetail.html +300 -300
- openrem/remapp/templates/remapp/nmfiltered.html +255 -255
- openrem/remapp/templates/remapp/notpatient.html +190 -190
- openrem/remapp/templates/remapp/notpatientindicators_form_base.html +81 -81
- openrem/remapp/templates/remapp/notpatientindicatorsid_confirm_delete.html +54 -54
- openrem/remapp/templates/remapp/notpatientindicatorsid_form.html +23 -23
- openrem/remapp/templates/remapp/notpatientindicatorsname_confirm_delete.html +54 -54
- openrem/remapp/templates/remapp/notpatientindicatorsname_form.html +23 -23
- openrem/remapp/templates/remapp/notpatientindicatorsname_form_base.html +85 -85
- openrem/remapp/templates/remapp/openskinsafelist_add.html +130 -130
- openrem/remapp/templates/remapp/openskinsafelist_confirm_delete.html +100 -100
- openrem/remapp/templates/remapp/openskinsafelist_form.html +207 -207
- openrem/remapp/templates/remapp/patientidsettings_form.html +83 -83
- openrem/remapp/templates/remapp/populate_summary_progress.html +83 -83
- openrem/remapp/templates/remapp/populate_summary_progress_error.html +36 -36
- openrem/remapp/templates/remapp/review_failed_imports.html +157 -157
- openrem/remapp/templates/remapp/review_failed_study.html +41 -41
- openrem/remapp/templates/remapp/review_studies_delete_button.html +20 -20
- openrem/remapp/templates/remapp/review_study.html +19 -19
- openrem/remapp/templates/remapp/review_summary_list.html +245 -245
- openrem/remapp/templates/remapp/rf_dose_alert_email_template.html +14 -1
- openrem/remapp/templates/remapp/rfalertnotificationsview.html +59 -59
- openrem/remapp/templates/remapp/rfdetail.html +547 -543
- openrem/remapp/templates/remapp/rfdetailbase.html +18 -18
- openrem/remapp/templates/remapp/rffiltered.html +404 -404
- openrem/remapp/templates/remapp/sizeimports.html +119 -119
- openrem/remapp/templates/remapp/sizeprocess.html +96 -96
- openrem/remapp/templates/remapp/sizeupload.html +110 -110
- openrem/remapp/templates/remapp/skindosemapcalcsettings_form.html +28 -28
- openrem/remapp/templates/remapp/standardname-modality.html +69 -69
- openrem/remapp/templates/remapp/standardnames_confirm_delete.html +71 -71
- openrem/remapp/templates/remapp/standardnames_form.html +87 -87
- openrem/remapp/templates/remapp/standardnamesettings_form.html +41 -41
- openrem/remapp/templates/remapp/standardnamesrefreshall.html +92 -92
- openrem/remapp/templates/remapp/standardnameview.html +103 -103
- openrem/remapp/templates/remapp/study_confirm_delete.html +147 -147
- openrem/remapp/templates/remapp/task_admin.html +265 -265
- openrem/remapp/templates/remapp/tasks.html +76 -76
- openrem/remapp/templatetags/formfilters.py +13 -13
- openrem/remapp/templatetags/proper_paginate.py +38 -38
- openrem/remapp/templatetags/remappduration.py +36 -36
- openrem/remapp/templatetags/sigdig.py +38 -38
- openrem/remapp/templatetags/sort_class_property_value.py +15 -15
- openrem/remapp/templatetags/update_variable.py +20 -20
- openrem/remapp/templatetags/url_replace.py +25 -25
- openrem/remapp/tests/test_charts_common.py +202 -202
- openrem/remapp/tests/test_charts_ct.py +7111 -7111
- openrem/remapp/tests/test_charts_dx.py +3513 -3513
- openrem/remapp/tests/test_charts_mg.py +1116 -1115
- openrem/remapp/tests/test_dcmdatetime.py +189 -189
- openrem/remapp/tests/test_dicom_qr.py +2580 -2580
- openrem/remapp/tests/test_display_name.py +274 -274
- openrem/remapp/tests/test_export_ct_xlsx.py +272 -248
- openrem/remapp/tests/test_export_dx_xlsx.py +137 -134
- openrem/remapp/tests/test_export_mammo_csv.py +242 -242
- openrem/remapp/tests/test_export_rf_xlsx.py +246 -246
- openrem/remapp/tests/test_files/DX-Im-DRGEM.dcm +0 -0
- openrem/remapp/tests/test_files/MG-RDSR-GEPristina-2D.dcm +0 -0
- openrem/remapp/tests/test_files/MG-RDSR-GEPristina-DBT.dcm +0 -0
- openrem/remapp/tests/test_files/MG-RDSR-Giotto-DBT.dcm +0 -0
- openrem/remapp/tests/test_files/skin_map_alphenix.py +590 -590
- openrem/remapp/tests/test_files/skin_map_zee.py +354 -354
- openrem/remapp/tests/test_filters_ct.py +321 -321
- openrem/remapp/tests/test_filters_dx.py +92 -92
- openrem/remapp/tests/test_filters_mammo.py +183 -183
- openrem/remapp/tests/test_filters_rf.py +118 -118
- openrem/remapp/tests/test_get_values.py +72 -72
- openrem/remapp/tests/test_hash_id.py +65 -65
- openrem/remapp/tests/test_import_ct_esr_ge.py +3034 -3034
- openrem/remapp/tests/test_import_ct_philips_rdsr.py +42 -42
- openrem/remapp/tests/test_import_ct_rdsr_multiple.py +256 -256
- openrem/remapp/tests/test_import_ct_rdsr_siemens.py +827 -827
- openrem/remapp/tests/test_import_ct_rdsr_spectrumdynamics.py +91 -91
- openrem/remapp/tests/test_import_ct_rdsr_toshiba_dosecheck.py +67 -67
- openrem/remapp/tests/test_import_ct_rdsr_toshiba_multivaluesd.py +33 -33
- openrem/remapp/tests/test_import_ct_rdsr_toshiba_pixelmed.py +118 -118
- openrem/remapp/tests/test_import_ct_sc_philips.py +44 -44
- openrem/remapp/tests/test_import_dual_rdsr.py +110 -110
- openrem/remapp/tests/test_import_dx.py +1267 -1191
- openrem/remapp/tests/test_import_dx_rdsr.py +1250 -1253
- openrem/remapp/tests/test_import_mam.py +438 -438
- openrem/remapp/tests/test_import_mg_im_hol_proj.py +46 -46
- openrem/remapp/tests/test_import_mg_rdsr.py +586 -586
- openrem/remapp/tests/test_import_nm_image.py +420 -420
- openrem/remapp/tests/test_import_nm_siemens_rdsr.py +396 -396
- openrem/remapp/tests/test_import_px.py +161 -161
- openrem/remapp/tests/test_import_rf_rdsr.py +420 -418
- openrem/remapp/tests/test_missing_date.py +42 -42
- openrem/remapp/tests/test_not_patient.py +60 -60
- openrem/remapp/tests/test_openskin.py +272 -272
- openrem/remapp/tests/test_patient_id_settings.py +72 -72
- openrem/remapp/tests/test_pt_size_import.py +232 -232
- openrem/remapp/tests/test_rf_detail.py +113 -113
- openrem/remapp/tests/test_rf_high_dose_alert.py +361 -361
- openrem/remapp/tools/background.py +361 -361
- openrem/remapp/tools/check_standard_name_status.py +47 -0
- openrem/remapp/tools/check_uid.py +70 -70
- openrem/remapp/tools/dcmdatetime.py +248 -248
- openrem/remapp/tools/default_import.py +44 -47
- openrem/remapp/tools/get_values.py +230 -230
- openrem/remapp/tools/hash_id.py +58 -58
- openrem/remapp/tools/make_skin_map.py +448 -406
- openrem/remapp/tools/not_patient_indicators.py +72 -72
- openrem/remapp/tools/openskin/calc_exp_map.py +173 -173
- openrem/remapp/tools/openskin/geomclass.py +475 -475
- openrem/remapp/tools/openskin/geomfunc.py +433 -432
- openrem/remapp/tools/openskin/skinmap.py +417 -417
- openrem/remapp/tools/populate_summary.py +185 -193
- openrem/remapp/tools/save_skin_map_structure.py +73 -73
- openrem/remapp/tools/send_high_dose_alert_emails.py +238 -207
- openrem/remapp/urls.py +456 -448
- openrem/remapp/version.py +11 -11
- openrem/remapp/views.py +1147 -1052
- openrem/remapp/views_admin.py +3876 -3936
- openrem/remapp/views_charts_ct.py +2110 -2058
- openrem/remapp/views_charts_dx.py +1906 -1836
- openrem/remapp/views_charts_mg.py +1349 -1196
- openrem/remapp/views_charts_nm.py +535 -535
- openrem/remapp/views_charts_rf.py +1219 -1241
- openrem/remapp/views_openskin.py +379 -384
- openrem/sample-config/openrem-consumer.service +12 -12
- openrem/sample-config/openrem-gunicorn.service +13 -13
- openrem/sample-config/openrem-server +14 -13
- openrem/sample-config/openrem_orthanc_config_linux.lua +454 -454
- openrem/sample-config/openrem_orthanc_config_windows.lua +455 -455
- openrem/sample-config/queue-init.bat +73 -73
- openrem/scripts/openrem_ctphilips.py +25 -25
- openrem/scripts/openrem_cttoshiba.py +28 -28
- openrem/scripts/openrem_dx.py +22 -22
- openrem/scripts/openrem_mg.py +22 -22
- openrem/scripts/openrem_nm.py +22 -22
- openrem/scripts/openrem_ptsizecsv.py +17 -17
- openrem/scripts/openrem_qr.py +12 -12
- openrem/scripts/openrem_rdsr.py +25 -25
- {OpenREM-1.0.0b2.dist-info → openrem-1.0.0b3.dist-info}/METADATA +39 -29
- openrem-1.0.0b3.dist-info/RECORD +379 -0
- {OpenREM-1.0.0b2.dist-info → openrem-1.0.0b3.dist-info}/WHEEL +1 -1
- {OpenREM-1.0.0b2.dist-info → openrem-1.0.0b3.dist-info/licenses}/COPYING-GPLv3 +674 -674
- {OpenREM-1.0.0b2.dist-info → openrem-1.0.0b3.dist-info/licenses}/LICENSE +22 -22
- OpenREM-1.0.0b2.dist-info/RECORD +0 -373
- openrem/remapp/static/js/charts/plotly-2.17.1.min.js +0 -8
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_ctphilips.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_cttoshiba.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_dx.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_mg.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_nm.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_ptsizecsv.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_qr.py +0 -0
- {OpenREM-1.0.0b2.data → openrem-1.0.0b3.data}/scripts/openrem_rdsr.py +0 -0
- {OpenREM-1.0.0b2.dist-info → openrem-1.0.0b3.dist-info}/top_level.txt +0 -0
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block headextras %}
|
|
4
|
-
<!-- Custom styles for registration template -->
|
|
5
|
-
<link href="{{ STATIC_URL }}css/registration.css" rel="stylesheet">
|
|
6
|
-
{% endblock %}
|
|
7
|
-
|
|
8
|
-
{% block loginlink %}
|
|
9
|
-
{% endblock %}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
{% block mainblock %}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
<div class="container">
|
|
20
|
-
|
|
21
|
-
<form class="form-signin" role="form" method="post" action=".">
|
|
22
|
-
{% csrf_token %}
|
|
23
|
-
<h2 class="form-signin-heading">Please sign in</h2>
|
|
24
|
-
{% if form.errors %}
|
|
25
|
-
<p>Your username and password didn't match. Please try again.</p>
|
|
26
|
-
{% endif %}
|
|
27
|
-
<input type="text" class="form-control" placeholder="User name" id="username" name="username" required autofocus>
|
|
28
|
-
<input type="password" class="form-control" name="password" id="password" placeholder="Password" required>
|
|
29
|
-
<button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
|
|
30
|
-
{% if next %}
|
|
31
|
-
<input type="hidden" name="next" value="{{ next }}" />
|
|
32
|
-
{% else %}
|
|
33
|
-
<input type="hidden" name="next" value="{% url 'home' %}" />
|
|
34
|
-
{% endif %}
|
|
35
|
-
</form>
|
|
36
|
-
|
|
37
|
-
</div> <!-- /container -->
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
{% endblock %}
|
|
1
|
+
{% extends "base.html" %}
|
|
2
|
+
|
|
3
|
+
{% block headextras %}
|
|
4
|
+
<!-- Custom styles for registration template -->
|
|
5
|
+
<link href="{{ STATIC_URL }}css/registration.css" rel="stylesheet">
|
|
6
|
+
{% endblock %}
|
|
7
|
+
|
|
8
|
+
{% block loginlink %}
|
|
9
|
+
{% endblock %}
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
{% block mainblock %}
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
<div class="container">
|
|
20
|
+
|
|
21
|
+
<form class="form-signin" role="form" method="post" action=".">
|
|
22
|
+
{% csrf_token %}
|
|
23
|
+
<h2 class="form-signin-heading">Please sign in</h2>
|
|
24
|
+
{% if form.errors %}
|
|
25
|
+
<p>Your username and password didn't match. Please try again.</p>
|
|
26
|
+
{% endif %}
|
|
27
|
+
<input type="text" class="form-control" placeholder="User name" id="username" name="username" required autofocus>
|
|
28
|
+
<input type="password" class="form-control" name="password" id="password" placeholder="Password" required>
|
|
29
|
+
<button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
|
|
30
|
+
{% if next %}
|
|
31
|
+
<input type="hidden" name="next" value="{{ next }}" />
|
|
32
|
+
{% else %}
|
|
33
|
+
<input type="hidden" name="next" value="{% url 'home' %}" />
|
|
34
|
+
{% endif %}
|
|
35
|
+
</form>
|
|
36
|
+
|
|
37
|
+
</div> <!-- /container -->
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
{% endblock %}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
{% extends "remapp/base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block confnav %}<li class="dropdown active">{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block navhelp %}
|
|
6
|
-
<li>
|
|
7
|
-
<a href="https://docs.openrem.org/en/{{ admin.docsversion }}/task-management.html"
|
|
8
|
-
target="_blank" data-toggle="tooltip" title="Task management documentation - opens in a new tab">
|
|
9
|
-
Task management documentation
|
|
10
|
-
</a>
|
|
11
|
-
</li>
|
|
12
|
-
{% endblock %}
|
|
13
|
-
|
|
14
|
-
{% block mainblock %}
|
|
15
|
-
|
|
16
|
-
<div class="row">
|
|
17
|
-
<div class="col-md-4 col-md-offset-3">
|
|
18
|
-
<h3>Modify the size of background task history</h3>
|
|
19
|
-
{% if admin.admingroup %}
|
|
20
|
-
{% load crispy_forms_tags %}
|
|
21
|
-
{% crispy form %}
|
|
22
|
-
|
|
23
|
-
{% else %}
|
|
24
|
-
<p>Only users in the Admin group can modify these settings.</p>
|
|
25
|
-
{% endif %}
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
|
|
29
|
-
{% endblock %}
|
|
1
|
+
{% extends "remapp/base.html" %}
|
|
2
|
+
|
|
3
|
+
{% block confnav %}<li class="dropdown active">{% endblock %}
|
|
4
|
+
|
|
5
|
+
{% block navhelp %}
|
|
6
|
+
<li>
|
|
7
|
+
<a href="https://docs.openrem.org/en/{{ admin.docsversion }}/task-management.html"
|
|
8
|
+
target="_blank" data-toggle="tooltip" title="Task management documentation - opens in a new tab">
|
|
9
|
+
Task management documentation
|
|
10
|
+
</a>
|
|
11
|
+
</li>
|
|
12
|
+
{% endblock %}
|
|
13
|
+
|
|
14
|
+
{% block mainblock %}
|
|
15
|
+
|
|
16
|
+
<div class="row">
|
|
17
|
+
<div class="col-md-4 col-md-offset-3">
|
|
18
|
+
<h3>Modify the size of background task history</h3>
|
|
19
|
+
{% if admin.admingroup %}
|
|
20
|
+
{% load crispy_forms_tags %}
|
|
21
|
+
{% crispy form %}
|
|
22
|
+
|
|
23
|
+
{% else %}
|
|
24
|
+
<p>Only users in the Admin group can modify these settings.</p>
|
|
25
|
+
{% endif %}
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
|
|
29
|
+
{% endblock %}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
1
|
+
{% extends "base.html" %}
|
|
@@ -1,235 +1,235 @@
|
|
|
1
|
-
{% extends "remapp/base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block navct%}<li class="active">{% endblock %}
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
{% block mainblock %}
|
|
7
|
-
<h1>Detail list of events</h1>
|
|
8
|
-
{% with patientstudy=generalstudymoduleattr.patientstudymoduleattr_set.get %}
|
|
9
|
-
{% with equipment=generalstudymoduleattr.generalequipmentmoduleattr_set.get %}
|
|
10
|
-
{% with accum_dose=generalstudymoduleattr.ctradiationdose_set.get.ctaccumulateddosedata_set.get %}
|
|
11
|
-
<ul>
|
|
12
|
-
<li>
|
|
13
|
-
Accession number:
|
|
14
|
-
{% if not generalstudymoduleattr.accession_hashed %}
|
|
15
|
-
{{ generalstudymoduleattr.accession_number }}
|
|
16
|
-
{% else %}
|
|
17
|
-
<em>hidden</em>
|
|
18
|
-
{% endif %}
|
|
19
|
-
</li>
|
|
20
|
-
<li>Study date: {{ generalstudymoduleattr.study_date }}</li>
|
|
21
|
-
<li>Study time: {{ generalstudymoduleattr.study_time|date:"H:i" }}</li>
|
|
22
|
-
<li>Study description: {{ generalstudymoduleattr.study_description }}</li>
|
|
23
|
-
<li>Procedure: {{ generalstudymoduleattr.procedure_code_meaning }}</li>
|
|
24
|
-
<li>Requested procedure: {{ generalstudymoduleattr.requested_procedure_code_meaning }}</li>
|
|
25
|
-
{% if showStandardNames %}
|
|
26
|
-
<li>Standard study names:
|
|
27
|
-
<ul>
|
|
28
|
-
{% for std_name in generalstudymoduleattr.standard_names.all %}
|
|
29
|
-
<li>{{ std_name.standard_name }}</li>
|
|
30
|
-
{% endfor %}
|
|
31
|
-
</ul>
|
|
32
|
-
</li>
|
|
33
|
-
{% endif %}
|
|
34
|
-
<li>Patient age: {{ patientstudy.patient_age_decimal|floatformat:1 }} years</li>
|
|
35
|
-
<li>Patient height and weight: {{ patientstudy.patient_size|floatformat:2 }} m, {{ patientstudy.patient_weight|floatformat:1 }} kg</li>
|
|
36
|
-
<li>Hospital: {{ equipment.institution_name }}</li>
|
|
37
|
-
<li>
|
|
38
|
-
Scanner:
|
|
39
|
-
{{ equipment.manufacturer }} |
|
|
40
|
-
{{ equipment.manufacturer_model_name }} |
|
|
41
|
-
{{ equipment.station_name }}
|
|
42
|
-
</li>
|
|
43
|
-
<li>Display name: {{ equipment.unique_equipment_name.display_name }}</li>
|
|
44
|
-
<li>Study UID: {{ generalstudymoduleattr.study_instance_uid }}</li>
|
|
45
|
-
<li>Comment: {{ generalstudymoduleattr.ctradiationdose_set.get.comment }} </li>
|
|
46
|
-
<li>Performing physician(s): {{ generalstudymoduleattr.performing_physician_name }}</li>
|
|
47
|
-
<li>Operator(s): {{ generalstudymoduleattr.operator_name }}</li>
|
|
48
|
-
<li>Test patient indicators? {{ generalstudymoduleattr.patientmoduleattr_set.get.not_patient_indicator }}</li>
|
|
49
|
-
</ul>
|
|
50
|
-
<div class="row">
|
|
51
|
-
<div class="col-md-3">
|
|
52
|
-
<table class="table table-condensed table-bordered small" aria-describedby="Total number of events and DLP in the study">
|
|
53
|
-
<tr>
|
|
54
|
-
<th scope="col">Total number of events</th>
|
|
55
|
-
<td>{{ accum_dose.total_number_of_irradiation_events }}</td>
|
|
56
|
-
</tr>
|
|
57
|
-
<tr>
|
|
58
|
-
<th scope="col">Total DLP </th>
|
|
59
|
-
<td>{{ accum_dose.ct_dose_length_product_total|floatformat:2 }} mGy·cm</td>
|
|
60
|
-
</tr>
|
|
61
|
-
{% if associated_nm is not None %}
|
|
62
|
-
<tr>
|
|
63
|
-
<th scope="col">Associated NM study</th>
|
|
64
|
-
<td>
|
|
65
|
-
<a href="{% url 'nm_detail_view' pk=associated_nm.pk %}">
|
|
66
|
-
{% with radiopharm=associated_nm.radiopharmaceuticalradiationdose_set.get %}
|
|
67
|
-
{% with radioadmin=radiopharm.radiopharmaceuticaladministrationeventdata_set.get %}
|
|
68
|
-
NM study with {{radioadmin.radiopharmaceutical_agent.code_meaning}}
|
|
69
|
-
{% endwith %}
|
|
70
|
-
{% endwith %}
|
|
71
|
-
</a>
|
|
72
|
-
</td>
|
|
73
|
-
</tr>
|
|
74
|
-
{% endif %}
|
|
75
|
-
</table>
|
|
76
|
-
</div>
|
|
77
|
-
</div>
|
|
78
|
-
|
|
79
|
-
<table class="table table-striped table-bordered small" aria-describedby="Exposure details for each acquisition contained in the study">
|
|
80
|
-
<th scope="col">Acquisition protocol</th>
|
|
81
|
-
{% if showStandardNames %}
|
|
82
|
-
<th scope="col">Standard acquisition name</th>
|
|
83
|
-
{% endif %}
|
|
84
|
-
<th scope="col">Type</th>
|
|
85
|
-
<th scope="col">CTDI<sub>vol</sub> (mGy)</th>
|
|
86
|
-
<th scope="col">DLP (mGy·cm)</th>
|
|
87
|
-
<th scope="col">Scanning length (mm)</th>
|
|
88
|
-
<th scope="col">kVp</th>
|
|
89
|
-
<th scope="col">mA</th>
|
|
90
|
-
<th scope="col">Max mA</th>
|
|
91
|
-
<th scope="col">Exposure time per rotation (s)</th>
|
|
92
|
-
<th scope="col">Pitch</th>
|
|
93
|
-
<th scope="col">Exposure time (s)</th>
|
|
94
|
-
<th scope="col">Slice thickness (mm)</th>
|
|
95
|
-
<th scope="col">Collimation (mm)</th>
|
|
96
|
-
<th scope="col">X-ray modulation type</th>
|
|
97
|
-
{% for event in events_all %}
|
|
98
|
-
{% with source=event.ctxraysourceparameters_set.all %}
|
|
99
|
-
{% with dose_check=event.ctdosecheckdetails_set.get %}
|
|
100
|
-
{% with dose_check_person_alert=dose_check.tid1020_alert.get %}
|
|
101
|
-
{% with dose_check_person_notification=dose_check.tid1020_notification.get %}
|
|
102
|
-
{% with source_zero=source.0 %}
|
|
103
|
-
{% with num_sources=event.number_of_xray_sources %}
|
|
104
|
-
|
|
105
|
-
<tr>
|
|
106
|
-
<td rowspan="2">{{ event.acquisition_protocol }}</td>
|
|
107
|
-
{% if showStandardNames %}
|
|
108
|
-
<td rowspan="2">
|
|
109
|
-
<table>
|
|
110
|
-
{% for std_name in event.standard_protocols.all %}
|
|
111
|
-
<tr><td class="nowrap">{{ std_name.standard_name|default_if_none:"-" }}</td></tr>
|
|
112
|
-
{% endfor %}
|
|
113
|
-
</table>
|
|
114
|
-
</td>
|
|
115
|
-
{% endif %}
|
|
116
|
-
<td rowspan="2">{{ event.ct_acquisition_type.code_meaning }}</td>
|
|
117
|
-
<td rowspan="2">
|
|
118
|
-
{{ event.mean_ctdivol|floatformat:2 }}
|
|
119
|
-
{% if event.ctdiw_phantom_type.code_value == "113691" %}
|
|
120
|
-
(32 cm)
|
|
121
|
-
{% elif event.ctdiw_phantom_type.code_value == "113690" %}
|
|
122
|
-
(16 cm)
|
|
123
|
-
{% endif %}
|
|
124
|
-
</td>
|
|
125
|
-
<td rowspan="2">{{ event.dlp|floatformat:2 }}</td>
|
|
126
|
-
<td rowspan="2">{{ event.scanninglength_set.get.scanning_length|floatformat:0 }}</td>
|
|
127
|
-
{% if num_sources != 2 %}
|
|
128
|
-
<td rowspan="2">{{ source_zero.kvp|floatformat:0 }}</td>
|
|
129
|
-
<td rowspan="2">{{ source_zero.xray_tube_current|floatformat:0 }}</td>
|
|
130
|
-
<td rowspan="2">{{ source_zero.maximum_xray_tube_current|floatformat:0 }}</td>
|
|
131
|
-
<td rowspan="2">{{ source_zero.exposure_time_per_rotation|floatformat:3 }}</td>
|
|
132
|
-
{% else %}
|
|
133
|
-
<td>{{ source_zero.kvp|floatformat:0 }}</td>
|
|
134
|
-
<td>{{ source_zero.xray_tube_current|floatformat:0 }}</td>
|
|
135
|
-
<td>{{ source_zero.maximum_xray_tube_current|floatformat:0 }}</td>
|
|
136
|
-
<td>{{ source_zero.exposure_time_per_rotation|floatformat:3 }}</td>
|
|
137
|
-
{% endif %}
|
|
138
|
-
<td rowspan="2">{{ event.pitch_factor|floatformat:3 }}</td>
|
|
139
|
-
<td rowspan="2">{{ event.exposure_time|floatformat:3 }}</td>
|
|
140
|
-
<td rowspan="2">{{ event.nominal_single_collimation_width|floatformat:3 }}</td>
|
|
141
|
-
<td rowspan="2">{{ event.nominal_total_collimation_width|floatformat:2 }}</td>
|
|
142
|
-
<td rowspan="2">{{ event.xray_modulation_type }}</td>
|
|
143
|
-
</tr>
|
|
144
|
-
{% if num_sources == 2 %}
|
|
145
|
-
{% with source_one=source.1 %}
|
|
146
|
-
<tr>
|
|
147
|
-
<td>{{ source_one.kvp|floatformat:0 }}</td>
|
|
148
|
-
<td>{{ source_one.xray_tube_current|floatformat:0 }}</td>
|
|
149
|
-
<td>{{ source_one.maximum_xray_tube_current|floatformat:0 }}</td>
|
|
150
|
-
<td>{{ source_one.exposure_time_per_rotation|floatformat:3 }}</td>
|
|
151
|
-
</tr>
|
|
152
|
-
{% endwith %}
|
|
153
|
-
{% else %}
|
|
154
|
-
<tr></tr>
|
|
155
|
-
{% endif %}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
<tr>
|
|
159
|
-
<td colspan="14">
|
|
160
|
-
<strong>Comment</strong> {{ event.comment }}<br>
|
|
161
|
-
{% if dose_check.dlp_alert_value_configured or dose_check.ctdivol_alert_value_configured %}
|
|
162
|
-
<strong>Dose Check Alerts</strong>
|
|
163
|
-
{% if dose_check.dlp_alert_value_configured %}
|
|
164
|
-
DLP alert is configured at {{ dose_check.dlp_alert_value|floatformat:2 }} mGy·cm with
|
|
165
|
-
{% if dose_check.accumulated_dlp_forward_estimate %}
|
|
166
|
-
an accumulated forward estimate of
|
|
167
|
-
{{ dose_check.accumulated_dlp_forward_estimate|floatformat:2 }} mGy·cm.
|
|
168
|
-
{% else %}
|
|
169
|
-
no accumulated forward estimate recorded.
|
|
170
|
-
{% endif %}
|
|
171
|
-
{% endif %}
|
|
172
|
-
{% if dose_check.ctdivol_alert_value_configured %}
|
|
173
|
-
CTDIvol alert is configured at {{ dose_check.ctdivol_alert_value|floatformat:2 }} mGy with
|
|
174
|
-
{% if dose_check.accumulated_ctdivol_forward_estimate %}
|
|
175
|
-
an accumulated forward estimate of
|
|
176
|
-
{{ dose_check.accumulated_ctdivol_forward_estimate|floatformat:2 }} mGy.
|
|
177
|
-
{% else %}
|
|
178
|
-
no accumulated forward estimate recorded.
|
|
179
|
-
{% endif %}
|
|
180
|
-
{% endif %}
|
|
181
|
-
{% if dose_check.alert_reason_for_proceeding %}
|
|
182
|
-
Reason for proceeding: {{ dose_check.alert_reason_for_proceeding }}
|
|
183
|
-
{% endif %}
|
|
184
|
-
{% if dose_check_person_alert.person_name %}
|
|
185
|
-
Person authorizing irradiation: {{ dose_check_person_alert.person_name }}
|
|
186
|
-
{% endif %}
|
|
187
|
-
<br>
|
|
188
|
-
{% endif %}
|
|
189
|
-
{% if dose_check.dlp_notification_value_configured or dose_check.ctdivol_notification_value_configured %}
|
|
190
|
-
<strong>Dose Check Notifications</strong>
|
|
191
|
-
{% if dose_check.dlp_notification_value_configured %}
|
|
192
|
-
DLP notification is configured at {{ dose_check.dlp_notification_value|floatformat:2 }} mGy·cm with
|
|
193
|
-
{% if dose_check.dlp_forward_estimate %}
|
|
194
|
-
an accumulated forward estimate of
|
|
195
|
-
{{ dose_check.dlp_forward_estimate|floatformat:2 }} mGy·cm.
|
|
196
|
-
{% else %}
|
|
197
|
-
no accumulated forward estimate recorded.
|
|
198
|
-
{% endif %}
|
|
199
|
-
{% endif %}
|
|
200
|
-
{% if dose_check.ctdivol_notification_value_configured %}
|
|
201
|
-
CTDIvol notification is configured at {{ dose_check.ctdivol_notification_value|floatformat:2 }} mGy with
|
|
202
|
-
{% if dose_check.ctdivol_forward_estimate %}
|
|
203
|
-
a forward estimate of
|
|
204
|
-
{{ dose_check.ctdivol_forward_estimate|floatformat:2 }} mGy.
|
|
205
|
-
{% else %}
|
|
206
|
-
no forward estimate recorded.
|
|
207
|
-
{% endif %}
|
|
208
|
-
{% endif %}
|
|
209
|
-
{% if dose_check.notification_reason_for_proceeding %}
|
|
210
|
-
Reason for proceeding: {{dose_check.notification_reason_for_proceeding }}
|
|
211
|
-
{% endif %}
|
|
212
|
-
{% if dose_check_person_notification.person_name %}
|
|
213
|
-
Person authorizing irradiation: {{ dose_check_person_notification.person_name }}
|
|
214
|
-
{% endif %}
|
|
215
|
-
{% endif %}
|
|
216
|
-
</td>
|
|
217
|
-
</tr>
|
|
218
|
-
{% endwith %}{% endwith %}{% endwith %}{% endwith %}{% endwith %}{% endwith %}
|
|
219
|
-
{% endfor %}
|
|
220
|
-
</table>
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
{% if is_paginated %}
|
|
224
|
-
<p class="pagination">
|
|
225
|
-
{% if has_next %}
|
|
226
|
-
<a class="older" href="?page={{ next }}" title="View older posts">Older</a>
|
|
227
|
-
{% endif %}
|
|
228
|
-
{% if has_next and has_previous %} | {% endif %}
|
|
229
|
-
{% if has_previous %}
|
|
230
|
-
<a class="newer" href="?page={{ previous }}" title="View newer posts">Newer</a>
|
|
231
|
-
{% endif %}
|
|
232
|
-
</p>
|
|
233
|
-
{% endif %}
|
|
234
|
-
{% endwith %}{% endwith %}{% endwith %}
|
|
235
|
-
{% endblock %}
|
|
1
|
+
{% extends "remapp/base.html" %}
|
|
2
|
+
|
|
3
|
+
{% block navct%}<li class="active">{% endblock %}
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
{% block mainblock %}
|
|
7
|
+
<h1>Detail list of events</h1>
|
|
8
|
+
{% with patientstudy=generalstudymoduleattr.patientstudymoduleattr_set.get %}
|
|
9
|
+
{% with equipment=generalstudymoduleattr.generalequipmentmoduleattr_set.get %}
|
|
10
|
+
{% with accum_dose=generalstudymoduleattr.ctradiationdose_set.get.ctaccumulateddosedata_set.get %}
|
|
11
|
+
<ul>
|
|
12
|
+
<li>
|
|
13
|
+
Accession number:
|
|
14
|
+
{% if not generalstudymoduleattr.accession_hashed %}
|
|
15
|
+
{{ generalstudymoduleattr.accession_number }}
|
|
16
|
+
{% else %}
|
|
17
|
+
<em>hidden</em>
|
|
18
|
+
{% endif %}
|
|
19
|
+
</li>
|
|
20
|
+
<li>Study date: {{ generalstudymoduleattr.study_date }}</li>
|
|
21
|
+
<li>Study time: {{ generalstudymoduleattr.study_time|date:"H:i" }}</li>
|
|
22
|
+
<li>Study description: {{ generalstudymoduleattr.study_description }}</li>
|
|
23
|
+
<li>Procedure: {{ generalstudymoduleattr.procedure_code_meaning }}</li>
|
|
24
|
+
<li>Requested procedure: {{ generalstudymoduleattr.requested_procedure_code_meaning }}</li>
|
|
25
|
+
{% if showStandardNames %}
|
|
26
|
+
<li>Standard study names:
|
|
27
|
+
<ul>
|
|
28
|
+
{% for std_name in generalstudymoduleattr.standard_names.all %}
|
|
29
|
+
<li>{{ std_name.standard_name }}</li>
|
|
30
|
+
{% endfor %}
|
|
31
|
+
</ul>
|
|
32
|
+
</li>
|
|
33
|
+
{% endif %}
|
|
34
|
+
<li>Patient age: {{ patientstudy.patient_age_decimal|floatformat:1 }} years</li>
|
|
35
|
+
<li>Patient height and weight: {{ patientstudy.patient_size|floatformat:2 }} m, {{ patientstudy.patient_weight|floatformat:1 }} kg</li>
|
|
36
|
+
<li>Hospital: {{ equipment.institution_name }}</li>
|
|
37
|
+
<li>
|
|
38
|
+
Scanner:
|
|
39
|
+
{{ equipment.manufacturer }} |
|
|
40
|
+
{{ equipment.manufacturer_model_name }} |
|
|
41
|
+
{{ equipment.station_name }}
|
|
42
|
+
</li>
|
|
43
|
+
<li>Display name: {{ equipment.unique_equipment_name.display_name }}</li>
|
|
44
|
+
<li>Study UID: {{ generalstudymoduleattr.study_instance_uid }}</li>
|
|
45
|
+
<li>Comment: {{ generalstudymoduleattr.ctradiationdose_set.get.comment }} </li>
|
|
46
|
+
<li>Performing physician(s): {{ generalstudymoduleattr.performing_physician_name }}</li>
|
|
47
|
+
<li>Operator(s): {{ generalstudymoduleattr.operator_name }}</li>
|
|
48
|
+
<li>Test patient indicators? {{ generalstudymoduleattr.patientmoduleattr_set.get.not_patient_indicator }}</li>
|
|
49
|
+
</ul>
|
|
50
|
+
<div class="row">
|
|
51
|
+
<div class="col-md-3">
|
|
52
|
+
<table class="table table-condensed table-bordered small" aria-describedby="Total number of events and DLP in the study">
|
|
53
|
+
<tr>
|
|
54
|
+
<th scope="col">Total number of events</th>
|
|
55
|
+
<td>{{ accum_dose.total_number_of_irradiation_events }}</td>
|
|
56
|
+
</tr>
|
|
57
|
+
<tr>
|
|
58
|
+
<th scope="col">Total DLP </th>
|
|
59
|
+
<td>{{ accum_dose.ct_dose_length_product_total|floatformat:2 }} mGy·cm</td>
|
|
60
|
+
</tr>
|
|
61
|
+
{% if associated_nm is not None %}
|
|
62
|
+
<tr>
|
|
63
|
+
<th scope="col">Associated NM study</th>
|
|
64
|
+
<td>
|
|
65
|
+
<a href="{% url 'nm_detail_view' pk=associated_nm.pk %}">
|
|
66
|
+
{% with radiopharm=associated_nm.radiopharmaceuticalradiationdose_set.get %}
|
|
67
|
+
{% with radioadmin=radiopharm.radiopharmaceuticaladministrationeventdata_set.get %}
|
|
68
|
+
NM study with {{radioadmin.radiopharmaceutical_agent.code_meaning}}
|
|
69
|
+
{% endwith %}
|
|
70
|
+
{% endwith %}
|
|
71
|
+
</a>
|
|
72
|
+
</td>
|
|
73
|
+
</tr>
|
|
74
|
+
{% endif %}
|
|
75
|
+
</table>
|
|
76
|
+
</div>
|
|
77
|
+
</div>
|
|
78
|
+
|
|
79
|
+
<table class="table table-striped table-bordered small" aria-describedby="Exposure details for each acquisition contained in the study">
|
|
80
|
+
<th scope="col">Acquisition protocol</th>
|
|
81
|
+
{% if showStandardNames %}
|
|
82
|
+
<th scope="col">Standard acquisition name</th>
|
|
83
|
+
{% endif %}
|
|
84
|
+
<th scope="col">Type</th>
|
|
85
|
+
<th scope="col">CTDI<sub>vol</sub> (mGy)</th>
|
|
86
|
+
<th scope="col">DLP (mGy·cm)</th>
|
|
87
|
+
<th scope="col">Scanning length (mm)</th>
|
|
88
|
+
<th scope="col">kVp</th>
|
|
89
|
+
<th scope="col">mA</th>
|
|
90
|
+
<th scope="col">Max mA</th>
|
|
91
|
+
<th scope="col">Exposure time per rotation (s)</th>
|
|
92
|
+
<th scope="col">Pitch</th>
|
|
93
|
+
<th scope="col">Exposure time (s)</th>
|
|
94
|
+
<th scope="col">Slice thickness (mm)</th>
|
|
95
|
+
<th scope="col">Collimation (mm)</th>
|
|
96
|
+
<th scope="col">X-ray modulation type</th>
|
|
97
|
+
{% for event in events_all %}
|
|
98
|
+
{% with source=event.ctxraysourceparameters_set.all %}
|
|
99
|
+
{% with dose_check=event.ctdosecheckdetails_set.get %}
|
|
100
|
+
{% with dose_check_person_alert=dose_check.tid1020_alert.get %}
|
|
101
|
+
{% with dose_check_person_notification=dose_check.tid1020_notification.get %}
|
|
102
|
+
{% with source_zero=source.0 %}
|
|
103
|
+
{% with num_sources=event.number_of_xray_sources %}
|
|
104
|
+
|
|
105
|
+
<tr>
|
|
106
|
+
<td rowspan="2">{{ event.acquisition_protocol }}</td>
|
|
107
|
+
{% if showStandardNames %}
|
|
108
|
+
<td rowspan="2">
|
|
109
|
+
<table>
|
|
110
|
+
{% for std_name in event.standard_protocols.all %}
|
|
111
|
+
<tr><td class="nowrap">{{ std_name.standard_name|default_if_none:"-" }}</td></tr>
|
|
112
|
+
{% endfor %}
|
|
113
|
+
</table>
|
|
114
|
+
</td>
|
|
115
|
+
{% endif %}
|
|
116
|
+
<td rowspan="2">{{ event.ct_acquisition_type.code_meaning }}</td>
|
|
117
|
+
<td rowspan="2">
|
|
118
|
+
{{ event.mean_ctdivol|floatformat:2 }}
|
|
119
|
+
{% if event.ctdiw_phantom_type.code_value == "113691" %}
|
|
120
|
+
(32 cm)
|
|
121
|
+
{% elif event.ctdiw_phantom_type.code_value == "113690" %}
|
|
122
|
+
(16 cm)
|
|
123
|
+
{% endif %}
|
|
124
|
+
</td>
|
|
125
|
+
<td rowspan="2">{{ event.dlp|floatformat:2 }}</td>
|
|
126
|
+
<td rowspan="2">{{ event.scanninglength_set.get.scanning_length|floatformat:0 }}</td>
|
|
127
|
+
{% if num_sources != 2 %}
|
|
128
|
+
<td rowspan="2">{{ source_zero.kvp|floatformat:0 }}</td>
|
|
129
|
+
<td rowspan="2">{{ source_zero.xray_tube_current|floatformat:0 }}</td>
|
|
130
|
+
<td rowspan="2">{{ source_zero.maximum_xray_tube_current|floatformat:0 }}</td>
|
|
131
|
+
<td rowspan="2">{{ source_zero.exposure_time_per_rotation|floatformat:3 }}</td>
|
|
132
|
+
{% else %}
|
|
133
|
+
<td>{{ source_zero.kvp|floatformat:0 }}</td>
|
|
134
|
+
<td>{{ source_zero.xray_tube_current|floatformat:0 }}</td>
|
|
135
|
+
<td>{{ source_zero.maximum_xray_tube_current|floatformat:0 }}</td>
|
|
136
|
+
<td>{{ source_zero.exposure_time_per_rotation|floatformat:3 }}</td>
|
|
137
|
+
{% endif %}
|
|
138
|
+
<td rowspan="2">{{ event.pitch_factor|floatformat:3 }}</td>
|
|
139
|
+
<td rowspan="2">{{ event.exposure_time|floatformat:3 }}</td>
|
|
140
|
+
<td rowspan="2">{{ event.nominal_single_collimation_width|floatformat:3 }}</td>
|
|
141
|
+
<td rowspan="2">{{ event.nominal_total_collimation_width|floatformat:2 }}</td>
|
|
142
|
+
<td rowspan="2">{{ event.xray_modulation_type }}</td>
|
|
143
|
+
</tr>
|
|
144
|
+
{% if num_sources == 2 %}
|
|
145
|
+
{% with source_one=source.1 %}
|
|
146
|
+
<tr>
|
|
147
|
+
<td>{{ source_one.kvp|floatformat:0 }}</td>
|
|
148
|
+
<td>{{ source_one.xray_tube_current|floatformat:0 }}</td>
|
|
149
|
+
<td>{{ source_one.maximum_xray_tube_current|floatformat:0 }}</td>
|
|
150
|
+
<td>{{ source_one.exposure_time_per_rotation|floatformat:3 }}</td>
|
|
151
|
+
</tr>
|
|
152
|
+
{% endwith %}
|
|
153
|
+
{% else %}
|
|
154
|
+
<tr></tr>
|
|
155
|
+
{% endif %}
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
<tr>
|
|
159
|
+
<td colspan="14">
|
|
160
|
+
<strong>Comment</strong> {{ event.comment }}<br>
|
|
161
|
+
{% if dose_check.dlp_alert_value_configured or dose_check.ctdivol_alert_value_configured %}
|
|
162
|
+
<strong>Dose Check Alerts</strong>
|
|
163
|
+
{% if dose_check.dlp_alert_value_configured %}
|
|
164
|
+
DLP alert is configured at {{ dose_check.dlp_alert_value|floatformat:2 }} mGy·cm with
|
|
165
|
+
{% if dose_check.accumulated_dlp_forward_estimate %}
|
|
166
|
+
an accumulated forward estimate of
|
|
167
|
+
{{ dose_check.accumulated_dlp_forward_estimate|floatformat:2 }} mGy·cm.
|
|
168
|
+
{% else %}
|
|
169
|
+
no accumulated forward estimate recorded.
|
|
170
|
+
{% endif %}
|
|
171
|
+
{% endif %}
|
|
172
|
+
{% if dose_check.ctdivol_alert_value_configured %}
|
|
173
|
+
CTDIvol alert is configured at {{ dose_check.ctdivol_alert_value|floatformat:2 }} mGy with
|
|
174
|
+
{% if dose_check.accumulated_ctdivol_forward_estimate %}
|
|
175
|
+
an accumulated forward estimate of
|
|
176
|
+
{{ dose_check.accumulated_ctdivol_forward_estimate|floatformat:2 }} mGy.
|
|
177
|
+
{% else %}
|
|
178
|
+
no accumulated forward estimate recorded.
|
|
179
|
+
{% endif %}
|
|
180
|
+
{% endif %}
|
|
181
|
+
{% if dose_check.alert_reason_for_proceeding %}
|
|
182
|
+
Reason for proceeding: {{ dose_check.alert_reason_for_proceeding }}
|
|
183
|
+
{% endif %}
|
|
184
|
+
{% if dose_check_person_alert.person_name %}
|
|
185
|
+
Person authorizing irradiation: {{ dose_check_person_alert.person_name }}
|
|
186
|
+
{% endif %}
|
|
187
|
+
<br>
|
|
188
|
+
{% endif %}
|
|
189
|
+
{% if dose_check.dlp_notification_value_configured or dose_check.ctdivol_notification_value_configured %}
|
|
190
|
+
<strong>Dose Check Notifications</strong>
|
|
191
|
+
{% if dose_check.dlp_notification_value_configured %}
|
|
192
|
+
DLP notification is configured at {{ dose_check.dlp_notification_value|floatformat:2 }} mGy·cm with
|
|
193
|
+
{% if dose_check.dlp_forward_estimate %}
|
|
194
|
+
an accumulated forward estimate of
|
|
195
|
+
{{ dose_check.dlp_forward_estimate|floatformat:2 }} mGy·cm.
|
|
196
|
+
{% else %}
|
|
197
|
+
no accumulated forward estimate recorded.
|
|
198
|
+
{% endif %}
|
|
199
|
+
{% endif %}
|
|
200
|
+
{% if dose_check.ctdivol_notification_value_configured %}
|
|
201
|
+
CTDIvol notification is configured at {{ dose_check.ctdivol_notification_value|floatformat:2 }} mGy with
|
|
202
|
+
{% if dose_check.ctdivol_forward_estimate %}
|
|
203
|
+
a forward estimate of
|
|
204
|
+
{{ dose_check.ctdivol_forward_estimate|floatformat:2 }} mGy.
|
|
205
|
+
{% else %}
|
|
206
|
+
no forward estimate recorded.
|
|
207
|
+
{% endif %}
|
|
208
|
+
{% endif %}
|
|
209
|
+
{% if dose_check.notification_reason_for_proceeding %}
|
|
210
|
+
Reason for proceeding: {{dose_check.notification_reason_for_proceeding }}
|
|
211
|
+
{% endif %}
|
|
212
|
+
{% if dose_check_person_notification.person_name %}
|
|
213
|
+
Person authorizing irradiation: {{ dose_check_person_notification.person_name }}
|
|
214
|
+
{% endif %}
|
|
215
|
+
{% endif %}
|
|
216
|
+
</td>
|
|
217
|
+
</tr>
|
|
218
|
+
{% endwith %}{% endwith %}{% endwith %}{% endwith %}{% endwith %}{% endwith %}
|
|
219
|
+
{% endfor %}
|
|
220
|
+
</table>
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
{% if is_paginated %}
|
|
224
|
+
<p class="pagination">
|
|
225
|
+
{% if has_next %}
|
|
226
|
+
<a class="older" href="?page={{ next }}" title="View older posts">Older</a>
|
|
227
|
+
{% endif %}
|
|
228
|
+
{% if has_next and has_previous %} | {% endif %}
|
|
229
|
+
{% if has_previous %}
|
|
230
|
+
<a class="newer" href="?page={{ previous }}" title="View newer posts">Newer</a>
|
|
231
|
+
{% endif %}
|
|
232
|
+
</p>
|
|
233
|
+
{% endif %}
|
|
234
|
+
{% endwith %}{% endwith %}{% endwith %}
|
|
235
|
+
{% endblock %}
|