Fix bug not setting new spotify account as active

This commit is contained in:
Phlogi
2025-08-21 20:52:39 +02:00
parent 0456c25830
commit 7a51c44633
2 changed files with 15 additions and 0 deletions

View File

@@ -129,6 +129,20 @@ async def handle_create_credential(service: str, name: str, request: Request, cu
# For Deezer, it expects 'arl' and 'region' # For Deezer, it expects 'arl' and 'region'
# Validation is handled within create_credential utility function # Validation is handled within create_credential utility function
result = create_credential(service, name, data) result = create_credential(service, name, data)
# set as active Spotify account if none is set
if service == "spotify":
try:
from routes.utils.celery_config import get_config_params as get_main_config_params
from routes.system.config import save_config
config = get_main_config_params()
# The field is likely "spotify" (as used in frontend)
if not config.get("spotify"):
config["spotify"] = name
save_config(config)
except Exception as e:
logger.warning(f"Could not set new Spotify account '{name}' as active: {e}")
return { return {
"message": f"Credential for '{name}' ({service}) created successfully.", "message": f"Credential for '{name}' ({service}) created successfully.",
"details": result, "details": result,

View File

@@ -85,6 +85,7 @@ export function AccountsTab() {
onSuccess: () => { onSuccess: () => {
toast.success("Account added successfully!"); toast.success("Account added successfully!");
queryClient.invalidateQueries({ queryKey: ["credentials", activeService] }); queryClient.invalidateQueries({ queryKey: ["credentials", activeService] });
queryClient.invalidateQueries({ queryKey: ["config"] }); // Invalidate config to update active Spotify account in UI
setIsAdding(false); setIsAdding(false);
setSubmitError(null); setSubmitError(null);
reset(); reset();