Fix API keys not loading after reload, auto-save before validate (v2.3.5)

- Admin panel now loads API keys from /me/settings endpoint (not /me)
- Validate buttons auto-save keys first so validation uses current values
- Keys persist and display correctly after page reload
This commit is contained in:
Maurice
2026-03-19 21:27:34 +01:00
parent fd6fc9e71f
commit 74be63555d
2 changed files with 8 additions and 4 deletions
+7 -3
View File
@@ -78,9 +78,9 @@ export default function AdminPage() {
const loadApiKeys = async () => { const loadApiKeys = async () => {
try { try {
const data = await authApi.me() const data = await authApi.getSettings()
setMapsKey(data.user?.maps_api_key || '') setMapsKey(data.settings?.maps_api_key || '')
setWeatherKey(data.user?.openweather_api_key || '') setWeatherKey(data.settings?.openweather_api_key || '')
} catch (err) { } catch (err) {
// ignore // ignore
} }
@@ -118,6 +118,8 @@ export default function AdminPage() {
const handleValidateKeys = async () => { const handleValidateKeys = async () => {
setValidating({ maps: true, weather: true }) setValidating({ maps: true, weather: true })
try { try {
// Save first so validation uses the current values
await updateApiKeys({ maps_api_key: mapsKey, openweather_api_key: weatherKey })
const result = await authApi.validateKeys() const result = await authApi.validateKeys()
setValidation(result) setValidation(result)
} catch (err) { } catch (err) {
@@ -130,6 +132,8 @@ export default function AdminPage() {
const handleValidateKey = async (keyType) => { const handleValidateKey = async (keyType) => {
setValidating(prev => ({ ...prev, [keyType]: true })) setValidating(prev => ({ ...prev, [keyType]: true }))
try { try {
// Save first so validation uses the current values
await updateApiKeys({ maps_api_key: mapsKey, openweather_api_key: weatherKey })
const result = await authApi.validateKeys() const result = await authApi.validateKeys()
setValidation(prev => ({ ...prev, [keyType]: result[keyType] })) setValidation(prev => ({ ...prev, [keyType]: result[keyType] }))
} catch (err) { } catch (err) {
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "nomad-server", "name": "nomad-server",
"version": "2.3.4", "version": "2.3.5",
"main": "src/index.js", "main": "src/index.js",
"scripts": { "scripts": {
"start": "node --experimental-sqlite src/index.js", "start": "node --experimental-sqlite src/index.js",