Commit Graph
19 Commits
Author SHA1 Message Date
Chuck 8803556920 Fix: Add array-of-objects functions after IIFE ends
The functions were removed from inside the IIFE but never added after it.
Also removed orphaned code that was causing syntax errors.
2026-01-05 14:19:08 -05:00
Chuck 8e86e58a2d Update cache version for IIFE fix 2026-01-05 14:17:50 -05:00
Chuck 1fa8e6ae50 Move array-of-objects functions outside IIFE to make them globally available
The functions were inside the IIFE scope, making them inaccessible from
inline event handlers. Moving them outside the IIFE ensures they're
available on window when the script loads.
2026-01-05 14:17:43 -05:00
Chuck e2b0ab2002 Update cache version for array-of-objects fix 2026-01-05 14:16:55 -05:00
Chuck b38027d7ad Fix: Wrap array-of-objects functions in window check and move outside IIFE
Ensure functions are available globally by wrapping them in a window check
and ensuring they're defined outside any IIFE scope. Also fix internal
function calls to use window.updateArrayObjectData for consistency.
2026-01-05 14:16:52 -05:00
Chuck 2993e67eb3 Add debug logging to diagnose addArrayObjectItem availability 2026-01-05 14:06:55 -05:00
Chuck be62ac62f9 Update cache version for syntax fix 2026-01-05 13:58:57 -05:00
Chuck ecea13909d Fix syntax error: Missing indentation for html += in array else block
The html += statement was outside the else block, causing a syntax error.
Fixed by properly indenting it inside the else block.
2026-01-05 13:58:53 -05:00
Chuck 6da2059b8c Use window. prefix for array-of-objects JavaScript functions
Explicitly use window.addArrayObjectItem, window.removeArrayObjectItem, etc.
in the template to ensure the functions are accessible from inline event handlers.
Also add safety checks to prevent errors if functions aren't loaded yet.
2026-01-04 20:20:32 -05:00
Chuck 4d7274b938 Add array-of-objects widget support to server-side template
Add detection and rendering for array-of-objects in the Jinja2 template (plugin_config.html).
This enables the custom_feeds widget to display properly with name, URL, enabled checkbox, and logo upload fields.

The widget is detected by checking if prop.items.type == 'object' && prop.items.properties,
and is rendered before the file-upload widget check.
2026-01-04 20:08:16 -05:00
Chuck 893436f2d3 Update cache version again 2026-01-04 19:57:25 -05:00
Chuck 7d67495285 Remove duplicate array-of-objects check 2026-01-04 19:57:19 -05:00
Chuck a9351f1c66 Update cache-busting version for array-of-objects fix 2026-01-04 19:57:05 -05:00
Chuck d7b9c47cd8 Fix: Move array-of-objects detection before file-upload/checkbox checks
Move the array-of-objects widget detection to the top of the array handler so it's checked before file-upload and checkbox-group widgets. This ensures custom_feeds is properly detected as an array of objects.
2026-01-04 19:56:11 -05:00
Chuck 668fadb7d5 Update plugins_manager.js cache-busting version
Update version parameter to force browser to load new JavaScript with array-of-objects widget support.
2026-01-04 19:49:10 -05:00
Chuck d01c34384d Add array-of-objects widget support to web UI
- Add support for rendering arrays of objects in web UI (for custom_feeds)
- Implement add/remove/update functions for array-of-objects widgets
- Support file-upload widgets within array items
- Update form data handling to support array JSON data fields
2026-01-04 19:17:56 -05:00
Chuck 6b81873024 fix(plugins): Add onchange handlers to existing custom feed inputs
- Add onchange handlers to key and value inputs for existing patternProperties fields
- Fixes bug where editing existing custom RSS feeds didn't save changes
- Ensures hidden JSON input field is updated when users edit feed entries
- Affects all plugins using patternProperties (custom_feeds, feed_logo_map, etc.)
2026-01-04 16:52:19 -05:00
Chuck 5241bbf89c fix(7-segment-clock): Update submodule with separator and spacing fixes 2026-01-03 18:06:51 -05:00
Chuck 079598b284 fix(plugins): Remove compatible_versions requirement from single plugin install
Remove compatible_versions from required fields in install_from_url method
to match install_plugin behavior. This allows installing plugins from URLs
without manifest version requirements, consistent with store plugin installation.
2026-01-03 10:47:21 -05:00