From eaf406358a1a7e3ec21476af50be84294309fe7a Mon Sep 17 00:00:00 2001
From: V13Axel
Date: Sun, 23 Feb 2025 23:52:44 -0500
Subject: [PATCH] Setup the linking timespan and day selects
---
resources/js/calendar.js | 14 +++++++++++++
.../calendar-linking-collapsible.blade.php | 20 +++++++++++++++++--
2 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/resources/js/calendar.js b/resources/js/calendar.js
index d6d2b19c..1294ccce 100644
--- a/resources/js/calendar.js
+++ b/resources/js/calendar.js
@@ -42,6 +42,15 @@ export default class Calendar {
return get_timespans_in_year(this.static_data, convert_year(this.static_data, year), inclusive);
}
+ get_timespans_in_year_as_select_options(year, inclusive = true) {
+ // TODO: Replace this with something a bit more holistic?
+ return get_timespans_in_year(this.static_data, convert_year(this.static_data, year), inclusive)
+ .map(({ result, reason }, index) => ({
+ name: this.static_data.year_data.timespans[index].name + (!result ? ` (${reason})` : ""),
+ disabled: !result
+ }));
+ }
+
does_timespan_appear(year, timespan) {
// TODO: Replace this with something a bit more holistic?
return does_timespan_appear(this.static_data, convert_year(this.static_data, year), timespan);
@@ -51,6 +60,11 @@ export default class Calendar {
return get_days_in_timespan(this.static_data, convert_year(this.static_data, year), timespan);
}
+ get_days_in_timespan_in_year_as_select_options(year, timespan) {
+ return this.get_days_in_timespan_in_year(year, timespan)
+ .map((day, index) => `Day ${index + 1}` + (day.text ? ` - ${day.text}` : ""));
+ }
+
does_day_appear(year, timespan, day) {
// TODO: Replace this with something a bit more holistic?
return does_day_appear(this.static_data, convert_year(this.static_data, year), timespan);
diff --git a/resources/views/components/calendar-linking-collapsible.blade.php b/resources/views/components/calendar-linking-collapsible.blade.php
index b0279814..2d7efd80 100644
--- a/resources/views/components/calendar-linking-collapsible.blade.php
+++ b/resources/views/components/calendar-linking-collapsible.blade.php
@@ -74,13 +74,29 @@ class="fa fa-question-circle"> Calendar Linking.