From f146b36173b85b6fe14d72e7985935ea716c2d92 Mon Sep 17 00:00:00 2001 From: Surya Paolo Date: Fri, 13 Jun 2025 17:45:57 +0200 Subject: [PATCH] - Sistemato link pdf che ogni volta che si aggiorna prendeva il PDF dalla cache... - Raccolta Cataloghi, procedura che li AUTO genera in automatico. --- .env | 4 +- index.html | 2 +- package.json | 14 +- .../comunitanuovomondo.app/package.json | 8 +- .../_ALL_SITES/freeplanet.app/package.json | 12 +- .../_ALL_SITES/gruppomacro.app/package.json | 14 +- scripts/_ALL_SITES/kolibrilab.it/package.json | 12 +- .../nutriben-naturopatia.it/package.json | 14 +- .../_ALL_SITES/piuchebuono.app/package.json | 12 +- scripts/_ALL_SITES/riso.app/package.json | 12 +- src-pwa/custom-service-worker.js | 2 +- .../CCatalogoCard/CCatalogoCard.vue | 2 +- .../CModifTrafiletto/CModifTrafiletto.ts | 6 +- .../CMyRecCatalog/CMyRecCatalog.vue | 11 +- src/components/CProductTable/CProductTable.ts | 13 +- .../CProductTable/CProductTable.vue | 2 +- src/mixins/mixin-base.ts | 2 +- src/model/GlobalStore.ts | 4 +- src/store/CatalogStore.ts | 18 +- src/store/Modules/tools.ts | 4 +- src/views/ecommerce/catalogo/catalogo.ts | 17 -- src/views/ecommerce/catalogo/catalogo.vue | 15 +- .../raccoltacataloghi/raccoltacataloghi.ts | 171 +++++++++++++----- .../raccoltacataloghi/raccoltacataloghi.vue | 170 +++++++++++++---- 24 files changed, 353 insertions(+), 188 deletions(-) diff --git a/.env b/.env index 1a565784..e9ed0f81 100755 --- a/.env +++ b/.env @@ -1,6 +1,6 @@ -VITE_APP_VERSION="1.2.54" +VITE_APP_VERSION="1.2.56" VITE_LANG_DEFAULT="it" VITE_PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF" -VITE_SERVICE_WORKER_FILE="sw-1.2.54.js" +VITE_SERVICE_WORKER_FILE="sw-1.2.56.js" VITE_PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a" VITE_VUE_ROUTER_MODE="history" \ No newline at end of file diff --git a/index.html b/index.html index 171e14b8..9767fcef 100755 --- a/index.html +++ b/index.html @@ -10,7 +10,7 @@ - + diff --git a/package.json b/package.json index 27430c3a..a236f3de 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gruppomacro", - "version": "1.2.54", + "version": "1.2.56", "description": "Gruppo Macro", "productName": "Gruppo Macro", "author": "Surya", @@ -9,20 +9,20 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "PORT=8089 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8089 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", - "buildspa": "APP_VERSION='1.2.54' quasar build -m spa", + "buildspa": "APP_VERSION='1.2.56' quasar build -m spa", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/scripts/_ALL_SITES/comunitanuovomondo.app/package.json b/scripts/_ALL_SITES/comunitanuovomondo.app/package.json index 2e523880..8a0933fc 100755 --- a/scripts/_ALL_SITES/comunitanuovomondo.app/package.json +++ b/scripts/_ALL_SITES/comunitanuovomondo.app/package.json @@ -1,6 +1,6 @@ { "name": "cnm", - "version": "1.2.54", + "version": "1.2.56", "description": "Comunita Nuovo Mondo", "productName": "ComunitaNuovoMondo", "author": "Surya", @@ -9,7 +9,7 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "PORT=8083 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8083 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", "buildpwa": "NODE_ENV=production quasar build -m pwa", @@ -21,8 +21,8 @@ "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/scripts/_ALL_SITES/freeplanet.app/package.json b/scripts/_ALL_SITES/freeplanet.app/package.json index 4d714f5d..444647e2 100755 --- a/scripts/_ALL_SITES/freeplanet.app/package.json +++ b/scripts/_ALL_SITES/freeplanet.app/package.json @@ -1,6 +1,6 @@ { "name": "freeplanet", - "version": "1.2.54", + "version": "1.2.56", "description": "freeplanet", "productName": "freeplanet", "author": "Surya", @@ -9,11 +9,11 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "PORT=8087 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8087 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", "buildspa": "quasar build -m spa", @@ -21,8 +21,8 @@ "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8097 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8087 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8097 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8087 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/scripts/_ALL_SITES/gruppomacro.app/package.json b/scripts/_ALL_SITES/gruppomacro.app/package.json index c0831d2b..37275782 100755 --- a/scripts/_ALL_SITES/gruppomacro.app/package.json +++ b/scripts/_ALL_SITES/gruppomacro.app/package.json @@ -1,6 +1,6 @@ { "name": "gruppomacro", - "version": "1.2.54", + "version": "1.2.56", "description": "Gruppo Macro", "productName": "Gruppo Macro", "author": "Surya", @@ -9,20 +9,20 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "PORT=8089 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8089 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", - "buildspa": "APP_VERSION='1.2.54' quasar build -m spa", + "buildspa": "APP_VERSION='1.2.56' quasar build -m spa", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/scripts/_ALL_SITES/kolibrilab.it/package.json b/scripts/_ALL_SITES/kolibrilab.it/package.json index 74c1b1b4..a7e101e5 100755 --- a/scripts/_ALL_SITES/kolibrilab.it/package.json +++ b/scripts/_ALL_SITES/kolibrilab.it/package.json @@ -1,6 +1,6 @@ { "name": "kolibrilab", - "version": "1.2.54", + "version": "1.2.56", "description": "kolibrilab", "productName": "kolibrilab", "author": "Surya Paolo", @@ -8,11 +8,11 @@ "keywords": [], "license": "MIT", "scripts": { - "dev": "PORT=8083 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8083 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", "buildspa": "quasar build -m spa", @@ -20,8 +20,8 @@ "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint --ext .ts,.vue --ignore-path .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.56' quasar dev", "spanorefresh": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m spa", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js" diff --git a/scripts/_ALL_SITES/nutriben-naturopatia.it/package.json b/scripts/_ALL_SITES/nutriben-naturopatia.it/package.json index 91a144f1..7a929a30 100755 --- a/scripts/_ALL_SITES/nutriben-naturopatia.it/package.json +++ b/scripts/_ALL_SITES/nutriben-naturopatia.it/package.json @@ -1,6 +1,6 @@ { "name": "nutriben", - "version": "1.2.54", + "version": "1.2.56", "description": "Nutriben", "productName": "Nutriben", "author": "Surya", @@ -9,20 +9,20 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "PORT=8093 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8093 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", - "buildspa": "APP_VERSION='1.2.54' quasar build -m spa", + "buildspa": "APP_VERSION='1.2.56' quasar build -m spa", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/scripts/_ALL_SITES/piuchebuono.app/package.json b/scripts/_ALL_SITES/piuchebuono.app/package.json index 23d7149c..ebd5a464 100755 --- a/scripts/_ALL_SITES/piuchebuono.app/package.json +++ b/scripts/_ALL_SITES/piuchebuono.app/package.json @@ -1,6 +1,6 @@ { "name": "piuchebuono", - "version": "1.2.54", + "version": "1.2.56", "description": "PiuCheBuono", "productName": "PiuCheBuono", "author": "Surya", @@ -9,11 +9,11 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "PORT=8085 APP_VERSION='1.2.54' quasar dev", + "dev": "PORT=8085 APP_VERSION='1.2.56' quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", "buildspa": "quasar build -m spa", @@ -21,8 +21,8 @@ "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/scripts/_ALL_SITES/riso.app/package.json b/scripts/_ALL_SITES/riso.app/package.json index 56849d15..9d989d65 100755 --- a/scripts/_ALL_SITES/riso.app/package.json +++ b/scripts/_ALL_SITES/riso.app/package.json @@ -1,6 +1,6 @@ { "name": "riso", - "version": "1.2.54", + "version": "1.2.56", "description": "Siamo la Rete Italiana di Scambio Orizzontale, abbiamo creato questa piattaforma per metterla al servizio di chi vuole riscoprire il valore della condivisione e della cooperazione. Valori semplici e profondi che ci aiutano a ritrovare il Senso della Vita, perduto in questa società consumista, e riporti quei Sani Pricìpi Naturali ed Umani di Fratellanza che intere popolazioni antiche conoscevano bene.", "productName": "Riso", "author": "Surya", @@ -9,11 +9,11 @@ "license": "MIT", "type": "module", "scripts": { - "dev": "APP_VERSION='1.2.54' PORT=8084 quasar dev", + "dev": "APP_VERSION='1.2.56' PORT=8084 quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev", "build": "quasar build", - "buildpwa": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", - "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.54' quasar build -m pwa", + "buildpwa": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", + "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.56' quasar build -m pwa", "type-check": "vue-tsc --noEmit", "type-check:watch": "vue-tsc --noEmit --watch", "buildspa": "quasar build -m spa", @@ -21,8 +21,8 @@ "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", - "pwa": "NODE_ENV=development PORT=8094 APP_VERSION='1.2.54' quasar dev -m pwa", - "spa": "NODE_ENV=development PORT=8084 APP_VERSION='1.2.54' quasar dev", + "pwa": "NODE_ENV=development PORT=8094 APP_VERSION='1.2.56' quasar dev -m pwa", + "spa": "NODE_ENV=development PORT=8084 APP_VERSION='1.2.56' quasar dev", "debug": "quasar dev --mode debug", "test": "echo \"No test specified\" && exit 0", "generate-sw": "workbox generateSW workbox-config.js", diff --git a/src-pwa/custom-service-worker.js b/src-pwa/custom-service-worker.js index 93055c14..bbb23891 100755 --- a/src-pwa/custom-service-worker.js +++ b/src-pwa/custom-service-worker.js @@ -3,7 +3,7 @@ /* global workbox */ /* global cfgenv */ -const VITE_APP_VERSION = '1.2.54'; +const VITE_APP_VERSION = '1.2.56'; // Costanti di configurazione const DYNAMIC_CACHE = 'dynamic-cache-v2'; diff --git a/src/components/CCatalogoCard/CCatalogoCard.vue b/src/components/CCatalogoCard/CCatalogoCard.vue index e6c0dd43..caae948e 100755 --- a/src/components/CCatalogoCard/CCatalogoCard.vue +++ b/src/components/CCatalogoCard/CCatalogoCard.vue @@ -137,7 +137,7 @@ : undefined, display: 'block', }" - @click.stop.prevent="naviga(`/product/` + myproduct._id)" + @click.stop.prevent="tools.openUrl(myproduct.productInfo.link_macro)" > diff --git a/src/components/CModifTrafiletto/CModifTrafiletto.ts b/src/components/CModifTrafiletto/CModifTrafiletto.ts index 57a038dd..22c0554e 100755 --- a/src/components/CModifTrafiletto/CModifTrafiletto.ts +++ b/src/components/CModifTrafiletto/CModifTrafiletto.ts @@ -187,7 +187,7 @@ export default defineComponent({ function getPrompt() { // Prompt: - let mydescr = 'Scrivimi la sinossi del libro che ti indicherò, che andrà in un catalogo libri, la lunghezza del testo finale dev\'essere compresa tra 760 e 780 caratteri, senza spiegazione, senza titolo iniziale, solo la sinossi. Togli eventuali riferimenti a chi ha fatto la prefazione. Rendilo un po\' accattivante, ma non troppo. \n\n'; + let mydescr = 'Scrivimi la sinossi del libro che ti indicherò, che andrà in un catalogo libri, la lunghezza del testo finale dev\'essere compresa tra 760 e 780 caratteri, senza spiegazione, senza titolo iniziale, solo la sinossi. Togli eventuali riferimenti a chi ha fatto la prefazione. Rendilo un po\' accattivante, ma non troppo. Senza immagine. Non inserire nessun link o riferimenti esterni o citazioni esterne. L\'output è solo la sinossi, senza altre spiegazioni. \n\n'; return mydescr } @@ -199,7 +199,7 @@ export default defineComponent({ mydescr = getPrompt() mydescr += 'Titolo Libro: ' + data.titolo + '\n'; - mydescr += 'Autore Libro: ' + data.autore + '\n'; + mydescr += 'Autore Libro: ' + (data?.autore.trim() ? data?.autore.trim() : products.getAutoriByArrayAuthors(myproduct?.value.productInfo?.authors)) + '\n'; mydescr += 'DESCRIZIONE LIBRO: \n'; mydescr += data.descrizione_lunga; @@ -212,7 +212,7 @@ export default defineComponent({ mydescr = getPrompt() mydescr += 'Titolo Libro: ' + myproduct?.value.productInfo?.name + '\n'; - mydescr += 'Autore Libro: ' + products.getAutoriByArrayAuthors(myproduct?.productInfo?.authors) + '\n'; + mydescr += 'Autore Libro: ' + products.getAutoriByArrayAuthors(myproduct?.value.productInfo?.authors) + '\n'; mydescr += 'DESCRIZIONE LIBRO: \n'; mydescr += myproduct?.value.productInfo?.descrizione_completa_macro; diff --git a/src/components/CMyRecCatalog/CMyRecCatalog.vue b/src/components/CMyRecCatalog/CMyRecCatalog.vue index 000fa086..1ab20c20 100755 --- a/src/components/CMyRecCatalog/CMyRecCatalog.vue +++ b/src/components/CMyRecCatalog/CMyRecCatalog.vue @@ -175,7 +175,7 @@ color="primary" icon="fas fa-file-pdf" :label="`Apri PDF`" - :href="tools.getURLByHostAndFilePath(myrec.pdf_online)" + :href="tools.getURLByHostAndFilePath(myrec.pdf_online, myrec.data_online ? (new Date(myrec.data_online)).getTime() : undefined)" size="md" class="hover-lift" /> @@ -186,7 +186,7 @@ color="primary" icon="download" :label="`Scarica PDF`" - :href="tools.getURLByHostAndFilePath(myrec.pdf_online)" + :href="tools.getURLByHostAndFilePath(myrec.pdf_online, myrec.data_online ? (new Date(myrec.data_online)).getTime() : undefined)" download size="md" class="hover-lift" @@ -207,13 +207,6 @@ :label="$t('reg.elimina')" icon="fas fa-trash-alt" /> - { + const isColumnVisible = (column: string, real?: boolean, element?: any) => { if (column === 'actions' && !real) { return false; } @@ -886,12 +891,14 @@ export default defineComponent({ (!props.optcatalogo.showListaArgomenti || (props.optcatalogo.showListaArgomenti && !isEditColumn(column))); - if (props.options?.showbuttAdd && column === 'addtolist') { + if (props.options?.showbuttAdd && column === 'addtolist' + && (!element || !props.lista_prod_confronto.some((prod: any) => prod._id === element?._id)) + ) { if (tools.isCollaboratore()) ok = true } - if (!props.options?.showbuttAdd && column === 'addtolist') { + if (!props.options?.showbuttAdd && column === 'addtolist' && (element && props.lista_prod_confronto.some((prod: any) => prod._id === element?._id))) { ok = false } diff --git a/src/components/CProductTable/CProductTable.vue b/src/components/CProductTable/CProductTable.vue index 927c4895..436f210a 100755 --- a/src/components/CProductTable/CProductTable.vue +++ b/src/components/CProductTable/CProductTable.vue @@ -160,7 +160,7 @@ > - + reccatalog._id === catalog._id + (reccatalog: ICatalog) => reccatalog._id === catalog._id ); if (indelem >= 0) { this.catalogs[indelem] = { ...catalog }; @@ -137,5 +137,21 @@ export const useCatalogStore = defineStore('CatalogStore', { } } }, + + async updateRecordInMem(table: string, mydata: any) { + + if (table === shared_consts.TABLES_RACCOLTACATALOGHIS) { + const index = this.raccoltacataloghis.findIndex( + (item) => item._id === mydata._id + ); + if (index !== -1) { + this.raccoltacataloghis.splice(index, 1, mydata); + } else { + console.error('Non trovo il record da aggiornare', mydata); + } + } + } + + }, }); diff --git a/src/store/Modules/tools.ts b/src/store/Modules/tools.ts index a5c6495b..e1d64a04 100644 --- a/src/store/Modules/tools.ts +++ b/src/store/Modules/tools.ts @@ -10682,11 +10682,11 @@ export const tools = { return 0; } }, - getURLByHostAndFilePath(filepath: string) { + getURLByHostAndFilePath(filepath: string, timestamp: string = '') { try { let myurl = filepath.startsWith('/') ? tools.getHost() + filepath - : tools.getHost() + '/' + filepath; + : tools.getHost() + '/' + filepath + `?ts=${timestamp}`; return myurl; } catch (e) { return filepath; diff --git a/src/views/ecommerce/catalogo/catalogo.ts b/src/views/ecommerce/catalogo/catalogo.ts index 14e70cbe..12cfeaaf 100755 --- a/src/views/ecommerce/catalogo/catalogo.ts +++ b/src/views/ecommerce/catalogo/catalogo.ts @@ -2493,24 +2493,7 @@ export default defineComponent({ if (ris && !ris.error) { const catalog = myCatalog.value; if (catalog) { - if (instampa) { - catalog.pdf_generato_stampa = ris.fileout; - catalog.pdf_generato_stampa_compressed = ris.fileout_compressed; - catalog.pdf_generato_stampa_size = ris.filesize; - catalog.pdf_generato_stampa_compr_size = ris.filesize_compressed; - - catalog.data_generato_stampa = tools.getDateNow(); - } else { - catalog.pdf_generato_compressed = ris.fileout_compressed; - catalog.pdf_generato = ris.fileout; - - catalog.pdf_generato_size = ris.filesize; - catalog.pdf_generato_compr_size = ris.filesize_compressed; - - catalog.data_generato = tools.getDateNow(); - } - await saveCatalog(); } else { strout.value = JSON.stringify(ris, null, 2); } diff --git a/src/views/ecommerce/catalogo/catalogo.vue b/src/views/ecommerce/catalogo/catalogo.vue index 1993b0ef..33464eb9 100755 --- a/src/views/ecommerce/catalogo/catalogo.vue +++ b/src/views/ecommerce/catalogo/catalogo.vue @@ -577,7 +577,7 @@ @@ -681,7 +681,7 @@ color="primary" icon="fas fa-file-pdf" :label="`Apri PDF`" - :href="tools.getURLByHostAndFilePath(myCatalog.pdf_online)" + :href="tools.getURLByHostAndFilePath(myCatalog.pdf_online, myCatalog.data_online ? (new Date(myCatalog.data_online)).getTime() : undefined)" size="md" class="hover-lift" /> @@ -692,7 +692,7 @@ color="primary" icon="download" :label="`Scarica PDF`" - :href="tools.getURLByHostAndFilePath(myCatalog.pdf_online)" + :href="tools.getURLByHostAndFilePath(myCatalog.pdf_online, myCatalog.data_online ? (new Date(myCatalog.data_online)).getTime() : undefined)" download size="md" class="hover-lift" @@ -764,7 +764,7 @@ icon="fas fa-file-pdf" :label="`Apri PDF`" :href=" - tools.getURLByHostAndFilePath(myCatalog.pdf_online_stampa) + tools.getURLByHostAndFilePath(myCatalog.pdf_online_stampa, myCatalog.data_online_stampa ? (new Date(myCatalog.data_online_stampa)).getTime() : undefined) " size="md" class="hover-lift" @@ -777,7 +777,7 @@ icon="download" :label="`Scarica PDF`" :href=" - tools.getURLByHostAndFilePath(myCatalog.pdf_online_stampa) + tools.getURLByHostAndFilePath(myCatalog.pdf_online_stampa, myCatalog.data_online_stampa ? (new Date(myCatalog.data_online_stampa)).getTime() : undefined) " download size="md" @@ -1282,9 +1282,7 @@ null, optcatalogo.arrSchede[0], true - ) + - ' ' + - pageIndex + ) " > @@ -1714,6 +1712,7 @@ []); - const loadpage = ref(false) + const loadpage = ref(false); const pdfContent = ref(null); const addnewProd = ref(false); @@ -92,10 +101,11 @@ export default defineComponent({ const optcatalogo = ref({ ...props.modelValue }); const getRaccoltaCataloghiByMyPage = computed(() => { - return catalogStore.raccoltacataloghis?.find((raccolta: IRaccoltaCatalogo) => raccolta.idPageAssigned === props.idPage); + return catalogStore.raccoltacataloghis?.find( + (raccolta: IRaccoltaCatalogo) => raccolta.idPageAssigned === props.idPage + ); }); - const lista_cataloghi = computed(() => { const arr = catalogStore.raccoltacataloghis?.find( (raccolta: IRaccoltaCatalogo) => raccolta.idPageAssigned === props.idPage @@ -135,13 +145,6 @@ export default defineComponent({ return lab; }); - const arrLoaded = computed(() => { - if (arrCataloghi.value && numRecLoaded.value) return arrCataloghi.value.slice(0, numRecLoaded.value); - else { - return []; - } - }); - function getTitoloRaccolta(): string { const trovatoraccolta = getRaccoltaCataloghiByMyPage.value; @@ -168,7 +171,9 @@ export default defineComponent({ if (!imagefile && mypage) { imagefile = mypage.imgsfondo!.imagefile!; - imagefile = imagefile ? `url("${tools.getDirUpload() + costanti.DIR_CATALOGO + imagefile}")` : ''; + imagefile = imagefile + ? `url("${tools.getDirUpload() + costanti.DIR_CATALOGO + imagefile}")` + : ''; fit = mypage.imgsfondo!.fit!; } @@ -184,15 +189,23 @@ export default defineComponent({ function salvaListaRaccolte(ricarica: boolean) { // Estrai solo gli ID dei prodotti filtrati const myarr = [...getRaccoltaCataloghiByMyPage.value.lista_cataloghi]; - const catalogoIds = myarr.map((catalog) => (catalog._id ? catalog._id : null)).filter((id) => id !== null); + const catalogoIds = myarr + .map((catalog) => (catalog._id ? catalog._id : null)) + .filter((id) => id !== null); let mydata = { lista_cataloghi: catalogoIds, }; // Salva gli ID dei prodotti nel catalogo - tools.saveFieldToServer($q, 'raccoltacataloghis', getRaccoltaCataloghiByMyPage.value._id, mydata, true, false); - + tools.saveFieldToServer( + $q, + 'raccoltacataloghis', + getRaccoltaCataloghiByMyPage.value._id, + mydata, + true, + false + ); } async function mounted() { @@ -240,14 +253,15 @@ export default defineComponent({ // add this record to lista_cataloghi if ( getRaccoltaCataloghiByMyPage.value && - element._id && !getRaccoltaCataloghiByMyPage.value.lista_cataloghi?.some((p) => p?._id === element._id) + element._id && + !getRaccoltaCataloghiByMyPage.value.lista_cataloghi?.some( + (p) => p?._id === element._id + ) ) { // inserire il record in cima const arr = getRaccoltaCataloghiByMyPage.value.lista_cataloghi || []; - if (where === shared_consts.WHERE_INSERT.ONTOP) - arr.unshift(element); - else if (where === shared_consts.WHERE_INSERT.ONBOTTOM) - arr.push(element) + if (where === shared_consts.WHERE_INSERT.ONTOP) arr.unshift(element); + else if (where === shared_consts.WHERE_INSERT.ONBOTTOM) arr.push(element); updateRaccolta(arr); @@ -256,6 +270,77 @@ export default defineComponent({ } } + async function rigeneraTUTTI(stampa: boolean) { + const msg = stampa ? 'stampa' : ''; + if (getRaccoltaCataloghiByMyPage.value) { + const confirm = await $q + .dialog({ + title: 'Conferma', + message: `Generare TUTTI i Cataloghi in PDF ${msg}?`, + ok: { + label: 'Sì', + push: true, + }, + cancel: { + label: 'Annulla', + }, + }) + .onOk(async () => { + + /*$q.loading.show({ + message: `Generazione di TUTTI i Cataloghi in PDF ${msg} in corso, attendere ...`, + });*/ + + userStore.eseguiFunzSulServer({ + dbop: 'GeneraPdfRaccolta', + options: { + idRaccolta: getRaccoltaCataloghiByMyPage.value._id, + comprimi: true, + stampa, + path: 'upload/cataloghi/', + compressione: 'printer', + }, + }); + + + }); + } + } + + async function onlineTUTTI(stampa: boolean) { + const msg = stampa ? 'stampa' : ''; + if (getRaccoltaCataloghiByMyPage.value) { + const confirm = await $q + .dialog({ + title: 'Conferma', + message: `Mettere ONLINE TUTTI i PDF dei Cataloghi ${msg}?`, + ok: { + label: 'Sì', + push: true, + }, + cancel: { + label: 'Annulla', + }, + }) + .onOk(async () => { + + /*$q.loading.show({ + message: `Generazione di TUTTI i Cataloghi in PDF ${msg} in corso, attendere ...`, + });*/ + + userStore.eseguiFunzSulServer({ + dbop: 'onlinePdfRaccolta', + options: { + idRaccolta: getRaccoltaCataloghiByMyPage.value._id, + stampa, + }, + }); + + + }); + } + } + function clickaddNewBook() { addnewProd.value = true; } @@ -265,8 +350,7 @@ export default defineComponent({ } const preparePDF = (stampa: boolean) => { - - let addstr = stampa ? ' per la STAMPA' : '' + let addstr = stampa ? ' per la STAMPA' : ''; $q.dialog({ message: `Generare il PDF ${addstr}?`, ok: { @@ -283,7 +367,7 @@ export default defineComponent({ }; async function saveRaccolta() { - const raccolta = getRaccoltaCataloghiByMyPage.value + const raccolta = getRaccoltaCataloghiByMyPage.value; const mydata = { table: 'raccoltacataloghis', data: raccolta, @@ -292,7 +376,6 @@ export default defineComponent({ await globalStore.saveTable(mydata); } - async function generaPDF(stampa: boolean) { $q.loading.show({ message: 'Generazione della Raccolta Catalogo in PDF in corso ...', @@ -304,23 +387,11 @@ export default defineComponent({ stampa, metti_online: false, dir_out: '/upload/raccolte/', - } - const ris = await globalStore.execJoinPDF({options}); + }; + const ris = await globalStore.execJoinPDF({ options }); if (ris) { - const raccolta = getRaccoltaCataloghiByMyPage.value; - if (!stampa && ris.raccolta.pdf_generato) { - raccolta.pdf_generato = ris.raccolta.pdf_generato; - raccolta.pdf_generato_size = ris.raccolta.pdf_generato_size; - raccolta.data_generato = tools.getDateNow(); - } - if (stampa && ris.raccolta.pdf_generato_stampa) { - raccolta.pdf_generato_stampa = ris.raccolta.pdf_generato_stampa; - raccolta.pdf_generato_stampa_size = ris.raccolta.pdf_generato_stampa_size; - raccolta.data_generato_stampa = tools.getDateNow(); - } - - await saveRaccolta(); + await catalogStore.updateRecordInMem(shared_consts.TABLES_CATALOG, ris.raccolta) } $q.loading.hide(); @@ -343,7 +414,10 @@ export default defineComponent({ const pubblicaPDF = async () => { const raccolta = getRaccoltaCataloghiByMyPage.value; - const ris = await globalStore.execOnlinePDF({ id_raccolta: raccolta._id, stampa: false }); + const ris = await globalStore.execOnlinePDF({ + id_raccolta: raccolta._id, + stampa: false, + }); if (ris) { if (ris.record?.pdf_online) { @@ -369,15 +443,12 @@ export default defineComponent({ const pubblicaPDFStampa = async () => { const raccolta = getRaccoltaCataloghiByMyPage.value; - const ris = await globalStore.execOnlinePDF({ id_raccolta: raccolta._id, stampa: true }); + const ris = await globalStore.execOnlinePDF({ + id_raccolta: raccolta._id, + stampa: true, + }); if (ris) { - if (ris.record.pdf_online_stampa) { - raccolta.pdf_online_stampa = ris.record.pdf_online_stampa; - raccolta.data_online_stampa = ris.record.data_online_stampa; - } - - await saveRaccolta(); $q.notify({ color: 'positive', @@ -392,8 +463,7 @@ export default defineComponent({ icon: 'error', }); } - - } + }; onMounted(mounted); @@ -409,7 +479,6 @@ export default defineComponent({ componentToFixRef, isFixed, numRecLoaded, - arrLoaded, mycolumns, tabraccolta, naviga, @@ -427,6 +496,8 @@ export default defineComponent({ loadpage, ispageCatalogata, optcatalogo, + rigeneraTUTTI, + onlineTUTTI, }; }, }); diff --git a/src/views/ecommerce/raccoltacataloghi/raccoltacataloghi.vue b/src/views/ecommerce/raccoltacataloghi/raccoltacataloghi.vue index 56854d8e..6734870f 100755 --- a/src/views/ecommerce/raccoltacataloghi/raccoltacataloghi.vue +++ b/src/views/ecommerce/raccoltacataloghi/raccoltacataloghi.vue @@ -32,9 +32,7 @@ class="" keep-alive > - +
- - - +
+ + +
+
+
+ + +
+ +

+ +
+ + + +
PDF generati Temporanei
-
+
PDF Generato: - {{ tools.getURLByHostAndFilePath(getRaccoltaCataloghiByMyPage?.pdf_generato) }} + {{ + tools.getURLByHostAndFilePath( + getRaccoltaCataloghiByMyPage?.pdf_generato + ) + }} - -
(del {{ tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_generato) }}) +
(del + {{ tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_generato) }})

