diff --git a/src/components/JournalView/JournalDispatchers.vue b/src/components/JournalView/JournalDispatchers.vue new file mode 100644 index 0000000..f9db851 --- /dev/null +++ b/src/components/JournalView/JournalDispatchers.vue @@ -0,0 +1,406 @@ + + + + + diff --git a/src/components/JournalView/JournalTimetables.vue b/src/components/JournalView/JournalTimetables.vue new file mode 100644 index 0000000..98d7a0f --- /dev/null +++ b/src/components/JournalView/JournalTimetables.vue @@ -0,0 +1,440 @@ + + + + + diff --git a/src/locales/en.json b/src/locales/en.json index 432ccec..581bd71 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -237,6 +237,11 @@ "timetable-day": "Timetable created at", "timetable-active": "ACTIVE", "timetable-fulfilled": "FULFILLED", - "timetable-abandoned": "ABANDONED" + "timetable-abandoned": "ABANDONED", + + "online-since": "ONLINE SINCE", + "duty-lasted": "The duty lasted", + "minutes": "{minutes} mins", + "hours": "{hours}h {minutes} mins" } } diff --git a/src/locales/pl.json b/src/locales/pl.json index 522b47d..520d233 100644 --- a/src/locales/pl.json +++ b/src/locales/pl.json @@ -239,6 +239,11 @@ "timetable-day": "Rozkład z dnia", "timetable-active": "AKTYWNY", "timetable-fulfilled": "WYPEŁNIONY", - "timetable-abandoned": "PORZUCONY" + "timetable-abandoned": "PORZUCONY", + + "online-since": "ONLINE OD", + "duty-lasted": "Dyżur trwał", + "minutes": "{minutes} min.", + "hours": "{hours} godz. {minutes} min." } } diff --git a/src/styles/JournalSection.scss b/src/styles/JournalSection.scss new file mode 100644 index 0000000..eca6ee2 --- /dev/null +++ b/src/styles/JournalSection.scss @@ -0,0 +1,84 @@ +@import 'responsive.scss'; + +// Animations +.warning { + &-enter-from, + &-leave-to { + opacity: 0; + } + + &-enter-active { + transition: all 200ms ease-in-out; + } + + &-leave-active { + transition: all 200ms ease-in-out; + } +} + +.journal-list-anim { + &-enter-active, + &-leave-active { + transition: all 0.5s ease; + } + + &-enter-from, + &-leave-to { + opacity: 0; + } +} + +//Styles +.journal-wrapper { + width: 1350px; + padding: 1em 0; +} + +.journal_warning { + text-align: center; + font-size: 1.3em; + + &.error { + background-color: var(--clr-error); + } +} + +.schedule-dates > * { + margin-right: 0.25em; +} + +.journal_item, +.journal_warning { + background: #202020; + padding: 1em; + margin: 1em 0; +} + +.journal_loading { + margin-top: 2em; + + img { + margin: 0 auto; + display: block; + + width: 8em; + } + + text-align: center; + + .loading-label { + background: #333; + color: white; + + padding: 0.5em 0.5em; + font-size: 1.3em; + + border-radius: 1em; + } +} + +@include smallScreen() { + .journal-wrapper { + font-size: 1.25em; + } +} diff --git a/src/styles/global.scss b/src/styles/global.scss index f2c290e..cb4890d 100644 --- a/src/styles/global.scss +++ b/src/styles/global.scss @@ -211,6 +211,11 @@ ul { &:hover, &:focus { color: $accentCol; } + + &.checked { + color: var(--clr-primary); + font-weight: bold; + } } &--image { @@ -238,4 +243,37 @@ ul { background-color: #3c3c3c; } } +} + +.return-btn { + display: flex; + justify-content: center; + align-items: center; + + position: fixed; + right: 0; + bottom: 0; + + z-index: 100; + + margin: 0 1em 1em 0; + + width: 2em; + height: 2em; + + font-size: 1.7em; + + background-color: #333; + color: white; + + border-radius: 50%; + cursor: pointer; + + &:hover { + background-color: #3c3c3c; + } + + img { + width: 1.3em; + } } \ No newline at end of file diff --git a/src/views/JournalView.vue b/src/views/JournalView.vue index a2cf293..1256523 100644 --- a/src/views/JournalView.vue +++ b/src/views/JournalView.vue @@ -1,578 +1,73 @@