renalware-core 2.0.137 → 2.0.138

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 (173) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/renalware/icons/home.svg +1 -0
  3. data/app/assets/images/renalware/icons/settings.svg +1 -0
  4. data/app/assets/javascripts/renalware/components/hd.js +0 -109
  5. data/app/assets/javascripts/renalware/components/toggler.js +0 -29
  6. data/app/assets/javascripts/renalware/core.js.erb +5 -1
  7. data/app/assets/javascripts/renalware/rollup_compiled.js +3888 -0
  8. data/app/assets/stylesheets/renalware/modules/_hd.scss +40 -17
  9. data/app/assets/stylesheets/renalware/partials/_dashboards.scss +1 -1
  10. data/app/assets/stylesheets/renalware/partials/_modal_window.scss +1 -0
  11. data/app/assets/stylesheets/renalware/partials/_navigation.scss +45 -2
  12. data/app/assets/stylesheets/renalware/partials/_pagination.scss +21 -0
  13. data/app/assets/stylesheets/renalware/partials/_tables.scss +9 -0
  14. data/app/assets/stylesheets/renalware/protocol_pdf.scss +45 -6
  15. data/app/components/renalware/application_component.rb +1 -1
  16. data/app/components/renalware/hd/administer_prescription_dropdown_component.html.slim +22 -0
  17. data/app/components/renalware/hd/administer_prescription_dropdown_component.rb +22 -0
  18. data/app/components/renalware/hd/prescription_last_administration_component.html.slim +6 -0
  19. data/app/components/renalware/hd/prescription_last_administration_component.rb +19 -0
  20. data/app/components/renalware/letters/letters_in_progress_component.html.slim +1 -1
  21. data/app/components/renalware/system/admin_menu_component.html.slim +25 -0
  22. data/app/components/renalware/system/admin_menu_component.rb +56 -0
  23. data/app/components/renalware/system/users_awaiting_approval_component.html.slim +6 -0
  24. data/app/components/renalware/system/users_awaiting_approval_component.rb +25 -0
  25. data/app/controllers/renalware/admin/dashboards_controller.rb +9 -0
  26. data/app/controllers/renalware/hd/base_controller.rb +4 -0
  27. data/app/controllers/renalware/hd/prescription_administrations_controller.rb +87 -0
  28. data/app/controllers/renalware/hd/sessions_controller.rb +6 -44
  29. data/app/controllers/renalware/hd/transmission_logs_controller.rb +7 -6
  30. data/app/controllers/renalware/hd/witnesses_controller.rb +62 -0
  31. data/app/helpers/renalware/application_helper.rb +1 -0
  32. data/app/helpers/renalware/layout_helper.rb +12 -0
  33. data/app/helpers/renalware/toggle_helper.rb +13 -4
  34. data/app/javascript/renalware/controllers/another_test_controller.js +8 -0
  35. data/app/javascript/renalware/controllers/hd/prescription_administration_controller.js +22 -0
  36. data/app/javascript/renalware/controllers/test_controller.js +8 -0
  37. data/app/javascript/renalware/controllers/toggle_controller.js +36 -0
  38. data/app/javascript/renalware/index.js +25 -0
  39. data/app/models/renalware/hd/patient.rb +1 -0
  40. data/app/models/renalware/hd/prescription_administration.rb +57 -33
  41. data/app/models/renalware/hd/prescription_last_administration_query.rb +29 -0
  42. data/app/models/renalware/hd/sessions/save_session.rb +1 -25
  43. data/app/models/renalware/hd/witness_form.rb +31 -0
  44. data/app/policies/renalware/hd/prescription_administration_policy.rb +8 -0
  45. data/app/presenters/renalware/admin/users/{summary_part.rb → summary_part.rb.dead} +0 -0
  46. data/app/presenters/renalware/hd/dashboard_presenter.rb +16 -7
  47. data/app/views/renalware/accesses/plans/_details.html.slim +1 -1
  48. data/app/views/renalware/admin/cache/show.html.slim +1 -1
  49. data/app/views/renalware/admin/dashboards/show.html.slim +4 -0
  50. data/app/views/renalware/admin/users/{_summary_part.html.slim → _summary_part.html.slim.dead} +1 -1
  51. data/app/views/renalware/admin/users/edit.html.slim +1 -1
  52. data/app/views/renalware/admin/users/index.html.slim +1 -1
  53. data/app/views/renalware/admissions/_summary_part.html.slim +5 -4
  54. data/app/views/renalware/admissions/consults/_summary_part.html.slim +7 -7
  55. data/app/views/renalware/dashboard/dashboards/_content.html.slim +5 -5
  56. data/app/views/renalware/drugs/drugs/edit.html.slim +2 -2
  57. data/app/views/renalware/drugs/drugs/index.html.slim +1 -1
  58. data/app/views/renalware/drugs/drugs/new.html.slim +1 -1
  59. data/app/views/renalware/events/types/edit.html.slim +1 -1
  60. data/app/views/renalware/events/types/index.html.slim +1 -1
  61. data/app/views/renalware/events/types/new.html.slim +1 -1
  62. data/app/views/renalware/hd/cannulation_types/edit.html.slim +1 -1
  63. data/app/views/renalware/hd/cannulation_types/index.html.slim +5 -5
  64. data/app/views/renalware/hd/cannulation_types/new.html.slim +1 -1
  65. data/app/views/renalware/hd/dashboards/_page_actions.html.slim +4 -1
  66. data/app/views/renalware/hd/dashboards/show.html.slim +1 -0
  67. data/app/views/renalware/hd/dialysates/edit.html.slim +1 -1
  68. data/app/views/renalware/hd/dialysates/index.html.slim +1 -1
  69. data/app/views/renalware/hd/dialysates/new.html.slim +1 -1
  70. data/app/views/renalware/hd/dialysers/edit.html.slim +1 -1
  71. data/app/views/renalware/hd/dialysers/index.html.slim +4 -5
  72. data/app/views/renalware/hd/dialysers/new.html.slim +1 -1
  73. data/app/views/renalware/hd/prescription_administrations/_form.html.slim +96 -0
  74. data/app/views/renalware/hd/prescription_administrations/_row.html.slim +25 -0
  75. data/app/views/renalware/hd/prescription_administrations/_table.html.slim +8 -0
  76. data/app/views/renalware/hd/prescription_administrations/_thead.html.slim +11 -0
  77. data/app/views/renalware/hd/prescription_administrations/create.js.erb +4 -0
  78. data/app/views/renalware/hd/prescription_administrations/edit.html.slim +5 -0
  79. data/app/views/renalware/hd/prescription_administrations/edit.js.erb +11 -0
  80. data/app/views/renalware/hd/prescription_administrations/index.html.slim +3 -0
  81. data/app/views/renalware/hd/prescription_administrations/new.html.slim +3 -0
  82. data/app/views/renalware/hd/prescription_administrations/new.js.erb +5 -0
  83. data/app/views/renalware/hd/protocols/_allergies.html.slim +3 -0
  84. data/app/views/renalware/hd/protocols/_latest_dry_weight.html.slim +3 -2
  85. data/app/views/renalware/hd/protocols/_prescriptions.html.slim +15 -7
  86. data/app/views/renalware/hd/protocols/_profile.html.slim +12 -12
  87. data/app/views/renalware/hd/protocols/_protocol.pdf.slim +2 -3
  88. data/app/views/renalware/hd/sessions/_form.html.slim +2 -6
  89. data/app/views/renalware/hd/sessions/_index_tabs.html.slim +11 -0
  90. data/app/views/renalware/hd/sessions/_list.html.slim +21 -1
  91. data/app/views/renalware/hd/sessions/_table.html.slim +1 -18
  92. data/app/views/renalware/hd/sessions/closed/_form.html.slim +1 -2
  93. data/app/views/renalware/hd/sessions/edit.html.slim +1 -2
  94. data/app/views/renalware/hd/sessions/new.html.slim +1 -2
  95. data/app/views/renalware/hd/sessions/open/_form.html.slim +1 -2
  96. data/app/views/renalware/hd/transmission_logs/index.html.slim +2 -2
  97. data/app/views/renalware/hd/witnesses/_form.html.slim +49 -0
  98. data/app/views/renalware/hd/witnesses/edit.html.slim +1 -0
  99. data/app/views/renalware/hd/witnesses/edit.js.erb +3 -0
  100. data/app/views/renalware/hd/witnesses/update.js.erb +4 -0
  101. data/app/views/renalware/layouts/_admin.html.slim +28 -0
  102. data/app/views/renalware/layouts/_patient.html.slim +1 -1
  103. data/app/views/renalware/letters/batches/index.html.slim +1 -1
  104. data/app/views/renalware/letters/letters/_letter.html.slim +1 -1
  105. data/app/views/renalware/modalities/descriptions/edit.html.slim +1 -1
  106. data/app/views/renalware/modalities/descriptions/index.html.slim +1 -1
  107. data/app/views/renalware/modalities/descriptions/new.html.slim +1 -1
  108. data/app/views/renalware/navigation/_admin.html.slim +1 -1
  109. data/app/views/renalware/navigation/_menu.html.slim +7 -6
  110. data/app/views/renalware/navigation/_user.html.slim +3 -4
  111. data/app/views/renalware/pathology/observation_requests/_filters.html.slim +1 -1
  112. data/app/views/renalware/pathology/requests/requests/index.html.slim +1 -1
  113. data/app/views/renalware/pathology/requests/rules/index.html.slim +1 -1
  114. data/app/views/renalware/patients/_layout.html.slim +1 -1
  115. data/app/views/renalware/patients/_summary_part.html.slim +1 -1
  116. data/app/views/renalware/patients/primary_care_physicians/edit.html.slim +1 -1
  117. data/app/views/renalware/patients/primary_care_physicians/index.html.slim +3 -5
  118. data/app/views/renalware/patients/primary_care_physicians/new.html.slim +1 -1
  119. data/app/views/renalware/pd/bag_types/edit.html.slim +1 -1
  120. data/app/views/renalware/pd/bag_types/index.html.slim +1 -1
  121. data/app/views/renalware/pd/bag_types/new.html.slim +1 -1
  122. data/app/views/renalware/problems/problems/_summary_part.html.slim +1 -1
  123. data/app/views/renalware/research/study_participants/index.html.slim +2 -3
  124. data/app/views/renalware/surveys/_pos_s_summary_part.html.slim +2 -1
  125. data/app/views/renalware/system/email_templates/index.html.slim +5 -1
  126. data/app/views/renalware/system/messages/edit.html.slim +1 -1
  127. data/app/views/renalware/system/messages/index.html.slim +1 -1
  128. data/app/views/renalware/system/messages/new.html.slim +1 -1
  129. data/app/views/renalware/system/user_feedback/edit.html.slim +1 -1
  130. data/app/views/renalware/system/user_feedback/index.html.slim +1 -1
  131. data/app/views/renalware/transplants/mdm/_bottom.html.slim +1 -1
  132. data/config/initializers/pagy.rb +9 -0
  133. data/config/locales/renalware/hd/dashboards.en.yml +1 -0
  134. data/config/locales/renalware/hd/session.en.yml +2 -1
  135. data/config/routes/admin.rb +1 -0
  136. data/config/routes/hd.rb +9 -0
  137. data/db/migrate/20190627141751_add_tokens_to_hd_prescription_administrations.rb +0 -2
  138. data/db/migrate/20200204153231_alter_hd_prescription_administrations.rb +18 -0
  139. data/db/seeds/default/accesses/access_pd_catheter_insertion_techniques.rb +0 -1
  140. data/db/seeds/default/accesses/access_plan_types.rb +0 -1
  141. data/db/seeds/default/accesses/access_sites.rb +0 -1
  142. data/db/seeds/default/clinics/clinics.rb +0 -1
  143. data/db/seeds/default/events/event_types.rb +0 -1
  144. data/db/seeds/default/hd/cannulation_types.rb +0 -1
  145. data/db/seeds/default/hd/dialysers.rb +0 -1
  146. data/db/seeds/default/modalities/reasons.rb +19 -19
  147. data/db/seeds/default/pathology/measurement_units.rb +0 -1
  148. data/db/seeds/default/patients/patients_ethnicities.rb +0 -1
  149. data/db/seeds/default/patients/patients_languages.rb +1 -0
  150. data/db/seeds/default/patients/patients_religions.rb +0 -1
  151. data/db/seeds/default/pd/bag_types.rb +0 -1
  152. data/db/seeds/default/pd/organisms.rb +0 -1
  153. data/db/seeds/default/pd/systems.rb +0 -1
  154. data/db/seeds/default/pd/training_sites.rb +0 -1
  155. data/db/seeds/default/pd/training_types.rb +0 -1
  156. data/db/seeds/default/practices/practices.rb +2 -2
  157. data/db/seeds/default/practices/primary_care_physicians.rb +1 -2
  158. data/db/seeds/default/renal/prd_descriptions.rb +1 -0
  159. data/db/seeds/default/system/roles.rb +1 -1
  160. data/lib/renalware/engine.rb +1 -0
  161. data/lib/renalware/version.rb +1 -1
  162. data/spec/factories/hd/prescription_administrations.rb +17 -0
  163. data/spec/support/factory_bot.rb +2 -0
  164. data/spec/support/pages/hd/prescription_administration_dialog.rb +132 -0
  165. metadata +62 -12
  166. data/app/assets/javascripts/renalware/components/bla.es6 +0 -1
  167. data/app/controllers/renalware/hd/prescription_administration_authorisations_controller.rb +0 -27
  168. data/app/javascript/controllers/clipboard_controller.js.dead +0 -16
  169. data/app/views/renalware/hd/sessions/_administered_drugs_row.html.slim +0 -27
  170. data/app/views/renalware/hd/sessions/_administered_drugs_thead.html.slim +0 -11
  171. data/app/views/renalware/hd/sessions/_prescription_administrations.html.slim +0 -20
  172. data/app/views/renalware/hd/sessions/closed/_administered_drugs_row.html.slim +0 -3
  173. data/app/views/renalware/hd/sessions/form/_drugs_to_be_administered.html.slim +0 -84
