From 61952a0af7c95878c6611bce95e67239570987bc Mon Sep 17 00:00:00 2001 From: CodeDevMLH <145071728+CodeDevMLH@users.noreply.github.com> Date: Mon, 16 Feb 2026 02:28:47 +0100 Subject: [PATCH] Add seasonal rules configuration and enhance settings UI --- .../Configuration/PluginConfiguration.cs | 5 + .../Configuration/configPage.html | 345 ++++++++++++++---- 2 files changed, 284 insertions(+), 66 deletions(-) diff --git a/Jellyfin.Plugin.Seasonals/Configuration/PluginConfiguration.cs b/Jellyfin.Plugin.Seasonals/Configuration/PluginConfiguration.cs index 70004c0..92e19da 100644 --- a/Jellyfin.Plugin.Seasonals/Configuration/PluginConfiguration.cs +++ b/Jellyfin.Plugin.Seasonals/Configuration/PluginConfiguration.cs @@ -49,6 +49,11 @@ public class PluginConfiguration : BasePluginConfiguration /// public bool EnableClientSideToggle { get; set; } + /// + /// Gets or sets the seasonal rules configuration as JSON. + /// + public string SeasonalRules { get; set; } = "[{\"Name\":\"New Year Fireworks\",\"StartDay\":28,\"StartMonth\":12,\"EndDay\":5,\"EndMonth\":1,\"Theme\":\"fireworks\"},{\"Name\":\"Valentine's Day\",\"StartDay\":10,\"StartMonth\":2,\"EndDay\":18,\"EndMonth\":2,\"Theme\":\"hearts\"},{\"Name\":\"Santa\",\"StartDay\":22,\"StartMonth\":12,\"EndDay\":27,\"EndMonth\":12,\"Theme\":\"santa\"},{\"Name\":\"Snowflakes (December)\",\"StartDay\":1,\"StartMonth\":12,\"EndDay\":31,\"EndMonth\":12,\"Theme\":\"snowflakes\"},{\"Name\":\"Snowfall (January)\",\"StartDay\":1,\"StartMonth\":1,\"EndDay\":31,\"EndMonth\":1,\"Theme\":\"snowfall\"},{\"Name\":\"Snowfall (February)\",\"StartDay\":1,\"StartMonth\":2,\"EndDay\":29,\"EndMonth\":2,\"Theme\":\"snowfall\"},{\"Name\":\"Easter\",\"StartDay\":25,\"StartMonth\":3,\"EndDay\":25,\"EndMonth\":4,\"Theme\":\"easter\"},{\"Name\":\"Halloween\",\"StartDay\":24,\"StartMonth\":10,\"EndDay\":5,\"EndMonth\":11,\"Theme\":\"halloween\"},{\"Name\":\"Autumn\",\"StartDay\":1,\"StartMonth\":9,\"EndDay\":30,\"EndMonth\":11,\"Theme\":\"autumn\"}]"; + /// /// Gets or sets the Seasonals options. /// diff --git a/Jellyfin.Plugin.Seasonals/Configuration/configPage.html b/Jellyfin.Plugin.Seasonals/Configuration/configPage.html index f8dd938..445c79e 100644 --- a/Jellyfin.Plugin.Seasonals/Configuration/configPage.html +++ b/Jellyfin.Plugin.Seasonals/Configuration/configPage.html @@ -6,15 +6,15 @@
- + -->
-

Seasonals

+

Seasonals Configuration

@@ -22,63 +22,96 @@

-
-
-
- -
Enable or disable the entire plugin functionality.
-
-
- -
Automatically select the season based on the date.
-
-
- - -
The season to display if automation is disabled.
-
-
- -
If enabled, users will see a seasonals icon in the header to toggle seasonals for their browser (device-specific).
-
-
-
- Advanced Configuration -

Configure specific settings for each seasonal theme below.

-

All symbol count settings add this number in addition to the standard 12 symbols (if additional symbols is enabled).

+
+ + + +
+ + + +
+
+ +
Enable or disable the entire plugin functionality.
+
+
+ +
If enabled, the plugin will use the rules defined in the "Auto Selection" tab to assume the season. If no rule matches, it falls back to the "Standard Season" below.
+
+
+ + +
The season to display if automation is disabled or no "Auto Selection" rule matches the current date.
+
+
+ +
If enabled, users will see a seasonals icon in the header to toggle seasonals for their browser (device-specific).
+
+
+ + + + + +
- +
+
info
@@ -526,20 +559,198 @@
-