- aggiornato la visualoizzazione per scaricare il PDF e per aprirlo

This commit is contained in:
Surya Paolo
2025-05-30 10:49:25 +02:00
parent 5ba3bef8a1
commit 72d5574fab
19 changed files with 827 additions and 543 deletions

4
.env
View File

@@ -1,6 +1,6 @@
VITE_APP_VERSION="1.2.50" VITE_APP_VERSION="1.2.52"
VITE_LANG_DEFAULT="it" VITE_LANG_DEFAULT="it"
VITE_PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF" VITE_PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
VITE_SERVICE_WORKER_FILE="sw-1.2.50.js" VITE_SERVICE_WORKER_FILE="sw-1.2.52.js"
VITE_PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a" VITE_PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a"
VITE_VUE_ROUTER_MODE="history" VITE_VUE_ROUTER_MODE="history"

View File

@@ -10,7 +10,7 @@
<meta name="description" content="<%= productDescription %>"> <meta name="description" content="<%= productDescription %>">
<meta name="format-detection" content="telephone=no"> <meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no"> <meta name="msapplication-tap-highlight" content="no">
<meta name="version" content="1.2.50"> <meta name="version" content="1.2.52">
<meta name="viewport" <meta name="viewport"
content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<% if (ctx.mode.cordova || ctx.mode.capacitor) { %>, viewport-fit=cover<% } %>"> content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<% if (ctx.mode.cordova || ctx.mode.capacitor) { %>, viewport-fit=cover<% } %>">

View File