-
+
PDF Generato Stampa: - {{ tools.getURLByHostAndFilePath(getRaccoltaCataloghiByMyPage?.pdf_generato_stampa) }} + {{ + tools.getURLByHostAndFilePath( + getRaccoltaCataloghiByMyPage?.pdf_generato_stampa + ) + }} - -
(del {{ tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_generato_stampa) }}) +
(del + {{ + tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_generato_stampa) + }})
PDF OnLine: - {{ tools.getURLByHostAndFilePath(getRaccoltaCataloghiByMyPage?.pdf_online) }} + {{ + tools.getURLByHostAndFilePath( + getRaccoltaCataloghiByMyPage?.pdf_online + ) + }} - -
(del {{ tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_online) }}) +
(del + {{ tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_online) }})

-
> - PDF OnLine Stampa: +
+ > PDF OnLine Stampa: - {{ tools.getURLByHostAndFilePath(getRaccoltaCataloghiByMyPage?.pdf_online_stampa) }} + {{ + tools.getURLByHostAndFilePath( + getRaccoltaCataloghiByMyPage?.pdf_online_stampa + ) + }} - -
(del {{ tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_online_stampa) }}) +
(del + {{ + tools.getstrDateTime(getRaccoltaCataloghiByMyPage?.data_online_stampa) + }})