| 722 | if (configContent) { |
| 723 | const config = JSON.parse(configContent); |
| 724 | if (config.users && config.users.length > 0) { |
| 725 | configUser = config.users[0].username; |
| 726 | configPass = config.users[0].password; |
| 727 | } |
| 728 | } |
| 729 | } catch (e) { |
| 730 | console.error("Error reading config:", e); |
| 731 | } |
| 732 | } |
| 733 | |
| 734 | // 3. Merge (Prefer DB) |
| 735 | // If DB is missing username but has password (e.g. after setpass), use config username |
| 736 | const finalUser = dbUser || configUser; |
| 737 | // If DB is missing password but has username (e.g. after setuser), use config password (if available/valid) |
| 738 | const finalPass = dbPass || configPass; |
| 739 | |
| 740 | if (finalUser && finalPass) { |