This commit is contained in:
Mateusz Gruszczyński
2026-09-17 21:46:10 +02:00
parent cafbf6e5fa
commit 7d9e6c8189
20 changed files with 281 additions and 71 deletions
+5
View File
@@ -547,16 +547,19 @@ function updateAutomationTargetFields() {
$('#automationGroupPreset').hidden = !groupTarget;
$('#automationTargetTemperature').hidden = groupTarget;
$('#automationDeviceSwingOptions').hidden = groupTarget;
$('#automationDeviceFeatureOptions').hidden = groupTarget;
$('#automationGroupHint').hidden = !groupTarget;
form.action_device_id.required = !groupTarget;
form.action_group_id.required = groupTarget;
form.action_target_temperature.disabled = groupTarget;
form.action_swing_vertical.disabled = groupTarget;
form.action_swing_horizontal.disabled = groupTarget;
['action_fan_speed', 'action_quiet', 'action_turbo', 'action_light', 'action_air', 'action_xfan', 'action_health', 'action_sleep'].forEach(name => { if (form.elements[name]) form.elements[name].disabled = groupTarget; });
if (groupTarget) {
form.action_target_temperature.value = '';
form.action_swing_vertical.value = '';
form.action_swing_horizontal.value = '';
['action_fan_speed', 'action_quiet', 'action_turbo', 'action_light', 'action_air', 'action_xfan', 'action_health', 'action_sleep'].forEach(name => { if (form.elements[name]) form.elements[name].value = ''; });
}
[...form.action_mode.options].forEach(option => {
if (!['dry', 'fan'].includes(option.value)) return;
@@ -703,6 +706,8 @@ function populateAutomation(id) {
form.action_target_temperature.value = item.action.target_temperature ?? '';
form.action_swing_vertical.value = item.action.swing_vertical == null ? '' : String(item.action.swing_vertical);
form.action_swing_horizontal.value = item.action.swing_horizontal == null ? '' : String(item.action.swing_horizontal);
form.action_fan_speed.value = item.action.fan_speed == null ? '' : String(item.action.fan_speed);
['quiet', 'turbo', 'light', 'air', 'xfan', 'health', 'sleep'].forEach(key => { const field = form.elements[`action_${key}`]; if (field) field.value = item.action[key] == null ? '' : String(item.action[key]); });
form.enabled.checked = item.enabled;
updateAutomationTargetFields();
openDialog('automationDialog');