diff --git a/app.js b/app.js index 8ceceb6..61830ed 100644 --- a/app.js +++ b/app.js @@ -7,7 +7,7 @@ import Corestore from 'corestore'; import { EventEmitter } from 'events'; import fs from "fs"; -const storagePath = `./storage/storage_${Date.now()}_${Math.random().toString(36).substring(2, 15)}`; +const storagePath = `./storage/`; const store = new Corestore(storagePath); const drive = new Hyperdrive(store); @@ -99,9 +99,14 @@ async function initialize() { if (configExists) { config = JSON.parse(fs.readFileSync("./config.json", 'utf8')); console.log("Read config from file:", config) + // Update port in URLs + config.userAvatar = updatePortInUrl(config.userAvatar); config.rooms.forEach(room => { addRoomToListWithoutWritingToConfig(room); }); + for (let user in registeredUsers) { + registeredUsers[user] = updatePortInUrl(registeredUsers[user]); + } } const registerDiv = document.querySelector('#register'); @@ -175,7 +180,7 @@ function registerUser(e) { const buffer = new Uint8Array(event.target.result); await drive.put(`/icons/${regUsername}.png`, buffer); config.userAvatar = `http://localhost:${servePort}/icons/${regUsername}.png`; // Set the correct URL - registeredUsers[regUsername] = config.userAvatar; + registeredUsers[regUsername] = `http://localhost:${servePort}/icons/${regUsername}.png`; // Use placeholder URL localStorage.setItem('registeredUsers', JSON.stringify(registeredUsers)); continueRegistration(regUsername); }; @@ -438,4 +443,11 @@ function writeConfigToFile(filePath) { }); } +function updatePortInUrl(url) { + if (!url) return url; + const urlObject = new URL(url); + urlObject.port = servePort; + return urlObject.toString(); +} + initialize();