From dcc2a0ec0860bb06725f2f955a2e9ef14630ce4f Mon Sep 17 00:00:00 2001 From: Surya Paolo Date: Fri, 13 Sep 2024 19:42:48 +0200 Subject: [PATCH] - aggiornato l'Editor HTML --- .../public/upload/pages/home/raduno.jpg" | Bin 0 -> 45901 bytes .../public/upload/pages/home/sm_raduno.jpg" | Bin 0 -> 9521 bytes emails/admin/registration/it/html.pug | 2 + emails/registration/it/html.pug | 2 +- src/server/router/index_router.js | 14 +++-- src/server/router/users_router.js | 2 +- src/server/sendemail.js | 1 + src/server/tools/general.js | 51 ++++++++++-------- src/server/tools/shared_nodejs.js | 1 + src/server/version.txt | 2 +- 10 files changed, 48 insertions(+), 27 deletions(-) create mode 100644 "\t\n/Users/suryapaolo/myproject/newfreeplanet/public/upload/pages/home/raduno.jpg" create mode 100644 "\t\n/Users/suryapaolo/myproject/newfreeplanet/public/upload/pages/home/sm_raduno.jpg" diff --git "a/\t\n/Users/suryapaolo/myproject/newfreeplanet/public/upload/pages/home/raduno.jpg" "b/\t\n/Users/suryapaolo/myproject/newfreeplanet/public/upload/pages/home/raduno.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..2a576c1f84f70603418f12df122ef2287d557c22 GIT binary patch literal 45901 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 AGynhq literal 0 HcmV?d00001 diff --git "a/\t\n/Users/suryapaolo/myproject/newfreeplanet/public/upload/pages/home/sm_raduno.jpg" "b/\t\n/Users/suryapaolo/myproject/newfreeplanet/public/upload/pages/home/sm_raduno.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..0c8ae9be968d39f30f58ebc9251bd3269383dbf9 GIT binary patch literal 9521 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 literal 0 HcmV?d00001 diff --git a/emails/admin/registration/it/html.pug b/emails/admin/registration/it/html.pug index 71d941a..727a1a2 100755 --- a/emails/admin/registration/it/html.pug +++ b/emails/admin/registration/it/html.pug @@ -14,6 +14,8 @@ span Cellulare:  strong #{user.profile.intcode_cell} #{user.profile.cell}
span Nazionalità:  strong #{user.profile.nationality}
+span Gruppo:  + strong #{idMyGroup}
p
Saluti style(type="text/css"). diff --git a/emails/registration/it/html.pug b/emails/registration/it/html.pug index 6304c9d..538e1ee 100755 --- a/emails/registration/it/html.pug +++ b/emails/registration/it/html.pug @@ -6,7 +6,7 @@ span hai dimenticato la Password? :  strong Trovala qui
span Email:  strong #{emailto}
-p Per confermare la registrazione clicca sul bottone, oppure CLICCA QUI +p Per confermare la registrazione clicca sul bottone, oppure su questo link: #{strlinkreg} div.divbtn button.btn.btn-lg Verifica Registrazione diff --git a/src/server/router/index_router.js b/src/server/router/index_router.js index 256946b..4336509 100755 --- a/src/server/router/index_router.js +++ b/src/server/router/index_router.js @@ -658,11 +658,15 @@ router.post('/setsubrec', authenticate, (req, res) => { }); -router.post('/gettable', authenticate, (req, res) => { +router.post('/gettable', authenticate_noerror, (req, res) => { let params = req.body; params.table = sanitizeHtml(params.table); + if (!shared_consts.TABLES_ENABLE_GETTABLE_FOR_NOT_LOGGED.includes(params.table) && !req.user) { + return res.status(403).send({}); + } + let idapp = req.user ? req.user.idapp : sanitizeHtml(params.idapp); const mytable = globalTables.getTableByTableName(params.table); //console.log('mytable', mytable); @@ -1909,15 +1913,19 @@ function uploadFile(req, res, version) { if (!tools.sulServer()) { + // Se faccio eseguire questo in Locale, lui mi fa l'aggiornamento della pagina, quindi poi non posso salvare! + // allora mi conviene che lo faccio dopo, manualmente. + console.log('Dovresti copiare fromfile', fromfile, 'tofile', tofile); - await tools.execScriptNoOutput('sudo cp -R ' + fromfile + ' ' + tofile) + 'sudo cp -R ' + fromfile + ' ' + tofile + // await tools.execScriptNoOutput('sudo cp -R ' + fromfile + ' ' + tofile) res.end(); return; } // Move in the folder application ! - tools.move(fromfile, tofile, (err) => { + await tools.move(fromfile, tofile, (err) => { if (err) { console.log('err uploadDir:', err); res.status(400).send(); diff --git a/src/server/router/users_router.js b/src/server/router/users_router.js index 39e3e32..b336379 100755 --- a/src/server/router/users_router.js +++ b/src/server/router/users_router.js @@ -117,7 +117,7 @@ router.post('/', async (req, res) => { if (!tools.isAlphaNumericAndSpecialCharacter(body.username) || body.email.length < 6 || - body.username.length < 5 || body.password.length < 5) { + body.username.length < 4 || body.password.length < 5) { await tools.snooze(5000); console.log('Username non valido in Registrazione: ' + body.username); res.status(400). diff --git a/src/server/sendemail.js b/src/server/sendemail.js index 29791ef..d1428ac 100755 --- a/src/server/sendemail.js +++ b/src/server/sendemail.js @@ -741,6 +741,7 @@ module.exports = { mylocalsconf.name = user.name; mylocalsconf.surname = user.surname; mylocalsconf.aportador_solidario = user.aportador_solidario ? user.aportador_solidario : ''; + mylocalsconf.idMyGroup = user.idMyGroup; mylocalsconf.emailto = user.email; mylocalsconf.hashemail = tools.getHash(user.email); mylocalsconf.user = user; diff --git a/src/server/tools/general.js b/src/server/tools/general.js index 9ddf00e..e6a41a1 100755 --- a/src/server/tools/general.js +++ b/src/server/tools/general.js @@ -3877,36 +3877,45 @@ module.exports = { this.writelogfile(mystr, FILENAVE); }, - move(oldPath, newPath, callback) { - - fs.rename(oldPath, newPath, function (err) { - if (err) { - if (err.code === 'EXDEV') { - copy(); - } else { - callback(err); - } - return; + async move(oldPath, newPath, callback) { + try { + const ris = await fs.promises.rename(oldPath, newPath); + console.log('... File Rinominato:', oldPath, 'in:', newPath, 'ris', ris); + callback(); // Chiamare il callback senza errori + } catch (err) { + if (err.code === 'EXDEV') { + await copy(); // Se EXDEV, utilizza la funzione copy } else { - console.log(' ... File Rinominato', oldPath, 'in:', newPath); + console.error('Errore durante lo spostamento:', err); + callback(err); // Passa l'errore al callback } + } - callback(); - }); - - function copy() { + async function copy() { const readStream = fs.createReadStream(oldPath); const writeStream = fs.createWriteStream(newPath); - readStream.on('error', callback); - writeStream.on('error', callback); - - readStream.on('close', function () { - console.log('cancella file già copiato', oldPath); - fs.unlink(oldPath, callback); + readStream.on('error', (err) => { + console.error('Errore nella lettura del file:', err); + callback(err); // Passa l'errore al callback + }); + writeStream.on('error', (err) => { + console.error('Errore nella scrittura del file:', err); + callback(err); // Passa l'errore al callback }); readStream.pipe(writeStream); + + writeStream.on('finish', async () => { + console.log('File copiato, ora rimuovo il file di origine:', oldPath); + try { + await fs.promises.unlink(oldPath); // Rimuovi il file originale + callback(); // Chiama il callback al termine + } catch (err) { + console.error('Errore nella rimozione del file originale:', err); + callback(err); // Passa l'errore al callback + } + }); } }, diff --git a/src/server/tools/shared_nodejs.js b/src/server/tools/shared_nodejs.js index d2354e4..842962d 100755 --- a/src/server/tools/shared_nodejs.js +++ b/src/server/tools/shared_nodejs.js @@ -203,6 +203,7 @@ module.exports = { TABLES_GROUPS_NOTIFICATION: ['mygroups'], TABLES_CIRCUITS_NOTIFICATION: ['circuits'], + TABLES_ENABLE_GETTABLE_FOR_NOT_LOGGED: ['attivitas'], TABLES_NUM_AS_ID_NUMBER: [], diff --git a/src/server/version.txt b/src/server/version.txt index 4ded4f9..633e893 100644 --- a/src/server/version.txt +++ b/src/server/version.txt @@ -1 +1 @@ -1.0.58 \ No newline at end of file +1.0.60 \ No newline at end of file