Add seasonal effects for Pi Day, Pride, Rain, and Storm; enhance existing styles
All checks were successful
Auto Release Plugin / build-and-release (push) Successful in 45s
All checks were successful
Auto Release Plugin / build-and-release (push) Successful in 45s
- Introduced new CSS and JS files for Pi Day, Pride, Rain, and Storm effects. - Updated existing seasonal styles (e.g., Halloween, Hearts, Resurrection) to improve performance with 'contain: layout paint'. - Enhanced animations for seasonal effects, including adjustments to keyframes and element creation logic. - Added configuration options for new effects in the main seasonals.js file. - Updated test-site.html to include new seasonal options in the dropdown.
This commit is contained in:
@@ -32,6 +32,12 @@ public class PluginConfiguration : BasePluginConfiguration
|
||||
Summer = new SummerOptions();
|
||||
CherryBlossom = new CherryBlossomOptions();
|
||||
Carnival = new CarnivalOptions();
|
||||
PiDay = new PiDayOptions();
|
||||
Eurovision = new EurovisionOptions();
|
||||
Storm = new StormOptions();
|
||||
Pride = new PrideOptions();
|
||||
EarthDay = new EarthDayOptions();
|
||||
Rain = new RainOptions();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -57,7 +63,7 @@ public class PluginConfiguration : BasePluginConfiguration
|
||||
/// <summary>
|
||||
/// Gets or sets the seasonal rules configuration as JSON.
|
||||
/// </summary>
|
||||
public string SeasonalRules { get; set; } = "[{\"Name\":\"New Year Fireworks\",\"StartDay\":28,\"StartMonth\":12,\"EndDay\":5,\"EndMonth\":1,\"Theme\":\"fireworks\"},{\"Name\":\"Carnival\",\"StartDay\":19,\"StartMonth\":2,\"EndDay\":28,\"EndMonth\":2,\"Theme\":\"carnival\"},{\"Name\":\"Valentine's Day\",\"StartDay\":10,\"StartMonth\":2,\"EndDay\":18,\"EndMonth\":2,\"Theme\":\"hearts\"},{\"Name\":\"Spring\",\"StartDay\":1,\"StartMonth\":3,\"EndDay\":31,\"EndMonth\":5,\"Theme\":\"spring\"},{\"Name\":\"Summer\",\"StartDay\":1,\"StartMonth\":6,\"EndDay\":31,\"EndMonth\":8,\"Theme\":\"summer\"},{\"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\"}]";
|
||||
public string SeasonalRules { get; set; } = "[{\"Name\":\"New Year Fireworks\",\"StartDay\":28,\"StartMonth\":12,\"EndDay\":5,\"EndMonth\":1,\"Theme\":\"fireworks\"},{\"Name\":\"Carnival\",\"StartDay\":19,\"StartMonth\":2,\"EndDay\":28,\"EndMonth\":2,\"Theme\":\"carnival\"},{\"Name\":\"Valentine's Day\",\"StartDay\":10,\"StartMonth\":2,\"EndDay\":18,\"EndMonth\":2,\"Theme\":\"hearts\"},{\"Name\":\"Spring\",\"StartDay\":1,\"StartMonth\":3,\"EndDay\":31,\"EndMonth\":5,\"Theme\":\"spring\"},{\"Name\":\"Summer\",\"StartDay\":1,\"StartMonth\":6,\"EndDay\":31,\"EndMonth\":8,\"Theme\":\"summer\"},{\"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\"},{\"Name\":\"Cherry Blossom\",\"StartDay\":1,\"StartMonth\":4,\"EndDay\":30,\"EndMonth\":4,\"Theme\":\"cherryblossom\"}]";
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the Seasonals options.
|
||||
@@ -77,6 +83,12 @@ public class PluginConfiguration : BasePluginConfiguration
|
||||
public SummerOptions Summer { get; set; }
|
||||
public CherryBlossomOptions CherryBlossom { get; set; }
|
||||
public CarnivalOptions Carnival { get; set; }
|
||||
public PiDayOptions PiDay { get; set; }
|
||||
public EurovisionOptions Eurovision { get; set; }
|
||||
public StormOptions Storm { get; set; }
|
||||
public PrideOptions Pride { get; set; }
|
||||
public EarthDayOptions EarthDay { get; set; }
|
||||
public RainOptions Rain { get; set; }
|
||||
}
|
||||
|
||||
public class AutumnOptions
|
||||
@@ -234,3 +246,55 @@ public class CherryBlossomOptions
|
||||
public bool EnableRandomCherryBlossomMobile { get; set; } = false;
|
||||
public bool EnableDifferentDuration { get; set; } = true;
|
||||
}
|
||||
|
||||
public class PiDayOptions
|
||||
{
|
||||
public int SymbolCount { get; set; } = 50;
|
||||
public bool EnablePiDay { get; set; } = true;
|
||||
public bool EnableRandomPiDay { get; set; } = true;
|
||||
public bool EnableRandomPiDayMobile { get; set; } = false;
|
||||
public bool EnableDifferentDuration { get; set; } = true;
|
||||
}
|
||||
|
||||
public class EurovisionOptions
|
||||
{
|
||||
public int SymbolCount { get; set; } = 25;
|
||||
public bool EnableEurovision { get; set; } = true;
|
||||
public bool EnableRandomEurovision { get; set; } = true;
|
||||
public bool EnableRandomEurovisionMobile { get; set; } = false;
|
||||
public bool EnableDifferentDuration { get; set; } = true;
|
||||
public bool EnableColorfulNotes { get; set; } = true;
|
||||
public string EurovisionColors { get; set; } = "#ff0026ff,#17a6ffff,#32d432ff,#FFD700,#f0821bff,#f826f8ff";
|
||||
public int EurovisionGlowSize { get; set; } = 8;
|
||||
}
|
||||
|
||||
public class StormOptions
|
||||
{
|
||||
public int RaindropCount { get; set; } = 300;
|
||||
public int RaindropCountMobile { get; set; } = 150;
|
||||
public bool EnableStorm { get; set; } = true;
|
||||
public bool EnableLightning { get; set; } = true;
|
||||
public double RainSpeed { get; set; } = 1;
|
||||
}
|
||||
|
||||
public class PrideOptions
|
||||
{
|
||||
public bool EnablePride { get; set; } = true;
|
||||
public int HeartCount { get; set; } = 20;
|
||||
public int HeartSize { get; set; } = 2;
|
||||
public bool ColorHeader { get; set; } = true;
|
||||
}
|
||||
|
||||
public class EarthDayOptions
|
||||
{
|
||||
public bool EnableEarthDay { get; set; } = true;
|
||||
public int VineCount { get; set; } = 4;
|
||||
}
|
||||
|
||||
public class RainOptions
|
||||
{
|
||||
public bool EnableRain { get; set; } = true;
|
||||
public int RaindropCount { get; set; } = 300;
|
||||
public int RaindropCountMobile { get; set; } = 150;
|
||||
public double RainSpeed { get; set; } = 1;
|
||||
}
|
||||
|
||||
@@ -73,10 +73,14 @@
|
||||
<option value="championships" disabled>European/World Championships (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="patrick" disabled>St. Patrick's Day (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="thanksgiving" disabled>Thanksgiving (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="pride" disabled>Pride (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="pride" disabled>Oscar Awards (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="pride" disabled>Eurovison Awards (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="pride" disabled>Sugar Feast (Eid al-Fitr, Ramadan) (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="earthday">Earth Day (Growing Vines)</option>
|
||||
<option value="eurovision">Eurovision (Dancing Notes)</option>
|
||||
<option value="oscar" disabled>Oscar Awards (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
<option value="piday">Pi-Day (Matrix Rain)</option>
|
||||
<option value="pride">Pride (Rainbow Border)</option>
|
||||
<option value="rain">Rain (Pure Rain)</option>
|
||||
<option value="storm">Storm (Heavy Rain & Lightning (Epilepsy Warning!))</option>
|
||||
<option value="sugarfeast" disabled>Sugar Feast (Eid al-Fitr, Ramadan) (not implemented yet. Please commit ideas/implementation in a issue or PR)</option>
|
||||
</select>
|
||||
<div class="fieldDescription">The season to display if automation is disabled or no "Auto Selection" rule matches the current date.</div>
|
||||
</div>
|
||||
@@ -775,6 +779,211 @@
|
||||
<div class="fieldDescription">Randomize the falling speed of cherry blossoms.</div>
|
||||
</div>
|
||||
</details>
|
||||
<hr style="max-width: 800px; margin: 1em 0;">
|
||||
|
||||
<details>
|
||||
<summary>Earth Day</summary>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableEarthDay" name="EnableEarthDay" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Earth Day Seasonal</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Enable the Earth Day theme in general (e.g. for automation).</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="EarthDayVineCount">Vine Count</label>
|
||||
<input is="emby-input" type="number" id="EarthDayVineCount" name="EarthDayVineCount" />
|
||||
<div class="fieldDescription">Number of animated vines (if enabled).</div>
|
||||
</div>
|
||||
</details>
|
||||
<hr style="max-width: 800px; margin: 1em 0;">
|
||||
|
||||
<details>
|
||||
<summary>Eurovision / Musik</summary>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableEurovision" name="EnableEurovision" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Eurovision Seasonal</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Enable the Eurovision/Music theme in general (e.g. for automation).</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableRandomEurovision" name="EnableRandomEurovision" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Additional Random Music Notes</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Displays dancing music notes.</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableRandomEurovisionMobile" name="EnableRandomEurovisionMobile" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Additional Random Music Notes on Mobile</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Displays dancing music notes on mobile devices. Warning: High values may affect performance.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="EurovisionSymbolCount">Symbol Count</label>
|
||||
<input is="emby-input" type="number" id="EurovisionSymbolCount" name="EurovisionSymbolCount" />
|
||||
<div class="fieldDescription">Number of additional dancing music notes (if enabled).</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableDifferentDurationEurovision" name="EnableDifferentDurationEurovision" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Different Falling Speed</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Randomize the movement speed of music notes.</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableColorfulNotes" name="EnableColorfulNotes" type="checkbox" is="emby-checkbox" />
|
||||
<span>Colorful Notes Mode</span>
|
||||
</label>
|
||||
<div class="fieldDescription">If checked, notes will pick colors from the array below. If unchecked, notes will be white.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="EurovisionColors">Color Array (Comma-separated)</label>
|
||||
<input is="emby-input" type="text" id="EurovisionColors" name="EurovisionColors" />
|
||||
<div class="fieldDescription">Example: #FFB6C1,#87CEFA,#98FB98 (Hex or CSS colors separated by commas).</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="EurovisionGlowSize">Note Glow/Shadow Size (px)</label>
|
||||
<input is="emby-input" type="number" id="EurovisionGlowSize" name="EurovisionGlowSize" />
|
||||
<div class="fieldDescription">Set the text-shadow size of the notes. Set this to 0 to remove the shadow/glow completely.</div>
|
||||
</div>
|
||||
</details>
|
||||
<hr style="max-width: 800px; margin: 1em 0;">
|
||||
|
||||
<details>
|
||||
<summary>Pi-Day</summary>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnablePiDay" name="EnablePiDay" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Pi-Day Seasonal</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Enable the Pi-Day theme in general (e.g. for automation).</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableRandomPiDay" name="EnableRandomPiDay" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Additional Random Pi Symbols</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Displays additional digital rain elements.</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableRandomPiDayMobile" name="EnableRandomPiDayMobile" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Additional Random Pi Symbols on Mobile</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Displays additional digital rain elements on mobile devices. Warning: High values may affect performance.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="PiDaySymbolCount">Symbol Count</label>
|
||||
<input is="emby-input" type="number" id="PiDaySymbolCount" name="PiDaySymbolCount" />
|
||||
<div class="fieldDescription">Number of additional digital rain columns (if enabled).</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableDifferentDurationPiDay" name="EnableDifferentDurationPiDay" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Different Falling Speed</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Randomize the digital rain falling speed.</div>
|
||||
</div>
|
||||
</details>
|
||||
<hr style="max-width: 800px; margin: 1em 0;">
|
||||
|
||||
<details>
|
||||
<summary>Pride</summary>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnablePride" name="EnablePride" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Pride Seasonal</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Enable the Pride theme in general (e.g. for automation).</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="PrideHeartCount">Heart Count</label>
|
||||
<input is="emby-input" type="number" id="PrideHeartCount" name="PrideHeartCount" />
|
||||
<div class="fieldDescription">Number of rising rainbow hearts.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="PrideHeartSize">Heart Size (rem)</label>
|
||||
<input is="emby-input" type="number" id="PrideHeartSize" name="PrideHeartSize" step="0.1" />
|
||||
<div class="fieldDescription">Base size of the Pride hearts (default 2).</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="PrideConfettiCount">Confetti Count</label>
|
||||
<input is="emby-input" type="number" id="PrideConfettiCount" name="PrideConfettiCount" />
|
||||
<div class="fieldDescription">Number of falling rainbow confetti pieces.</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="PrideColorHeader" name="PrideColorHeader" type="checkbox" is="emby-checkbox" />
|
||||
<span>Rainbow Header</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Color the top navigation bar with a rainbow gradient.</div>
|
||||
</div>
|
||||
</details>
|
||||
<hr style="max-width: 800px; margin: 1em 0;">
|
||||
|
||||
<details>
|
||||
<summary>Rain (Pure)</summary>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableRain" name="EnableRain" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Rain Seasonal</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Enable the pure Rain theme.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="RaindropCount">Raindrop Count</label>
|
||||
<input is="emby-input" type="number" id="RaindropCount" name="RaindropCount" />
|
||||
<div class="fieldDescription">Total number of raindrops.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="RaindropCountMobile">Raindrop Count (Mobile)</label>
|
||||
<input is="emby-input" type="number" id="RaindropCountMobile" name="RaindropCountMobile" />
|
||||
<div class="fieldDescription">Total number of raindrops on mobile devices.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="RainSpeed">Rain Speed</label>
|
||||
<input is="emby-input" type="number" id="RainSpeed" name="RainSpeed" step="0.1" />
|
||||
<div class="fieldDescription">The speed of the falling rain.</div>
|
||||
</div>
|
||||
</details>
|
||||
<hr style="max-width: 800px; margin: 1em 0;">
|
||||
|
||||
<details>
|
||||
<summary>Storm</summary>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="EnableStorm" name="EnableStorm" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Storm Seasonal</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Enable the Storm theme in general (e.g. for automation).</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="StormRaindropCount">Raindrop Count</label>
|
||||
<input is="emby-input" type="number" id="StormRaindropCount" name="StormRaindropCount" />
|
||||
<div class="fieldDescription">Total number of raindrops in the storm.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="StormRaindropCountMobile">Raindrop Count (Mobile)</label>
|
||||
<input is="emby-input" type="number" id="StormRaindropCountMobile" name="StormRaindropCountMobile" />
|
||||
<div class="fieldDescription">Total number of raindrops on mobile devices. Warning: High values may affect performance.</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<label class="inputLabel" for="StormRainSpeed">Rain Speed</label>
|
||||
<input is="emby-input" type="number" id="StormRainSpeed" name="StormRainSpeed" step="0.1" />
|
||||
<div class="fieldDescription">The speed of the falling rain.</div>
|
||||
</div>
|
||||
<div class="checkboxContainer checkboxContainer-withDescription">
|
||||
<label class="emby-checkbox-label">
|
||||
<input id="StormEnableLightning" name="StormEnableLightning" type="checkbox" is="emby-checkbox" />
|
||||
<span>Enable Lightning Flashes</span>
|
||||
</label>
|
||||
<div class="fieldDescription">Periodically flash the screen white to simulate lightning.</div>
|
||||
</div>
|
||||
</details>
|
||||
</div>
|
||||
|
||||
<div style="background-color: rgba(255, 255, 255, 0.05); border-left: 4px solid #00a4dc; border-radius: 4px; padding: 1em 1.5em; margin: 1.5em 0; display: flex; align-items: center; gap: 1em;">
|
||||
@@ -957,6 +1166,12 @@
|
||||
' <option value="spring">Spring</option>' +
|
||||
' <option value="carnival">Carnival (Confetti)</option>' +
|
||||
' <option value="cherryblossom">Cherry Blossom</option>' +
|
||||
' <option value="earthday">Earth Day</option>' +
|
||||
' <option value="eurovision">Eurovision</option>' +
|
||||
' <option value="piday">Pi-Day</option>' +
|
||||
' <option value="pride">Pride</option>' +
|
||||
' <option value="rain">Rain</option>' +
|
||||
' <option value="storm">Storm (Epilepsy Warning!)</option>' +
|
||||
' <option value="resurrection">Resurrection by Bioflash257</option>' +
|
||||
' </select>' +
|
||||
' </div>' +
|
||||
@@ -1166,6 +1381,46 @@
|
||||
document.querySelector('#EnableRandomCherryBlossomMobile').checked = config.CherryBlossom.EnableRandomCherryBlossomMobile;
|
||||
document.querySelector('#EnableDifferentDurationCherryBlossom').checked = config.CherryBlossom.EnableDifferentDuration;
|
||||
|
||||
// Earth Day
|
||||
document.querySelector('#EnableEarthDay').checked = config.EarthDay.EnableEarthDay;
|
||||
document.querySelector('#EarthDayVineCount').value = config.EarthDay.VineCount;
|
||||
|
||||
// Eurovision
|
||||
document.querySelector('#EnableEurovision').checked = config.Eurovision.EnableEurovision;
|
||||
document.querySelector('#EurovisionSymbolCount').value = config.Eurovision.SymbolCount;
|
||||
document.querySelector('#EnableRandomEurovision').checked = config.Eurovision.EnableRandomEurovision;
|
||||
document.querySelector('#EnableRandomEurovisionMobile').checked = config.Eurovision.EnableRandomEurovisionMobile;
|
||||
document.querySelector('#EnableDifferentDurationEurovision').checked = config.Eurovision.EnableDifferentDuration;
|
||||
document.querySelector('#EnableColorfulNotes').checked = config.Eurovision.EnableColorfulNotes;
|
||||
document.querySelector('#EurovisionColors').value = config.Eurovision.EurovisionColors;
|
||||
document.querySelector('#EurovisionGlowSize').value = config.Eurovision.EurovisionGlowSize;
|
||||
|
||||
// Pi-Day
|
||||
document.querySelector('#EnablePiDay').checked = config.PiDay.EnablePiDay;
|
||||
document.querySelector('#PiDaySymbolCount').value = config.PiDay.SymbolCount;
|
||||
document.querySelector('#EnableRandomPiDay').checked = config.PiDay.EnableRandomPiDay;
|
||||
document.querySelector('#EnableRandomPiDayMobile').checked = config.PiDay.EnableRandomPiDayMobile;
|
||||
document.querySelector('#EnableDifferentDurationPiDay').checked = config.PiDay.EnableDifferentDuration;
|
||||
|
||||
// Pride
|
||||
document.querySelector('#EnablePride').checked = config.Pride.EnablePride;
|
||||
document.querySelector('#PrideHeartCount').value = config.Pride.HeartCount;
|
||||
document.querySelector('#PrideHeartSize').value = config.Pride.HeartSize;
|
||||
document.querySelector('#PrideColorHeader').checked = config.Pride.ColorHeader;
|
||||
|
||||
// Rain
|
||||
document.querySelector('#EnableRain').checked = config.Rain.EnableRain;
|
||||
document.querySelector('#RaindropCount').value = config.Rain.RaindropCount;
|
||||
document.querySelector('#RaindropCountMobile').value = config.Rain.RaindropCountMobile;
|
||||
document.querySelector('#RainSpeed').value = config.Rain.RainSpeed;
|
||||
|
||||
// Storm
|
||||
document.querySelector('#EnableStorm').checked = config.Storm.EnableStorm;
|
||||
document.querySelector('#StormRaindropCount').value = config.Storm.RaindropCount;
|
||||
document.querySelector('#StormRaindropCountMobile').value = config.Storm.RaindropCountMobile;
|
||||
document.querySelector('#StormRainSpeed').value = config.Storm.RainSpeed;
|
||||
document.querySelector('#StormEnableLightning').checked = config.Storm.EnableLightning;
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
});
|
||||
@@ -1309,6 +1564,46 @@
|
||||
config.CherryBlossom.EnableRandomCherryBlossomMobile = document.querySelector('#EnableRandomCherryBlossomMobile').checked;
|
||||
config.CherryBlossom.EnableDifferentDuration = document.querySelector('#EnableDifferentDurationCherryBlossom').checked;
|
||||
|
||||
// Earth Day
|
||||
config.EarthDay.EnableEarthDay = document.querySelector('#EnableEarthDay').checked;
|
||||
config.EarthDay.VineCount = parseInt(document.querySelector('#EarthDayVineCount').value);
|
||||
|
||||
// Eurovision
|
||||
config.Eurovision.EnableEurovision = document.querySelector('#EnableEurovision').checked;
|
||||
config.Eurovision.SymbolCount = parseInt(document.querySelector('#EurovisionSymbolCount').value);
|
||||
config.Eurovision.EnableRandomEurovision = document.querySelector('#EnableRandomEurovision').checked;
|
||||
config.Eurovision.EnableRandomEurovisionMobile = document.querySelector('#EnableRandomEurovisionMobile').checked;
|
||||
config.Eurovision.EnableDifferentDuration = document.querySelector('#EnableDifferentDurationEurovision').checked;
|
||||
config.Eurovision.EnableColorfulNotes = document.querySelector('#EnableColorfulNotes').checked;
|
||||
config.Eurovision.EurovisionColors = document.querySelector('#EurovisionColors').value;
|
||||
config.Eurovision.EurovisionGlowSize = parseInt(document.querySelector('#EurovisionGlowSize').value);
|
||||
|
||||
// Pi-Day
|
||||
config.PiDay.EnablePiDay = document.querySelector('#EnablePiDay').checked;
|
||||
config.PiDay.SymbolCount = parseInt(document.querySelector('#PiDaySymbolCount').value);
|
||||
config.PiDay.EnableRandomPiDay = document.querySelector('#EnableRandomPiDay').checked;
|
||||
config.PiDay.EnableRandomPiDayMobile = document.querySelector('#EnableRandomPiDayMobile').checked;
|
||||
config.PiDay.EnableDifferentDuration = document.querySelector('#EnableDifferentDurationPiDay').checked;
|
||||
|
||||
// Pride
|
||||
config.Pride.EnablePride = document.querySelector('#EnablePride').checked;
|
||||
config.Pride.HeartCount = parseInt(document.querySelector('#PrideHeartCount').value);
|
||||
config.Pride.HeartSize = parseFloat(document.querySelector('#PrideHeartSize').value);
|
||||
config.Pride.ColorHeader = document.querySelector('#PrideColorHeader').checked;
|
||||
|
||||
// Rain
|
||||
config.Rain.EnableRain = document.querySelector('#EnableRain').checked;
|
||||
config.Rain.RaindropCount = parseInt(document.querySelector('#RaindropCount').value);
|
||||
config.Rain.RaindropCountMobile = parseInt(document.querySelector('#RaindropCountMobile').value);
|
||||
config.Rain.RainSpeed = parseFloat(document.querySelector('#RainSpeed').value);
|
||||
|
||||
// Storm
|
||||
config.Storm.EnableStorm = document.querySelector('#EnableStorm').checked;
|
||||
config.Storm.RaindropCount = parseInt(document.querySelector('#StormRaindropCount').value);
|
||||
config.Storm.RaindropCountMobile = parseInt(document.querySelector('#StormRaindropCountMobile').value);
|
||||
config.Storm.RainSpeed = parseFloat(document.querySelector('#StormRainSpeed').value);
|
||||
config.Storm.EnableLightning = document.querySelector('#StormEnableLightning').checked;
|
||||
|
||||
ApiClient.updatePluginConfiguration(SeasonalsConfigPage.pluginUniqueId, config).then(function (result) {
|
||||
Dashboard.processPluginConfigurationUpdateResult(result);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user