mirror of
https://github.com/ZoneMinder/zoneminder.git
synced 2026-09-23 19:15:38 -04:00
updateMonitorDimensions never ran when typing in the capture Width/Height inputs. initPage() bound it via el.oninput, then a later querySelectorAll whose selector list also matches newMonitor[Width]/[Height] overwrote that same property with buffer_setting_oninput. Bind both with addEventListener so they coexist. The function would have thrown even once it fired: - option.size() was removed in jQuery 3.0 and the classic skin ships jQuery 3.7.1, so the lookup that picks between a matching resolution and Custom raised a TypeError. Use option.length. - form.elements['preserveAspectRatio'] is undefined for the WebSite monitor type, which renders Width/Height without that checkbox. Guard the access. Drop the inline onkeyup handlers from _monitor_source_nvsocket.php. That file is included server-side before initPage() runs, so its inputs are already covered by the binding and the inline handler only made updateMonitorDimensions fire twice. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Modern ZoneMinder Skin
This web frontend to ZoneMinder is a complete rewrite of the classic frontend, based on CakePHP.