meta-edc 0.3.53__py3-none-any.whl → 1.0.0__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.
Files changed (54) hide show
  1. meta_ae/action_items.py +9 -4
  2. meta_ae/admin/ae_initial_admin.py +5 -2
  3. meta_ae/admin/modeladmin_mixins.py +5 -3
  4. meta_ae/templatetags/meta_ae_extras.py +1 -3
  5. meta_consent/action_items.py +1 -0
  6. meta_consent/migrations/0030_auto_20250120_2114.py +40 -0
  7. meta_consent/migrations/0031_alter_historicalsubjectconsent_guardian_name_and_more.py +124 -0
  8. meta_dashboard/templates/meta_dashboard/{bootstrap3/subject → subject}/dashboard/sidebar.html +1 -1
  9. meta_dashboard/templates/meta_dashboard/{bootstrap3/subject → subject}/dashboard/top_bar.html +1 -1
  10. meta_dashboard/templates/meta_dashboard/subject/dashboard.html +14 -0
  11. meta_dashboard/templatetags/meta_dashboard_extras.py +6 -11
  12. meta_dashboard/views/subject/dashboard/dashboard_view.py +6 -5
  13. meta_edc/admin.py +2 -3
  14. meta_edc/settings/debug.py +2 -2
  15. meta_edc/settings/defaults.py +1 -3
  16. meta_edc/templates/meta_edc/{bootstrap3/base.html → base.html} +1 -1
  17. meta_edc/templates/meta_edc/{bootstrap3/home.html → home.html} +1 -1
  18. meta_edc/views/home_view.py +1 -2
  19. {meta_edc-0.3.53.dist-info → meta_edc-1.0.0.dist-info}/METADATA +2 -2
  20. {meta_edc-0.3.53.dist-info → meta_edc-1.0.0.dist-info}/RECORD +53 -48
  21. meta_prn/admin/end_of_study_admin.py +12 -6
  22. meta_prn/admin/offschedule_admin.py +8 -6
  23. meta_prn/admin/offschedule_dm_referral_admin.py +8 -6
  24. meta_prn/admin/offschedule_postnatal_admin.py +10 -1
  25. meta_prn/admin/offschedule_pregnancy_admin.py +10 -1
  26. meta_prn/form_validators/end_of_study.py +10 -4
  27. meta_prn/templates/meta_prn/eos/additional_instructions.html +3 -0
  28. meta_prn/templates/meta_prn/offschedule/additional_instructions.html +2 -0
  29. meta_reports/admin/dbviews/imp_substitutions_admin.py +1 -1
  30. meta_reports/admin/dbviews/missing_screening_ogtt_admin/unmanaged_model_admin.py +1 -1
  31. meta_reports/admin/dbviews/patient_history_missing_baseline_cd4_admin.py +1 -1
  32. meta_reports/admin/last_imp_refill_admin.py +5 -19
  33. meta_reports/templates/meta_reports/last_imp_refill/changelist_note.html +13 -0
  34. meta_screening/admin/subject_screening_admin.py +13 -3
  35. meta_screening/eligibility/eligibility.py +14 -7
  36. meta_screening/model_mixins/part_one_fields_model_mixin.py +15 -14
  37. meta_subject/admin/birth_outcome_admin.py +1 -1
  38. meta_subject/admin/delivery_admin.py +1 -1
  39. meta_subject/form_validators/dm_endpoint_form_validator.py +3 -1
  40. meta_subject/models/diabetes/dm_followup.py +3 -3
  41. tests/test_settings.py +0 -1
  42. meta_dashboard/templates/meta_dashboard/bootstrap3/subject/dashboard.html +0 -14
  43. /meta_ae/templates/meta_ae/{bootstrap3/ae_initial_description.html → aeinitial_description.html} +0 -0
  44. /meta_dashboard/templates/meta_dashboard/{bootstrap3/buttons → buttons}/add_consent_button.html +0 -0
  45. /meta_dashboard/templates/meta_dashboard/{bootstrap3/buttons → buttons}/dashboard_button.html +0 -0
  46. /meta_dashboard/templates/meta_dashboard/{bootstrap3/buttons → buttons}/eligibility_button.html +0 -0
  47. /meta_dashboard/templates/meta_dashboard/{bootstrap3/buttons → buttons}/refusal_button.html +0 -0
  48. /meta_dashboard/templates/meta_dashboard/{bootstrap3/buttons → buttons}/screening_button.html +0 -0
  49. /meta_dashboard/templates/meta_dashboard/{bootstrap3/screening → screening}/listboard.html +0 -0
  50. /meta_dashboard/templates/meta_dashboard/{bootstrap3/subject → subject}/listboard.html +0 -0
  51. {meta_edc-0.3.53.dist-info → meta_edc-1.0.0.dist-info}/AUTHORS +0 -0
  52. {meta_edc-0.3.53.dist-info → meta_edc-1.0.0.dist-info}/LICENSE +0 -0
  53. {meta_edc-0.3.53.dist-info → meta_edc-1.0.0.dist-info}/WHEEL +0 -0
  54. {meta_edc-0.3.53.dist-info → meta_edc-1.0.0.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,5 @@
1
1
  meta_ae/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- meta_ae/action_items.py,sha256=RpPqscguWKDc_n50gwI213jzTlGPHzGmIN4l7ODwM2U,11235
2
+ meta_ae/action_items.py,sha256=2XKK9K4f9irwyrNb9e0_JzZcEaHd0P1ZNGmMf5waGXo,11372
3
3
  meta_ae/admin_site.py,sha256=5nx3fbd14u5KJbpFXow_XpG9gfYhdoYe4NFasFVKMMs,159
4
4
  meta_ae/apps.py,sha256=tSj7MhDY6SxB0f1nXGPvodeTPiGFoRtrQGQd6M42egI,284
5
5
  meta_ae/baker_recipes.py,sha256=q4VWJRy2n-qSGQA9IskF3OvzorcQqYs_vO3vYkHYOjs,1184
@@ -9,7 +9,7 @@ meta_ae/list_data.py,sha256=liF-AksUZkDoIcgHqtXNR7a3YOWGGrD2JFTlwJUDcXk,1416
9
9
  meta_ae/urls.py,sha256=ONMP2AhRpksYzf97uVfC_MERsPzPddOEVZtKFgLL-9o,197
10
10
  meta_ae/admin/__init__.py,sha256=cYSrNzL72P5sk0Zmtey7Q_K1pp6olL6_XGXP7Qd5Ks4,400
11
11
  meta_ae/admin/ae_followup_admin.py,sha256=0JNXm-wI7QFlxKR5O_KKbz-ZA7tG_e0Ei7zu28i-qDs,484
12
- meta_ae/admin/ae_initial_admin.py,sha256=04sXVoFcMaK5j6N-7FNqXNA0yzvny0g9R8KLSz9hsEE,834
12
+ meta_ae/admin/ae_initial_admin.py,sha256=npZV7o1TVB_jQSRCVD_fK4UR991OF4lh1ezWVXFHEuc,913
13
13
  meta_ae/admin/ae_local_review_admin.py,sha256=fHzRPVAYWkdOMGs4JZXZUAvMzR0sauNH7B-15Y8TwUo,478
14
14
  meta_ae/admin/ae_sponsor_review_admin.py,sha256=5C2FqyXvpu53mVk4Uxw46sp1CZYRfQ9N5H17fHpx1Yo,488
15
15
  meta_ae/admin/ae_susar_admin.py,sha256=DBo_oL_prqcGMve_BTDM4Fk5ReqY21dZs-Omyzo7tvk,463
@@ -18,7 +18,7 @@ meta_ae/admin/death_report_admin.py,sha256=GvLgWZgil0Yorl8GxaOZOFu_YU9l-CtQQhL03
18
18
  meta_ae/admin/death_report_tmg_admin.py,sha256=iAYp1zgO96ioVHtUfAWw4PG_oLixTGbRpdszHlLjM0E,518
19
19
  meta_ae/admin/death_report_tmg_second_admin.py,sha256=4_Qg8S4yKF4kwKOEB1zVwfn_dlUWnTIim0wXrvrtz-0,548
20
20
  meta_ae/admin/hospitalization_admin.py,sha256=fk4i47ugp4Gg6CvW34l-LcRwM3JtAKg4MUs43rz5DzA,525
21
- meta_ae/admin/modeladmin_mixins.py,sha256=JCyRoPrGkk55uC19DYl6lNtRq3lwBOn_leWb9eLknW0,4156
21
+ meta_ae/admin/modeladmin_mixins.py,sha256=7NWVQSOzokbfYsGkkXspwLFFwdLgY59EWoFrU0HA05Q,4248
22
22
  meta_ae/forms/__init__.py,sha256=nl3x6_c9Kmcn3hpTQ9DUdZT6vT9k7RBmYD_meOUc7jQ,492
23
23
  meta_ae/forms/ae_followup_form.py,sha256=hnFlKLPWpJX172UF3C825hZMjM4NUeTI3b__AZt1MqU,298
24
24
  meta_ae/forms/ae_initial_form.py,sha256=rmu4qx84df5Gpvx0ZPa39EtSGP7JR8nh9mztcsE9O4Q,292
@@ -73,9 +73,9 @@ meta_ae/pdf_reports/__init__.py,sha256=8_T_bOqSRwSBUttzTB-3qMwwKubfjTeCcXsAltBTm
73
73
  meta_ae/pdf_reports/ae_pdf_report.py,sha256=DjjVhZ6C4D4kx1JtilC6OUGc6u2rei3DyQPeuMPeC40,195
74
74
  meta_ae/pdf_reports/death_pdf_report.py,sha256=qVOGowq2wL10fb4k30uAVmj-MNZ61rlShkfvCYsKL4E,207
75
75
  meta_ae/pdf_reports/meta_pdf_report_mixin.py,sha256=DXZzbXwEBFDDgjkP6NgvQdECYLnIjJA_8XmKifysKE8,585
76
- meta_ae/templates/meta_ae/bootstrap3/ae_initial_description.html,sha256=yRzwDqfAAG5w-USI0VwrQaivEcNHvWe_fn9H7aLaj-U,885
76
+ meta_ae/templates/meta_ae/aeinitial_description.html,sha256=yRzwDqfAAG5w-USI0VwrQaivEcNHvWe_fn9H7aLaj-U,885
77
77
  meta_ae/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
- meta_ae/templatetags/meta_ae_extras.py,sha256=meVoC4fhA6WWHn0R0WQ5LNHz2XRkt1VdtnidrRB3vLo,1215
78
+ meta_ae/templatetags/meta_ae_extras.py,sha256=xFd67g4EjXsIFtD0Lu52V70wnnE_bB9zt_llln2hVL4,1118
79
79
  meta_ae/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
80
  meta_ae/tests/holidays.csv,sha256=Ywr5pK_caGUJMgRwLzjMeSEUuyEpUWyJE5aJkfbg3bg,539
81
81
  meta_ae/tests/urls.py,sha256=BKiCB7JZCxtZFh6Ym-Y-Hdq92NECIt-GqMDyt6_B7o0,260
@@ -112,7 +112,7 @@ meta_auth/auth_objects.py,sha256=iMbkkeSs_Oua53KBmdIHpsFB52CEopzyQoHq2Okq1sA,260
112
112
  meta_auth/auths.py,sha256=EBdK6b5b2yduDvqYmnmJFRvuJ0fLDQ_q226iuwHA_QU,3008
113
113
  meta_auth/urls.py,sha256=_sVCnQeiAFRYKhxga3_DjoKj_4bgs1s2gjcynDiapvA,111
114
114
  meta_consent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
- meta_consent/action_items.py,sha256=9cOCApsOu-ty7gJDRUoRbX4j6uFd8N3k1Zubcnnsl_E,1345
115
+ meta_consent/action_items.py,sha256=iaj5ckWI20rKddI4jZpotes-vn0Yu1rcdx5SnlgDjvo,1373
116
116
  meta_consent/admin_site.py,sha256=r5FtGwonVpqhyGekVNplmHr2mwbEGilJBiyvsIz2_lY,169
117
117
  meta_consent/apps.py,sha256=asTFgxJ1PmX7FkcqjvC5_GkcZVuI5grNx-1qrgNrcyM,282
118
118
  meta_consent/baker_recipes.py,sha256=YMSCNyaCvEi70QVhUuW_0-DaD_0QTihCmhQaIPkvDIM,1403
@@ -168,6 +168,8 @@ meta_consent/migrations/0026_historicalsubjectconsentv1ext_subjectconsentv1ext.p
168
168
  meta_consent/migrations/0027_auto_20250111_0344.py,sha256=iQGpH03s_x4iBl47QSzR5NauOdSSZCtSPUF2NdRf4y4,943
169
169
  meta_consent/migrations/0028_historicalsubjectconsentv1ext_assessment_score_and_more.py,sha256=N_pDoynD0y1ssSqlHuq3Doy9lyl8q-ARVz7Dop85bR4,6834
170
170
  meta_consent/migrations/0029_alter_historicalsubjectconsentv1ext_agrees_to_extension_and_more.py,sha256=hH5Wz1qAhaaFog13hOVhkuvdlUBqf0dDN1D5sHAD0EE,1277
171
+ meta_consent/migrations/0030_auto_20250120_2114.py,sha256=Unk3dddqbNTog5VZOmq-68oi_RshtT21wlNVqcSf5-U,1349
172
+ meta_consent/migrations/0031_alter_historicalsubjectconsent_guardian_name_and_more.py,sha256=a3-_1ls36Z8UXe3v2U44SqPVeNiCgUjJX6jOWsk1EoQ,5645
171
173
  meta_consent/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
174
  meta_consent/models/__init__.py,sha256=ugL8eQybOHAEFgOtGKxVHLZ3ibAnRCNSaf9wup6J_uI,279
173
175
  meta_consent/models/model_mixins.py,sha256=r5KmTykU0qV4JymMMKP2IBwAP8Z5hDnVJix-rO2PvME,296
@@ -190,18 +192,18 @@ meta_dashboard/urls.py,sha256=Nr9bQyY82rzsYecbD2hClGsiAfcT5UQIiwbKSalbHyg,1193
190
192
  meta_dashboard/locale/lg/LC_MESSAGES/django.po,sha256=k_8rNvTYu-a1KsGfcGsJ-cx65vxa67yhkTJUVu5mP64,836
191
193
  meta_dashboard/locale/sw/LC_MESSAGES/django.po,sha256=lL2_fidRWe_Zv2Q8t_lCfx6GtBNtlSwybL0xm7CLbGA,883
192
194
  meta_dashboard/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
193
- meta_dashboard/templates/meta_dashboard/bootstrap3/buttons/add_consent_button.html,sha256=6keqMZ7NrAvcCcl4Dx0dDn0MASj_cAd2IpaXK1ZglK4,447
194
- meta_dashboard/templates/meta_dashboard/bootstrap3/buttons/dashboard_button.html,sha256=xGuwTLyegM1kVrFkRlDpXkzD7mcRVfSeO6ZVlQ6A_k8,280
195
- meta_dashboard/templates/meta_dashboard/bootstrap3/buttons/eligibility_button.html,sha256=rwYsC6yPaW3yT5u76hqaji8e5KzyDTmx0gcFvTAbORA,402
196
- meta_dashboard/templates/meta_dashboard/bootstrap3/buttons/refusal_button.html,sha256=osqLQ_Jta-HK29FmGuQ4kXkGbdx83TdWsjVt-KM2VS8,429
197
- meta_dashboard/templates/meta_dashboard/bootstrap3/buttons/screening_button.html,sha256=2mYA4tVmUs0NPZJ8XMUMHnfprJHUsbnYJrwp0NoIzmg,1080
198
- meta_dashboard/templates/meta_dashboard/bootstrap3/screening/listboard.html,sha256=JU3XJ7EfYXCl6crLeACctgIbI16ISstY1hIaLl0yhr0,2760
199
- meta_dashboard/templates/meta_dashboard/bootstrap3/subject/dashboard.html,sha256=uyX3VUlPbds7LUWItOu_Kfr8sUrxX4PR4sfG97zFpII,391
200
- meta_dashboard/templates/meta_dashboard/bootstrap3/subject/listboard.html,sha256=AyVcossXTf7grSrbWaz7Wek12YRixEdddxEQWatSXgs,1398
201
- meta_dashboard/templates/meta_dashboard/bootstrap3/subject/dashboard/sidebar.html,sha256=kmAEYUfrPEKjK5nFmJ6XvnkIOCbiCqKmVRbmfoKu2KQ,1101
202
- meta_dashboard/templates/meta_dashboard/bootstrap3/subject/dashboard/top_bar.html,sha256=5u2ySYTBEwsKKLmQaEmPoObvtx1vduwIcy9DvkS4AO0,230
195
+ meta_dashboard/templates/meta_dashboard/buttons/add_consent_button.html,sha256=6keqMZ7NrAvcCcl4Dx0dDn0MASj_cAd2IpaXK1ZglK4,447
196
+ meta_dashboard/templates/meta_dashboard/buttons/dashboard_button.html,sha256=xGuwTLyegM1kVrFkRlDpXkzD7mcRVfSeO6ZVlQ6A_k8,280
197
+ meta_dashboard/templates/meta_dashboard/buttons/eligibility_button.html,sha256=rwYsC6yPaW3yT5u76hqaji8e5KzyDTmx0gcFvTAbORA,402
198
+ meta_dashboard/templates/meta_dashboard/buttons/refusal_button.html,sha256=osqLQ_Jta-HK29FmGuQ4kXkGbdx83TdWsjVt-KM2VS8,429
199
+ meta_dashboard/templates/meta_dashboard/buttons/screening_button.html,sha256=2mYA4tVmUs0NPZJ8XMUMHnfprJHUsbnYJrwp0NoIzmg,1080
200
+ meta_dashboard/templates/meta_dashboard/screening/listboard.html,sha256=JU3XJ7EfYXCl6crLeACctgIbI16ISstY1hIaLl0yhr0,2760
201
+ meta_dashboard/templates/meta_dashboard/subject/dashboard.html,sha256=MoH3WSMV2fU3CrGa8RzpdCpGUvc1GIoPuwva63-l83A,358
202
+ meta_dashboard/templates/meta_dashboard/subject/listboard.html,sha256=AyVcossXTf7grSrbWaz7Wek12YRixEdddxEQWatSXgs,1398
203
+ meta_dashboard/templates/meta_dashboard/subject/dashboard/sidebar.html,sha256=cywYKXnxjdAL83kkU3tx5pA5MynZbVlVirQE5qIpvmQ,1090
204
+ meta_dashboard/templates/meta_dashboard/subject/dashboard/top_bar.html,sha256=aqOsZ7p1peD2KYbjPb4bLEBj7FjBWOI8W6gn6-lX7oI,219
203
205
  meta_dashboard/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
204
- meta_dashboard/templatetags/meta_dashboard_extras.py,sha256=aVUypkmzt4ih7zFcqTak26jmFyxZUeO6yxIN_OUycBw,3922
206
+ meta_dashboard/templatetags/meta_dashboard_extras.py,sha256=q7s5Kl0Hx2m0owcyYdHp0-v0hsQV_jyfs2lDCYMKmRw,3636
205
207
  meta_dashboard/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
206
208
  meta_dashboard/tests/admin.py,sha256=4k_kM3YURLIInujRNpPRql3rLxODOZQhCXueoUdU064,716
207
209
  meta_dashboard/tests/holidays.csv,sha256=Ywr5pK_caGUJMgRwLzjMeSEUuyEpUWyJE5aJkfbg3bg,539
@@ -217,7 +219,7 @@ meta_dashboard/views/screening/__init__.py,sha256=bjnvZdqdonOW_DPFs1MR2GQv2x4oqA
217
219
  meta_dashboard/views/screening/listboard_view.py,sha256=DF42XR3ftCHO4vd3cuxtq5ir2NqOmQHGQV6cGObr7is,578
218
220
  meta_dashboard/views/subject/__init__.py,sha256=s7l0halOqlqscWdMD_r98V4VKeEsgchhY3eAgs0EI3k,81
219
221
  meta_dashboard/views/subject/dashboard/__init__.py,sha256=1961drFBW7OVhglUAL4OGFxLOU0tN3jOGMvO7Oone8U,42
220
- meta_dashboard/views/subject/dashboard/dashboard_view.py,sha256=uUA0PqhLOpQDsgLXZZvZpqnBAbHOo81hXKDmcOoCRXg,1812
222
+ meta_dashboard/views/subject/dashboard/dashboard_view.py,sha256=q4ELvU_o5TU-eRYWSKy46bvceZu_87Vbxw3tAaKaoyM,1927
221
223
  meta_dashboard/views/subject/listboard/__init__.py,sha256=WHtaM6dXPN7vtnROBOutMO9zEBVIkx3T0RPJdbq4sq4,49
222
224
  meta_dashboard/views/subject/listboard/listboard_view.py,sha256=bQ5fPqbbkVvPNrmNvIGNZ_GoRIkqUFHk6T7p1dkjr_Y,601
223
225
  meta_data_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -225,7 +227,7 @@ meta_data_manager/apps.py,sha256=xpcMy8CxRMgyWiKmD2JhbfKgPKTgs42wD4AdNwZJANI,233
225
227
  meta_data_manager/data_manager.py,sha256=T9SWFI0iTSDjff-WX-exBNa3I2d985o-JjyCkrHL1FM,167
226
228
  meta_data_manager/handlers.py,sha256=UMeO8WYs6aVVPtLmnyatT42N9zc7NZI9V1Y6Up08WDA,952
227
229
  meta_edc/__init__.py,sha256=2J3-xicgO6hqSC5ec6bRfCUTlFrouiF_zLHC-sq0eSY,343
228
- meta_edc/admin.py,sha256=pbISDsySzbQxK8VFvFncxDXy_ackWj6c7z2H0PYCQGA,845
230
+ meta_edc/admin.py,sha256=gqciMrLGQBT7CBKWJxpNxdB1V7jD3C-tsnLC7OA6HTA,719
229
231
  meta_edc/apps.py,sha256=vg5C0EBve4bOFwwPee-boI4qA5geShGcD-DHkpGkWTU,450
230
232
  meta_edc/asgi.py,sha256=jDODkEq-jgxRwl2BL1cDAjOAcoNtvlTIC7MlzBr7FS8,175
231
233
  meta_edc/celery.py,sha256=XtZ6PvffaXQR0S2Ll1x4wnVT1taQnP6zi_5F5FqXAXk,357
@@ -245,19 +247,19 @@ meta_edc/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NM
245
247
  meta_edc/management/commands/update_forms_reference.py,sha256=jvCU9YdMtp9wbmjqKQsB9gxNw4DcAP97sZD-kfIxOns,1071
246
248
  meta_edc/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
247
249
  meta_edc/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
248
- meta_edc/settings/debug.py,sha256=5WkxxapNtYDi9XKXCOCnlZ3q9--zktBtRyGhCVUaMEs,1296
249
- meta_edc/settings/defaults.py,sha256=4jIHzK4pSIWCD2uJiyr3U1Rp1Uhhwi2MXPbXrMd7SZs,19704
250
+ meta_edc/settings/debug.py,sha256=ys60bSDcEMbWewoTdE4HRIp2woOwy3RPjIgXMUCEJpQ,1296
251
+ meta_edc/settings/defaults.py,sha256=YBOFTG7k9ESeOD_DUx6vdK6ewncTtPwnZFQTdSP_WAk,19614
250
252
  meta_edc/settings/live.py,sha256=uLTlsIc3H6gdE_7pkL6vyOVa6V_74hnXFkiojqGFAYY,264
251
253
  meta_edc/settings/logging.py,sha256=6qVUE37OMkf5rzwTmMq4krFsZ2jcyCpWdFtGih_Cs4U,1938
252
254
  meta_edc/settings/minimal.py,sha256=3z-7GBluflnUkuSotKZlYvpL34NZ6tfFNuQNJLCyflo,592
253
255
  meta_edc/settings/uat.py,sha256=P1hovGPgCnuyiVZ-RuZfoEskAEz39hkMAVGjEeP7RDM,270
254
- meta_edc/templates/meta_edc/bootstrap3/base.html,sha256=8Agovk1eTpW-2oAgVGsYwL_DAD6zB3DNwGGpPJ2bx-g,165
255
- meta_edc/templates/meta_edc/bootstrap3/home.html,sha256=JjNhNaLXUUCMwTmUm7F5fdNOj6GdXJspfsXx3-0OV6U,4590
256
+ meta_edc/templates/meta_edc/base.html,sha256=SRsitjNhwDyPueJXm8gAyz9MsqDKFfhs50zl4dGBGsU,154
257
+ meta_edc/templates/meta_edc/home.html,sha256=EMdNWUw3NURSrC8xlKCkxuV0SxVLcmB8kyy2N6LgFLQ,4579
256
258
  meta_edc/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
257
259
  meta_edc/tests/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
258
260
  meta_edc/tests/tests/test_endpoints.py,sha256=5FdIHTd1xhUIgQLBzMV-Ml3VoFrlBrLLUbNarme5raw,23541
259
261
  meta_edc/views/__init__.py,sha256=TBXTih4Mpsg5Oh2jbyXqL9kH7bu3vWNRgVe93hvLCl8,32
260
- meta_edc/views/home_view.py,sha256=a3A0DMoqCWQuLkb2MSIR-I0Su-mVU5D82FwAIC21low,1006
262
+ meta_edc/views/home_view.py,sha256=BXydy77TcdcM0-R3S_uHI4DtfnLMIzPJMyqjFJZFSsA,916
261
263
  meta_export/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
262
264
  meta_export/admin_site.py,sha256=CiKAf0gDFvBKVc-1VM6KwM905ayVZuiY1tgaTeUeCi0,167
263
265
  meta_export/apps.py,sha256=3_5LB1MLtzfKekI2vT9Cm6puAx6t6AjtIfTTVdItdKg,226
@@ -354,20 +356,20 @@ meta_prn/pregnancy_action_item_mixin.py,sha256=E_7aFSs_PXkqlRqRbKohWZSnE7rUcFVr0
354
356
  meta_prn/urls.py,sha256=AOKhAkkdXlr5P4z-WK70Da6Zm9DktKWnPDtXfCKYJWs,202
355
357
  meta_prn/admin/__init__.py,sha256=gwAfqcnkJm8rcjYdtd_e1aFVsv7qDq7RCIHUaheo82c,766
356
358
  meta_prn/admin/dm_referral_admin.py,sha256=IUYxEw-PaAKlC0GnBV5kEUL3jMWGymUeA183SNlqfJg,1401
357
- meta_prn/admin/end_of_study_admin.py,sha256=G0l0e1V9FYWky6jh-DG6rqwNB1Uv0NjA0uFkoT55Gyw,5444
359
+ meta_prn/admin/end_of_study_admin.py,sha256=XVtkciffuxmOpXg_ewsyZa--Lf4CKmI-Esqcav_Koy4,5583
358
360
  meta_prn/admin/loss_to_followup_admin.py,sha256=N385T_F1PJZBWw7jldG2HZiWuvlJs3SW92Oa_NNvGHo,1736
359
361
  meta_prn/admin/off_study_medication_admin.py,sha256=pUc6vXvPuoAwTBxE24ztvqEOVSK4wFG8yx_4SQOn918,2377
360
- meta_prn/admin/offschedule_admin.py,sha256=FjijlMYfv3DhyNF0kTLmvmLhI1ASmIY8lUl0L-NfUx4,1707
361
- meta_prn/admin/offschedule_dm_referral_admin.py,sha256=27cVw-lzEKr9t8IOC77B7enByxT74TWcQTMobc-qulY,1782
362
- meta_prn/admin/offschedule_postnatal_admin.py,sha256=SpLsX75Q01mqKTSGKXoQ1EKUzYm6nZZ9vysGSeHy3aE,1621
363
- meta_prn/admin/offschedule_pregnancy_admin.py,sha256=XHM-1EmQ6gzKL7AOf0NlMM_Pn6XOK9TtTSq36HjFY4U,1703
362
+ meta_prn/admin/offschedule_admin.py,sha256=GzmBaCc09ehWZnE93cuzSqHZxUYvXj_Fg-eLi-1PqF0,1748
363
+ meta_prn/admin/offschedule_dm_referral_admin.py,sha256=wedIc1KtQ6l_NATXHeuuGX4dbyWsunSJ_X6-mX3w92I,1823
364
+ meta_prn/admin/offschedule_postnatal_admin.py,sha256=USGbZIFDuB1Wwu0t-avQg6dcTNiEvpQqvkBEdrZBYk4,1970
365
+ meta_prn/admin/offschedule_pregnancy_admin.py,sha256=aeX8NstvwmW8xG1xBjkGRzftFA9d04tzazh_RI8PRoY,2052
364
366
  meta_prn/admin/onschedule_admin.py,sha256=GX4_wSqMDtQdB_x3nhodaDZ_E3d8kPPy-Yprpp6BJOk,1440
365
367
  meta_prn/admin/onschedule_dm_referral_admin.py,sha256=gfWE-NpHC4ICjKb1Fhb5XZUQ5syTp0s0_9IU1-ZTp0k,1470
366
368
  meta_prn/admin/pregnancy_notification_admin.py,sha256=fIAbpU1QEVAGeewxc2xcRu7aipz0srjzRNxPv7ZZrR8,2284
367
369
  meta_prn/admin/protocol_incident_admin.py,sha256=fTlYJAxsrPDB8skZc-_2DxKH21k_cG7UH7wCgnviBck,739
368
370
  meta_prn/admin/subject_transfer_admin.py,sha256=YKViIZLAaAquiN5RO-V6lRoGP76bYwcb_EA5QTEeI2Y,723
369
371
  meta_prn/form_validators/__init__.py,sha256=ROZbWrtQ4dLCwy-aeBcOh0mnYm12qFrvUWzV-BkGvTU,111
370
- meta_prn/form_validators/end_of_study.py,sha256=nhAymg1c_GH74MrrubzYSJUKdBkRVY4qKj7C0GufrQw,12917
372
+ meta_prn/form_validators/end_of_study.py,sha256=BlTjp3LgOpl3bFzNHn3S8OoHNE7mNUQkvJArAnu09x4,13150
371
373
  meta_prn/form_validators/protocol_incident.py,sha256=g28qDxXpb-RiE4szn-KHFA03GcaAp0VWJ5SD5f3NUp8,1068
372
374
  meta_prn/forms/__init__.py,sha256=rQX_sPN77qzktlfH46qQNcZ1yV1WvKThm2c-jzangNQ,565
373
375
  meta_prn/forms/dm_referral_form.py,sha256=TvJSzKyVXXCOHRw67_i3BP9yEjAwE2yT5H6Y9bLRddU,1350
@@ -454,6 +456,8 @@ meta_prn/models/pregnancy_notification.py,sha256=ERSifeybl5zviBMsC-EGZ9I6KoZzW3t
454
456
  meta_prn/models/protocol_incident.py,sha256=9oTTFbATlNN7VY7qcxfcIk9DxYwL3CCFknzuze_VrOM,1089
455
457
  meta_prn/models/signals.py,sha256=duIB07Ppg8fpFCoyaPJ_YpzGSacXU3hcEAG4TTRRMSc,3811
456
458
  meta_prn/models/subject_transfer.py,sha256=U-Y4sSfOR95jvDpxwu51Am_TyImvAAHZ3T2ENvx3OSk,266
459
+ meta_prn/templates/meta_prn/eos/additional_instructions.html,sha256=bl33D9bvP4vGuCBDbzFOKkSMxBdifOXfZgl0gFRzDro,340
460
+ meta_prn/templates/meta_prn/offschedule/additional_instructions.html,sha256=_95ezjUN-gVzTwEiBFM6CE4sMhRGG0Iqem5ajlL89cA,203
457
461
  meta_prn/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
458
462
  meta_prn/tests/urls.py,sha256=JtaYMEhXBim3a2uPLNvyoulbEutvtbTlmH-ez9Ws8u8,270
459
463
  meta_prn/tests/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -486,19 +490,19 @@ meta_reports/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
486
490
  meta_reports/admin/__init__.py,sha256=om3lFa4YxsZSNlYIi2sZv8li2irOMoSeBtOpPk4V3lk,488
487
491
  meta_reports/admin/endpoints_admin.py,sha256=7wZCdC-D-QHI1bb_ucgyDZYlnYD7mWtcZpcH_LftkLs,514
488
492
  meta_reports/admin/endpoints_all_admin.py,sha256=_czdezZf9fSjwZJmO-3HbmdXrXP6nk8-HdiweqUzPRE,476
489
- meta_reports/admin/last_imp_refill_admin.py,sha256=iXXRHQa9irNWs3N6wkw-7fF4ZCyh-5mEaLRlYXOpZL0,6719
493
+ meta_reports/admin/last_imp_refill_admin.py,sha256=w-0wIanAk7vXwUufd9v_ZEWhYJ3s8Q2fDP3csRRxgls,5946
490
494
  meta_reports/admin/list_filters.py,sha256=pByBzz9-qGwqBfdZFlByxJUZDTJQXOTWfNLjmK8KF00,870
491
495
  meta_reports/admin/modeladmin_mixins.py,sha256=tEZYw0xNMfBvo2RLDrYfi_S9lbZU02dwtLxdRDZob4Q,3663
492
496
  meta_reports/admin/dbviews/__init__.py,sha256=2yPu0SO7ZX9yjan0OS9izzws14YYoXcGXmZhwJhax1I,675
493
497
  meta_reports/admin/dbviews/glucose_summary_admin.py,sha256=ASvYcPIKJ0sLkRT-rwxkcpLPN36XVRs6wUg6msOaA9Y,4001
494
- meta_reports/admin/dbviews/imp_substitutions_admin.py,sha256=-poOw3fJK7jQERB1PNXNDrWNthwEQpiwmrxoWOsDtjI,3622
495
- meta_reports/admin/dbviews/patient_history_missing_baseline_cd4_admin.py,sha256=XyroEqxlX816xrdi0IVSelNPxPBWi96niKa-MQVGkck,2058
498
+ meta_reports/admin/dbviews/imp_substitutions_admin.py,sha256=gNrMSw8zpFtv2oSQkrIzzJWJjFlvM3JmLVbCY0M35Xo,3644
499
+ meta_reports/admin/dbviews/patient_history_missing_baseline_cd4_admin.py,sha256=pf4L4P-LliMMq9MJFnJt1_nJKVxASbmt7233b2ec12I,2080
496
500
  meta_reports/admin/dbviews/unattended_three_in_row2_admin.py,sha256=0r13KRr0gsH2osmSlffRV11SpSBpWM612AYl-GOoYm0,1347
497
501
  meta_reports/admin/dbviews/unattended_three_in_row_admin.py,sha256=i_-H3pMXRjssf8jFw8gJ8_b0FaM4tX2AI4xfHQDyssU,1121
498
502
  meta_reports/admin/dbviews/unattended_two_in_row_admin.py,sha256=tbnga05uTMgdK8ULsKYV7IuyhyPe0e-JpbMm6etU6Pk,1062
499
503
  meta_reports/admin/dbviews/missing_screening_ogtt_admin/__init__.py,sha256=UZMypicuUuZ2jD2Rf0hcDUi-oBUf7_3fgyV5KacIJtE,117
500
504
  meta_reports/admin/dbviews/missing_screening_ogtt_admin/note_model_admin.py,sha256=RcksbJ9HinK71iN9Pr_xMp-voj17pBqjLZpfMTJ7300,1357
501
- meta_reports/admin/dbviews/missing_screening_ogtt_admin/unmanaged_model_admin.py,sha256=1pWmmqk6LADkPWqyxcS8nwC-KwMjuN8O7fmG_AbcA3g,2644
505
+ meta_reports/admin/dbviews/missing_screening_ogtt_admin/unmanaged_model_admin.py,sha256=Pnuo1Lk2u_hvUMLUsIfdS03iTUxpRy_SPkNookQL7FA,2666
502
506
  meta_reports/admin/dbviews/on_study_missing_lab_values_admin/__init__.py,sha256=uEdeiEhZ5g9qwpB5gIwkc_istTf-CknIlBh-A3lMVmI,64
503
507
  meta_reports/admin/dbviews/on_study_missing_lab_values_admin/unmanaged_model_admin.py,sha256=kG9mR7nqHgwJ8JZzvRTlh3M0pXOdWVTnNgdHcr0C_X0,433
504
508
  meta_reports/admin/dbviews/on_study_missing_values_admin/__init__.py,sha256=6JBeWQzw56s-LvIBlhHVSys5HviEkAF2Xt8REJNeYOI,61
@@ -601,6 +605,7 @@ meta_reports/models/dbviews/unattended_two_in_row/view_definition.py,sha256=fT-L
601
605
  meta_reports/templates/meta_reports/endpoints_all_change_list_note.html,sha256=iATJR8KJoHCE5gptz8dsXhj5-vWsVI2QwDms6s1xowg,702
602
606
  meta_reports/templates/meta_reports/endpoints_change_list_note.html,sha256=aNaAZ80G1o-1_l0Ta4HVoNrC3sgYZWKMTxG_4xFDNSk,761
603
607
  meta_reports/templates/meta_reports/columns/subject_identifier_column.html,sha256=wiAU6V44fOu21UNPFo7wUyACVJk-S_or5qNc3V7q5Vc,110
608
+ meta_reports/templates/meta_reports/last_imp_refill/changelist_note.html,sha256=oXfMXSgCrRF5PiplQQwkWlKIo9qMHRM-ovV9D6GoHLg,893
604
609
  meta_reports/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
605
610
  meta_reports/tests/test_reports.py,sha256=P8Myql_Pbx--OMHjRq_BbvTaawD4V_MHkeVa_S_grK8,1293
606
611
  meta_reports/tests/test_sql_gen.py,sha256=ZuRlAxTcHcbecPQ4q0kRBXsalkW9QCtKEd2M2hXgYwA,72
@@ -621,9 +626,9 @@ meta_screening/admin/screening_part_one_admin.py,sha256=GWlDLhd-dv0EwhrFHrQp0XBa
621
626
  meta_screening/admin/screening_part_three_admin.py,sha256=wF0GN14OCZUg9fCpUjRoI_SMrmwmoD7CdNRQztcQlMI,2592
622
627
  meta_screening/admin/screening_part_two_admin.py,sha256=O8va3-Ht8avfsy4siJJkcYkFhlF4OveU_eO8s9euu_c,1278
623
628
  meta_screening/admin/subject_refusal_admin.py,sha256=vaFK4pLd3Hey07VaG0RsDWHb0VERARtEMZJZSwMgPkc,2244
624
- meta_screening/admin/subject_screening_admin.py,sha256=cN2TX1ll9ICa-0A8vgkPEPLuT1paVBd3AeF-FKh2-FM,6939
629
+ meta_screening/admin/subject_screening_admin.py,sha256=aLb5kZ0Uv8W43vFWWe1WlvCGctbdr4de2-nwL-Ecjyg,7176
625
630
  meta_screening/eligibility/__init__.py,sha256=728FqTATCEUXQkOa1zvIRFdg2BsLeSkJfAmWtCXuybw,284
626
- meta_screening/eligibility/eligibility.py,sha256=zOjLPvCrA3Ilj0e_-gCwmRMQjjZ-VvzK0B7qTQTLiEE,7732
631
+ meta_screening/eligibility/eligibility.py,sha256=he-5p7hzUY0Apd98TSTUgzHSosgW6ffyrDj9-M_Dhrk,8046
627
632
  meta_screening/eligibility/eligibility_part_one.py,sha256=5SMmVx17lUonfcItUepapJmZnbiF2dZ4WrwGllhoKl0,1769
628
633
  meta_screening/eligibility/eligibility_part_two.py,sha256=xyCPn4wUQZu0uvBSpFSpSMsB_80IPI1PRC2wOQWB1Uk,1808
629
634
  meta_screening/eligibility/eligibility_part_three/__init__.py,sha256=UfdNfJ7SW5wTvYo_0KUxn1KrlgjCwOmY539VXQvU-rE,79
@@ -714,7 +719,7 @@ meta_screening/model_mixins/__init__.py,sha256=ipuWDHuIZGlk5rikaJEYUNKXFiblEHz1d
714
719
  meta_screening/model_mixins/calculated_model_mixin.py,sha256=uzYLEN3yDUa5ipogHiI5EjHjxShhbdG7EP0IHdNQMKM,2761
715
720
  meta_screening/model_mixins/creatinine_fields_model_mixin.py,sha256=pOyP2wuK_kaL16g8QyS1_pXHw7OxiL6KQZtbLmC4bSE,592
716
721
  meta_screening/model_mixins/eligibility_model_mixin.py,sha256=pQL6vB9SqFEIHWbK9q6plOtsD9bvAm6BGMgeO_H158Q,1360
717
- meta_screening/model_mixins/part_one_fields_model_mixin.py,sha256=WNTm2arTS12kh4FvFfu_Rs_Y5qdPoiCVN8Z4kG7Z_zo,3708
722
+ meta_screening/model_mixins/part_one_fields_model_mixin.py,sha256=y6qSNZWwqkOG3Pc1wCBep2JVJUU8zVcW49zzEUGPS4U,3748
718
723
  meta_screening/model_mixins/part_three_fields_model_mixin.py,sha256=VpEqHb2VzPSC3EimdGe-wvM4zOZFYvMD7jmzEfNorBw,4974
719
724
  meta_screening/model_mixins/part_two_fields_model_mixin.py,sha256=k-ZYsxz5XUw_CF2ktXZ2ARRmdebXbvQm1-Yg4SqNXII,6692
720
725
  meta_screening/models/__init__.py,sha256=zCsNEYJTVTIQtz53DBASAQey_4otydYkqVZuWD04LOI,262
@@ -757,11 +762,11 @@ meta_subject/identifiers.py,sha256=pBYvMFXK7N2oNDMJJM2xLCvk0NuzLzzm15VqQ2Cp7Og,3
757
762
  meta_subject/urls.py,sha256=v2fM0R9gvt8MWdZj9cRnYU8xvqecLK5b_8leYVEtYZI,206
758
763
  meta_subject/admin/__init__.py,sha256=yMvCb_HcfG-7ZEee2R_HJJxKTobbpw1UTrneIwtbSuk,1734
759
764
  meta_subject/admin/autocomplete_admin.py,sha256=bVxma7KTHhKHWqLPxbP2GwiGcHeBUyMutTDXZ2RomEY,1158
760
- meta_subject/admin/birth_outcome_admin.py,sha256=_gWrpNgb3tF6zNL9jbEpvHyu4blf4uRSZovpuPtHrRU,3211
765
+ meta_subject/admin/birth_outcome_admin.py,sha256=TFqO3aeAWeMtgrgFrxE6zIBQaZ_b_1YC3msubO4vDc4,3233
761
766
  meta_subject/admin/complications_admin.py,sha256=qxaJVWW86Hg56T8IYfyM9SiP5IcPFNuMfIWBI9fqz90,1017
762
767
  meta_subject/admin/complications_glycemia_admin.py,sha256=Gu-4tliAzwS6MUwSu0PtrtDTqjoHPYbMwvtZb1WrMM0,4069
763
768
  meta_subject/admin/concomitant_medication_admin.py,sha256=cvMOfsDSR-v5HO39AbJOrSuaLZHm6mZxX7tTAAxtnN0,824
764
- meta_subject/admin/delivery_admin.py,sha256=eNNrno-_6Q6H9mxHim4LcH5T1VZz0Wibgg6ufZtx8bI,3395
769
+ meta_subject/admin/delivery_admin.py,sha256=AOWkfZdHxIjliCxdi4xnDVvbg8OaDpPttr6KBUkqhzY,3417
765
770
  meta_subject/admin/egfr_drop_notification_admin.py,sha256=xXGHIMmVnFpNClEMX3i6dZPiJ6hbrXLMrP6eugzDrvE,627
766
771
  meta_subject/admin/eq5d3l_admin.py,sha256=NB_DwtEA4PNnoxXqXdfnMYqUDVjwOaRtNOsIbzZalPg,772
767
772
  meta_subject/admin/fields.py,sha256=-be67ToKIOHOmytxR9qsEAucbDEFWyFySmG_VoIrRn4,277
@@ -803,7 +808,7 @@ meta_subject/admin/health_economics/health_economics_update_admin.py,sha256=MGGm
803
808
  meta_subject/form_validators/__init__.py,sha256=8RXC_zbXN7Q11qxuDP0ZegNSvjsL5UDhO9tao1dbUgc,555
804
809
  meta_subject/form_validators/birth_outcomes_form_validator.py,sha256=vujgXKIW4z8bJ536_9uBhETlbChhUvA3Rj5H8zR3UfI,349
805
810
  meta_subject/form_validators/delivery_form_validator.py,sha256=b1-B0KHjYoUyJ3WZ6KOz9YthxbPH-DJpQBEVmYnkQbM,3193
806
- meta_subject/form_validators/dm_endpoint_form_validator.py,sha256=aQOw7BoV-YxrZZjRWbeH0YhCMVdCc52Hi4-tsu0FHn0,1401
811
+ meta_subject/form_validators/dm_endpoint_form_validator.py,sha256=XK7eZikVwBwSAe0cB8TJPSsoljDIEonKwJ4WoESGr58,1513
807
812
  meta_subject/form_validators/dm_followup_form_validator.py,sha256=2ssfqmC8eKK0pwvi64dr0zOpioaNmJRtBtkj_YzTZY4,7962
808
813
  meta_subject/form_validators/egfr_drop_notification_form_validator.py,sha256=y5MUdRriMo8C2Qj_yzebDWsDkjQsFhcqTGrP8tBuhfA,530
809
814
  meta_subject/form_validators/followup_examination_form_validator.py,sha256=NS3Sa-bwC_HEe-CmezkFrbbjPanLe9p1v5ZOFspqgxg,4241
@@ -1123,7 +1128,7 @@ meta_subject/models/blood_results/blood_results_lipids.py,sha256=r0mJM_Nwqtucwwl
1123
1128
  meta_subject/models/blood_results/blood_results_rft.py,sha256=QFwXCQ0mrfBAWHYGWjlYrNRzxX5a-80351Weu2xJtN4,1646
1124
1129
  meta_subject/models/diabetes/__init__.py,sha256=d67PnZ0__BwYYosLc1f11Y0PzwKFKodt-hdrorzBRWg,72
1125
1130
  meta_subject/models/diabetes/dm_endpoint.py,sha256=n8RC3PkTjs0BI4QP_-HWIAtnBQlxjNcGhjVpK9dWsGI,1858
1126
- meta_subject/models/diabetes/dm_followup.py,sha256=V-w8c90SctPSUFr4TtvZ1z3ybEddG4W_pTYFYDAn5EM,6400
1131
+ meta_subject/models/diabetes/dm_followup.py,sha256=s6pnTnH7pFfNyL17inyAPmtGi2U41KDnMpjcVhmjxD0,6416
1127
1132
  meta_subject/models/health_economics/__init__.py,sha256=rpJXKd-CSqHKbKBjaYfhyg5CYA0DodfL-cl0Mwzl22Q,164
1128
1133
  meta_subject/models/health_economics/health_economics.py,sha256=eYhijXALzTa0WioqxZj6kd6dVt1hlqZJKFiL6QcDZlw,9715
1129
1134
  meta_subject/models/health_economics/health_economics_simple.py,sha256=pHMDPUi9ojPBI6koTtciVGUYV8oFr7VXTmf8JP_eU40,741
@@ -1167,7 +1172,7 @@ meta_visit_schedule/visit_schedules/phase_three/schedule_pregnancy.py,sha256=0V2
1167
1172
  meta_visit_schedule/visit_schedules/phase_three/visit_schedule.py,sha256=ak4qazeKlpIlvpqrK9hDDO0fwWuWyvb4Ec-JU31IJxc,654
1168
1173
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1169
1174
  tests/holidays.csv,sha256=Ywr5pK_caGUJMgRwLzjMeSEUuyEpUWyJE5aJkfbg3bg,539
1170
- tests/test_settings.py,sha256=4RE06P5s2RtXxR1uLogyjvuuLtf5ZPh758MpBg1BRco,7221
1175
+ tests/test_settings.py,sha256=RWeLinRE9Bju7DzBc194kPBHtfeqkEDbwo13FQM_owE,7200
1171
1176
  tests/etc/randomization_list.csv,sha256=ZPCfgGLPYret_mIc-9-2UUHioDbSRXqOmzWL22lhykc,5308
1172
1177
  tests/etc/randomization_list_phase_three.csv,sha256=jgqtXMgDvRdD-RKFpSjQjrO-P8lp8-3TjbJdWe-HSd4,5795
1173
1178
  tests/etc/user-aes-local.key,sha256=qA7Oe6D5yFUSM4ZORzkrzzONedbP28MhtflyW0HAjDY,256
@@ -1178,9 +1183,9 @@ tests/etc/user-rsa-restricted-private.pem,sha256=CUcHW9bznWdmmASN00hCzvxFPAFl4N2
1178
1183
  tests/etc/user-rsa-restricted-public.pem,sha256=mt84djoL-uHw6Wc5SJh0zml6VzXulnf8eQSFg7-fheg,450
1179
1184
  tests/etc/user-salt-local.key,sha256=x5anBw9fvbHurczouT3CjrkWb_xs7Ypm1htIJsgiuiw,256
1180
1185
  tests/etc/user-salt-restricted.key,sha256=pxmpcfBRNB-4C6wTvHXz-9fOfJgKIFOjaAF8ZFfa4q4,256
1181
- meta_edc-0.3.53.dist-info/AUTHORS,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1182
- meta_edc-0.3.53.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
1183
- meta_edc-0.3.53.dist-info/METADATA,sha256=NKTlKBljd0fhCnIG2bFgQL2yqmNxvMqw2KqBrn4ttwo,43529
1184
- meta_edc-0.3.53.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
1185
- meta_edc-0.3.53.dist-info/top_level.txt,sha256=RkzjNXwRq2kg_uZ_1bDwPUntijSXoY2YBqtByDwvvrc,244
1186
- meta_edc-0.3.53.dist-info/RECORD,,
1186
+ meta_edc-1.0.0.dist-info/AUTHORS,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1187
+ meta_edc-1.0.0.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
1188
+ meta_edc-1.0.0.dist-info/METADATA,sha256=XRxGxnPZR6V4r-xp4mPNJzdJSfdwrSXrTHC7goKUUdM,43527
1189
+ meta_edc-1.0.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
1190
+ meta_edc-1.0.0.dist-info/top_level.txt,sha256=RkzjNXwRq2kg_uZ_1bDwPUntijSXoY2YBqtByDwvvrc,244
1191
+ meta_edc-1.0.0.dist-info/RECORD,,
@@ -2,7 +2,9 @@ from typing import Tuple
2
2
 
3
3
  from dateutil.relativedelta import relativedelta
4
4
  from django.contrib import admin
5
+ from django.template.loader import render_to_string
5
6
  from django.utils.html import format_html
7
+ from django.utils.safestring import mark_safe
6
8
  from django_audit_fields.admin import audit_fieldset_tuple
7
9
  from edc_action_item import ActionItemModelAdminMixin, action_fieldset_tuple
8
10
  from edc_constants.constants import OTHER
@@ -27,12 +29,16 @@ class EndOfStudyAdmin(
27
29
  SimpleHistoryAdmin,
28
30
  ):
29
31
  additional_instructions = format_html(
30
- "Note: if the patient is <i>deceased</i>, complete form "
31
- "`{}` before completing this form. "
32
- "<BR>If the patient is </i>lost to follow up</i>, complete form "
33
- "`{}` before completing this form.",
34
- DeathReport._meta.verbose_name,
35
- LossToFollowup._meta.verbose_name,
32
+ "{html}",
33
+ html=mark_safe(
34
+ render_to_string(
35
+ "meta_prn/eos/additional_instructions.html",
36
+ context=dict(
37
+ death_report=DeathReport._meta.verbose_name,
38
+ ltfu=LossToFollowup._meta.verbose_name,
39
+ ),
40
+ )
41
+ ), # nosec #B703 # B308
36
42
  )
37
43
 
38
44
  form = EndOfStudyForm
@@ -1,7 +1,8 @@
1
1
  from typing import Tuple
2
2
 
3
3
  from django.contrib import admin
4
- from django.utils.html import format_html
4
+ from django.template.loader import render_to_string
5
+ from django.utils.safestring import mark_safe
5
6
  from django_audit_fields import audit_fieldset_tuple
6
7
  from edc_action_item import ActionItemModelAdminMixin, action_fieldset_tuple
7
8
  from edc_model_admin.dashboard import ModelAdminSubjectDashboardMixin
@@ -22,11 +23,12 @@ class OffScheduleAdmin(
22
23
  ):
23
24
  form = OffScheduleForm
24
25
 
25
- additional_instructions = format_html(
26
- '<span style="color:orange;font-weight:bold">Note:</span> Detailed '
27
- "information about study termination will be asked for on the "
28
- f"<b>{EndOfStudy._meta.verbose_name}</b> form"
29
- )
26
+ additional_instructions = mark_safe(
27
+ render_to_string(
28
+ "meta_prn/offschedule/additional_instructions.html",
29
+ context=dict(verbose_name=EndOfStudy._meta.verbose_name),
30
+ )
31
+ ) # nosec B703, B308
30
32
 
31
33
  fieldsets = (
32
34
  (None, {"fields": ("subject_identifier", "offschedule_datetime")}),
@@ -1,7 +1,8 @@
1
1
  from typing import Tuple
2
2
 
3
3
  from django.contrib import admin
4
- from django.utils.html import format_html
4
+ from django.template.loader import render_to_string
5
+ from django.utils.safestring import mark_safe
5
6
  from django_audit_fields import audit_fieldset_tuple
6
7
  from edc_action_item import ActionItemModelAdminMixin, action_fieldset_tuple
7
8
  from edc_model_admin.dashboard import ModelAdminSubjectDashboardMixin
@@ -24,11 +25,12 @@ class OffScheduleDmReferralAdmin(
24
25
 
25
26
  form = OffScheduleDmReferralForm
26
27
 
27
- additional_instructions = format_html(
28
- '<span style="color:orange;font-weight:bold">Note:</span> Detailed '
29
- "information about study termination will be asked for on the "
30
- f"<b>{EndOfStudy._meta.verbose_name}</b> form"
31
- )
28
+ additional_instructions = mark_safe(
29
+ render_to_string(
30
+ "meta_prn/offschedule/additional_instructions.html",
31
+ context=dict(verbose_name=EndOfStudy._meta.verbose_name),
32
+ )
33
+ ) # nosec B703, B308
32
34
 
33
35
  fieldsets = (
34
36
  (None, {"fields": ("subject_identifier", "offschedule_datetime")}),
@@ -1,6 +1,8 @@
1
1
  from typing import Tuple
2
2
 
3
3
  from django.contrib import admin
4
+ from django.template.loader import render_to_string
5
+ from django.utils.safestring import mark_safe
4
6
  from django_audit_fields import audit_fieldset_tuple
5
7
  from edc_action_item import ActionItemModelAdminMixin, action_fieldset_tuple
6
8
  from edc_model_admin.dashboard import ModelAdminSubjectDashboardMixin
@@ -8,7 +10,7 @@ from edc_model_admin.history import SimpleHistoryAdmin
8
10
  from edc_sites.admin import SiteModelAdminMixin
9
11
 
10
12
  from ..admin_site import meta_prn_admin
11
- from ..models import OffSchedulePostnatal
13
+ from ..models import EndOfStudy, OffSchedulePostnatal
12
14
 
13
15
 
14
16
  @admin.register(OffSchedulePostnatal, site=meta_prn_admin)
@@ -20,6 +22,13 @@ class OffSchedulePostnatalAdmin(
20
22
  ):
21
23
  instructions = None
22
24
 
25
+ additional_instructions = mark_safe(
26
+ render_to_string(
27
+ "meta_prn/offschedule/additional_instructions.html",
28
+ context=dict(verbose_name=EndOfStudy._meta.verbose_name),
29
+ )
30
+ ) # nosec B703, B308
31
+
23
32
  fieldsets = (
24
33
  (None, {"fields": ("subject_identifier", "offschedule_datetime")}),
25
34
  action_fieldset_tuple,
@@ -1,6 +1,8 @@
1
1
  from typing import Tuple
2
2
 
3
3
  from django.contrib import admin
4
+ from django.template.loader import render_to_string
5
+ from django.utils.safestring import mark_safe
4
6
  from django_audit_fields import audit_fieldset_tuple
5
7
  from edc_action_item import ActionItemModelAdminMixin, action_fieldset_tuple
6
8
  from edc_model_admin.dashboard import ModelAdminSubjectDashboardMixin
@@ -9,7 +11,7 @@ from edc_sites.admin import SiteModelAdminMixin
9
11
 
10
12
  from ..admin_site import meta_prn_admin
11
13
  from ..forms import OffSchedulePregnancyForm
12
- from ..models import OffSchedulePregnancy
14
+ from ..models import EndOfStudy, OffSchedulePregnancy
13
15
 
14
16
 
15
17
  @admin.register(OffSchedulePregnancy, site=meta_prn_admin)
@@ -21,6 +23,13 @@ class OffSchedulePregnancyAdmin(
21
23
  ):
22
24
  instructions = None
23
25
 
26
+ additional_instructions = mark_safe(
27
+ render_to_string(
28
+ "meta_prn/offschedule/additional_instructions.html",
29
+ context=dict(verbose_name=EndOfStudy._meta.verbose_name),
30
+ )
31
+ ) # nosec B703, B308
32
+
24
33
  form = OffSchedulePregnancyForm
25
34
 
26
35
  fieldsets = (
@@ -5,6 +5,7 @@ from django.apps import apps as django_apps
5
5
  from django.core.exceptions import ObjectDoesNotExist
6
6
  from django.urls import reverse
7
7
  from django.utils.html import format_html
8
+ from django.utils.translation import gettext as _
8
9
  from edc_action_item.models import ActionType
9
10
  from edc_adverse_event.form_validator_mixins import (
10
11
  RequiresDeathReportFormValidatorMixin,
@@ -262,10 +263,15 @@ class EndOfStudyFormValidator(
262
263
 
263
264
  self.raise_validation_error(
264
265
  format_html(
265
- "Participant is reported to be on study medication. Complete "
266
- f'<a href="{url}?{query_string}" title="Add new form">'
267
- f"{off_study_medication_model_cls._meta.verbose_name}</A> "
268
- "PRN action and try again."
266
+ _(
267
+ "Participant is reported to be on study medication. Complete "
268
+ '<a href="{url}?{query_string}" title="Add new form">'
269
+ "{verbose_name}</A> "
270
+ "PRN action and try again."
271
+ ),
272
+ url=url,
273
+ query_string=query_string,
274
+ verbose_name=off_study_medication_model_cls._meta.verbose_name,
269
275
  ),
270
276
  INVALID_ERROR,
271
277
  )
@@ -0,0 +1,3 @@
1
+ {% load i18n %}
2
+
3
+ {% translate "Note: If the patient is" %} <i>{% translate "deceased" %}</i>, {% translate "complete form" %} `{{ death_report }}` {% translate "before completing this form" %}. <BR>{% translate "If the patient is <i>lost to follow up</i>, complete form" %} `{{ ltfu }}` {% translate "before completing this form." %}
@@ -0,0 +1,2 @@
1
+ {% load i18n %}
2
+ <span style="color:orange;font-weight:bold">Note: </span> {% trans "Detailed information about study termination will be asked for on the" %} <b>{{ verbose_name }}</b> {% trans "form" %}
@@ -65,7 +65,7 @@ class ImpSubstitutionsAdmin(
65
65
  pass
66
66
  url = reverse(self.get_subject_dashboard_url_name(obj=obj), kwargs=kwargs)
67
67
  context = dict(title=_("Go to subject's dashboard@1000"), url=url, label=label)
68
- return render_to_string("dashboard_button.html", context=context)
68
+ return render_to_string("edc_subject_dashboard/dashboard_button.html", context=context)
69
69
 
70
70
  @admin.display(description="Subject", ordering="subject_identifier")
71
71
  def subject(self, obj):
@@ -69,7 +69,7 @@ class MissingScreeningOgttAdmin(
69
69
  args=(obj.original_id,),
70
70
  )
71
71
  context = dict(title=_("Go to subject screening"), url=url, label=label)
72
- return render_to_string("dashboard_button.html", context=context)
72
+ return render_to_string("edc_subject_dashboard/dashboard_button.html", context=context)
73
73
 
74
74
  @admin.display(description="Screen date", ordering="screening_datetime")
75
75
  def screening_date(self, obj):
@@ -55,4 +55,4 @@ class PatientHistoryMissingBaselineCd4Admin(
55
55
  pass
56
56
  url = reverse(self.get_subject_dashboard_url_name(obj=obj), kwargs=kwargs)
57
57
  context = dict(title=_("Go to subject's dashboard@1000"), url=url, label=label)
58
- return render_to_string("dashboard_button.html", context=context)
58
+ return render_to_string("edc_subject_dashboard/dashboard_button.html", context=context)
@@ -2,7 +2,8 @@ from django.contrib import admin, messages
2
2
  from django.core.exceptions import FieldDoesNotExist
3
3
  from django.db import models
4
4
  from django.db.models import QuerySet
5
- from django.utils.html import format_html
5
+ from django.template.loader import render_to_string
6
+ from django.utils.safestring import mark_safe
6
7
  from edc_model_admin.dashboard import ModelAdminDashboardMixin
7
8
  from edc_model_admin.list_filters import PastDateListFilter
8
9
  from edc_model_admin.mixins import TemplatesModelAdminMixin
@@ -70,24 +71,9 @@ class LastImpRefillAdmin(
70
71
 
71
72
  change_list_title = "List of most recent IMP refills per subject"
72
73
 
73
- change_list_note = format_html(
74
- """
75
- This report fetches the most recent Study Medication report where IMP was
76
- refilled and adds the subject's next visit. Subjects taken "Off Schedule"
77
- are not included in this report. To update ALL rows in this report, tick
78
- at least one row and select 'Update report' action below.
79
- <BR><BR>
80
- This report has additional search features for numeric columns:
81
- <code>days_since</code>, <code>days_until</code>, <code>imp_visit_code</code>
82
- and <code>next_visit_code</code>.
83
- <BR><BR>For example, type <code>days_until>=25</code> in the search below
84
- to show rows for subjects who have an appointment 25 or more days from the
85
- date this report was created. You might also try typing
86
- <code>days_since>365</code> or <code>days_until<0</code>.
87
- <BR><BR>
88
- This also works: <code>next_visit_code>=1060</code>.
89
- """
90
- )
74
+ change_list_note = mark_safe(
75
+ render_to_string("meta_reports/last_imp_refill/changelist_note.html")
76
+ ) # nosec B308, B703
91
77
 
92
78
  actions = [update_report, export_to_csv]
93
79
 
@@ -0,0 +1,13 @@
1
+ {% load i18n %}
2
+ {% trans "This report fetches the most recent Study Medication report where IMP was refilled and adds the subject's next visit. Subjects taken 'Off Schedule' are not included in this report. To update ALL rows in this report, tick at least one row and select 'Update report' action below." %}
3
+ <BR><BR>
4
+ {% trans "This report has additional search features for numeric columns" %}:
5
+ <code>days_since</code>, <code>days_until</code>, <code>imp_visit_code</code> {% trans "and" %} <code>next_visit_code</code>.
6
+ <BR><BR>
7
+ {% trans "For example, type" %}
8
+ <code>days_until>=25</code>
9
+ {% trans "in the search below to show rows for subjects who have an appointment 25 or more days from the date this report was created. You might also try typing" %}
10
+ <code>days_since>365</code> or <code>days_until<0</code>.
11
+ <BR><BR>
12
+ {% trans "This also works" %}:
13
+ <code>next_visit_code>=1060</code>.
@@ -3,6 +3,7 @@ from django.template.loader import render_to_string
3
3
  from django.urls.base import reverse
4
4
  from django.urls.exceptions import NoReverseMatch
5
5
  from django.utils.html import format_html
6
+ from django.utils.safestring import mark_safe
6
7
  from django.utils.translation import gettext_lazy as _
7
8
  from django_audit_fields.admin import audit_fieldset_tuple
8
9
  from edc_constants.constants import YES
@@ -160,7 +161,10 @@ class SubjectScreeningAdmin(ModelAdminSubjectDashboardMixin, SimpleHistoryAdmin)
160
161
  ]
161
162
  if obj.repeat_glucose_opinion == YES:
162
163
  data.append(f"Contact #: {obj.contact_number or '--'}")
163
- return format_html("<BR>".join(data))
164
+ return format_html(
165
+ "{}",
166
+ mark_safe("<BR>".join(data)), # nosec B703, B308
167
+ )
164
168
 
165
169
  def reasons(self, obj=None):
166
170
  if not obj.reasons_ineligible:
@@ -177,8 +181,14 @@ class SubjectScreeningAdmin(ModelAdminSubjectDashboardMixin, SimpleHistoryAdmin)
177
181
  url=f"{screening_listboard_url}?q={obj.screening_identifier}",
178
182
  label="Screening",
179
183
  )
180
- button = render_to_string("dashboard_button.html", context=context)
181
- return format_html(button + "<BR>" + eligibility.eligibility_status(add_urls=True))
184
+ button = render_to_string(
185
+ "edc_subject_dashboard/dashboard_button.html", context=context
186
+ )
187
+ return format_html(
188
+ "{button}<BR>{status}",
189
+ button=button,
190
+ status=eligibility.eligibility_status(add_urls=True),
191
+ )
182
192
 
183
193
  def dashboard(self, obj=None, label=None):
184
194
  try: