feat: day view for timetable on mobile

This commit is contained in:
Jannat Patel
2023-12-12 12:00:24 +05:30
parent 0e2fabf139
commit e5dc2bad6a
4 changed files with 57 additions and 19 deletions

View File

@@ -641,6 +641,7 @@
const allow_future = {{ batch_info.allow_future }};
const is_student = "{{ is_student or '' }}";
const evaluation_end_date = "{{ batch_info.evaluation_end_date if batch_info.evaluation_end_date else '' }}"
const show_day_view = {{ settings.show_day_view }};
</script>
<link rel="stylesheet" href="https://uicdn.toast.com/calendar/latest/toastui-calendar.min.css" />

View File

@@ -672,7 +672,7 @@ const get_calendar_options = (element, calendar_id) => {
const end_time = element.data("end");
return {
defaultView: "week",
defaultView: $(window).width() < 768 || show_day_view ? "day" : "week",
usageStatistics: false,
week: {
narrowWeekend: true,
@@ -805,22 +805,42 @@ const scroll_to_date = (calendar, events) => {
};
const set_calendar_range = (calendar, events) => {
let week_start = moment(calendar.getDateRangeStart().d.d);
let week_end = moment(calendar.getDateRangeEnd().d.d);
let day_view = $(window).width() < 768 || show_day_view ? true : false;
if (day_view) {
let calendar_date = moment(calendar.getDate().d.d).format(
"DD MMMM YYYY"
);
$(".calendar-range").text(`${calendar_date}`);
$(".calendar-range").text(
`${moment(week_start).format("DD MMMM YYYY")} - ${moment(
week_end
).format("DD MMMM YYYY")}`
);
if (moment(events[0].date).isSameOrBefore(moment(calendar)))
$("#prev-week").hide();
else $("#prev-week").show();
if (week_start.diff(moment(events[0].date), "days") <= 0)
$("#prev-week").hide();
else $("#prev-week").show();
if (
moment(calendar_date).isSameOrAfter(
moment(events.slice(-1)[0].date)
)
)
$("#next-week").hide();
else $("#next-week").show();
} else {
let week_start = moment(calendar.getDateRangeStart().d.d);
let week_end = moment(calendar.getDateRangeEnd().d.d);
if (week_end.diff(moment(events.slice(-1)[0].date), "days") > 0)
$("#next-week").hide();
else $("#next-week").show();
$(".calendar-range").text(
`${moment(week_start).format("DD MMMM YYYY")} - ${moment(
week_end
).format("DD MMMM YYYY")}`
);
if (week_start.diff(moment(events[0].date), "days") <= 0)
$("#prev-week").hide();
else $("#prev-week").show();
if (week_end.diff(moment(events.slice(-1)[0].date), "days") > 0)
$("#next-week").hide();
else $("#next-week").show();
}
};
const get_background_color = (doctype) => {