From 6082fe9d029bff5d908c34ada73ab69604d182a9 Mon Sep 17 00:00:00 2001
From: PMKuipers
Date: Mon, 7 Aug 2023 16:11:24 +0200
Subject: [PATCH] Added periods and course timing to documentation
---
doc/create-studyplan.htm | 48 ++++++++++++++++++++++
doc/img/Course-timing-change.png | Bin 0 -> 10999 bytes
doc/img/Course-timing-indicators.png | Bin 0 -> 40633 bytes
doc/img/Course-timing-mismatch-screen.png | Bin 0 -> 32697 bytes
doc/img/Period-edit.png | Bin 0 -> 17166 bytes
doc/img/Period-hover.png | Bin 0 -> 5505 bytes
doc/img/Period-plan-multispan.png | Bin 0 -> 24465 bytes
doc/img/Periods-in-plan.png | Bin 0 -> 18936 bytes
doc/img/Studyplan-draglayers.png | Bin 0 -> 14226 bytes
9 files changed, 48 insertions(+)
create mode 100644 doc/img/Course-timing-change.png
create mode 100644 doc/img/Course-timing-indicators.png
create mode 100644 doc/img/Course-timing-mismatch-screen.png
create mode 100644 doc/img/Period-edit.png
create mode 100644 doc/img/Period-hover.png
create mode 100644 doc/img/Period-plan-multispan.png
create mode 100644 doc/img/Periods-in-plan.png
create mode 100644 doc/img/Studyplan-draglayers.png
diff --git a/doc/create-studyplan.htm b/doc/create-studyplan.htm
index ae242f5..6789394 100644
--- a/doc/create-studyplan.htm
+++ b/doc/create-studyplan.htm
@@ -67,6 +67,32 @@
To re-arrange the courses in the study plan, simply drag and drop them from the places they are now in.
To remove a course from the study plan, simply drag it to the red garbage bin that appears on dragging
+
+ Layers within a study line
+ To add a course to a new layer within a studyline, drag it to the bottom of the study line. There are small slots shown there, which
+ will fully open when the course is dragged over them
+
+
+ Configuring periods
+ All periods in the study plan will have a label showing the timing and it's short name directly above their course columns in the
+ timeline. Upon hovering over the short name, it's full name will appear.
+ Also, the period matching the current date, will be highlighted in the color
+ indicated by the --highlight css variable, which corresponds to the
+ value of the --info color by default.
+
+
+
+
+ At the start, the periods start and end times will be naively selected by splitting the study plan's duration among the number of periods.
+ By clicking on the icon, you can open the edit screen and change the period's full name ,
+ short name , start time and end time
+
+
+
+ TIP:
+ Before you start dragging courses into a studyplan page, make sure you have the periods configured correctly.
+
+
Configuring courses
Once a course is added to the studyplan, an icon shows if it needs to be configured ( ) or
is already configured ( ).
@@ -84,6 +110,28 @@
such will all need to be completed for the course to be marked as completed, regardless of the minimum percentage configured
+ Course start and end times
+ Often, the course will have their start and end times configured differently than the period you drop them in. If this is the case,
+ a screen will appear asking if you want to update the course's start and end times. The time details of both course and period will
+ be shown for your comparison. By clicking Yes , the course's start and end times will be
+ updated to those of the period. Any activity dates set will be adjusted according to the changed start date.
+
+ NOTE:
+
If you do not change the course start and end times at this moment, you always have the opportunity later on
+ by clicking the icon in the course detail screen. (As seen in the screenshot below).
+
This icon will be (color --success ) to indicate if the course timing matches
+ period timing. If not, it is shown as (color --warning )
+
+
+ Courses spanning multiple periods
+ If a course should span multiple periods, you can specify this in the course detail screen.
+ On the top right of the course details screen you can select the desired period span of this course.
+ Do note however, that the available spans are limited by the available space to the right of the course in the studyplan
+
+ Upon selecting the span you want, the course display will immediately be updated to reflect the changes.
+ immediately after this, you will see the screen asking if you want to change the course start and end times to reflect the
+ new period span.
+
Adding badges
The toolbox also shows you the site-wide badges that are available for students. These can be dragged into the slots around and between the courses.
When you click on the icon in the badge it shows you additional information about the badge
diff --git a/doc/img/Course-timing-change.png b/doc/img/Course-timing-change.png
new file mode 100644
index 0000000000000000000000000000000000000000..a98dd7a00bf06af9b5909fad875f3cd81a04a7c1
GIT binary patch
literal 10999
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
B>)!wX
literal 0
HcmV?d00001
diff --git a/doc/img/Course-timing-indicators.png b/doc/img/Course-timing-indicators.png
new file mode 100644
index 0000000000000000000000000000000000000000..cbb93eaf835c8b660bf4b626410b145c6f3c8518
GIT binary patch
literal 40633
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