This commit is contained in:
andrei-mihnea-cerbu
2024-04-23 20:59:23 +03:00
parent 677295e176
commit 754ca11887
20 changed files with 106 additions and 20 deletions
+7
View File
@@ -72,6 +72,13 @@ const checkForServerConnection = async () => {
} catch (error) {
console.error("Error:", error);
return false;
} finally{
try{
fs.unlinkSync(pathToIpConfig);
}
catch{
}
}
};
+4 -3
View File
@@ -19,9 +19,10 @@ document.addEventListener('DOMContentLoaded', async function () {
await window.electronAPI.writeFile('ipConfig.json', JSON.stringify({ip: ipAddress}));
fadeOut('login.html');
})
.catch(error => {
console.error('Error:', error.message);
throw new Error(error.message);
.catch(async error => {
await window.electronAPI.showAlert('Can\'t reach server.')
.then(() => console.log('Alert window opened'))
.catch(error => console.error('Error showing alert:', error));
});
} catch (error) {
console.error('Error:', error.message);
@@ -6,13 +6,26 @@ document.addEventListener("DOMContentLoaded", async function () {
const uploadPromises = uploadData.users.map(async (user) => {
try {
const response = await fetch(uploadData.filePath);
if (!response.ok) {
throw new Error('Failed to fetch file');
}
const file = await response.blob();
if (!file.size) {
throw new Error('File is empty or could not be loaded');
}
const formData = new FormData();
const file = await fetch(uploadData.filePath).then(response => response.blob());
formData.append('file', file);
formData.append('idUser', user.userId);
formData.append('nameOfFile', user.fileName);
formData.append('sizeOfFile', file.size);
// Debugging FormData content
for (let [key, value] of formData.entries()) {
console.log(key, value instanceof Blob ? `Blob (${value.size} bytes)` : value);
}
await timeout(5000); // Timeout to simulate delay or wait
const url = `http://${user.destIp}:${user.destPort}/upload`;
const uploadResponse = await fetch(url, {
method: 'POST',
@@ -20,7 +33,13 @@ document.addEventListener("DOMContentLoaded", async function () {
});
if (!uploadResponse.ok) {
throw new Error(`HTTP error during file upload to ${user.userId}: status ${uploadResponse.status}`);
try {
const errorResponse = await uploadResponse.json();
throw new Error(`HTTP error during file upload to ${user.userId}: ${errorResponse.message}`);
} catch (parseError) {
const responseText = await uploadResponse.text();
throw new Error(`HTTP error during file upload to ${user.userId}: ${responseText}`);
}
}
return {userId: user.userId, success: true, message: `Upload successful for user ${user.userId}`};
@@ -32,9 +51,7 @@ document.addEventListener("DOMContentLoaded", async function () {
const results = await Promise.all(uploadPromises);
results.forEach(result => {
if (result.success) {
console.log(result.message);
}
console.log(result.message);
});
console.log('All files processed. Check the console for detailed results.');
} catch (error) {
@@ -49,6 +66,6 @@ document.addEventListener("DOMContentLoaded", async function () {
}
await performUploads();
await timeout(10000);
await timeout(10000); // Consider the necessity of this delay in production
fadeOut('main_menu.html');
});
});