@@ -32,7 +32,7 @@
32
32
  }
33
33
  &.session_import_error {
34
34
  td.result {
35
- background-color:lighten($nhs-pink, 50);
35
+ background-color: lighten($nhs-pink, 50);
36
36
  }
37
37
  }
38
38
  }
@@ -397,10 +397,6 @@ use flexbox to layout items inside each prescription.
397
397
  */
398
398
  .hd-drug-administration {
399
399
  display: flex;
400
- border: solid 1px $light-grey;
401
- margin: .7rem 0;
402
- padding: .3rem .6rem;
403
- border-right-width: 15px;
404
400
  flex-wrap: wrap;
405
401
 
406
402
  .summary {
@@ -408,7 +404,7 @@ use flexbox to layout items inside each prescription.
408
404
  display: flex; /* also a flex for items within it */
409
405
 
410
406
  .hd-drug {
411
- flex: 1;
407
+ flex: 1 1 auto;
412
408
  padding-bottom: .5rem;
413
409
  color: $mid-grey;
414
410
 
@@ -439,21 +435,40 @@ use flexbox to layout items inside each prescription.
439
435
  }
440
436
  }
441
437
  }
438
+ }
439
+
440
+ /*
441
+ This is the checkox to indicate the drug was administered.
442
+ We fix its width as we never want it to shrink.
443
+ */
444
+ .hd-drug-administered {
445
+ width: 98%;
446
+ text-align: right;
447
+ display: flex;
448
+ margin-top: .3rem;
449
+
450
+ label, .radio_buttons {
451
+ display: flex;
452
+ flex: 0 1 9rem;
453
+ }
442
454
 
443
- /*
444
- This is the checkox to indicate the drug was administered.
445
- We fix its width as we never want it to shrink.
446
- */
447
- .hd-drug-administered {
448
- flex-basis: 220px;
449
- text-align: right;
455
+ .radio {
456
+ display: inline-block !important;
450
457
 
451
- .radio {
452
- display: inline-block !important;
458
+ label {
459
+ width: 5rem;
453
460
  }
454
461
  }
455
462
  }
456
463
 
464
+ .recorded-on {
465
+ width: 98%;
466
+
467
+ .datepicker {
468
+ width: 140px !important;
469
+ }
470
+ }
471
+
457
472
  .reason-why-not-administered {
458
473
  display: none;
459
474
  }
@@ -488,7 +503,7 @@ use flexbox to layout items inside each prescription.
488
503
  }
489
504
 
490
505
  .notes {
491
- flex: 1;
506
+ flex: 1 1 auto;
492
507
  margin-right: 1rem;
493
508
 
494
509
  textarea {
@@ -595,11 +610,19 @@ use flexbox to layout items inside each prescription.
595
610
  }
596
611
  }
597
612
 
598
- table.hd-session-drugs {
613
+ table#hd-session-drugs {
599
614
  thead {
600
615
  border-bottom: solid 1px #222;
601
616
  }
602
617
 
618
+ .unauthorised tr {
619
+ background-color: lighten($nhs-pink, 55);
620
+
621
+ td {
622
+ border-color: lighten($nhs-pink, 55);;
623
+ }
624
+ }
625
+
603
626
  tr {
604
627
  span.given {
605
628
  @include badge;
@@ -8,7 +8,7 @@
8
8
  article {
9
9
  background-color: #fff;
10
10
  padding: 0.3rem .5rem .5rem;
11
- border-top-width: 2px;
11
+ border-top-width: 1px;
12
12
  border-top-color: $nhs-bright-blue;
13
13
  }
14
14
  }
@@ -39,6 +39,7 @@
39
39
  .modal__body {
40
40
  // Ensure the content can be scrolled if drops of the bottom of the page
41
41
  overflow-y: auto;
42
+ overflow-x: hidden;
42
43
  max-height: calc(100vh - 200px);
43
44
 
44
45
  // remove excessive l and r padding in modals
@@ -66,12 +66,14 @@ dd.patient-name {
66
66
  left: -$patient-side-nav-width;
67
67
  }
68
68
 
69
- .patient-side-nav {
69
+ .patient-side-nav,
70
+ .admin-side-nav {
70
71
  @media print {
71
72
  display: none;
72
73
  }
73
74
 
74
75
  background-color: $patient-menu-background-colour;
76
+
75
77
  min-width: $patient-side-nav-width;
76
78
  padding: 0.3rem 0 2rem 0.4rem;
77
79
  width: $patient-side-nav-width;
@@ -131,6 +133,23 @@ dd.patient-name {
131
133
  }
132
134
  }
133
135
 
136
+ .admin-side-nav {
137
+ background-color: $muted-dark-grey;
138
+ color: #fff;
139
+
140
+ .side-nav--admin {
141
+ li a,
142
+ li.heading {
143
+ color: #fff !important;
144
+ text-decoration: none !important;
145
+ }
146
+
147
+ li.active a {
148
+ color: $dark-grey !important;
149
+ }
150
+ }
151
+ }
152
+
134
153
  .patient-side-nav li:last-child {
135
154
  margin-bottom: 0;
136
155
  }
@@ -189,7 +208,7 @@ dd.patient-name {
189
208
  }
190
209
  }
191
210
 
192
- .top-bar-section .dropdown li.info {
211
+ .top-bar-section .dropdown li.info {
193
212
  color: rgba(255, 255, 255, 0.5);
194
213
  font-size: 0.8em;
195
214
  line-height: 45px;
@@ -204,6 +223,30 @@ dd.patient-name {
204
223
  }
205
224
  }
206
225
 
226
+ #top-menu-bar {
227
+ li.menu-item a i{
228
+ font-weight: 600;
229
+ pointer-events: none;
230
+ text-align: center;
231
+ width: 1.2rem;
232
+ vertical-align: text-bottom;
233
+ margin-right: .3rem;
234
+ display: inline-block;
235
+ font-style: normal;
236
+ font-variant: normal;
237
+ text-rendering: auto;
238
+ line-height: 1;
239
+ }
240
+
241
+ li.menu-item--home a i:before {
242
+ content: asset-data-url("renalware/icons/home.svg");
243
+ }
244
+
245
+ li.menu-item--admin a i:before {
246
+ content: asset-data-url("renalware/icons/settings.svg");
247
+ }
248
+ }
249
+
207
250
  .sub-nav {
208
251
  background-color: transparent;
209
252
  float: left;
@@ -0,0 +1,21 @@
1
+ .pagy-foundation-nav {
2
+ padding-top: .5rem;
3
+
4
+ .pagination {
5
+ li {
6
+ &.current {
7
+ background:#008CBA;
8
+ color:#fff;
9
+ font-weight: bold;
10
+ border-radius: 3px;
11
+ transition: background-color 300ms ease-out;
12
+ padding: 0.0714285714rem 0.7142857143rem 0.0714285714rem;
13
+
14
+ a {
15
+ color: #fff;
16
+ background: none;
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }
@@ -221,6 +221,10 @@ table {
221
221
  white-space: nowrap;
222
222
  }
223
223
  }
224
+
225
+ &.no-wrap {
226
+ white-space: nowrap;
227
+ }
224
228
  }
225
229
 
226
230
  tr td {
@@ -341,6 +345,11 @@ table {
341
345
  width: 20rem;
342
346
  }
343
347
 
348
+ &.col-width-xlarge {
349
+ min-width: 25rem;
350
+ width: 30rem;
351
+ }
352
+
344
353
  &.column-6-width {
345
354
  width: 6%;
346
355
  }
@@ -24,7 +24,6 @@ h1 {
24
24
  }
25
25
 
26
26
  .protocol {
27
-
28
27
  .patient-header {
29
28
  clear: right;
30
29
  float: left;
@@ -74,14 +73,13 @@ h1 {
74
73
  th {
75
74
  font-size: 1.1rem;
76
75
  padding: 0;
77
- padding-bottom: 0.4rem ;
78
76
 
79
77
  &.protocol-hd-profile {
80
78
  width: 42%;
81
79
  }
82
80
 
83
81
  &.protocol-allergies {
84
- width: 18%;
82
+ width: 15%;
85
83
 
86
84
  .allergy_status_updated_at {
87
85
  font-weight: normal;
@@ -90,7 +88,8 @@ h1 {
90
88
  }
91
89
 
92
90
  &.protocol-prescriptions {
93
- width: 25%;
91
+ width: 30%;
92
+ padding: 0;
94
93
  }
95
94
 
96
95
  &.protocol-recent-pathology {
@@ -103,7 +102,7 @@ h1 {
103
102
 
104
103
  td {
105
104
  margin: 0;
106
- padding: 0 0.1rem;
105
+ // padding: 0 0.1rem;
107
106
  vertical-align: top;
108
107
  }
109
108
  }
@@ -218,10 +217,14 @@ h1 {
218
217
 
219
218
  table.recent-pathology {
220
219
  text-align: left;
220
+ border: none;
221
+ border-spacing: 0;
222
+ border-collapse: collapse;
221
223
 
222
224
  td,
223
225
  th {
224
- padding-right: 0.2rem;
226
+ padding: 0 0.2rem !important;
227
+ border-bottom: solid 1px #ddd;
225
228
  }
226
229
 
227
230
  .result {
@@ -297,3 +300,39 @@ h1 {
297
300
  .nowrap {
298
301
  white-space: nowrap;
299
302
  }
303
+
304
+ table.prescriptions {
305
+ border: none;
306
+ border-spacing: 0;
307
+ border-collapse: collapse;
308
+
309
+ thead tr th {
310
+ padding: 0 !important;
311
+ }
312
+ th, td {
313
+ padding: 0 .5rem 0 0;
314
+
315
+ &.col-width-date {
316
+ min-width: 7rem;
317
+ width: 7rem;
318
+ }
319
+ }
320
+ td {
321
+ border-top: solid 1px #ddd;
322
+ }
323
+ }
324
+
325
+ table.latest_dry_weight {
326
+ border: none;
327
+ border-spacing: 0;
328
+ border-collapse: collapse;
329
+ margin-top: .5rem;
330
+
331
+ thead tr th {
332
+ padding: 0 !important;
333
+ }
334
+
335
+ th, td {
336
+ padding: 0 .5rem 0 0;
337
+ }
338
+ }
@@ -14,7 +14,7 @@ module Renalware
14
14
  end
15
15
 
16
16
  # Added this helper as I can't seem to get the Pundit #policy helper to be included
17
- # in the context when renderingt a component template.
17
+ # in the context when rendering a component template.
18
18
  def policy(record)
19
19
  current_user && Pundit.policy(current_user, record)
20
20
  end
@@ -0,0 +1,22 @@
1
+ a.button.dropdown.with-icon(href="#"
2
+ data-dropdown="hd-prescription-options"
3
+ aria-controls="hd-prescription-options"
4
+ aria-expanded="false")
5
+ i.fas.fa-capsules
6
+ | Record HD Drugs
7
+
8
+ ul.f-dropdown#hd-prescription-options(data-dropdown-content aria-hidden="true")
9
+
10
+ - if prescriptions_to_give_on_hd.empty?
11
+ = dropdown_btn_item enabled: false,
12
+ title: "Patient has no drugs to be given on HD",
13
+ url: nil
14
+ - else
15
+ - prescriptions_to_give_on_hd.each do |prescription|
16
+ = dropdown_btn_item title: prescription.drug_name,
17
+ url: renalware.new_hd_prescription_administration_path(prescription),
18
+ data: { "reveal-id" => "hd-prescription-administration-modal",
19
+ "reveal-ajax" => "true" }
20
+
21
+ / The modal dialog container for HD Prescription Administration
22
+ #hd-prescription-administration-modal.reveal-modal.medium(data-reveal)
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Renalware
4
+ module HD
5
+ class AdministerPrescriptionDropdownComponent < ApplicationComponent
6
+ include DropdownButtonHelper
7
+ include PresenterHelper
8
+ attr_reader :patient
9
+
10
+ def initialize(patient:)
11
+ @patient = patient
12
+ end
13
+
14
+ def prescriptions_to_give_on_hd
15
+ @prescriptions_to_give_on_hd ||= begin
16
+ prescriptions = patient.prescriptions.includes([:drug]).to_be_administered_on_hd
17
+ present(prescriptions, Medications::PrescriptionPresenter)
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,6 @@
1
+ - return unless last_administration
2
+ .panel
3
+ b= "Last given on #{l(last_administration.recorded_on, format: :long)} by #{last_administration.administered_by}"
4
+ - if last_administration.notes.present?
5
+ br
6
+ span= "Notes: #{last_administration.notes}"
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Renalware
4
+ module HD
5
+ class PrescriptionLastAdministrationComponent < ApplicationComponent
6
+ attr_reader :prescription
7
+ validates :prescription, presence: true
8
+
9
+ def initialize(prescription:)
10
+ @prescription = prescription
11
+ end
12
+
13
+ def last_administration
14
+ @last_administration ||=
15
+ PrescriptionLastAdministrationQuery.new(prescription: prescription).call
16
+ end
17
+ end
18
+ end
19
+ end
@@ -5,4 +5,4 @@ article.letters
5
5
  #letters-in-progress
6
6
  = render "renalware/dashboard/letters/table", letters: letters_in_progress
7
7
  - else
8
- p.empty-section Letters in Progress
8
+ p.empty-section No letters in progress
@@ -0,0 +1,25 @@
1
+
2
+ ul.side-nav.side-nav--admin
3
+ li.heading Renalware Admin
4
+ = admin_menu_item "Dashboard", renalware.admin_dashboard_path, %r{admin/dashboard}
5
+ = admin_menu_item "Users", renalware.admin_users_path, %r{renalware/admin/users}
6
+ = admin_menu_item "Request Form Print History", renalware.pathology_requests_requests_path, %r{pathology/requests/requests}
7
+ = admin_menu_item "Pathology Request Config", renalware.pathology_requests_rules_path, %r{pathology/requests/rules}
8
+ = admin_menu_item "HD Transmission Logs", renalware.hd_transmission_logs_path, %r{hd/transmission_logs}
9
+
10
+ - unless Rails.env.production?
11
+ = super_admin_menu_item "Email Templates", renalware.system_email_templates_path, %r{system/email_templates}
12
+ = super_admin_menu_item "Event Types", renalware.events_types_path, %r{events/types}
13
+ = super_admin_menu_item "Drugs", renalware.drugs_drugs_path, %r{drugs/drugs}
14
+ = super_admin_menu_item "Modalities", renalware.modalities_descriptions_path, %r{modalities/descriptions}
15
+ = super_admin_menu_item "PD Bags", renalware.pd_bag_types_path, %r{pd/bag_types}
16
+ = super_admin_menu_item "Primary Care Physicians", renalware.patients_primary_care_physicians_path, %r{patients/primary_care_physicians}
17
+ = super_admin_menu_item "Cache", renalware.admin_cache_path, %r{admin/cache}
18
+ /li= link_to "File Imports", renalware.admin_feeds_files_path
19
+ = super_admin_menu_item "User Feedback", renalware.system_user_feedback_index_path, %r{system/user_feedback}
20
+ = super_admin_menu_item "System Messages", renalware.system_messages_path, %r{system/messages}
21
+ = super_admin_menu_item "HD Dialysates", renalware.hd_dialysates_path, %r{hd/dialysates}
22
+ = super_admin_menu_item "HD Dialysers", renalware.hd_dialysers_path, %r{hd/dialysers}
23
+ = super_admin_menu_item "HD Cannulation Types", renalware.hd_cannulation_types_path, %r{hd/cannulation_types}
24
+ = super_admin_menu_item "Print batches", renalware.letters_batches_path, %r{letters/batches}
25
+ = developer_menu_item "HL7 Test", renalware.new_feeds_hl7_test_message_path