Enhance seasonal options in configuration: add new seasons and improve descriptions

This commit is contained in:
CodeDevMLH
2026-02-28 02:29:41 +01:00
parent 9adbe92e7c
commit 33e89ec16b

View File

@@ -54,39 +54,42 @@
<div class="selectContainer"> <div class="selectContainer">
<label class="selectLabel" for="SeasonalsSelectedSeason">Standard Season</label> <label class="selectLabel" for="SeasonalsSelectedSeason">Standard Season</label>
<select is="emby-select" id="SeasonalsSelectedSeason" name="SeasonalsSelectedSeason" class="selectLayout emby-select-withcolor emby-select" style="width: 100%; -webkit-appearance: menulist; appearance: menulist;"> <select is="emby-select" id="SeasonalsSelectedSeason" name="SeasonalsSelectedSeason" class="selectLayout emby-select-withcolor emby-select" style="width: 100%; -webkit-appearance: menulist; appearance: menulist;">
<option value="none">None</option> <option value="none">None</option>
<option value="autumn">Autumn (falling leaves)</option> <option value="autumn">Autumn (Falling Leaves)</option>
<option value="birthday">Birthday (Balloons & Confetti)</option>
<option value="carnival">Carnival (Confetti)</option> <option value="carnival">Carnival (Confetti)</option>
<option value="cherryblossom">Cherry Blossom</option> <option value="cherryblossom">Cherry Blossom</option>
<option value="christmas">Christmas</option> <option value="christmas">Christmas</option>
<option value="earthday">Earth Day (Growing Vines)</option> <option value="earthday">Earth Day</option>
<option value="easter">Easter</option> <option value="easter">Easter</option>
<option value="eidalfitr">Eid al-Fitr (Sugar Feast)</option> <option value="eid">Eid al-Fitr (Sugar Feast)</option>
<option value="eurovision">Eurovision (Dancing Notes)</option> <option value="eurovision">Eurovision</option>
<option value="filmnoir">Film-Noir (Classic B&W Cinema)</option> <option value="filmnoir">Film-Noir (Classic B&W Cinema Filter)</option>
<option value="fireworks">Fireworks</option> <option value="fireworks">Fireworks</option>
<option value="friday13">Friday the 13th</option> <option value="friday13">Friday the 13th</option>
<option value="frost">Frost / Ice</option> <option value="frost">Frost / Ice</option>
<option value="halloween">Halloween</option> <option value="halloween">Halloween</option>
<option value="hearts">Hearts</option> <option value="hearts">Hearts</option>
<option value="marioday">Mario Day (March 10)</option> <option value="marioday">Mario Day</option>
<option value="matrix">Matrix</option> <option value="matrix">Matrix</option>
<option value="oktoberfest">Oktoberfest</option> <option value="oktoberfest">Oktoberfest</option>
<option value="oscar">Oscar Awards (Glamour & Flashes)</option> <option value="olympia">Olympia</option>
<option value="pride">Pride (Rainbow Border)</option> <option value="oscar">Oscar Awards</option>
<option value="rain">Rain (Pure Rain)</option> <option value="pride">Pride</option>
<option value="rain">Rain</option>
<option value="resurrection">Resurrection by Bioflash257</option> <option value="resurrection">Resurrection by Bioflash257</option>
<option value="santa">Santa (flying santa & snowfall)</option> <option value="santa">Santa (Flying Santa & Snowfall)</option>
<option value="snowfall">Snowfall</option> <option value="snowfall">Snowfall</option>
<option value="snowflakes">Snowflakes</option> <option value="snowflakes">Snowflakes</option>
<option value="snowstorm">Snowstorm</option> <option value="snowstorm">Snowstorm</option>
<option value="space">Space</option>
<option value="spooky">Spooky</option> <option value="spooky">Spooky</option>
<option value="sports">Sports</option>
<option value="spring">Spring</option> <option value="spring">Spring</option>
<option value="patrick" disabled>St. Patrick's Day (not implemented yet. Please commit ideas/implementation in a issue or PR)</option> <option value="starwars">Star Wars Day</option>
<option value="starwars">Star Wars Day (May 4th)</option> <option value="storm">Storm (⚠Epilepsy Warning⚠)</option>
<option value="storm">Storm (Heavy Rain & Lightning (⚠Epilepsy Warning⚠))</option>
<option value="summer">Summer (Bubbles)</option> <option value="summer">Summer (Bubbles)</option>
<option value="thanksgiving" disabled>Thanksgiving (not implemented yet. Please commit ideas/implementation in a issue or PR)</option> <option value="underwater">Underwater</option>
</select> </select>
<div class="fieldDescription">The season to display if automation is disabled or no "Auto Selection" rule matches the current date.</div> <div class="fieldDescription">The season to display if automation is disabled or no "Auto Selection" rule matches the current date.</div>
</div> </div>
@@ -1546,15 +1549,16 @@
' <label class="selectLabel">Theme</label>' + ' <label class="selectLabel">Theme</label>' +
' <select class="emby-select emby-select-withcolor rule-theme" style="width: 100%; -webkit-appearance: menulist; appearance: menulist;">' + ' <select class="emby-select emby-select-withcolor rule-theme" style="width: 100%; -webkit-appearance: menulist; appearance: menulist;">' +
' <option value="none">None</option>' + ' <option value="none">None</option>' +
' <option value="autumn">Autumn (falling leaves)</option>' + ' <option value="autumn">Autumn (Falling Leaves)</option>' +
' <option value="birthday">Birthday (Balloons & Confetti)</option>' +
' <option value="carnival">Carnival (Confetti)</option>' + ' <option value="carnival">Carnival (Confetti)</option>' +
' <option value="cherryblossom">Cherry Blossom</option>' + ' <option value="cherryblossom">Cherry Blossom</option>' +
' <option value="christmas">Christmas</option>' + ' <option value="christmas">Christmas</option>' +
' <option value="earthday">Earth Day</option>' + ' <option value="earthday">Earth Day</option>' +
' <option value="easter">Easter</option>' + ' <option value="easter">Easter</option>' +
' <option value="eidalfitr">Eid al-Fitr</option>' + ' <option value="eidalfitr">Eid al-Fitr (Sugar Feast)</option>' +
' <option value="eurovision">Eurovision</option>' + ' <option value="eurovision">Eurovision</option>' +
' <option value="filmnoir">Film-Noir</option>' + ' <option value="filmnoir">Film-Noir (Classic B&W Cinema Filter)</option>' +
' <option value="fireworks">Fireworks</option>' + ' <option value="fireworks">Fireworks</option>' +
' <option value="friday13">Friday the 13th</option>' + ' <option value="friday13">Friday the 13th</option>' +
' <option value="frost">Frost / Ice</option>' + ' <option value="frost">Frost / Ice</option>' +
@@ -1563,19 +1567,23 @@
' <option value="marioday">Mario Day</option>' + ' <option value="marioday">Mario Day</option>' +
' <option value="matrix">Matrix</option>' + ' <option value="matrix">Matrix</option>' +
' <option value="oktoberfest">Oktoberfest</option>' + ' <option value="oktoberfest">Oktoberfest</option>' +
' <option value="olympia">Olympia</option>' +
' <option value="oscar">Oscar Awards</option>' + ' <option value="oscar">Oscar Awards</option>' +
' <option value="pride">Pride</option>' + ' <option value="pride">Pride</option>' +
' <option value="rain">Rain</option>' + ' <option value="rain">Rain</option>' +
' <option value="resurrection">Resurrection by Bioflash257</option>' + ' <option value="resurrection">Resurrection by Bioflash257</option>' +
' <option value="santa">Santa (flying santa & snowfall)</option>' + ' <option value="santa">Santa (Flying Santa & Snowfall)</option>' +
' <option value="snowfall">Snowfall</option>' + ' <option value="snowfall">Snowfall</option>' +
' <option value="snowflakes">Snowflakes</option>' + ' <option value="snowflakes">Snowflakes</option>' +
' <option value="snowstorm">Snowstorm</option>' + ' <option value="snowstorm">Snowstorm</option>' +
' <option value="space">Space</option>' +
' <option value="spooky">Spooky</option>' + ' <option value="spooky">Spooky</option>' +
' <option value="sports">Sports</option>' +
' <option value="spring">Spring</option>' + ' <option value="spring">Spring</option>' +
' <option value="starwars">Star Wars Day</option>' + ' <option value="starwars">Star Wars Day</option>' +
' <option value="storm">Storm (Epilepsy Warning!)</option>' + ' <option value="storm">Storm (Epilepsy Warning!)</option>' +
' <option value="summer">Summer (Bubbles)</option>' + ' <option value="summer">Summer (Bubbles)</option>' +
' <option value="underwater">Underwater</option>' +
' </select>' + ' </select>' +
' </div>' + ' </div>' +
'</div>'; '</div>';
@@ -1642,12 +1650,50 @@
document.querySelector('#SeasonalsConfigPage') document.querySelector('#SeasonalsConfigPage')
.addEventListener('pageshow', function() { .addEventListener('pageshow', function() {
Dashboard.showLoadingMsg(); Dashboard.showLoadingMsg();
ApiClient.getPluginConfiguration(SeasonalsConfigPage.pluginUniqueId).then(function (config) { ApiClient.getPluginConfiguration(SeasonalsConfigPage.pluginUniqueId).then(function (config) {
document.querySelector('#SeasonalsIsEnabled').checked = config.IsEnabled; document.querySelector('#SeasonalsIsEnabled').checked = config.IsEnabled;
document.querySelector('#SeasonalsSelectedSeason').value = config.SelectedSeason; document.querySelector('#SeasonalsSelectedSeason').value = config.SelectedSeason;
document.querySelector('#SeasonalsAutomateSeasonSelection').checked = config.AutomateSeasonSelection; document.querySelector('#SeasonalsAutomateSeasonSelection').checked = config.AutomateSeasonSelection;
document.querySelector('#SeasonalsEnableClientSideToggle').checked = config.EnableClientSideToggle !== undefined ? config.EnableClientSideToggle : true; document.querySelector('#SeasonalsEnableClientSideToggle').checked = config.EnableClientSideToggle !== undefined ? config.EnableClientSideToggle : true;
if (!config.Autumn) config.Autumn = {};
if (!config.Birthday) config.Birthday = {};
if (!config.Carnival) config.Carnival = {};
if (!config.CherryBlossom) config.CherryBlossom = {};
if (!config.Christmas) config.Christmas = {};
if (!config.EarthDay) config.EarthDay = {};
if (!config.Easter) config.Easter = {};
if (!config.Eid) config.Eid = {};
if (!config.Eurovision) config.Eurovision = {};
if (!config.FilmNoir) config.FilmNoir = {};
if (!config.Fireworks) config.Fireworks = {};
if (!config.Friday13) config.Friday13 = {};
if (!config.Frost) config.Frost = {};
if (!config.Halloween) config.Halloween = {};
if (!config.Hearts) config.Hearts = {};
if (!config.MarioDay) config.MarioDay = {};
if (!config.Matrix) config.Matrix = {};
if (!config.Oktoberfest) config.Oktoberfest = {};
if (!config.Olympia) config.Olympia = {};
if (!config.Oscar) config.Oscar = {};
if (!config.Pride) config.Pride = {};
if (!config.Rain) config.Rain = {};
if (!config.Resurrection) config.Resurrection = {};
if (!config.Santa) config.Santa = {};
if (!config.Snowfall) config.Snowfall = {};
if (!config.Snowflakes) config.Snowflakes = {};
if (!config.Snowstorm) config.Snowstorm = {};
if (!config.Space) config.Space = {};
if (!config.Spooky) config.Spooky = {};
if (!config.Sports) config.Sports = {};
if (!config.Spring) config.Spring = {};
if (!config.StarWars) config.StarWars = {};
if (!config.Storm) config.Storm = {};
if (!config.Summer) config.Summer = {};
if (!config.Underwater) config.Underwater = {};
// Load Rules // Load Rules
try { try {
var rules = JSON.parse(config.SeasonalRules || "[]"); var rules = JSON.parse(config.SeasonalRules || "[]");