From 643417eb1e0e9442d2bb53388070a319f8c0a68b Mon Sep 17 00:00:00 2001 From: balzack Date: Sat, 20 May 2023 21:12:41 -0700 Subject: [PATCH] synced api for updating node domain --- app/mobile/src/api/setNodeConfig.js | 4 ++-- app/mobile/src/dashboard/useDashboard.hook.js | 9 +++++---- doc/api.oa3 | 6 ++++++ 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app/mobile/src/api/setNodeConfig.js b/app/mobile/src/api/setNodeConfig.js index 65eb10aa..48b8dcc6 100644 --- a/app/mobile/src/api/setNodeConfig.js +++ b/app/mobile/src/api/setNodeConfig.js @@ -1,8 +1,8 @@ import { checkResponse, fetchWithTimeout } from './fetchUtil'; -export async function setNodeConfig(server, token, config) { +export async function setNodeConfig(server, token, config, updated) { let body = JSON.stringify(config); - let settings = await fetchWithTimeout(`https://${server}/admin/config?token=${token}`, { method: 'PUT', body }); + let settings = await fetchWithTimeout(`https://${server}/admin/config?token=${token}&domain=${updated}`, { method: 'PUT', body }); checkResponse(settings); } diff --git a/app/mobile/src/dashboard/useDashboard.hook.js b/app/mobile/src/dashboard/useDashboard.hook.js index 99063fa7..bca37c90 100644 --- a/app/mobile/src/dashboard/useDashboard.hook.js +++ b/app/mobile/src/dashboard/useDashboard.hook.js @@ -22,6 +22,7 @@ export function useDashboard(config, server, token) { accessUser: false, accessId: null, domain: null, + updated: false, storage: null, keyType: null, enableImage: true, @@ -60,7 +61,7 @@ export function useDashboard(config, server, token) { useEffect(() => { const { keyType, accountStorage, domain, enableImage, enableAudio, enableVideo, pushSupported, enableIce, iceUrl, iceUsername, icePassword } = config; - updateState({ keyType, storage: accountStorage.toString(), domain, enableImage, enableAudio, enableVideo, pushSupported, enableIce, iceUrl, iceUsername, icePassword }); + updateState({ keyType, storage: accountStorage.toString(), domain, enableImage, enableAudio, enableVideo, pushSupported, enableIce, iceUrl, iceUsername, icePassword, updated: false }); }, [config]); useEffect(() => { @@ -95,7 +96,7 @@ export function useDashboard(config, server, token) { updateState({ accessUser: false }); }, setDomain: (domain) => { - updateState({ domain }); + updateState({ domain, updated: true }); }, setStorage: (storage) => { updateState({ storage: Number(storage.replace(/[^0-9]/g, '')) }); @@ -128,9 +129,9 @@ export function useDashboard(config, server, token) { updateState({ icePassword }); }, saveConfig: async () => { - const { storage, domain, keyType, enableImage, enableAudio, enableVideo, enableIce, iceUrl, iceUsername, icePassword } = state; + const { storage, domain, updated, keyType, enableImage, enableAudio, enableVideo, enableIce, iceUrl, iceUsername, icePassword } = state; const config = { accountStorage: Number(storage), domain, keyType, enableImage, enableAudio, enableVideo, enableIce, iceUrl, iceUsername, icePassword }; - await setNodeConfig(server, token, config); + await setNodeConfig(server, token, config, updated); }, enableUser: async (accountId, enabled) => { await setAccountStatus(server, token, accountId, !enabled); diff --git a/doc/api.oa3 b/doc/api.oa3 index 4af191c0..dd368611 100644 --- a/doc/api.oa3 +++ b/doc/api.oa3 @@ -123,6 +123,12 @@ paths: required: true schema: type: string + - name: domain + in: query + description: if domain should be updated + required: false + schema: + type: boolean responses: '200': description: success