@@ -1,6 +1,6 @@
{ {
"name": "gruppomacro", "name": "gruppomacro",
"version": "1.2.50", "version": "1.2.52",
"description": "Gruppo Macro", "description": "Gruppo Macro",
"productName": "Gruppo Macro", "productName": "Gruppo Macro",
"author": "Surya", "author": "Surya",
@@ -9,20 +9,20 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8089 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8089 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "APP_VERSION='1.2.50' quasar build -m spa", "buildspa": "APP_VERSION='1.2.52' quasar build -m spa",
"lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"",
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "cnm", "name": "cnm",
"version": "1.2.50", "version": "1.2.52",
"description": "Comunita Nuovo Mondo", "description": "Comunita Nuovo Mondo",
"productName": "ComunitaNuovoMondo", "productName": "ComunitaNuovoMondo",
"author": "Surya", "author": "Surya",
@@ -9,7 +9,7 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8083 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8083 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production quasar build -m pwa", "buildpwa": "NODE_ENV=production quasar build -m pwa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "freeplanet", "name": "freeplanet",
"version": "1.2.50", "version": "1.2.52",
"description": "freeplanet", "description": "freeplanet",
"productName": "freeplanet", "productName": "freeplanet",
"author": "Surya", "author": "Surya",
@@ -9,11 +9,11 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8087 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8087 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8097 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8087 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8087 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "gruppomacro", "name": "gruppomacro",
"version": "1.2.50", "version": "1.2.52",
"description": "Gruppo Macro", "description": "Gruppo Macro",
"productName": "Gruppo Macro", "productName": "Gruppo Macro",
"author": "Surya", "author": "Surya",
@@ -9,20 +9,20 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8089 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8089 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "APP_VERSION='1.2.50' quasar build -m spa", "buildspa": "APP_VERSION='1.2.52' quasar build -m spa",
"lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"",
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "kolibrilab", "name": "kolibrilab",
"version": "1.2.50", "version": "1.2.52",
"description": "kolibrilab", "description": "kolibrilab",
"productName": "kolibrilab", "productName": "kolibrilab",
"author": "Surya Paolo", "author": "Surya Paolo",
@@ -8,11 +8,11 @@
"keywords": [], "keywords": [],
"license": "MIT", "license": "MIT",
"scripts": { "scripts": {
"dev": "PORT=8083 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8083 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -20,8 +20,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "fix": "eslint --ext .ts,.vue --ignore-path .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.52' quasar dev",
"spanorefresh": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m spa", "spanorefresh": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m spa",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js" "generate-sw": "workbox generateSW workbox-config.js"

View File

@@ -1,6 +1,6 @@
{ {
"name": "nutriben", "name": "nutriben",
"version": "1.2.50", "version": "1.2.52",
"description": "Nutriben", "description": "Nutriben",
"productName": "Nutriben", "productName": "Nutriben",
"author": "Surya", "author": "Surya",
@@ -9,20 +9,20 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8093 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8093 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "APP_VERSION='1.2.50' quasar build -m spa", "buildspa": "APP_VERSION='1.2.52' quasar build -m spa",
"lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"",
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "piuchebuono", "name": "piuchebuono",
"version": "1.2.50", "version": "1.2.52",
"description": "PiuCheBuono", "description": "PiuCheBuono",
"productName": "PiuCheBuono", "productName": "PiuCheBuono",
"author": "Surya", "author": "Surya",
@@ -9,11 +9,11 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8085 APP_VERSION='1.2.50' quasar dev", "dev": "PORT=8085 APP_VERSION='1.2.52' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "riso", "name": "riso",
"version": "1.2.50", "version": "1.2.52",
"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.", "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", "productName": "Riso",
"author": "Surya", "author": "Surya",
@@ -9,11 +9,11 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "APP_VERSION='1.2.50' PORT=8084 quasar dev", "dev": "APP_VERSION='1.2.52' PORT=8084 quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.50' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.52' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .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", "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.50' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8094 APP_VERSION='1.2.52' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8084 APP_VERSION='1.2.50' quasar dev", "spa": "NODE_ENV=development PORT=8084 APP_VERSION='1.2.52' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -3,7 +3,7 @@
/* global workbox */ /* global workbox */
/* global cfgenv */ /* global cfgenv */
const VITE_APP_VERSION = '1.2.50'; const VITE_APP_VERSION = '1.2.52';
// Costanti di configurazione // Costanti di configurazione
const DYNAMIC_CACHE = 'dynamic-cache-v2'; const DYNAMIC_CACHE = 'dynamic-cache-v2';

View File

@@ -6,7 +6,7 @@
:prop_mytable="table" :prop_mytable="table"
:options="tools.optionsTable(table)" :options="tools.optionsTable(table)"
:prop_mytitlenew="tools.getTitleAnnuncio(table)" :prop_mytitlenew="tools.getTitleAnnuncio(table)"
prop_mytitle="Cataloghi" prop_mytitle=""
:prop_mycolumns="col" :prop_mycolumns="col"
:prop_colkey="prop_colkey" :prop_colkey="prop_colkey"
:col_title="col_title" :col_title="col_title"

View File

@@ -524,6 +524,7 @@
row: opt.rowclass, row: opt.rowclass,
'items-stretch': opt.rowclass, 'items-stretch': opt.rowclass,
'justify-evenly': opt.rowclass, 'justify-evenly': opt.rowclass,
'q-col-gutter-y-md': opt.rowclass,
}" }"
> >
<div <div

View File

@@ -2,8 +2,13 @@
<q-card <q-card
v-if="myrec" v-if="myrec"
bordered bordered
class="full-height flex flex-column justify-evenly" class="full-height justify-evenly catalog-card"
:style="`width: ` + opt.widthcard + `; ` + (opt.heightcard ? `height: ` + opt.heightcard + `;` : '')" :style="
`width: ` +
opt.widthcard +
`; ` +
(opt.heightcard ? `height: ` + opt.heightcard + `;` : '')
"
> >
<q-img <q-img
:width="opt.widthimg" :width="opt.widthimg"
@@ -14,29 +19,38 @@
:src="tools.getFullFileName([myrec.foto_collana], table, '', myrec._id)" :src="tools.getFullFileName([myrec.foto_collana], table, '', myrec._id)"
> >
<template v-slot:error> <template v-slot:error>
<div class="absolute-full flex flex-center text-white">immagine non impostata</div> <div class="absolute-full flex flex-center text-white">
immagine non impostata
</div>
</template> </template>
<!--<div class="text-h6 absolute-bottom text-left"> <!--<div class="text-h6 absolute-bottom text-left">
{{ myrec.title }} {{ myrec.title }}
</div>--> </div>-->
</q-img> </q-img>
<q-card-section class="q-px-sm" style="margin-top: 0; flex-grow: 0; align-self: flex-start;"> <q-card-section
class="q-px-sm"
style="margin-top: 0; flex-grow: 0; align-self: flex-start"
>
<div <div
class="q-mb-md text-center text-bold" class="q-mb-md text-center text-bold"
style="font-size: 1.15rem" style="font-size: 1.15rem"
> >
<a <div class="q-mb-md text-center text-bold">
:href="pagina_collegata" <span
target="_blank" class="text-link"
>{{ myrec.title }}</a @click="naviga(pagina_collegata)"
> >
{{ myrec.title }}
</span>
</div>
</div> </div>
<div class="q-px-md"> <div class="q-px-md">
<div class="text-caption text-h7 text-grey q-pb-xs"> <div class="text-caption text-h7 text-grey q-pb-xs">
<q-icon name="fas fa-list-ol" /> {{ $t('cataloglist.numprodotti') }}: <q-icon name="fas fa-list-ol" />&nbsp; {{ $t('cataloglist.numprodotti') }}:
<span :class="`text-` + (numprodottistr === 0 ? 'red' : 'blue')">{{ numprodottistr }}</span> <span :class="`text-` + (numprodottistr === 0 ? 'red' : 'blue')">{{
numprodottistr
}}</span>
</div> </div>
<div <div
v-if="!tools.isUtente() && dettagli" v-if="!tools.isUtente() && dettagli"
@@ -45,7 +59,11 @@
<q-icon name="fas fa-user" /> {{ $t('cataloglist.referenti') }}: <q-icon name="fas fa-user" /> {{ $t('cataloglist.referenti') }}:
<span <span
v-if="myrec.referenti && myrec.referenti.length > 0" v-if="myrec.referenti && myrec.referenti.length > 0"
:class="`text-bold ` + myrec.referenti && myrec.referenti.length > 0 ? 'text-blue' : 'text-red'" :class="
`text-bold ` + myrec.referenti && myrec.referenti.length > 0
? 'text-blue'
: 'text-red'
"
> >
{{ myrec.referenti ? myrec.referenti.join(', ') : '' }} {{ myrec.referenti ? myrec.referenti.join(', ') : '' }}
</span> </span>
@@ -103,18 +121,14 @@
</div> </div>
<div <div
v-if="myrec.pdf_online" v-if="myrec.pdf_online"
class="text-caption text-h7 text-blue q-pb-xs" class="text-caption text-h7 text-grey q-pb-xs"
> >
<q-icon name="fas fa-book" />&nbsp; <q-icon name="fas fa-book" />&nbsp; Aggiornato al ({{
<a tools.getstrDate(myrec.data_online)
:href="myrec.pdf_online" }})
target="_blank"
>PDF OnLine</a
>
aggiornato al ({{ tools.getstrDate(myrec.data_online) }})
</div> </div>
<div <div
v-if="!tools.isUtente() && myrec.pdf_online_stampa && dettagli" v-if="!tools.isUtente() && myrec.pdf_online_stampa && dettagli"
class="text-caption text-h7 text-blue q-pb-xs" class="text-caption text-h7 text-blue q-pb-xs"
> >
<q-icon name="fas fa-print" />&nbsp; <q-icon name="fas fa-print" />&nbsp;
@@ -130,8 +144,12 @@
class="text-caption text-h7 text-grey q-pb-xs" class="text-caption text-h7 text-grey q-pb-xs"
> >
<q-icon name="fas fa-list" /> Lista generata il: <q-icon name="fas fa-list" /> Lista generata il:
<span :class="`text-` + (tools.isDateValid(myrec.data_lista_generata) ? 'blue' : 'red')" <span
>{{ tools.getstrDate(myrec.data_lista_generata) || '(non ancora generata)' }} da :class="
`text-` + (tools.isDateValid(myrec.data_lista_generata) ? 'blue' : 'red')
"
>{{ tools.getstrDate(myrec.data_lista_generata) || '(non ancora generata)' }}
da
{{ myrec.username_lista_generata }} {{ myrec.username_lista_generata }}
</span> </span>
</div> </div>
@@ -140,11 +158,34 @@
</q-card-section> </q-card-section>
<q-card-actions <q-card-actions
v-if="!tools.isUtente() && dettagli"
align="center" align="center"
class="q-mt-auto q-mx-auto q-mb-sm" class="q-mt-auto q-mx-auto q-mb-sm"
> >
<q-btn
v-if="myrec.pdf_online"
unelevated
rounded
color="primary"
icon="fas fa-file-pdf"
:label="`Apri PDF`"
:href="tools.getURLByHostAndFilePath(myrec.pdf_online)"
size="md"
class="hover-lift"
/>
<q-btn
v-if="myrec.pdf_online"
unelevated
rounded
color="primary"
icon="download"
:label="`Scarica PDF`"
:href="tools.getURLByHostAndFilePath(myrec.pdf_online)"
download
size="md"
class="hover-lift"
/>
<q-fab <q-fab
v-if="!tools.isUtente() && dettagli"
color="primary" color="primary"
icon="fas fa-caret-down" icon="fas fa-caret-down"
label="Menu" label="Menu"
@@ -182,13 +223,13 @@
icon="fas fa-pencil-alt" icon="fas fa-pencil-alt"
/> />
</q-fab> </q-fab>
<q-btn <!--<q-btn
flat flat
color="primary" color="primary"
label="Info" label="Info"
icon="fas fa-info" icon="fas fa-info"
@click="apriInfo = true" @click="apriInfo = true"
/> />-->
</q-card-actions> </q-card-actions>
</q-card> </q-card>
@@ -214,9 +255,15 @@
class="q-ma-sm" class="q-ma-sm"
> >
<CLabel <CLabel
:value="myrec.referenti && myrec.referenti.length > 0 ? myrec.referenti.join(', ') : '[Non Assegnato]'" :value="
myrec.referenti && myrec.referenti.length > 0
? myrec.referenti.join(', ')
: '[Non Assegnato]'
"
:label="$t('cataloglist.referenti') + `:`" :label="$t('cataloglist.referenti') + `:`"
:color="myrec.referenti && myrec.referenti.length > 0 ? 'text-blue' : 'text-red'" :color="
myrec.referenti && myrec.referenti.length > 0 ? 'text-blue' : 'text-red'
"
/> />
</div> </div>
<div <div
@@ -256,8 +303,9 @@
> >
<CLabel <CLabel
:value=" :value="
tools.getstrDate(myrec.data_lista_generata) + ' da ' + myrec.username_lista_generata || tools.getstrDate(myrec.data_lista_generata) +
'ancora non è stata generata' ' da ' +
myrec.username_lista_generata || 'ancora non è stata generata'
" "
label="Lista generata" label="Lista generata"
:color="myrec.pdf_generato ? 'green' : 'red'" :color="myrec.pdf_generato ? 'green' : 'red'"

View File

@@ -422,7 +422,6 @@ export default defineComponent({
label: 'Magazz.', label: 'Magazz.',
field: 'quantity', field: 'quantity',
align: 'right', align: 'right',
visu: costanti.VISUCAMPI.PER_EDITORE,
}, },
{ {
name: 'actions', name: 'actions',
@@ -437,7 +436,7 @@ export default defineComponent({
const allColumnsComputed = computed(() => { const allColumnsComputed = computed(() => {
return allColumns.value.filter( return allColumns.value.filter(
(col) => !col.visu || col.visu === costanti.VISUCAMPI.PER_TUTTI (col) => !col.visu || col.visu === costanti.VISUCAMPI.PER_TUTTI || (col.visu === costanti.VISUCAMPI.PER_EDITORE && tools.isCollaboratore())
); );
}); });
@@ -448,6 +447,7 @@ export default defineComponent({
if (props.table === shared_consts.TABLES_CATALOG) { if (props.table === shared_consts.TABLES_CATALOG) {
selectedColumns.value = selectedColumns_Catalogs.value; selectedColumns.value = selectedColumns_Catalogs.value;
} else { } else {
// "products"
selectedColumns.value = tools.isUtente() selectedColumns.value = tools.isUtente()
? selectedColumns_Utenti.value ? selectedColumns_Utenti.value
: selectedColumns_Editori.value; : selectedColumns_Editori.value;

View File

@@ -10351,6 +10351,22 @@ export const tools = {
); );
}, },
isCollStampa() {
const userStore = useUserStore();
return (userStore.isGrafico || userStore.isAdmin)
},
isCollaboratore() {
const userStore = useUserStore();
return (
userStore.isEditor ||
userStore.isCommerciale ||
userStore.isAdmin ||
userStore.isManager || userStore.isGrafico
);
},
getsearchList_RaccoltaCataloghi() { getsearchList_RaccoltaCataloghi() {
const lista = [ const lista = [
{ {

View File

@@ -186,4 +186,61 @@ body {
font-weight: 600; font-weight: 600;
border-color: #5c8ef4 !important; border-color: #5c8ef4 !important;
box-shadow: 0 0 0 2px rgba(92, 142, 244, 0.3); box-shadow: 0 0 0 2px rgba(92, 142, 244, 0.3);
}
.pdf-link {
font-family: 'Arial', sans-serif;
font-size: 1.1rem;
color: #1a3f8a;
text-decoration: underline;
cursor: pointer;
transition: color 0.2s ease-in-out;
&:hover {
color: #5c8ef4;
}
}
.intestaz-col {
font-size: 1.10rem;
}
.catalog-download-section {
padding: 2rem;
display: flex;
justify-content: center;
align-items: center;
background-color: #f9f9f9;
}
.catalog-card {
border-radius: 16px;
max-width: 400px;
width: 100%;
transition: transform 0.2s ease-in-out;
}
.catalog-card:hover {
transform: translateY(-5px);
}
.hover-lift {
transition: transform 0.2s ease;
}
.hover-lift:hover {
transform: translateY(-2px);
}
.text-link{
font-family: 'Arial', sans-serif;
font-size: 1.1rem;
color: #1a3f8a;
text-decoration: underline;
cursor: pointer;
transition: color 0.2s ease-in-out;
&:hover {
color: #5c8ef4;
}
} }

View File

@@ -124,8 +124,13 @@ export default defineComponent({
{ name: 'azioni', label: 'Azioni', field: 'azioni', align: 'center' }, { name: 'azioni', label: 'Azioni', field: 'azioni', align: 'center' },
]; ];
const pdfRows = computed(() => [ const pdfRows = computed(() => {
return pdfRowsall.value.filter((row) => row.visible);
});
const pdfRowsall = computed(() => [
{ {
visible: true,
name: 'PDF Generato', name: 'PDF Generato',
pdf: myCatalog.value.pdf_generato, pdf: myCatalog.value.pdf_generato,
data: myCatalog.value.data_generato, data: myCatalog.value.data_generato,
@@ -135,15 +140,17 @@ export default defineComponent({
action: () => pubblicaPDF(false), action: () => pubblicaPDF(false),
}, },
{ {
visible: true,
name: 'PDF Generato (Compresso)', name: 'PDF Generato (Compresso)',
pdf: myCatalog.value.pdf_generato_compressed, pdf: myCatalog.value.pdf_generato_compressed,
data: myCatalog.value.data_generato, data: myCatalog.value.data_generato,
showButton: true, showButton: true,
buttonLabel: 'Pubblica PDF OnLine (Compr)', buttonLabel: 'Pubblica PDF Compresso',
size: myCatalog.value.pdf_generato_compr_size, size: myCatalog.value.pdf_generato_compr_size,
action: () => pubblicaPDF(true), action: () => pubblicaPDF(true),
}, },
{ {
visible: tools.isCollStampa(),
name: 'PDF Generato Stampa', name: 'PDF Generato Stampa',
pdf: myCatalog.value.pdf_generato_stampa, pdf: myCatalog.value.pdf_generato_stampa,
data: myCatalog.value.data_generato_stampa, data: myCatalog.value.data_generato_stampa,
@@ -153,11 +160,12 @@ export default defineComponent({
action: () => pubblicaPDFStampa(false), action: () => pubblicaPDFStampa(false),
}, },
{ {
visible: tools.isCollStampa(),
name: 'PDF Generato Stampa (Compresso)', name: 'PDF Generato Stampa (Compresso)',
pdf: myCatalog.value.pdf_generato_stampa_compressed, pdf: myCatalog.value.pdf_generato_stampa_compressed,
data: myCatalog.value.data_generato_stampa, data: myCatalog.value.data_generato_stampa,
showButton: true, showButton: true,
buttonLabel: 'Pubblica PDF Stampa (Compr)', buttonLabel: 'Pubblica PDF Stampa (Compresso)',
size: myCatalog.value.pdf_generato_stampa_compr_size, size: myCatalog.value.pdf_generato_stampa_compr_size,
action: () => pubblicaPDFStampa(true), action: () => pubblicaPDFStampa(true),
}, },
@@ -326,7 +334,8 @@ export default defineComponent({
() => tabcatalogo.value, () => tabcatalogo.value,
() => { () => {
if (!onlyCatalogoPDF.value) { if (!onlyCatalogoPDF.value) {
tools.setCookie('TAB_CAT', tabcatalogo.value); if (tabcatalogo.value === 'lista' || tabcatalogo.value === 'visu')
tools.setCookie('TAB_CAT', tabcatalogo.value);
} }
} }
); );
@@ -2534,7 +2543,6 @@ export default defineComponent({
idCatalog: myCatalog.value._id, idCatalog: myCatalog.value._id,
stampa: instampa, stampa: instampa,
comprimi: true, comprimi: true,
compressione: 'printer',
path: 'upload/cataloghi/', path: 'upload/cataloghi/',
// idtag_pdfcontent: 'tag-catalogo', // idtag_pdfcontent: 'tag-catalogo',
compressione: 'printer', compressione: 'printer',

File diff suppressed because it is too large Load Diff