diff --git a/.env.dev.pcb b/.env.dev.pcb
index a0dd199..3e28db4 100644
--- a/.env.dev.pcb
+++ b/.env.dev.pcb
@@ -4,8 +4,9 @@ PDB=mypassword@1A
SEND_EMAIL=0
SEND_EMAIL_ORDERS=1
PORT=3000
-appTelegram_TEST=["1","17","18"]
-appTelegram=["1","17","18"]
+appTelegram_TEST=["1","17"]
+appTelegram=["1","17"]
+appTelegram_DEVELOP=["17"]
DOMAIN=mongodb://localhost:27017/
AUTH_MONGODB=1
MONGODB_USER=admin
diff --git a/.env.dev.riso b/.env.dev.riso
index 7d444cb..345948f 100644
--- a/.env.dev.riso
+++ b/.env.dev.riso
@@ -6,6 +6,7 @@ SEND_EMAIL_ORDERS=1
PORT=3000
appTelegram_TEST=["1","13"]
appTelegram=["1","13"]
+appTelegram_DEVELOP=["13"]
DOMAIN=mongodb://localhost:27017/
AUTH_MONGODB=1
MONGODB_USER=admin
diff --git a/.env.development b/.env.development
index 7d444cb..cc4b377 100644
--- a/.env.development
+++ b/.env.development
@@ -1,11 +1,12 @@
-DATABASE=test_FreePlanet
+DATABASE=test_PiuCheBuono
UDB=paofreeplanet
PDB=mypassword@1A
SEND_EMAIL=0
SEND_EMAIL_ORDERS=1
PORT=3000
-appTelegram_TEST=["1","13"]
-appTelegram=["1","13"]
+appTelegram_TEST=["1","17","18"]
+appTelegram=["1","17","18"]
+appTelegram_DEVELOP=["17"]
DOMAIN=mongodb://localhost:27017/
AUTH_MONGODB=1
MONGODB_USER=admin
@@ -40,4 +41,7 @@ FTPSERVER_USER=ftpusrsrv_
FTPSERVER_PWD=ftpmypwd@1A_
AUTH_NEW_SITES=123123123
SCRIPTS_DIR=admin_scripts
-CLOUDFLARE_TOKENS=[{"label":"Paolo.arena77@gmail.com","value":"M9EM309v8WFquJKpYgZCw-TViM2wX6vB3wlK6GD0"},{"label":"gruppomacro.com","value":"bqmzGShoX7WqOBzkXocoECyBkPq3GfqcM5t6VFd8"}]
\ No newline at end of file
+CLOUDFLARE_TOKENS=[{"label":"Paolo.arena77@gmail.com","value":"M9EM309v8WFquJKpYgZCw-TViM2wX6vB3wlK6GD0"},{"label":"gruppomacro.com","value":"bqmzGShoX7WqOBzkXocoECyBkPq3GfqcM5t6VFd8"}]
+MIAB_HOST=box.lamiaposta.org
+MIAB_ADMIN_EMAIL=admin@lamiaposta.org
+MIAB_ADMIN_PASSWORD=passpao1pabox@1A
\ No newline at end of file
diff --git a/.env.prod.pcb b/.env.prod.pcb
index 51b68b0..86d9723 100644
--- a/.env.prod.pcb
+++ b/.env.prod.pcb
@@ -7,8 +7,8 @@ PORT=3000
appTelegram_TEST=["17","18"]
appTelegram=["17","18"]
ENABLE_PUSHNOTIFICATION=1
-DIRECTORY_SERVER=/var/www/www.freeplanet_server
-SERVERDIR_WEBSITE=
+DIRECTORY_SERVER=/var/www/nodejs_piuchebuono_server
+SERVERDIR_WEBSITE=/var/www/piuchebuono.app
PORT_APP1="0"
DOMAIN=mongodb://localhost:32001/
AUTH_MONGODB=1
diff --git a/.env.test.pcb b/.env.test.pcb
index 33a7e8d..8d8f0e0 100644
--- a/.env.test.pcb
+++ b/.env.test.pcb
@@ -8,7 +8,7 @@ appTelegram_TEST=["17","18"]
appTelegram=["17","18"]
ENABLE_PUSHNOTIFICATION=1
DIRECTORY_SERVER=/var/www/nodejs_test.piuchebuono_server
-SERVERDIR_WEBSITE=test.piuchebuono.app
+SERVERDIR_WEBSITE=var/www/test.piuchebuono.app
PORT_APP1="0"
DOMAIN=mongodb://localhost:32002/
AUTH_MONGODB=1
diff --git a/.env.test.risosrv b/.env.test.risosrv
index 88ef5b8..224d31f 100644
--- a/.env.test.risosrv
+++ b/.env.test.risosrv
@@ -5,7 +5,7 @@ SEND_EMAIL=1
PORT=3001
ENABLE_PUSHNOTIFICATION=1
DIRECTORY_SERVER=/var/www/nodejs_test.riso_server
-SERVERDIR_WEBSITE=test.riso.app
+SERVERDIR_WEBSITE=/var/www/test.riso.app
PORT_APP1="0"
DOMAIN=mongodb://localhost:32012/
AUTH_MONGODB=1
diff --git a/deploy_solo1.sh b/deploy_solo1.sh
index 31f2852..e6549f9 100755
--- a/deploy_solo1.sh
+++ b/deploy_solo1.sh
@@ -13,6 +13,6 @@ fi
if [[ $risposta == "Y" || $risposta == "y" ]]; then
echo "Sincronizzazione di 1 FILE in corso..."
- rsync -avz -e 'ssh -p 8855' src/server/tools/general.js suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/src/server/tools/general.js
+ rsync -avz -e 'ssh -p 8855' src/server/tools/general.js suryapaolo@servereng:$SERVERDIR_WEBSITE/src/server/tools/general.js
echo "Sincronizzazione TERMINATA - SERVER PRODUZIONE!"
fi
diff --git a/deploynodejs_on_test2.sh b/deploynodejs_on_test2.sh
index 47b66e9..028042b 100755
--- a/deploynodejs_on_test2.sh
+++ b/deploynodejs_on_test2.sh
@@ -19,16 +19,16 @@ if [[ $risposta == "Y" || $risposta == "y" ]]; then
echo "Sincronizzazione in corso... $SERVERDIR_WEBSITE"
echo "Copiando .env.test2..."
- rsync -avz -e 'ssh -p 8855' .env.test2 suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/.env.test
+ rsync -avz -e 'ssh -p 8855' .env.test2 suryapaolo@servereng:$SERVERDIR_WEBSITE/.env.test
echo "Sincronizzazione in corso... src"
- rsync -avz -e 'ssh -p 8855' -a --exclude 'src/router/upload' src suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
- rsync -avz -e 'ssh -p 8855' package.json suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/package.json
- rsync -avz -e 'ssh -p 8855' css suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
- rsync -avz -e 'ssh -p 8855' docs suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
- rsync -avz -e 'ssh -p 8855' emails suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
- rsync -avz -e 'ssh -p 8855' images suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
- rsync -avz -e 'ssh -p 8855' plugins suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
- rsync -avz -e 'ssh -p 8855' sass suryapaolo@servereng:/var/www/$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' -a --exclude 'src/router/upload' src suryapaolo@servereng:$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' package.json suryapaolo@servereng:$SERVERDIR_WEBSITE/package.json
+ rsync -avz -e 'ssh -p 8855' css suryapaolo@servereng:$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' docs suryapaolo@servereng:$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' emails suryapaolo@servereng:$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' images suryapaolo@servereng:$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' plugins suryapaolo@servereng:$SERVERDIR_WEBSITE/
+ rsync -avz -e 'ssh -p 8855' sass suryapaolo@servereng:$SERVERDIR_WEBSITE/
echo "Sincronizzazione TERMINATA! - SERVER TEST2!"
fi
\ No newline at end of file
diff --git a/ecosystem.config.pcb.js b/ecosystem.config.pcb.js
index 3ce7fe5..4ad1ce1 100755
--- a/ecosystem.config.pcb.js
+++ b/ecosystem.config.pcb.js
@@ -2,7 +2,7 @@ module.exports = {
apps: [
{
name: "PRODUZIONE PiuCheBuono_ServerSide",
- script: "/var/www/www.freeplanet_server/src/server/server.js",
+ script: "/var/www/nodejs_piuchebuono_server/src/server/server.js",
ignore_watch: ["node_modules", "logs"],
interpreter: "/root/.nvm/versions/node/v16.19.0/bin/node",
//autorestart: true,
diff --git a/emails/ecommerce/makeorder/it/html.pug b/emails/ecommerce/makeorder/it/html.pug
index 1ea49dc..4525504 100755
--- a/emails/ecommerce/makeorder/it/html.pug
+++ b/emails/ecommerce/makeorder/it/html.pug
@@ -64,7 +64,7 @@ html
each rec in orders.items
- var descr = rec.order.product.productInfo.name
- - var img = rec.order.product.productInfo.img
+ - var img = rec.order.product.productInfo.imagefile
- var price = rec.order.price
- var after_price = rec.order.after_price
- var TotalPriceProduct = rec.order.TotalPriceProductstr
@@ -118,7 +118,7 @@ html
p Totale: #{TotalPriceProduct} €
if (note)
- p Note Aggiuntive: #{note}
+ p Note Aggiuntive: #{note}
p.sectionContentTitle.boldhigh.sectionTotal Totale Ordine: #{totalPrice} €
tr
diff --git a/emails/ecommerce/order_confirmed/it/html.pug b/emails/ecommerce/order_confirmed/it/html.pug
index ab75787..11364da 100755
--- a/emails/ecommerce/order_confirmed/it/html.pug
+++ b/emails/ecommerce/order_confirmed/it/html.pug
@@ -62,7 +62,7 @@ html
each rec in orders.items
- var descr = rec.order.product.productInfo.name
- - var img = rec.order.product.productInfo.img
+ - var img = rec.order.product.productInfo.imagefile
- var price = rec.order.product.price
- var after_price = rec.order.product.after_price
if (rec.order.gasordine)
@@ -117,7 +117,7 @@ html
p Totale: #{TotalPriceProduct} €
if (note)
- p Note Aggiuntive: #{note}
+ p Note Aggiuntive: #{note}
p.sectionContentTitle.boldhigh.sectionTotal Totale Ordine: #{totalPrice} €
tr
diff --git a/emails/ecommerce/order_consegnato/it/html.pug b/emails/ecommerce/order_consegnato/it/html.pug
index 127693f..1e2a61e 100755
--- a/emails/ecommerce/order_consegnato/it/html.pug
+++ b/emails/ecommerce/order_consegnato/it/html.pug
@@ -61,7 +61,7 @@ html
each rec in orders.items
- var descr = rec.order.product.productInfo.name
- - var img = rec.order.product.productInfo.img
+ - var img = rec.order.product.productInfo.imagefile
- var price = rec.order.product.price
- var after_price = rec.order.product.after_price
if (rec.order.gasordine)
@@ -116,7 +116,7 @@ html
p Totale: #{TotalPriceProduct} €
if (note)
- p Note Aggiuntive: #{note}
+ p Note Aggiuntive: #{note}
p.sectionContentTitle.boldhigh.sectionTotal Totale Ordine: #{totalPrice} €
tr
diff --git a/pcb_agg_server.js.sh b/pcb_agg_server.js.sh
index 7ea6547..2173dc3 100755
--- a/pcb_agg_server.js.sh
+++ b/pcb_agg_server.js.sh
@@ -2,9 +2,9 @@
source ./.env.prod.pcb
-echo "Sincronizzazione in corso PCB PRODUZIONE ... /var/www/$SERVERDIR_WEBSITE/"
+echo "Sincronizzazione in corso PCB PRODUZIONE ... $SERVERDIR_WEBSITE/"
echo ""
-rsync -avz -e 'ssh -p 8822' src pcbuser@pcb:/var/www/$SERVERDIR_WEBSITE/
+rsync -avz -e 'ssh -p 8822' src pcbuser@pcb:$SERVERDIR_WEBSITE/
echo "Sincronizzazione TERMINATA! - SERVER PCB!"
diff --git a/public/upload/products/avocado2.jpg b/public/upload/products/avocado2.jpg
new file mode 100644
index 0000000..eeb876e
Binary files /dev/null and b/public/upload/products/avocado2.jpg differ
diff --git a/src/server/models/productInfo.js b/src/server/models/productInfo.js
index 9b7a0ab..0684f3c 100755
--- a/src/server/models/productInfo.js
+++ b/src/server/models/productInfo.js
@@ -73,9 +73,15 @@ const productInfoSchema = new Schema({
icon: {
type: String,
},
- img: { // Se esiste img (sul server) visualizza questa, altrimenti vedi se esiste image_link
+ img: {
type: String,
},
+ imagefile: {
+ type: String,
+ },
+ vers_img: {
+ type: Number,
+ },
image_link: {
type: String,
},
@@ -221,7 +227,54 @@ module.exports.findAllIdApp = async function (idapp, code, id) {
module.exports.getProductByCode = function (idapp, code) {
return productInfo.findAllIdApp(idapp, code);
}
-module.exports.correggiProductTypes = async function() {
+module.exports.replaceProductImgToImageFile = async function () {
+ const ProductInfo = this;
+
+ let abilitaserver = false;
+
+ if (abilitaserver) {
+ // const result = await ProductInfo.updateMany({ "img": { $exists: true } }, { $rename: { 'img': 'imagefile' } });
+
+ // Trova tutti i documenti con il campo 'img' che esiste
+ const documents = await ProductInfo.find({ "img": { $exists: true } });
+
+ // Aggiorna ciascun documento
+ for (let doc of documents) {
+ if (doc.img && doc.img.startsWith('/upload/products/')) {
+ // Rimuovi il prefisso '/upload/products' dal campo `img`
+ doc.imagefile = doc.img.replace(/^\/upload\/products\//, '');
+ doc.img = undefined; // Può anche rimuovere il campo img corrente se desiderato
+ await doc.save(); // Salva il documento aggiornato
+ }
+ }
+
+ console.log(`Updated ${documents.length} document(s) with new imagefile paths.`);
+
+ } else {
+ const documents = await ProductInfo.find({ "imagefile": { $exists: true } });
+
+ // Aggiorna ciascun documento
+ for (let doc of documents) {
+ if (doc.imagefile && doc.imagefile.startsWith('upload/products/')) {
+ // Rimuovi il prefisso '/upload/products' dal campo `img`
+ doc.imagefile = doc.imagefile.replace(/^\upload\/products\//, '');
+ await doc.save(); // Salva il documento aggiornato
+ }
+ }
+
+ console.log(`Updated ${documents.length} document(s) with new imagefile paths.`);
+
+
+ }
+
+
+ await ProductInfo.updateMany({}, { 'vers_img': 0 });
+
+ console.log(`Updated ${result.modifiedCount} document(s).`);
+
+};
+
+module.exports.correggiProductTypes = async function () {
const ProductInfo = this;
const bulkOps = [];
diff --git a/src/server/router/admin_router.js b/src/server/router/admin_router.js
index a7583d4..d679f57 100755
--- a/src/server/router/admin_router.js
+++ b/src/server/router/admin_router.js
@@ -63,9 +63,9 @@ async function downloadImgIfMissing(productInfo) {
const img = 'upload/products/' + productInfo.image_link.split('/').pop();
const savePath = path.resolve(__dirname, img); // Sostituisci con il percorso dove salvare l'immagine
- if (!productInfo.img || !fs.existsSync(savePath)) {
+ if (!productInfo.imagefile || !fs.existsSync(savePath)) {
// Download image from the URL productInfo.image_link
- productInfo.img = img;
+ productInfo.imagefile = img;
const downloader = new ImageDownloader();
@@ -131,13 +131,13 @@ async function completaSettaggioProduct_AndProductInfo(arrcampi_productInfo, arr
}
if (!rec.hasOwnProperty('img') && product.code) {
- productInfo.img = 'upload/products/' + product.code + '.jpg';
+ productInfo.imagefile = 'upload/products/' + product.code + '.jpg';
} else {
if (rec.hasOwnProperty('img')) {
if (rec['img']) {
- productInfo.img = 'upload/products/' + rec['img'];
+ productInfo.imagefile = 'upload/products/' + rec['img'];
} else {
- productInfo.img = '';
+ productInfo.imagefile = '';
}
}
}
@@ -1042,6 +1042,10 @@ router.post('/import', authenticate, async (req, res) => {
product.active = true;
}
+ if (productInfo.productTypes.length === 1 && productInfo.productTypes[0] === undefined) {
+ productInfo.productTypes = [shared_consts.PRODUCTTYPE.PRODUCT];
+ }
+
let esisteindb = await ProductInfo.findOne({ code: productInfo.code }).lean();
// Update ProductInfo
diff --git a/src/server/router/index_router.js b/src/server/router/index_router.js
index 64a4484..813852c 100755
--- a/src/server/router/index_router.js
+++ b/src/server/router/index_router.js
@@ -957,7 +957,7 @@ router.patch('/chval', authenticate, async (req, res) => {
precRec = await mytable.findById(id);
}
- return await mytable.findByIdAndUpdate(id, { $set: fieldsvalue }).
+ return await mytable.findByIdAndUpdate(id, { $set: fieldsvalue }, { new: true }).
then(async (rec) => {
// tools.mylogshow(' REC TO MODIFY: ', rec);
if (!rec) {
diff --git a/src/server/router/users_router.js b/src/server/router/users_router.js
index 78438d3..ba2fa11 100755
--- a/src/server/router/users_router.js
+++ b/src/server/router/users_router.js
@@ -1650,6 +1650,9 @@ async function eseguiDbOp(idapp, mydata, locale, req, res) {
} else if (mydata.dbop === 'correggiProductTypes') {
await ProductInfo.correggiProductTypes();
+ } else if (mydata.dbop === 'replaceProductImgToImageFile') {
+
+ await ProductInfo.replaceProductImgToImageFile();
} else if (mydata.dbop === 'correggiCircuitiANull') {
diff --git a/src/server/telegram/telegrambot.js b/src/server/telegram/telegrambot.js
index 5ab412c..f6973e4 100755
--- a/src/server/telegram/telegrambot.js
+++ b/src/server/telegram/telegrambot.js
@@ -3,13 +3,12 @@ const tools = require('../tools/general');
const appTelegram = [tools.FREEPLANET, tools.RISO];
const appTelegram_TEST = [tools.FREEPLANET, tools.RISO];
-const appTelegram_DEVELOP = [tools.RISO];
-//const appTelegram_DEVELOP = [tools.PIUCHEBUONO];
+//const appTelegram_DEVELOP = [tools.RISO];
+const appTelegram_DEVELOP = [tools.PIUCHEBUONO];
const appTelegramFinti = ['2', tools.CNM];
const appTelegramDest = [tools.FREEPLANET, tools.FREEPLANET];
-
const appTeleg_BotOnGroup = [tools.IDAPP_BOTONGROUP];
//PIPPO
@@ -742,8 +741,8 @@ const MyTelegramBot = {
},
getAppTelegramDevelop: function () {
- if (process.env.appTelegram_TEST) {
- return JSON.parse(process.env.appTelegram_TEST);
+ if (process.env.appTelegram_DEVELOP) {
+ return JSON.parse(process.env.appTelegram_DEVELOP);
} else {
return appTelegram_DEVELOP;
}
diff --git a/src/server/tools/shared_nodejs.js b/src/server/tools/shared_nodejs.js
index ae8a13c..5ef79e6 100755
--- a/src/server/tools/shared_nodejs.js
+++ b/src/server/tools/shared_nodejs.js
@@ -1115,6 +1115,7 @@ module.exports = {
PDF: 107,
STREAMING: 108,
+ PRODUCT: 1000,
},
AccountType: {