fix: skip device config save when sync is enabled — prevents 'Invalid device config' blocking settings save
This commit is contained in:
+13
-11
@@ -459,18 +459,20 @@ form.addEventListener('submit', async event => {
|
||||
}
|
||||
populateRemoteConfig(remoteConfigResult);
|
||||
|
||||
// Save device config
|
||||
const deviceConfigResponse = await fetch('/api/device-config', {
|
||||
method: 'POST',
|
||||
headers: {'Content-Type': 'application/json'},
|
||||
body: JSON.stringify(deviceConfigPayload()),
|
||||
});
|
||||
const deviceConfigResult = await deviceConfigResponse.json();
|
||||
if (!deviceConfigResponse.ok) {
|
||||
applyErrors(deviceConfigResult.fields || {});
|
||||
throw new Error(deviceConfigResult.error || `HTTP ${deviceConfigResponse.status}`);
|
||||
// Save device config (skip if sync is enabled — server is source of truth)
|
||||
if (!fields.deviceSyncEnabled.checked) {
|
||||
const deviceConfigResponse = await fetch('/api/device-config', {
|
||||
method: 'POST',
|
||||
headers: {'Content-Type': 'application/json'},
|
||||
body: JSON.stringify(deviceConfigPayload()),
|
||||
});
|
||||
const deviceConfigResult = await deviceConfigResponse.json();
|
||||
if (!deviceConfigResponse.ok) {
|
||||
applyErrors(deviceConfigResult.fields || {});
|
||||
throw new Error(deviceConfigResult.error || `HTTP ${deviceConfigResponse.status}`);
|
||||
}
|
||||
populateDeviceConfig(deviceConfigResult);
|
||||
}
|
||||
populateDeviceConfig(deviceConfigResult);
|
||||
|
||||
showMessage('Settings saved.', 'success');
|
||||
} catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user