diff --git a/app/assets/sass/components/_calendar-table.scss b/app/assets/sass/components/_calendar-table.scss index 02ee414..0e1be73 100644 --- a/app/assets/sass/components/_calendar-table.scss +++ b/app/assets/sass/components/_calendar-table.scss @@ -13,6 +13,8 @@ width: calc(100% - 4rem); margin: 0 auto 2rem auto; } + + .calendar-table { width: 100%; table-layout: fixed; @@ -21,13 +23,13 @@ } .calendar-table th, .calendar-table td { + @include nhsuk-font(16); width: 14.2857%; padding: 0.75rem; vertical-align: top; border-width: 1px; } .calendar-table td { - @include nhsuk-font(16); background-color: #fff; } .calendar-table td.calendar-table-capacity { @@ -48,10 +50,10 @@ .calendar-table td.calendar-table-no-data { background-color: transparent; } -.calendar-table-date { - font-weight: bold; - display: block; -} +// .calendar-table-date { +// font-weight: bold; +// display: block; +// } .calendar-table--apply-session { width: min(100%, 42rem); @@ -87,4 +89,88 @@ .calendar-table--apply-session td.calendar-table-cell--selected a, .calendar-table--apply-session td.calendar-table-cell--selected .calendar-table-date { color: #fff; +} + + + +/// +/// + +.calendar-table { + + .--schedule-start { + position: relative; + border-left: 4px solid nhsuk-colour("grey-2"); + padding-bottom: 2em; + + // Chevron pointing into the cell from the left border + &::before { + content: ""; + position: absolute; + top: 50%; + left: -1px; + width: 8px; + height: 16px; + background-color: nhsuk-colour("grey-2"); + clip-path: polygon(0 0, 100% 50%, 0 100%); + transform: translateY(-50%); + } + } + .--schedule-end { + position: relative; + border-right: 4px solid nhsuk-colour("grey-2"); + + // Chevron pointing into the cell from the right border + &::before { + content: ""; + position: absolute; + top: 50%; + right: -1px; + width: 8px; + height: 16px; + background-color: nhsuk-colour("grey-2"); + clip-path: polygon(100% 0, 0 50%, 100% 100%); + transform: translateY(-50%); + } + } + + // .calendar-table-schedule-name { + // position: absolute; + // bottom: 0; + // left: 0; + // height: 1.75em; + // width: 100%; + // box-sizing: border-box; + // background-color: nhsuk-colour("grey-2"); + // color: #fff; + // } +} + +.calendar-table.--sketch { + td:not(.calendar-table-no-data) { + height: 124px; + background-color: nhsuk-tint(nhsuk-colour("grey-5"), 50%); + &.--session-assigned { + background-color: nhsuk-colour("white"); + } + } + .calendar-table-date { + display: block; + } + + td.calendar-table-capacity { + background-color: #fff; + background-image: + linear-gradient(to top, rgba(255,255,255,0.85), rgba(255,255,255,0.85)), + var(--generic-chart-hatch); + background-size: + 100% 100%, + 100% calc(var(--percentage, 0%)); + background-position: + left top, + left bottom; + background-repeat: + no-repeat, + no-repeat; + } } \ No newline at end of file diff --git a/app/assets/sass/components/_progress-bar.scss b/app/assets/sass/components/_progress-bar.scss index 82dcce3..e3ac3c9 100644 --- a/app/assets/sass/components/_progress-bar.scss +++ b/app/assets/sass/components/_progress-bar.scss @@ -51,6 +51,9 @@ &.--thin { min-height: 19px; } + &.--compact { + min-width: 0; + } } .app-progress-bar::-webkit-progress-bar { background: #fff; diff --git a/app/views/z-sketching/schedule-calendar.html b/app/views/z-sketching/schedule-calendar.html new file mode 100644 index 0000000..938b3fc --- /dev/null +++ b/app/views/z-sketching/schedule-calendar.html @@ -0,0 +1,843 @@ +{% extends 'layout.html' %} + +{% set pageName = "Calendar view" %} + +{% from "_includes/primary-navigation.html" import primaryNavigation %} +{% block header %} + {{ primaryNavigation("Clinics", serviceName) }} +{% endblock %} + +{% block beforeContent %} + +{% endblock %} + +{% block content %} + +
| Monday | +Tuesday | +Wednesday | +Thursday | +Friday | +Saturday | +Sunday | +
|---|---|---|---|---|---|---|
| + No data + | ++ No data + | ++ No data + | ++ No data + | ++ No data + | ++ 1 + | ++ 2 + | +
| + 3 + | ++ 4 + | ++ 5 + | ++ 6 + | ++ 7 + | ++ 8 + | ++ 9 + | +
| + 10 + | ++ 11 + | ++ 12 + | ++ 13 + | ++ 14 + | ++ 15 + | ++ 16 + | +
| + 17 + | ++ 18 + | ++ 19 + | ++ 20 + | ++ 21 + | ++ 22 + | ++ 23 + | +
| + 24 + | ++ 25 + | ++ 26 + | ++ 27 + | ++ 28 + | ++ 29 + | ++ 30 + | +
| + 31 + | ++ No data + | ++ No data + | ++ No data + | ++ No data + | ++ No data + | ++ No data + | +
| Monday | +Tuesday | +Wednesday | +Thursday | +Friday | +Saturday | +Sunday | +
|---|---|---|---|---|---|---|
| + No data + | ++ 1 + | ++ 2 + | + 3 + | ++ 4 + | ++ 5 + | ++ 6 + | +
|
+ 7
+
+ 38 available + 4 booked + 8 held + Schedule name how? + |
+
+ 8
+
+ 38 available + 4 booked + 8 held + |
+
+ 9
+
+ 38 available + 4 booked + 8 held + |
+
+ 10
+
+ 8 available + 34 booked + 8 held + |
+
+ 11
+
+ 36 available + 6 booked + 4 held + |
+
+ 12
+
+ 32 available + 10 booked + 5 held + |
+
+ 13
+
+ 27 available + 15 booked + 6 held + |
+
|
+ 14
+
+ 24 available + 18 booked + 7 held + |
+
+ 15
+
+ 20 available + 22 booked + 8 held + |
+
+ 16
+
+ 17 available + 25 booked + 5 held + |
+
+ 17
+
+ 12 available + 30 booked + 6 held + |
+
+
+ 18
+
+ 30 available + 12 booked + 4 held + |
+
+ 19
+
+ 22 available + 20 booked + 5 held + |
+
+ 20
+
+ 14 available + 28 booked + 7 held + |
+
|
+ 21
+
+ 34 available + 8 booked + 4 held + |
+
+ 22
+
+ 26 available + 16 booked + 6 held + |
+
+ 23
+
+ 18 available + 24 booked + 8 held + |
+
+ 24
+
+ 10 available + 32 booked + 5 held + |
+
+ 25
+
+ 4 available + 38 booked + 4 held + |
+
+ 26
+
+ 37 available + 5 booked + 6 held + |
+
+ 27
+
+ 28 available + 14 booked + 7 held + |
+
|
+ 28
+
+ 21 available + 21 booked + 5 held + |
+
+ 29
+
+ 13 available + 29 booked + 8 held + |
+
+ 30
+
+ 6 available + 36 booked + 6 held + |
+ + No data + | ++ No data + | ++ No data + | ++ No data + | +
| Monday | +Tuesday | +Wednesday | +Thursday | +Friday | +Saturday | +Sunday | +
|---|---|---|---|---|---|---|
| + No data + | ++ No data + | +
+ 1
+
+ 33 available + 9 booked + 4 held + |
+
+ 2
+
+ 25 available + 17 booked + 5 held + |
+
+ 3
+
+ 19 available + 23 booked + 6 held + |
+
+ 4
+
+ 11 available + 31 booked + 7 held + |
+
+ 5
+
+ 2 available + 40 booked + 4 held + |
+
|
+ 6
+
+ 35 available + 7 booked + 5 held + |
+
+ 7
+
+ 23 available + 19 booked + 6 held + |
+
+ 8
+
+ 15 available + 27 booked + 8 held + |
+
+ 9
+
+ 7 available + 35 booked + 4 held + |
+
+ 10
+
+ 31 available + 11 booked + 5 held + |
+
+ 11
+
+ 22 available + 20 booked + 6 held + |
+
+ 12
+
+ 16 available + 26 booked + 7 held + |
+
|
+ 13
+
+ 29 available + 13 booked + 4 held + |
+
+ 14
+
+ 20 available + 22 booked + 5 held + |
+
+ 15
+
+ 9 available + 33 booked + 6 held + |
+
+ 16
+
+ 39 available + 3 booked + 4 held + |
+
+
+ 17
+
+ 1 available + 41 booked + 8 held + |
+ + 18 + | ++ 19 + | +
| + 20 + Schedule name + | ++ 21 + | ++ 22 + | ++ 23 + | ++ 24 + | ++ 25 + | ++ 26 + | +
| + 27 + | ++ 28 + | ++ 29 + | ++ 30 + | ++ 31 + | ++ No data + | ++ No data + | +
| Monday | +Tuesday | +Wednesday | +Thursday | +Friday | +Saturday | +Sunday | +
|---|---|---|---|---|---|---|
| + No data + | ++ No data + | ++ No data + | ++ No data + | ++ No data + | ++ No data + | ++ 1 + | +
| + 2 + | ++ 3 + | ++ 4 + | ++ 5 + | ++ 6 + | ++ 7 + | ++ 8 + | +
| + 9 + | ++ 10 + | ++ 11 + | ++ 12 + | ++ 13 + | ++ 14 + | ++ 15 + | +
| + 16 + | ++ 17 + | ++ 18 + | ++ 19 + | ++ 20 + | ++ 21 + | ++ 22 + | +
| + 23 + | ++ 24 + | ++ 25 + | ++ 26 + | ++ 27 + | ++ 28 + | ++ 29 + | +