Compare commits
44 Commits
aggio_0.6.
...
beforeRisI
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a831f37069 | ||
|
|
114af5b3fd | ||
|
|
cfea22b944 | ||
|
|
59efb5c7af | ||
|
|
cf6446ffc4 | ||
|
|
27b3977ad4 | ||
|
|
446b555b46 | ||
|
|
0642375eaf | ||
|
|
a071d17410 | ||
|
|
cb11903707 | ||
|
|
018cf0bd99 | ||
|
|
c02037b35c | ||
|
|
31598e3fbd | ||
|
|
bfceb64811 | ||
|
|
2b359d5260 | ||
|
|
f88b753f26 | ||
|
|
800df74f3f | ||
|
|
874faacd0b | ||
|
|
41ac42b190 | ||
|
|
ef4751dfb2 | ||
|
|
33493bdfe4 | ||
|
|
1a57d5a2e3 | ||
|
|
9908558bf7 | ||
|
|
57eb8ee203 | ||
|
|
bd3a9557e2 | ||
|
|
e805088da7 | ||
|
|
616a6c4218 | ||
|
|
16e3dcc9d0 | ||
|
|
3cf4562285 | ||
|
|
6f1f962c0a | ||
|
|
35db79b479 | ||
|
|
dc502611fa | ||
|
|
fb68df418d | ||
|
|
cfed7552b1 | ||
|
|
c122f0930e | ||
|
|
5789567cd2 | ||
|
|
32b2eb4755 | ||
|
|
41fa886bc8 | ||
|
|
a8eb6344ef | ||
|
|
9c08ebaacd | ||
|
|
eb4998dcd2 | ||
|
|
799a8a0e15 | ||
|
|
6e6e363059 | ||
|
|
7148b773ea |
@@ -1,4 +1,4 @@
|
||||
APP_VERSION="0.6.1"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="13"
|
||||
DIRECTORY_LOCAL="newfreeplanet"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
APP_VERSION="0.6.1"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="13"
|
||||
DIRECTORY_LOCAL=newfreeplanet
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
APP_VERSION="0.6.1"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="13"
|
||||
DIRECTORY_LOCAL=newfreeplanet
|
||||
|
||||
6
.gitignore
vendored
@@ -41,3 +41,9 @@ _ALL_SITES/kolibrilab.it/.env.development
|
||||
_ALL_SITES/kolibrilab.it/.env.test
|
||||
_ALL_SITES/arcadei.it/.env.development
|
||||
public/upload/
|
||||
._yarn.lock
|
||||
.gitignore
|
||||
._upload
|
||||
.___termine.sh
|
||||
.___riso.app
|
||||
.___inizia.sh
|
||||
|
||||
|
Before Width: | Height: | Size: 51 KiB |
30
_ALL_SITES/fioredellavita.riso.app/.env.development
Executable file
@@ -0,0 +1,30 @@
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="15"
|
||||
DIRECTORY_LOCAL="newfreeplanet"
|
||||
DIRECTORY_SERVER="freeplanet_serverside"
|
||||
SERVERDIR_WEBSITE=""
|
||||
SERVERPW_WEBSITE=""
|
||||
APP_URL="https://localhost"
|
||||
URL_FACEBOOK="https://www.facebook.com/freeplanetapp"
|
||||
PROVA_PAOLO="PROVA ENV FUNZIONA!"
|
||||
LANG_DEFAULT="it"
|
||||
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
|
||||
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
|
||||
MONGODB_HOST="https://localhost:3000"
|
||||
LOGO_REG='fioredellavita-logo-full.png'
|
||||
TEST_NAME="Paolo"
|
||||
TEST_SURNAME="Arena"
|
||||
TEST_EMAIL=""
|
||||
TEST_USERNAME=""
|
||||
TEST_PASSWORD=""
|
||||
TEST_APORTADOR=""
|
||||
PUBLICKEY_PUSH='BDncvMiUZmjaCG2Kr1V9N0_33hOG-AuNSbHSvL24y2dzBiUjAxKm02emx5SeJvz2IGmtRf6YqCgopeQwCwUmZw8'
|
||||
IN_CONSTRUCTION="0"
|
||||
DEBUG="1"
|
||||
TELEGRAM_SUPPORT=""
|
||||
PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a"
|
||||
TEST_CELL=""
|
||||
ISTEST=1
|
||||
INLOCALE=1
|
||||
BAK_MONGODB_HOST="http://192.168.0.200:3000"
|
||||
28
_ALL_SITES/fioredellavita.riso.app/.env.test
Executable file
@@ -0,0 +1,28 @@
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="15"
|
||||
DIRECTORY_LOCAL=newfreeplanet
|
||||
DIRECTORY_SERVER=test.freeplanet_serverside
|
||||
SERVERDIR_WEBSITE="testfioredellavita.riso.app"
|
||||
SERVERPW_WEBSITE="pwdadmin@1AOK"
|
||||
APP_URL="https://test.riso.app"
|
||||
URL_FACEBOOK=""
|
||||
PROVA_PAOLO=""
|
||||
LANG_DEFAULT="it"
|
||||
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
|
||||
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
|
||||
MONGODB_HOST="https://test.freeplanet.app:3001"
|
||||
LOGO_REG='fioredellavita-logo-full.png'
|
||||
TEST_NAME=""
|
||||
TEST_SURNAME=""
|
||||
TEST_EMAIL=""
|
||||
TEST_USERNAME=""
|
||||
TEST_PASSWORD=""
|
||||
TEST_APORTADOR=""
|
||||
PUBLICKEY_PUSH="BGXRf1TgcqocqD6J7qnRgCG7AvM2lxAoW7peb7UEzB4SxBb6DxGRdJ0UvD9ewnrB9KrSrh0-aDCODXBm7sZ1DDs"
|
||||
IN_CONSTRUCTION="0"
|
||||
DEBUG="1"
|
||||
TELEGRAM_SUPPORT=""
|
||||
PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a"
|
||||
TEST_CELL=""
|
||||
ISTEST=1
|
||||
448
_ALL_SITES/fioredellavita.riso.app/db/data/popolazione.js
Normal file
11
_ALL_SITES/fioredellavita.riso.app/db/db_data.js
Executable file
@@ -0,0 +1,11 @@
|
||||
import { IEvents } from '../model';
|
||||
|
||||
export const db_data = {
|
||||
URL_FACEBOOK: '',
|
||||
|
||||
userdata: {
|
||||
calendar_editable: false,
|
||||
|
||||
},
|
||||
|
||||
}
|
||||
392
_ALL_SITES/fioredellavita.riso.app/db/i18n_website.js
Executable file
@@ -0,0 +1,392 @@
|
||||
const msg_website = {
|
||||
it: {
|
||||
pages: {
|
||||
home: 'Principale',
|
||||
SignUp: 'Registrazione',
|
||||
SignUp2: 'Registrazione2',
|
||||
SignIn: 'Login',
|
||||
vreg: 'Verifica Reg',
|
||||
Test: 'Test',
|
||||
TestLocal: 'TestLocal',
|
||||
Category: 'Categorie',
|
||||
Todo: 'Todo',
|
||||
personal: 'Personale',
|
||||
bacheca: 'Bacheca',
|
||||
shopping: 'Spesa',
|
||||
Admin: 'Admin',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
projects: 'Progetti',
|
||||
favproj: 'Favoriti',
|
||||
},
|
||||
projall: 'Tutti',
|
||||
projectsShared: 'Miei Condivisi',
|
||||
myprojects: 'Miei Personali',
|
||||
msg: {
|
||||
hello: 'Buongiorno',
|
||||
myAppName: 'FreePlanet',
|
||||
myAppDescription: 'Il primo Vero Social Libero, Equo e Solidale, dove Vive Consapevolezza e Aiuto Comunitario. Gratuito e senza Pubblicità',
|
||||
underconstruction: 'App in costruzione...',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: 'Il primo Vero Social',
|
||||
sottoTitoloApp2: 'Libero, Equo e Solidale',
|
||||
sottoTitoloApp3: 'dove Vive Consapevolezza e Aiuto Comunitario',
|
||||
sottoTitoloApp4: 'Gratuito e senza Pubblicità',
|
||||
},
|
||||
homepage: {
|
||||
descrapp_title1: 'Uniti per Evolvere e Sperimentare',
|
||||
descrapp_pag1: 'Siamo la <strong>Rete Italiana di Scambio Orizzontale</strong>, abbiamo creato questa pittaforma per metterla al servizio di chi vuole riscoprire il valore della <strong>condivisione</strong> e della <strong>cooperazione</strong>. ' +
|
||||
'Valori semplici e profondi che ci aiutano a ritrovare il <strong>senso della vita</strong>, perduto in questa società consumista, e riporti quei <strong>Sani Pricìpi Naturali</strong> ed Umani di <strong>Fratellanza</strong>'
|
||||
+ ' che intere popolazioni antiche conoscevano bene.',
|
||||
descrapp_pag2: 'E\' giunta l\'ora di utilizzare i nuovi strumenti <strong>Tecnologici</strong> a nostro <strong>favore</strong>, per <strong>Liberarci</strong> '
|
||||
+ 'così piano piano dalla <strong>schiavitù</strong> del <strong>"Lavoro per generare Denaro"</strong> e trasformando le nostre <strong>Capacitá</strong> in '
|
||||
+ '<strong>Risorse Umane</strong> per poterci sostenere e vivere in <strong>Armonia</strong> con gli altri.',
|
||||
freesocial: {
|
||||
title: 'Free Social',
|
||||
descr: 'Una Community organizzata per <strong>Categorie</strong>, dove potrai unirti a <strong>Gruppi Tematici</strong>, '
|
||||
+ 'Condividere <strong>Esperienze</strong> e unire Competenze per organizzare e sostenere <strong>Progetti Innovativi</strong> per il Popolo.<br><br>'
|
||||
+ 'Verranno evidenziati sviluppi <strong>Etici</strong> come l\'<strong>Auto-Produzione</strong>, la <strong>Sostenibilitá</strong>, '
|
||||
+ 'la Buona <strong>Salute Naturale</strong> e il <strong>Rispetto per l\'Ambiente</strong> e per tutti gli <strong>Esseri Viventi</strong> di questo '
|
||||
+ '<strong>Pianeta</strong>. Chiunque potrá esprimere il proprio <strong>Consenso o Dissenso</strong> partecipando a <strong>Sondaggi Interattivi</strong>'
|
||||
+ ' e realizzare insieme i <strong>Cambiamenti</strong> necessari alla nostra Società.',
|
||||
},
|
||||
freetalent: {
|
||||
title: 'Free Talent',
|
||||
descr: 'Condividi i tuoi <strong>Talenti</strong> e <strong>Abilità</strong>, '
|
||||
+ 'al posto del denaro guadagnagnerai <strong>Tempo</strong>.<br> '
|
||||
+ '<strong>"1 ora"</strong> diventa moneta di scambio, uguale per tutti.<br>'
|
||||
+ 'Potrai utilizzare questi tuoi <strong>"Crediti Tempo"</strong> per soddisfare le tue necessità, cercando nelle <strong>Competenze Disponibili</strong>.<br>'
|
||||
+ 'Nel Dare e Ricevere, si creeranno così legami di <strong>Amicizia, Solidarietà, Cooperazione e Divertimento</strong><br><br>'
|
||||
+ 'Questo progetto vuole diffondere, ora in maniera informatizzata, questa realtà che gia esiste da tanti anni, e viene chiamata <strong>"Banca del Tempo"</strong>. '
|
||||
+ 'Le <strong>segreterie</strong> sparse in tutto il mondo, serviranno a dare maggiore <strong>affidabilità</strong> e <strong>fiducia</strong> negli scambi di talenti tra persone sconosciute. '
|
||||
+ 'Creeremo così una <strong>rete di fiducia</strong> nel vicinato, come giá viene praticato in numerosi <strong>Ecovillaggi</strong> e Comunità del mondo.',
|
||||
},
|
||||
freegas: {
|
||||
title: 'Free G.A.S.',
|
||||
descr: 'Ti piacerebbe utilizzare una App che ti permetta facilmente di acquistare Prodotti Locali direttamente dal <strong>Produttore</strong>?<br>'
|
||||
+ 'Con i <strong>Gruppi di Acquisto Solidale</strong> si evitano intermediazioni inutili, ottenendo parecchi benefici tra cui:<br>'
|
||||
+ '<ul class="mylist" style="padding-left: 20px;"><li><strong>Qualitá Superiore</strong> del prodotto</li>'
|
||||
+ '<li>Le <strong>Recensioni</strong> dei consumatori favoriranno i Produttori con Sani Intenti</li>'
|
||||
+ '<li>Possiblità d\'interagire con il Produttore</li>'
|
||||
+ '<li>Apertura alle Relazioni tra persone, condividendo <strong>Ricette</strong> e <strong>Consigli</strong> preziosi</li>'
|
||||
+ '<li><strong>Risparmio</strong> di soldi (prezzi all\'Ingrosso)</li>'
|
||||
+ '<li>Valorizzare il <strong>Territorio</strong> e l\'Economia <strong>Locale</strong></li>'
|
||||
+ '<li>Condizioni <strong>Eque</strong> per i Lavoratori</li>'
|
||||
+ '<li>Ridotto <strong>Impatto Ambientale</strong></ul>',
|
||||
},
|
||||
freeliving: {
|
||||
title: 'Free Co-Living',
|
||||
descr: 'Unire più realtà, condividendo l\'esperienza di abitare insieme, per un periodo definito:<br>'
|
||||
+ '1) C\'è chi <strong>Vive solo</strong> ed ha una casa.<br>'
|
||||
+ '2) Chi ha bisogno di un <strong>alloggio</strong> temporaneo.<br><br>'
|
||||
+ 'Oggi sempre più persone <strong>abitano da sole</strong> e vorrebbero continuare a vivere nella propria abitazione.<br>'
|
||||
+ 'Altre persone invece hanno bisogno di una <strong>stanza</strong>, per scelta o per necessita, ed in cambio sono disponibili a '
|
||||
+ '<strong>contribuire alle spese</strong> per le utenze domestiche o magari <strong>aiutare</strong> la persona a <strong>fare la spesa</strong>, cucinare, <strong>pulire casa</strong> oppure offrendogli semplicemente <strong>compagnia</strong>.<br><br>'
|
||||
+ 'Tramite questo strumento, le persone potranno trovarsi, mettersi in contatto e decidere in che forma <strong>co-abitare</strong> e per quanto tempo. Le <strong>recensioni</strong> rilasciate ed il <strong>dettaglio</strong> dei profili utenti, '
|
||||
+ 'aiuterà nella scelta della persona più in <strong>sintonia</strong>.',
|
||||
|
||||
},
|
||||
freecollabora: {
|
||||
title: 'Chi può Collaborare?',
|
||||
descr: 'Tutti coloro che sono in linea con <strong>Princìpi Etici</strong> e ricerca del <strong>Benessere Globale del Pianeta</strong><br>'
|
||||
+ 'Pertanto sono i benvenuti:'
|
||||
+ '<ul class="mylist" style="padding-left: 20px;">'
|
||||
+ '<li><strong>Associazioni no-profit, Ecovillaggi, Comunità</strong></li>'
|
||||
+ '<li>Gruppi che intendono promuovere <strong>Progetti Sociali Innovativi</strong> per una <strong>Decrescita Felice</strong></li>'
|
||||
+ '<li>Chi gestisce un <strong>Gruppo di Acquisto Solidale (G.A.S.)</strong></li>'
|
||||
+ '<li><strong>Produttori Locali Etici</strong></li>'
|
||||
+ '<li>Chi gestisce una <strong>Banca del Tempo</strong></li>'
|
||||
+ '<li><strong>Chiunque voglia partecipare</strong>, nella forma che ritiene più opportuna.</li>'
|
||||
+ '</ul>',
|
||||
},
|
||||
freesostieni: {
|
||||
title: 'Come Sostenere il progetto?',
|
||||
descr: '<ul class="mylist" style="padding-left: 20px;">'
|
||||
+ '<li><strong>Condividendolo</strong> a tutti coloro che vogliono far parte insieme della crescita e sviluppo di una Nuova Era</li>'
|
||||
+ '<li>Rispondendo ai <strong>Sondaggi Popolari</strong> e lasciando <strong>Feedback</strong></li>'
|
||||
+ '<li>Tramite una <strong>donazione</strong> (<strong>anche 1€</strong> ) per le spese.<br>'
|
||||
+ '</ul>'
|
||||
+ 'Vedo un <strong>futuro</strong> dove non si utilizzerà più denaro. Dove le persone si <strong>aiuteranno</strong> a vicenda e non avranno bisogno di "possedere" cose, ma le <strong>condivideranno</strong> con gli altri.<br>',
|
||||
},
|
||||
multiplatform: {
|
||||
title: 'Multi-piattaforma',
|
||||
descr: 'E\' compatibile con Google Chrome, Firefox, Safari, iOS, Android e PC. L\'Applicazione s\'installa facilmente, senza passare dallo store. '
|
||||
+ 'basta condividere il nome del sito <strong>www.freeplanet.app</strong>.<br>'
|
||||
+ 'Dopo la registrazione chiederà di aggiungerlo alla lista delle applicazioni e sullo sfondo',
|
||||
},
|
||||
free: {
|
||||
title: 'Gratuita, Open Source e Niente Pubblicità',
|
||||
descr: 'Questa App <strong>non è in vendita</strong>, non ha scopi commerciali, <strong>non ha prezzo</strong> ed appartiene al <strong>Popolo del Nuovo Mondo</strong>.<br>Chiunque potrá utilizzarla e beneficiarne.<br>A me il compito di gestirla e proteggerla. '
|
||||
+ 'Verranno accettate solo donazioni Libere di privati ed Associazioni no-profit, in linea con i Principi, che serviranno per coprire le spese.<br>' +
|
||||
+ '<strong>Grazie a Tutti per il sostegno</strong>. ',
|
||||
},
|
||||
contacts: 'Contatti',
|
||||
},
|
||||
},
|
||||
es: {
|
||||
pages: {
|
||||
home: 'Principal',
|
||||
SignUp: 'Nueva Cuenta',
|
||||
SignIn: 'Entrar',
|
||||
vreg: 'Verifica Reg',
|
||||
Test: 'Test',
|
||||
Category: 'Categorías',
|
||||
Todo: 'Tareas',
|
||||
personal: 'Personal',
|
||||
work: 'Trabajo',
|
||||
shopping: 'Compras',
|
||||
Admin: 'Administración',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
projects: 'Proyectos',
|
||||
},
|
||||
favproj: 'Favoritos',
|
||||
projall: 'Todos',
|
||||
projectsShared: 'Mis Compartidos',
|
||||
myprojects: 'Mis Personales',
|
||||
msg: {
|
||||
hello: 'Buenos Días',
|
||||
myAppName: 'FreePlanet',
|
||||
myAppDescription: 'El primer Verdadero Social Libre, justo y Solidario Donde vive Conciencia y Ayuda comunitaria, Gratis y sin publicidad',
|
||||
underconstruction: 'App en construcción...',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: 'El primer Verdadero Social',
|
||||
sottoTitoloApp2: 'Libre, justo y Solidario',
|
||||
sottoTitoloApp3: 'Donde vive Conciencia y Ayuda comunitaria',
|
||||
sottoTitoloApp4: 'Gratis y sin publicidad',
|
||||
},
|
||||
homepage: {
|
||||
descrapp_title1: 'Unidos para evolucionar y experimentar',
|
||||
descrapp_pag1: 'Redescubra cómo el valor de <strong>Compartir</strong> y <strong>Cooperación</strong> puede ayudarnos a encontrar el profundo '
|
||||
+ 'sentido de la <strong>Vida</strong>, perdido en esta sociedad consumista, y mostrando esos <strong>Principios Naturales Saludables</strong> y la <strong>Hermandad Humana</strong>'
|
||||
+ 'que toda la población antigua conocía bien.',
|
||||
descrapp_pag2: 'Ha llegado el momento de utilizar las nuevas herramientas <strong>tecnológicas</strong> en nuestro <strong>favor</strong>, para <strong>liberarnos</strong> '
|
||||
+ 'tan lentamente desde la <strong>esclavitud</strong> de <strong>"Trabaja para generar dinero"</strong> y transformando nuestra <strong>Capacidad</strong> en'
|
||||
+ '<strong>Recursos humanos</strong> para poder apoyar y vivir en <strong>Armonia</strong> con otros.',
|
||||
freesocial: {
|
||||
title: 'Free Social',
|
||||
descr: 'Una comunidad organizada por <strong>Categorías</strong>, donde puedes unirte a <strong>Grupos temáticos</strong>, '
|
||||
+ 'Compartir <strong>experiencias</strong> y combinar habilidades para organizar y apoyar <strong>proyectos innovadores</strong> para la gente.<br><br>'
|
||||
+ 'Los desarrollos <strong>éticos</strong> como <strong>:<br>Auto-producción</strong>, <strong>Sostenibilidad</strong>, '
|
||||
+ 'la Buena <strong>Salud natural</strong> y <strong>Respeto por el Medio Ambiente</strong> y para todos los <strong>Seres vivos</strong> de este'
|
||||
+ '<strong>Planeta</strong>. Cualquiera puede expresar su <strong>consentimiento o disidencia</strong> participando en <strong>Encuestas Interactivas</strong> '
|
||||
+ 'y llevar a cabo juntos los <strong>Cambios</strong> necesarios para nuestra sociedad.',
|
||||
},
|
||||
freetalent: {
|
||||
title: 'Free Talent',
|
||||
descr: 'Comparte tus <strong>Talentos</strong> y <strong>Habilidades</strong>, '
|
||||
+ 'en lugar de dinero, ganarás <strong>Tiempo</strong>. <br>'
|
||||
+ '<strong>"1 hora"</strong> se convierte en una moneda de intercambio, igual para todos. <br>'
|
||||
+ 'Puedes usar estos <strong>"Créditos de tiempo"</strong> para satisfacer tus necesidades, buscando en <strong>Habilidades disponibles</strong>. <br> '
|
||||
+ 'En Dar y Recibir, crearemos así vínculos de <strong>Amistad, Solidaridad, Cooperación y Diversión</strong>. <br> <br>'
|
||||
+ 'Este proyecto apunta a difundir esta realidad, que ya existe desde hace muchos años y se llama <strong>"Banco de tiempo"</strong>. '
|
||||
+ 'Las <strong>secretarías</strong> dispersas por todo el mundo, servirán para dar mayor <strong>fiabilidad</strong> y <strong>confianza</strong> en el intercambio de talentos entre personas desconocidas. '
|
||||
+ 'Así crearemos una <strong>red de confianza</strong> en el vecindario, como ya se practica en numerosos <strong>Ecoaldeas</strong> y en la Comunidades del mundo.',
|
||||
},
|
||||
freegas: {
|
||||
title: 'Free G.A.S. (G.C.S.)',
|
||||
descr: '¿Le gustaría usar una aplicación que le permita comprar productos locales directamente desde el <strong>Productor</strong>? <br> '
|
||||
+ 'Con <strong>Grupos de Compra Solidarios</strong> evitamos intermediarios innecesarios, obteniendo muchos beneficios, incluyendo: <br>'
|
||||
+ '<ul class = "mylist" style = "padding-left: 20px;"> <li> <strong>Superior Quality</strong> del producto </li>'
|
||||
+ '<li> Opiniones <strong>de consumidores</strong> favorecerá a los productores con intenciones saludables </li>'
|
||||
+ '<li> Posibilidad de interactuar con el Productor </li>'
|
||||
+ '<li> Abierto a relaciones entre personas, compartiendo <strong>Recetas</strong> y <strong>Consejos</strong> preciosos </li>'
|
||||
+ '<li> <strong>Ahorros</strong> de dinero (precios al por mayor) </li>'
|
||||
+ '<li> Mejorando el <strong>Territorio</strong> y la Economía <strong>Local</strong> </li>'
|
||||
+ '<li> Condiciones <strong>Justa</strong> para Trabajadores </li>'
|
||||
+ '<li> Reducido <strong>Impacto Ambiental</strong> </ul>',
|
||||
},
|
||||
freeliving: {
|
||||
title: 'Free Co-Living',
|
||||
descr: 'Para unir más realidad, compartiendo la experiencia de vivir juntos, por un período definido: <br> '
|
||||
+ '1) Hay quien <strong>vive solo</strong> y tiene un hogar. <br>'
|
||||
+ '2) Quién necesita un alojamiento <strong>temporal</strong>. <br><br>'
|
||||
+ 'Hoy en día, más y más personas <strong>viven solas</strong> y les gustaría seguir viviendo en sus propios hogares. <br>'
|
||||
+ 'Otras personas necesitan una <strong>Habitación</strong>, por elección o por necesidad, y a cambio están disponibles en'
|
||||
+ '<strong>contribuir a los gastos</strong> para los billetes de casa o tal vez <strong>ayuda</strong> a la persona mayor para <strong>ir de compras</strong>, cocinar, <strong>limpiar casa</strong> o simplemente ofreciéndole <strong>compañía</strong>. <br><br> '
|
||||
+ 'A través de esta herramienta, las personas pueden ponerse en contacto y decidir en qué forma <strong>co-habitar</strong>. Los <strong>comentarios</strong> publicados y el <strong>detalle</strong> de los perfiles de usuario, '
|
||||
+ 'ayudará a elegir a la persona más en <strong>armonía</strong>.',
|
||||
|
||||
},
|
||||
freecollabora: {
|
||||
title: '¿Quién puede colaborar?',
|
||||
descr: 'Todos aquellos que están en línea con <strong>Principios éticos</strong> y la investigación de <strong>Bienestar Global del Planeta</strong> <br> '
|
||||
+ 'Por eso son bienvenidos:'
|
||||
+ '<ul class = "mylist" style = "padding-left: 20px;">'
|
||||
+ '<li> <strong>Asociaciones sin ánimo de lucro, Ecoaldeas, Comunidades</strong> </li>'
|
||||
+ '<li> Grupos que desean promover <strong>Proyectos sociales innovadores</strong> para <strong>Feliz Decrecimiento</strong> </li>'
|
||||
+ '<li> Quién administra un <strong>Grupo de Compra Solidario (G.C.S.)</strong> </li>'
|
||||
+ '<li><strong>Productores locales Éticos</strong></li>'
|
||||
+ '<li> Quién administra un <strong>Banco de Tiempo</strong> </li>'
|
||||
+ '<li> <strong>Cualquier persona que quiera participar</strong>, en la forma que considere más apropiada. </li>'
|
||||
+ '</ul>',
|
||||
},
|
||||
freesostieni: {
|
||||
title: '¿Cómo apoyar el proyecto?',
|
||||
descr: '<ul class="mylist" style="padding-left: 20px;">'
|
||||
+ '<li> <strong>Compartiéndolo</strong> a todos aquellos que quieran unirse en el crecimiento y desarrollo de una Nueva Era </li> '
|
||||
+ '<li> Respondiendo a <strong>Encuestas populares</strong> y dejando <strong>Comentarios</strong> </li>'
|
||||
+ '<li> A través de una <strong>donación</strong> (<strong>incluso € 1</strong>) para los gastos. <br>'
|
||||
+ '</ul>'
|
||||
+ '<br>Veo un <strong>futuro</strong> en el que ya no usarás dinero. Donde las personas <strong>se ayudarán unos a otros</strong> y no necesiten "poseer" cosas, pero <strong>compartirán</strong> con otros. <br> ',
|
||||
},
|
||||
multiplatform: {
|
||||
title: 'Multi-plataforma',
|
||||
descr: 'Compatible con Google Chrome, Firefox, Safari, iOS, Android y PC. La aplicación se instala fácilmente, sin pasar por el store. '
|
||||
+ 'para compartirlo, necesita solo el nombre del sitio web: <strong>www.freeplanet.app</strong>.<br>'
|
||||
+ 'Después del registro, le pedirá que lo agregue a la lista de aplicaciones y en la pantalla.',
|
||||
},
|
||||
free: {
|
||||
title: 'Libre, Código Abierto y Sin Publicidad',
|
||||
descr: 'Esta aplicación <strong>no está a la venta</strong>, no tiene un propósito comercial, <strong>no tiene precio</strong> y pertenece a <strong>la Gente del Nuevo Mundo</strong>.<br>'
|
||||
+ 'Cualquiera puede usarla y beneficiarse.<br> A mí la tarea de gestionarlo y protegerlo. '
|
||||
+ 'Solo se aceptarán donaciones de particulares y asociaciones sin änimo de lucro, en línea con los Principios, que se utilizarán para cubrir los gastos. <br>'
|
||||
+ '<strong>Gracias a todos por el apoyo</strong>. ',
|
||||
},
|
||||
contacts: 'Contactos',
|
||||
},
|
||||
},
|
||||
enUs: {
|
||||
pages: {
|
||||
home: 'Dashboard',
|
||||
SignUp: 'SignUp',
|
||||
SignIn: 'SignIn',
|
||||
vreg: 'Verify Reg',
|
||||
Test: 'Test',
|
||||
Category: 'Category',
|
||||
Todo: 'Todo',
|
||||
personal: 'Personal',
|
||||
work: 'Work',
|
||||
shopping: 'Shopping',
|
||||
Admin: 'Admin',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
projects: 'Projects',
|
||||
},
|
||||
favproj: 'Favorite',
|
||||
projall: 'All',
|
||||
projectsShared: 'My Shared',
|
||||
myprojects: 'My Personals',
|
||||
msg: {
|
||||
hello: 'Hello!',
|
||||
myAppName: 'FreePlanet',
|
||||
myAppDescription: 'The first Real Social Free, Fair and Equitable Where the conscience and community help live. Free and without advertising',
|
||||
underconstruction: 'App in construction...',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: 'The first Real Social',
|
||||
sottoTitoloApp2: 'Free, Fair and Equitable',
|
||||
sottoTitoloApp3: 'Where the conscience and community help live',
|
||||
sottoTitoloApp4: 'Free and without advertising',
|
||||
},
|
||||
homepage: {
|
||||
descrapp_title1: 'Together to Evolve and Experiment',
|
||||
descrapp_pag1: 'Rediscover how the value of <strong>Sharing</strong> and <strong>Cooperation</strong>, can help us find the deep meaning of'
|
||||
+ '<strong>Life</strong>, lost in this consumer society, and showing those <strong>Healthy Natural Principles</strong> and Human <strong>Brotherhood</strong>'
|
||||
+ 'that entire ancient populations knew well.',
|
||||
descrapp_pag2: 'The time has come to use the new <strong>Technological</strong> tools in our <strong>favor</strong>, to <strong>Free ourselves</strong> '
|
||||
+ 'so slowly from the <strong>slavery</strong> of the <strong>"Work to generate Money"</strong> and transforming our <strong>Capacity</strong> into'
|
||||
+ '<strong>Human Resources</strong> to be able to support and live in <strong>Harmony</strong> with others.',
|
||||
freesocial: {
|
||||
title: 'Free Social',
|
||||
descr: 'A Community organized by <strong>Categories</strong>, where you can join <strong>Thematic Groups</strong>, '
|
||||
+ 'Share <strong>Experiences</strong> and combine Skills to organize and support <strong>Innovative Projects</strong> for the People.<br><br>'
|
||||
+ '<strong>Ethical</strong> developments such as <strong>Auto-Production</strong>, <strong>Sustainability</strong>, '
|
||||
+ 'Good <strong>Natural Health</strong> and <strong>Respect for the Environment</strong> and for all <strong>Living Beings</strong> of this'
|
||||
+ '<strong>Planet</strong>. Anyone can express their <strong>Consent or Dissent</strong> by participating in <strong>Interactive Surveys</strong> '
|
||||
+ 'and carry out together the <strong>Changes</strong> needed for our society.',
|
||||
},
|
||||
freetalent: {
|
||||
title: 'Free Talent',
|
||||
descr: 'Share your <strong>Talents</strong> and <strong>Skills</strong>, '
|
||||
+ 'instead of money, you\'ll earn <strong>Time</strong>. <br>'
|
||||
+ '<strong>"1 hour"</strong> becomes a currency of exchange, equal for all. <br>'
|
||||
+ 'You can use these <strong>"Time Credits"</strong> to meet your needs, looking in <strong>Available Skills</strong>. <br>'
|
||||
+ 'In Giving and Receiving, we will thus create bonds of <strong>Friendship, Solidarity, Cooperation and Enjoyment</strong> <br> <br>'
|
||||
+ 'This project aims to spread this reality, which already exists for many years and is called <strong>"Time Bank"</strong>. '
|
||||
+ 'The <strong>secretariats</strong> in all over the world, will serve an extra to give greater <strong>reliability</strong> and <strong>trust</strong> in the exchange of talents between unknown people. '
|
||||
+ 'We will thus create a <strong>trust network</strong> in the neighborhood, as is already practiced in numerous <strong>Ecovillages</strong> and Community of the world. ',
|
||||
},
|
||||
freegas: {
|
||||
title: 'Free G.A.S.',
|
||||
descr: 'Would you like to use an App that allows you to easily Buy Local Products directly from <strong>Manufacturer</strong>? <br> '
|
||||
+ 'With <strong>Solidarity Purchase Groups</strong> (in Italian: "Gruppo di Aacquisto Solidale") we avoid unnecessary intermediaries, obtaining many benefits including: <br>'
|
||||
+ '<ul class="mylist" style="padding-left: 20px;"> <li> <strong>Superior Quality</strong> of the product </li>'
|
||||
+ '<li> Consumer <strong>Reviews</strong> will favor Producers with Healthy Intents </li>'
|
||||
+ '<li> Possibility to interact with the Producer </li>'
|
||||
+ '<li> Open to Relations between people, sharing <strong>Recipes</strong> and precious <strong>Tips</strong> </li>'
|
||||
+ '<li> <strong>Savings</strong> money (wholesale prices) </li>'
|
||||
+ '<li> Enhancing the <strong>Territory</strong> and the <strong>Local Economy</strong> </li>'
|
||||
+ '<li> <strong>Fair Conditions</strong> for Workers </li>'
|
||||
+ '<li> Reduced <strong>Environmental Impact</strong> </ul>',
|
||||
},
|
||||
freeliving: {
|
||||
title: 'Free Co-Living',
|
||||
descr: 'Join more reality, sharing the experience of living together, for a defined period: <br> '
|
||||
+ '1) Someone <strong>Lives alone</strong> and has a house. <br>'
|
||||
+ '2) Who needs a temporary <strong> accommodation </strong>. <br><br>'
|
||||
+ 'Today more and more people <strong> live alone </strong> and would like to continue living in their own house. <br>'
|
||||
+ 'Other people instead need a <strong>room</strong>, by choice or by necessity, and in return they are available to'
|
||||
+ '<strong>contribute to expenses</strong> for households or maybe <strong>help</strong> to <strong>go shopping</strong>, cooking, <strong>cleaning house</strong> or simply offering him <strong>companionship</strong>. <br> '
|
||||
+ 'Through this tool, people can get in touch and decide in which way <strong>co-living</strong>. The <strong>reviews</strong> released and the <strong>detail</strong> of user profiles, '
|
||||
+ 'will help in <strong>choosing</strong> the person more in <strong>tune</strong>.',
|
||||
|
||||
},
|
||||
freecollabora: {
|
||||
title: 'Who can collaborate?',
|
||||
descr: 'All those who are in line with <strong>Ethical Principles</strong> and research of <strong>Global Wellness of the Planet</strong> <br> '
|
||||
+ 'Therefore they are welcome:'
|
||||
+ '<ul class = "mylist" style = "padding-left: 20px;">'
|
||||
+ '<li> <strong>Non-profit associations, Ecovillages, Communities</strong> </li>'
|
||||
+ '<li> Groups that want to promote <strong>Innovative Social Projects</strong> for <strong>Happy Degrowth</strong> </li>'
|
||||
+ '<li> Who manages a <strong>Solidarity Purchase Group</strong> </li>'
|
||||
+ '<li><strong>Local Ethical Producers</strong></li>'
|
||||
+ '<li> Who manages a <strong>Time Bank</strong> </li>'
|
||||
+ '<li> <strong>Anyone who wants to participate</strong>, in the form it considers most appropriate. </li>'
|
||||
+ '</ul>',
|
||||
},
|
||||
freesostieni: {
|
||||
title: 'How to support the project?',
|
||||
descr: '<ul class="mylist" style="padding-left: 20px;">'
|
||||
+ '<li> <strong>Sharing it</strong> to all those who want to join together in the growth and development of a New Era </li> '
|
||||
+ '<li> Answering to <strong>Popular Polls</strong> and leaving <strong>Feedback</strong> </li>'
|
||||
+ '<li> Through a <strong>donation</strong> (<strong>even $ 1</strong>) for expenses. <br>'
|
||||
+ '</ul><br>'
|
||||
+ 'I see a <strong>future</strong> where you will no longer use money. Where people <strong>will help each other</strong> and won\'t need to "own" things, but <strong>will share</strong> with others. <br> ',
|
||||
},
|
||||
multiplatform: {
|
||||
title: 'Multi-platform',
|
||||
descr: 'It is compatible with Google Chrome, Firefox, Safari, iOS, Android and PC. The Application is easily installed, without going through the store. '
|
||||
+ 'just share the nametranslate of this site <strong>www.freeplanet.app</strong>.<br>'
|
||||
+ 'After registration it will ask to be added to the application list and in the screen',
|
||||
},
|
||||
free: {
|
||||
title: 'Free, Open Source and No Advertising',
|
||||
descr: 'This App <strong>is not for sale</strong>, has no commercial purpose, <strong>is priceless</strong> and belongs to the <strong>New World People</strong>.'
|
||||
+ '<br>Anyone can use it and benefit from it.<br>To me the task of managing it and protecting it. '
|
||||
+ 'Only donations from private individuals and non-profit associations will be accepted, in line with the Principles, which will be used to cover the expenses. <br>'
|
||||
+ '<strong>Thanks all for the support</strong>. ',
|
||||
},
|
||||
contacts: 'Contacts',
|
||||
},
|
||||
},
|
||||
fr: {
|
||||
pages: {
|
||||
|
||||
},
|
||||
msg: {
|
||||
|
||||
},
|
||||
|
||||
},
|
||||
de: {
|
||||
pages: {
|
||||
|
||||
},
|
||||
msg: {
|
||||
|
||||
},
|
||||
|
||||
},
|
||||
}
|
||||
|
||||
export default msg_website;
|
||||
88
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_de.js
Executable file
@@ -0,0 +1,88 @@
|
||||
const msg_website_de = {
|
||||
ws: {
|
||||
sitename: 'AYNI',
|
||||
siteshortname: 'Ayni',
|
||||
botname: 'AYNI BOT',
|
||||
},
|
||||
pages: {
|
||||
home: 'Home',
|
||||
profile: 'Profilo',
|
||||
payment: 'Pagamenti',
|
||||
regok: 'Registrazione Confermata',
|
||||
presentazione: 'Presentazione',
|
||||
presentazione2: 'Presentazione',
|
||||
invita: 'Invita Persone',
|
||||
SignUp: 'Nuova Registrazione',
|
||||
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
|
||||
SignUp2: 'Registrazione',
|
||||
SignUp4: 'Reg',
|
||||
SignIn: 'Login',
|
||||
status: 'Statistiche',
|
||||
nextzoom: 'Conferenze',
|
||||
requestresetpwd: 'Richiesta Reset Password',
|
||||
vreg: 'Verifica Reg',
|
||||
dashboard: 'Lavagna',
|
||||
statoattuale: 'Stato Attuale',
|
||||
posizione_in_programmazione: 'Lista d\'Imbarco',
|
||||
posizione_in_nave: 'Lista Navi',
|
||||
nave: 'Nave',
|
||||
testimonial: 'Testimonianze',
|
||||
Test: 'Test',
|
||||
Category: 'Categorie',
|
||||
Admin: 'Admin',
|
||||
extralist: 'Lista Extra',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
chisiamo: 'Chi Siamo',
|
||||
linkamici: 'Link Amici',
|
||||
dovesiamo: 'Dove Siamo',
|
||||
evento: 'Evento',
|
||||
eventodef: 'Evento:',
|
||||
prova: 'prova',
|
||||
dbop: 'Operazioni',
|
||||
statusreg: {
|
||||
reg: 'Partecipanti',
|
||||
verifieds: 'Verificati',
|
||||
autorizzati: 'Autorizzati',
|
||||
passeggeri: 'Passeggeri Navi',
|
||||
giainlista: 'Gia in Lista',
|
||||
newreg: 'Ultime Registrazioni:',
|
||||
nationality: 'Nazionalità',
|
||||
verified: 'Verificata',
|
||||
nonverified: 'Non Verificata',
|
||||
req7: 'Con 5 passi entri nella lista d\'Imbarco',
|
||||
req9: 'Con 7 passi aiuti {sitename} a Crescere!',
|
||||
req: 'Passi',
|
||||
people: 'Inv.',
|
||||
peoplelegend: 'Numero d\'Invitati',
|
||||
},
|
||||
},
|
||||
msg: {
|
||||
myAppDescription: '',
|
||||
keywords_base: '',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: '',
|
||||
sottoTitoloApp2: '',
|
||||
sottoTitoloApp3: '',
|
||||
sottoTitoloApp4: '',
|
||||
},
|
||||
homepage: {
|
||||
nostra_missione: 'Nostra Missione',
|
||||
associazione: '',
|
||||
tit_come_associarsi: 'Come Associarsi',
|
||||
testo_come_associarsi: '',
|
||||
titlecontatti: 'CONTATTI',
|
||||
},
|
||||
text: {
|
||||
videotitle: 'VIDEO',
|
||||
how: 'COME FUNZIONA',
|
||||
what: 'COSA TI SERVE',
|
||||
step: 'PASSI DA COMPIERE',
|
||||
testimonial: 'TESTIMONIANZE',
|
||||
faq: 'DOMANDE FREQUENTI (FAQ)',
|
||||
advise: 'SUGGERIMENTI',
|
||||
download: 'MATERIALE DISPONIBILE',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_de;
|
||||
160
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_enUs.js
Executable file
@@ -0,0 +1,160 @@
|
||||
const msg_website_enUs = {
|
||||
ws: {
|
||||
sitename: 'Fiore Della Vita',
|
||||
siteshortname: 'Fiore Della Vita',
|
||||
description: '',
|
||||
keywords: '',
|
||||
},
|
||||
products: {
|
||||
quantity: 'Quantità',
|
||||
quantityAvailable: 'Disponibili',
|
||||
weight: 'Peso',
|
||||
stars: 'Voto',
|
||||
color: 'Colore',
|
||||
theme: 'Tema',
|
||||
},
|
||||
hours: {
|
||||
descr: 'Descrizione',
|
||||
date: 'Data',
|
||||
time_start: 'Ora Inizio',
|
||||
time_end: 'Ora Fine',
|
||||
hours: 'Ore',
|
||||
note: 'Note Extra',
|
||||
},
|
||||
pages: {
|
||||
home: 'Home',
|
||||
profile: 'Profile',
|
||||
profile2: 'ProfiloU',
|
||||
mypage2: 'mypage2',
|
||||
myservice2: 'myservice2',
|
||||
test: 'Test',
|
||||
projects: 'Progetti',
|
||||
report: 'Report Ore',
|
||||
producer: 'Produttore',
|
||||
orderinfo: 'Ordini Effettuati',
|
||||
products: 'Prodotti',
|
||||
productslist: 'Lista Prodotti',
|
||||
collabora: 'Collabora',
|
||||
storehouses: 'Magazzino',
|
||||
departments: 'Uffici',
|
||||
orders: 'Ordini Ricevuti',
|
||||
orders2: 'Ordini Ricevuti',
|
||||
sharewithus: 'Condividi con Noi',
|
||||
checkout: 'Carrello',
|
||||
payment: 'Payments',
|
||||
regok: 'Registration Confirmed',
|
||||
presentazione: 'Presentation',
|
||||
presentazione2: 'Presentation',
|
||||
invita: 'Invite People',
|
||||
SignUp: 'Registration',
|
||||
SignUpIscrizione: 'Diventa Socio CNM',
|
||||
SignUp_alreadylista: 'Registration for those who are already in the List!',
|
||||
SignUp2: 'Registration',
|
||||
SignIn: 'Login',
|
||||
status: 'Current state',
|
||||
nextzoom: 'Conferences',
|
||||
requestresetpwd: 'Password Reset Request',
|
||||
vreg: 'Check Registration',
|
||||
dashboard: 'Dashboard',
|
||||
statoattuale: 'Current Status',
|
||||
posizione_in_programmazione: 'Boarding List',
|
||||
posizione_in_nave: 'Ships List',
|
||||
nave: 'Ship',
|
||||
testimonial: 'Reviews',
|
||||
Test: 'Test',
|
||||
Category: 'Categorie',
|
||||
Admin: 'Admin',
|
||||
Sites: 'Siti Web',
|
||||
extralist: 'Lista Extra',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
chisiamo: 'Chi Siamo',
|
||||
linkamici: 'Link Amici',
|
||||
dovesiamo: 'Dove Siamo',
|
||||
calendarioeventi: 'Calendario Eventi',
|
||||
evento: 'Evento',
|
||||
eventodef: 'Evento:',
|
||||
prova: 'prova',
|
||||
dbop: 'Operazioni',
|
||||
projall: 'Comunitari',
|
||||
groups: 'Lista Gruppi',
|
||||
projectsShared: 'Condivisi da me',
|
||||
myprojects: 'Privati',
|
||||
favproj: 'Favoriti',
|
||||
statusreg: {
|
||||
reg: 'Participants',
|
||||
verifieds: 'Verificati',
|
||||
autorizzati: 'Autorizzati',
|
||||
autorizzare: 'In attesa di Abilitazione',
|
||||
passeggeri: 'Passengers Ships',
|
||||
giainlista: 'Already in the List',
|
||||
newreg: 'New registrations:',
|
||||
nationality: 'Nationality',
|
||||
nationality_born: 'Nazione di Nascita',
|
||||
verified: 'Verified',
|
||||
nonverified: 'Not Verified',
|
||||
req7: 'With 5 steps you enter the boarding list.',
|
||||
req9: 'With 7 steps help {sitename} to grow!',
|
||||
req: 'Steps',
|
||||
people: 'Gue.',
|
||||
peoplelegend: 'Number of guests',
|
||||
},
|
||||
admin_ecommerce: 'ECommerce',
|
||||
ecommerce: 'Prodotti',
|
||||
ecommerce_menu: 'ECommerce1',
|
||||
hours: 'Ore',
|
||||
department: 'Uffici',
|
||||
title: 'Titolo',
|
||||
path: 'Percorso',
|
||||
img1: 'Immagine 1',
|
||||
contentfield: 'Testo 1',
|
||||
video1: 'Video 1',
|
||||
ratio1: 'Ratio 1',
|
||||
img2: 'Immagine 2',
|
||||
content2: 'Testo 2',
|
||||
video2: 'Video 2',
|
||||
ratio2: 'Ratio 2',
|
||||
img3: 'Immagine 3',
|
||||
content3: 'Testo 3',
|
||||
video3: 'Video 3',
|
||||
ratio3: 'Ratio 3',
|
||||
content4: 'Testo 4',
|
||||
active: 'Attiva',
|
||||
inmenu: 'Sul Menu',
|
||||
submenu: 'SottoMenu',
|
||||
infooter: 'Sul Footer',
|
||||
internalpage: 'Pagina Interna',
|
||||
order: 'Posizione',
|
||||
icon: 'Icona',
|
||||
imgback: 'Immagine di Sfondo',
|
||||
onlyif_logged: 'Solo se Loggati',
|
||||
only_residenti: 'Solo Residenti',
|
||||
only_consiglio: 'Solo Consiglieri',
|
||||
color: 'Colore',
|
||||
},
|
||||
msg: {
|
||||
myAppDescription: '',
|
||||
underconstruction: 'App in costruzione...',
|
||||
keywords_base: '',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: '..',
|
||||
sottoTitoloApp2: '..',
|
||||
sottoTitoloApp3: '..',
|
||||
sottoTitoloApp4: '',
|
||||
},
|
||||
homepage: {
|
||||
titlecontatti: 'CONTACTS',
|
||||
},
|
||||
text: {
|
||||
how: 'HOW TO WORK',
|
||||
what: 'WHAT YOU NEED',
|
||||
step: 'STEPS TO DO',
|
||||
videotitle: 'VIDEO',
|
||||
testimonial: 'REVIEWS',
|
||||
faq: 'FREQUENTLY ASKED QUESTIONS (FAQ)',
|
||||
advise: 'ADVISE',
|
||||
download: 'AVAILABLE DOCUMENTS',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_enUs;
|
||||
159
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_es.js
Executable file
@@ -0,0 +1,159 @@
|
||||
const msg_website_es = {
|
||||
ws: {
|
||||
sitename: 'Fiore Della Vita',
|
||||
siteshortname: 'Fiore Della Vita',
|
||||
description: '',
|
||||
keywords: '',
|
||||
},
|
||||
products: {
|
||||
quantity: 'Quantità',
|
||||
quantityAvailable: 'Disponibili',
|
||||
weight: 'Peso',
|
||||
stars: 'Voto',
|
||||
color: 'Colore',
|
||||
theme: 'Tema',
|
||||
},
|
||||
hours: {
|
||||
descr: 'Descrizione',
|
||||
date: 'Data',
|
||||
time_start: 'Ora Inizio',
|
||||
time_end: 'Ora Fine',
|
||||
hours: 'Ore',
|
||||
note: 'Note Extra',
|
||||
},
|
||||
pages: {
|
||||
home: 'Home',
|
||||
profile: 'Perfil',
|
||||
profile2: 'ProfiloU',
|
||||
mypage2: 'mypage2',
|
||||
myservice2: 'myservice2',
|
||||
mygood2: 'mygood2',
|
||||
test: 'Test',
|
||||
projects: 'Progetti',
|
||||
report: 'Report Ore',
|
||||
producer: 'Produttore',
|
||||
orderinfo: 'Ordini Effettuati',
|
||||
products: 'Prodotti',
|
||||
productslist: 'Lista Prodotti',
|
||||
collabora: 'Collabora',
|
||||
storehouses: 'Magazzino',
|
||||
departments: 'Uffici',
|
||||
orders: 'Ordini Ricevuti',
|
||||
orders2: 'Ordini Ricevuti',
|
||||
sharewithus: 'Condividi con Noi',
|
||||
checkout: 'Carrello',
|
||||
payment: 'Paiements',
|
||||
regok: 'Registro confirmado',
|
||||
presentazione: 'Presentación',
|
||||
presentazione2: 'Presentación',
|
||||
invita: 'Invitar a la gente',
|
||||
SignUp: 'Registro',
|
||||
SignUpIscrizione: 'Diventa Socio CNM',
|
||||
SignUp_alreadylista: 'Inscripción para los que ya están en la Lista!',
|
||||
SignUp2: 'Registro',
|
||||
SignIn: 'Login',
|
||||
status: 'Estadísticas',
|
||||
nextzoom: 'Conferencias',
|
||||
requestresetpwd: 'Solicitud de restablecimiento de contraseña',
|
||||
calendarioeventi: 'Calendario Eventos',
|
||||
vreg: 'Verifica Reg',
|
||||
dashboard: 'Tablero',
|
||||
statoattuale: 'Estado Actual',
|
||||
posizione_in_programmazione: 'Lista de embarque',
|
||||
posizione_in_nave: 'Lista de Naves',
|
||||
nave: 'Nave',
|
||||
testimonial: 'Opiniones',
|
||||
Test: 'Test',
|
||||
Category: 'Categorie',
|
||||
Admin: 'Admin',
|
||||
Sites: 'Siti Web',
|
||||
extralist: 'Lista Extra',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
chisiamo: 'Chi Siamo',
|
||||
linkamici: 'Link Amici',
|
||||
dovesiamo: 'Dove Siamo',
|
||||
evento: 'Evento',
|
||||
eventodef: 'Evento:',
|
||||
prova: 'prova',
|
||||
dbop: 'Operazioni',
|
||||
projall: 'Comunitari',
|
||||
groups: 'Lista Gruppi',
|
||||
projectsShared: 'Condivisi da me',
|
||||
myprojects: 'Privati',
|
||||
favproj: 'Favoriti',
|
||||
statusreg: {
|
||||
reg: 'Participantes',
|
||||
verifieds: 'Verificati',
|
||||
autorizzati: 'Autorizzati',
|
||||
autorizzare: 'In attesa di Abilitazione',
|
||||
passeggeri: 'Barcos de pasajeros',
|
||||
giainlista: 'Gia in Lista',
|
||||
newreg: 'Nuevas inscripciones :',
|
||||
nationality: 'Nacionalidad',
|
||||
verified: 'Verificada',
|
||||
nonverified: 'No Verificada',
|
||||
req7: 'Con 5 pasos usted entra en la lista de embarque',
|
||||
req9: 'Con 7 pasos ayuda a {sitename} a crecer!',
|
||||
req: 'Pasos',
|
||||
people: 'Inv.',
|
||||
peoplelegend: 'Número de invitados',
|
||||
},
|
||||
admin_ecommerce: 'ECommerce',
|
||||
ecommerce: 'Prodotti',
|
||||
ecommerce_menu: 'ECommerce1',
|
||||
hours: 'Ore',
|
||||
department: 'Uffici',
|
||||
title: 'Titolo',
|
||||
path: 'Percorso',
|
||||
img1: 'Immagine 1',
|
||||
contentfield: 'Testo 1',
|
||||
video1: 'Video 1',
|
||||
ratio1: 'Ratio 1',
|
||||
img2: 'Immagine 2',
|
||||
content2: 'Testo 2',
|
||||
video2: 'Video 2',
|
||||
ratio2: 'Ratio 2',
|
||||
img3: 'Immagine 3',
|
||||
content3: 'Testo 3',
|
||||
video3: 'Video 3',
|
||||
ratio3: 'Ratio 3',
|
||||
content4: 'Testo 4',
|
||||
active: 'Attiva',
|
||||
inmenu: 'Sul Menu',
|
||||
submenu: 'SottoMenu',
|
||||
infooter: 'Sul Footer',
|
||||
internalpage: 'Pagina Interna',
|
||||
order: 'Posizione',
|
||||
icon: 'Icona',
|
||||
imgback: 'Immagine di Sfondo',
|
||||
onlyif_logged: 'Solo se Loggati',
|
||||
only_residenti: 'Solo Residenti',
|
||||
only_consiglio: 'Solo Consiglieri',
|
||||
color: 'Colore',
|
||||
},
|
||||
msg: {
|
||||
myAppDescription: '',
|
||||
keywords_base: '',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: '..',
|
||||
sottoTitoloApp2: '..',
|
||||
sottoTitoloApp3: '..',
|
||||
sottoTitoloApp4: '',
|
||||
},
|
||||
homepage: {
|
||||
titlecontatti: 'CONTACTOS',
|
||||
},
|
||||
text: {
|
||||
how: 'COMO FUNCIONA',
|
||||
what: 'QUE NECESITAS',
|
||||
step: 'PASOS A REALIZAR',
|
||||
videotitle: 'VIDEO',
|
||||
testimonial: 'TESTIMONIOS',
|
||||
faq: 'PREGUNTAS FRECUENTES (FAQ)',
|
||||
advise: 'CONSEJOS',
|
||||
download: 'MATERIAL DISPONIBLES',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_es;
|
||||
64
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_fr.js
Executable file
@@ -0,0 +1,64 @@
|
||||
const msg_website_fr = {
|
||||
ws: {
|
||||
sitename: 'Fiore Della Vita',
|
||||
siteshortname: 'Fiore Della Vita',
|
||||
description: '',
|
||||
keywords: '',
|
||||
},
|
||||
homepage: {
|
||||
titlecontatti: 'CONTACTS',
|
||||
},
|
||||
pages: {
|
||||
home: 'Home',
|
||||
profile: 'profil',
|
||||
payment: 'paiements',
|
||||
regok: 'Inscription confirmée',
|
||||
presentazione: 'Présentation',
|
||||
presentazione2: 'Présentation',
|
||||
invita: 'Inviter des personnes',
|
||||
SignUp: 'Inscription',
|
||||
SignUp_alreadylista: 'Inscription pour ceux qui sont déjà inscrits sur la liste!',
|
||||
SignUp2: 'Inscription',
|
||||
SignIn: 'Login',
|
||||
status: 'État actuel',
|
||||
nextzoom: 'Conférences',
|
||||
requestresetpwd: 'Demande de réinitialisation du mot de passe',
|
||||
vreg: 'Vérifier l\'inscription',
|
||||
dashboard: 'Tableau de bord',
|
||||
statoattuale: 'Situation Actuelle',
|
||||
posizione_in_programmazione: 'Liste d\'embarquement',
|
||||
posizione_in_nave: 'Liste des Navires',
|
||||
nave: 'Navires',
|
||||
testimonial: 'Commentaires',
|
||||
Test: 'Test',
|
||||
Category: 'Categorie',
|
||||
Admin: 'Admin',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
statusreg: {
|
||||
reg: 'Participants',
|
||||
passeggeri: 'Navires à passagers',
|
||||
giainlista: 'Gia in Lista',
|
||||
newreg: 'Nouvelles inscriptions:',
|
||||
nationality: 'Nationalité',
|
||||
verified: 'Vérifié',
|
||||
nonverified: 'Non Vérifié',
|
||||
req7: 'Avec 5 étapes, vous entrez dans la liste d\'embarquement.',
|
||||
req9: 'Avec 7 étapes, aidez {sitename} à se développer !',
|
||||
req: 'Étapes',
|
||||
people: 'Inv.',
|
||||
peoplelegend: 'Nombre d\'invités',
|
||||
},
|
||||
},
|
||||
msg: {
|
||||
myAppDescription: '',
|
||||
keywords_base: '',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: '..',
|
||||
sottoTitoloApp2: '..',
|
||||
sottoTitoloApp3: '..',
|
||||
sottoTitoloApp4: '',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_fr;
|
||||
225
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_it.js
Executable file
@@ -0,0 +1,225 @@
|
||||
const msg_website_it = {
|
||||
ws: {
|
||||
sitename: 'Fiore Della Vita',
|
||||
siteshortname: 'Fiore Della Vita',
|
||||
description: '',
|
||||
keywords: '',
|
||||
},
|
||||
products: {
|
||||
quantity: 'Quantità',
|
||||
quantityAvailable: 'Disponibili',
|
||||
weight: 'Peso',
|
||||
stars: 'Voto',
|
||||
color: 'Colore',
|
||||
theme: 'Tema',
|
||||
},
|
||||
hours: {
|
||||
descr: 'Descrizione',
|
||||
date: 'Data',
|
||||
time_start: 'Ora Inizio',
|
||||
time_end: 'Ora Fine',
|
||||
hours: 'Ore',
|
||||
note: 'Note Extra',
|
||||
},
|
||||
pages: {
|
||||
home: 'Home',
|
||||
profile: 'Profilo',
|
||||
profile2: 'ProfiloU',
|
||||
mypage2: 'mypage2',
|
||||
myservice2: 'myservice2',
|
||||
myhosps2: 'myhosps2',
|
||||
mygood2: 'mygood2',
|
||||
fundraising: 'Sostieni il Progetto',
|
||||
notifs: 'Configura le Notifiche',
|
||||
unsubscribe: 'Disiscriviti',
|
||||
test: 'Test',
|
||||
projects: 'Progetti',
|
||||
report: 'Report Ore',
|
||||
producer: 'Produttore',
|
||||
orderinfo: 'Ordini Effettuati',
|
||||
products: 'Prodotti',
|
||||
productslist: 'Lista Prodotti',
|
||||
collabora: 'Collabora',
|
||||
storehouses: 'Magazzino',
|
||||
departments: 'Uffici',
|
||||
orders: 'Ordini Ricevuti',
|
||||
orders2: 'Ordini Ricevuti',
|
||||
sharewithus: 'Condividi con Noi',
|
||||
checkout: 'Carrello',
|
||||
payment: 'Pagamenti',
|
||||
regok: 'Registrazione Confermata',
|
||||
presentazione: 'Presentazione',
|
||||
presentazione2: 'Presentazione',
|
||||
invita: 'Invita Persone',
|
||||
SignUp: 'Modulo di Registrazione:',
|
||||
SignUpCollettivo: 'Reg. Collettiva:',
|
||||
SignUpCollettivo2: 'Registrazione Collettiva:',
|
||||
need_Telegram: 'Per poter utilizzare la Piattaforma occorre avere <a href="https://play.google.com/store/apps/details?id=org.telegram.messenger" target="_blank">Telegram</a> installato<br>',
|
||||
Registrazione_Con_Bot: '1) Copia questo username cliccandoci sopra:',
|
||||
SignUpIscrizione: 'Diventa Socio CNM',
|
||||
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
|
||||
SignUp2: 'Registrazione',
|
||||
SignUp3: 'Reg',
|
||||
SignUp4: 'Reg',
|
||||
SignUp5: 'Reg',
|
||||
SignUp6: 'Registrati',
|
||||
SignUp7: 'Registra',
|
||||
SignUp11: 'Registra',
|
||||
SignUpBot: 'Registrati con Telegram',
|
||||
SignIn: 'Login',
|
||||
status: 'Statistiche',
|
||||
nextzoom: 'Conferenze',
|
||||
requestresetpwd: 'Richiesta Reset Password',
|
||||
vreg: 'Verifica Reg',
|
||||
dashboard: 'Lavagna',
|
||||
statoattuale: 'Stato Attuale',
|
||||
posizione_in_programmazione: 'Lista d\'Imbarco',
|
||||
posizione_in_nave: 'Lista Navi',
|
||||
nave: 'Nave',
|
||||
testimonial: 'Testimonianze',
|
||||
Test: 'Test',
|
||||
Category: 'Categorie',
|
||||
Admin: 'Admin',
|
||||
Sites: 'Siti Web',
|
||||
extralist: 'Lista Extra',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
chisiamo: 'Chi Siamo',
|
||||
linkamici: 'Link Amici',
|
||||
dovesiamo: 'Dove Siamo',
|
||||
calendarioeventi: 'Calendario Eventi',
|
||||
evento: 'Evento',
|
||||
eventodef: 'Evento:',
|
||||
prova: 'prova',
|
||||
dbop: 'Operazioni',
|
||||
projall: 'Comunitari',
|
||||
groups: 'Lista Gruppi',
|
||||
projectsShared: 'Condivisi da me',
|
||||
myprojects: 'Privati',
|
||||
favproj: 'Favoriti',
|
||||
admin_ecommerce: 'ECommerce',
|
||||
ecommerce: 'Prodotti',
|
||||
ecommerce_menu: 'ECommerce1',
|
||||
hours: 'Ore',
|
||||
department: 'Uffici',
|
||||
title: 'Titolo',
|
||||
path: 'Percorso',
|
||||
img1: 'Immagine 1',
|
||||
contentfield: 'Testo 1',
|
||||
video1: 'Video 1',
|
||||
ratio1: 'Ratio 1',
|
||||
img2: 'Immagine 2',
|
||||
content2: 'Testo 2',
|
||||
video2: 'Video 2',
|
||||
ratio2: 'Ratio 2',
|
||||
img3: 'Immagine 3',
|
||||
content3: 'Testo 3',
|
||||
video3: 'Video 3',
|
||||
ratio3: 'Ratio 3',
|
||||
content4: 'Testo 4',
|
||||
active: 'Attiva',
|
||||
inmenu: 'Sul Menu',
|
||||
submenu: 'SottoMenu',
|
||||
infooter: 'Sul Footer',
|
||||
internalpage: 'Pagina Interna',
|
||||
order: 'Posizione',
|
||||
icon: 'Icona',
|
||||
imgback: 'Immagine di Sfondo',
|
||||
onlyif_logged: 'Solo se Loggati',
|
||||
only_residenti: 'Solo Residenti',
|
||||
only_consiglio: 'Solo Consiglieri',
|
||||
color: 'Colore',
|
||||
},
|
||||
msg: {
|
||||
myAppName: 'Fiore della Vita',
|
||||
myAppDescription: 'Il primo Vero Social Libero, Equo e Solidale, dove Vive Consapevolezza e Aiuto Comunitario. Gratuito',
|
||||
underconstruction: 'App in costruzione...',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: 'Rete Italiana di Scambio Orizzontale',
|
||||
sottoTitoloApp2: '',
|
||||
},
|
||||
homepage: {
|
||||
descrapp_title1: 'Uniti per Evolvere e Sperimentare',
|
||||
descrapp_pag1: 'Siamo la <strong>Rete Italiana di Scambio Orizzontale</strong>, abbiamo creato questa piattaforma per metterla al servizio di chi vuole riscoprire il valore della <strong>condivisione</strong> e della <strong>cooperazione</strong>. ' +
|
||||
'Valori semplici e profondi che ci aiutano a ritrovare il <strong>Senso della Vita</strong>, perduto in questa società consumista, e riporti quei <strong>Sani Pricìpi Naturali</strong> ed Umani di <strong>Fratellanza</strong>'
|
||||
+ ' che intere popolazioni antiche conoscevano bene.',
|
||||
descrapp_pag2: 'E\' giunta l\'ora di utilizzare i nuovi strumenti <strong>Tecnologici</strong> a nostro <strong>favore</strong>, per <strong>Liberarci</strong> '
|
||||
+ 'così piano piano dalla <strong>schiavitù</strong> del <strong>"Lavoro per generare Denaro"</strong> e trasformando le nostre <strong>Capacitá</strong> in '
|
||||
+ '<strong>Risorse Umane</strong> per poterci sostenere e vivere in <strong>Armonia</strong> con gli altri.<br>' +
|
||||
'<br><strong>R.I.S.O.</strong><br>' +
|
||||
'<em>Siamo una rete di comunità consapevoli, basata sul sostegno reciproco, la fiducia, la condivisione e l\'ascolto. \n' +
|
||||
'Coltiviamo terreno fertile per creare, in armonia con la natura, un mondo di collettività libere e autosufficienti, attraverso un circuito di scambio di esperienze umane, beni e servizi.<br>' +
|
||||
'Partecipa al cambiamento. RISO sei anche tu!</em>',
|
||||
freesocial: {
|
||||
title: 'Social',
|
||||
descr: 'Una Community organizzata per <strong>Categorie</strong>, dove potrai unirti a <strong>Gruppi Tematici</strong>, '
|
||||
+ 'Condividere <strong>Esperienze</strong> e unire Competenze per organizzare e sostenere <strong>Progetti Innovativi</strong> per il Popolo.<br><br>'
|
||||
+ 'Verranno evidenziati sviluppi <strong>Etici</strong> come l\'<strong>Auto-Produzione</strong>, la <strong>Sostenibilitá</strong>, '
|
||||
+ 'la Buona <strong>Salute Naturale</strong> e il <strong>Rispetto per l\'Ambiente</strong> e per tutti gli <strong>Esseri Viventi</strong> di questo '
|
||||
+ '<strong>Pianeta</strong>.',
|
||||
},
|
||||
freetalent: {
|
||||
title: 'Beni e Servizi',
|
||||
descr: 'Condividi i tuoi <strong>Talenti</strong> e <strong>Abilità</strong>, '
|
||||
+ 'Nel Dare e Ricevere, si creeranno così legami di <strong>Amicizia, Solidarietà, Cooperazione e Divertimento</strong><br><br>' +
|
||||
'Favoriamo lo scambio locale di <strong>Beni e Servizi</strong> dove potrai scegliere cosa chiedere in cambio (Dono, Offerta Libera, Baratto, Monete Alternative, ecc...).'
|
||||
},
|
||||
coin: {
|
||||
title: 'RIS - Credito Alternativo',
|
||||
},
|
||||
freeliving: {
|
||||
title: 'Gruppi Territoriali',
|
||||
descr: 'Questo progetto vuole diffondere la creazione di Gruppi Territoriali Provinciali, '
|
||||
+ 'per poter favorire progetti condivisi in ambito territoriale e creare così una <strong>Rete di Fiducia</strong> fino al <strong>vicinato</strong>, come giá viene praticato in piccolo, in numerosi <strong>Ecovillaggi</strong> e Comunità del mondo.',
|
||||
|
||||
},
|
||||
freecollabora: {
|
||||
title: 'Chi può Collaborare?',
|
||||
descr: 'Tutti coloro che sono in linea con <strong>Princìpi Etici</strong> e ricerca del <strong>Benessere Globale del Pianeta</strong><br>'
|
||||
+ 'Pertanto sono i benvenuti:'
|
||||
+ '<ul class="mylist" style="padding-left: 20px;">'
|
||||
+ '<li><strong>Associazioni no-profit, Ecovillaggi, Comunità</strong></li>'
|
||||
+ '<li>Gruppi che intendono promuovere <strong>Progetti Sociali Innovativi</strong> per una <strong>Decrescita Felice</strong></li>'
|
||||
+ '<li>Chi gestisce un <strong>Gruppo di Acquisto Solidale (G.A.S.)</strong></li>'
|
||||
+ '<li><strong>Produttori Locali Etici</strong></li>'
|
||||
+ '<li><strong>Chiunque voglia partecipare</strong>, nella forma che ritiene più opportuna.</li>'
|
||||
+ '</ul>',
|
||||
},
|
||||
freesostieni: {
|
||||
title: 'Come Sostenere il progetto <strong>Riso.app</strong>?',
|
||||
descr: '<ul class="mylist" style="padding-left: 20px;">'
|
||||
+ '<li>📱<strong>Condividendo la APP</strong> a tutti coloro che vogliono far parte insieme della crescita e sviluppo di una Nuova Era</li>'
|
||||
+ '<li>👥 Aiutando a creare Gruppi Territoriali nella vostra città, impegnandosi a realizzare progetti per il Bene Comune, in onore ai principi Amorevoli e di condivisione.</li>'
|
||||
+ '<li>🌱 Sostenendo le persone attorno a voi, e rispettando la nostra vera Casa: Madre Natura e Tutti gli Esseri Viventi. ❤️</li>'
|
||||
+ '<li>👨🏻💻 Con una <strong>piccola donazione</strong> per le spese dei Server, manutenzione e per i continui sviluppi e miglioramenti</li></ul>' +
|
||||
'1) Tramite <strong><a href="https://paypal.me/paoloarena" target="_blank">Paypal</a></strong>:<br>' +
|
||||
'<br>2) Tramite <strong>Satispay</strong>: <a href="https://www.satispay.com/app/match/link/money-box/S6Y-SVN--62712D42-35B0-4BB9-8511-410C2AB8CD45" target="_blank">Clicca qui</a><br>' +
|
||||
'<div style="font-size: 1rem; background-color: white; color: blue; border: solid 2px #f00; margin: 5px; padding: 5px; border-radius: 10px; " ' +
|
||||
'class="row justify-around">' +
|
||||
'Se ancora non hai Satispay <a href="https://www.satispay.com/promo/PAOLOARENA4">Richiedila cliccando qui</a></br>' +
|
||||
'</div>' +
|
||||
'<br>3) Tramite <strong>Bonifico Bancario</strong>:<br>' +
|
||||
'(Scrivi a Surya (<a href="https://t.me/surya1977">@surya1977</a>) per le coordinate</br>' +
|
||||
'' +
|
||||
'4) In alternativa scegli tu una forma di Dono <br />' +
|
||||
'Grazie Mille per l\'Aiuto ed il Supporto' +
|
||||
'<br>',
|
||||
},
|
||||
multiplatform: {
|
||||
title: 'Multi-piattaforma',
|
||||
descr: 'E\' compatibile con Google Chrome, Firefox, Opera, Safari, iPhone, Android e PC. L\'Applicazione s\'installa facilmente, senza dover passare dallo store. '
|
||||
+ 'basta entrare sul sito <strong>www.riso.app</strong>.<br>'
|
||||
+ 'Dopo la registrazione chiederà di aggiungerlo alla <strong>Schermata Home</strong> (oppure cliccare sul menu "..." del browser e scegliere "<strong>Installa APP</strong>")',
|
||||
},
|
||||
free: {
|
||||
title: 'Gratuita, Open Source e Niente Pubblicità',
|
||||
descr: 'Questa App <strong>non è in vendita</strong>, non ha scopi commerciali, quindi <strong>non ha prezzo</strong> e nessun dato contenuto in esso verrà mai venduto, in quanto appartiene a <strong>Tutti Noi</strong> ed a nessuno in particolare.<br>Chiunque potrá utilizzarla e beneficiarne da essa.<br>' +
|
||||
'<em>Progetto Open Source su <a href="https://gitlab.com/surya89" target="_blank">GitLab</a>.</em><br><br>'
|
||||
+ '<strong>Grazie a Tutti per il sostegno</strong>. ',
|
||||
},
|
||||
titlecontatti: 'Contatti',
|
||||
contacts: '',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_it;
|
||||
74
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_pt.js
Executable file
@@ -0,0 +1,74 @@
|
||||
const msg_website_pt = {
|
||||
ws: {
|
||||
sitename: 'Fiore Della Vita',
|
||||
siteshortname: 'Fiore Della Vita',
|
||||
description: '',
|
||||
keywords: '',
|
||||
},
|
||||
pages: {
|
||||
home: 'Home',
|
||||
profile: 'Perfil',
|
||||
payment: 'Pagamentos',
|
||||
regok: 'Inscrição confirmada',
|
||||
presentazione: 'Apresentação',
|
||||
presentazione2: 'Apresentação',
|
||||
invita: 'Convidar Pessoas',
|
||||
SignUp: 'Inscrição',
|
||||
SignUp_alreadylista: 'Inscrição para os que já estão na Lista!',
|
||||
SignUp2: 'Inscrição',
|
||||
SignIn: 'Login',
|
||||
status: 'Estatísticas',
|
||||
nextzoom: 'Conférences',
|
||||
requestresetpwd: 'Pedido de redefinição de senha',
|
||||
vreg: '',
|
||||
dashboard: 'Tablero',
|
||||
statoattuale: 'Status Atual',
|
||||
posizione_in_programmazione: 'Lista de Embarque',
|
||||
posizione_in_nave: 'Lista de Navios',
|
||||
nave: 'Navios',
|
||||
testimonial: 'Opiniones',
|
||||
Test: 'Test',
|
||||
Category: 'Categorie',
|
||||
Admin: 'Admin',
|
||||
Test1: 'Test1',
|
||||
Test2: 'Test2',
|
||||
statusreg: {
|
||||
reg: 'Participantes',
|
||||
passeggeri: 'Navios de Passageiros',
|
||||
giainlista: 'Já na lista',
|
||||
newreg: 'Últimas Inscrições:',
|
||||
nationality: 'Nacionalidade',
|
||||
verified: 'Verificado',
|
||||
nonverified: 'Não verificado',
|
||||
req7: 'Com 5 passos, o usuário entra na lista de embarque.',
|
||||
req9: 'Com 7 passos ajudam a {sitename} a crescer!',
|
||||
req: 'Passos',
|
||||
people: 'Con.',
|
||||
peoplelegend: 'Número de convidados',
|
||||
},
|
||||
},
|
||||
msg: {
|
||||
myAppDescription: '',
|
||||
keywords_base: '',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: '..',
|
||||
sottoTitoloApp2: '..',
|
||||
sottoTitoloApp3: '..',
|
||||
sottoTitoloApp4: '',
|
||||
},
|
||||
homepage: {
|
||||
titlecontatti: 'CONTACTOS',
|
||||
},
|
||||
text: {
|
||||
how: 'COMO FUNCIONA',
|
||||
what: 'QUE NECESITAS',
|
||||
step: 'PASOS A REALIZAR',
|
||||
videotitle: 'VIDEO',
|
||||
testimonial: 'TESTIMONIOS',
|
||||
faq: 'PREGUNTAS FRECUENTES (FAQ)',
|
||||
advise: 'CONSEJOS',
|
||||
download: 'MATERIAL DISPONIBLES',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_pt;
|
||||
59
_ALL_SITES/fioredellavita.riso.app/db/lang/ws_si.js
Executable file
@@ -0,0 +1,59 @@
|
||||
const msg_website_si = {
|
||||
ws: {
|
||||
sitename: 'Riso',
|
||||
siteshortname: 'RISO',
|
||||
botname: 'Riso BOT',
|
||||
},
|
||||
pages: {
|
||||
home: 'Domača stran',
|
||||
profile: 'Profil',
|
||||
payment: 'Plačila',
|
||||
regok: 'Registracija potrjena',
|
||||
presentazione: 'Predstavitev',
|
||||
presentazione2: 'Predstavitev',
|
||||
invita: 'Povabi osebe',
|
||||
SignUp: 'Nova Registracija',
|
||||
SignUp2: 'Registracija',
|
||||
SignIn: 'Vpis',
|
||||
status: 'Statistika',
|
||||
nextzoom: 'Conferenze',
|
||||
requestresetpwd: 'Prošnja za ponastavitev Gesla',
|
||||
vreg: 'Preveri Registracijo',
|
||||
dashboard: 'Tabla',
|
||||
statoattuale: 'TrenutniStatus',
|
||||
posizione_in_programmazione: 'Seznam Plovbe',
|
||||
posizione_in_nave: 'Seznam Ladiji',
|
||||
nave: 'Ladje',
|
||||
Admin: 'Administrator',
|
||||
evento: 'Dogodek',
|
||||
eventodef: 'Dogodek:',
|
||||
statusreg: {
|
||||
reg: 'Udeleženci',
|
||||
passeggeri: 'Potniki Ladjic',
|
||||
giainlista: 'Že na seznamu',
|
||||
newreg: 'Zadnje Registracije:',
|
||||
nationality: 'Nacionalnost',
|
||||
verified: 'Preveri',
|
||||
nonverified: 'Ni preverjeno',
|
||||
req7: 'S 7 koraki vstopis na seznam za plovbo',
|
||||
req9: 'Z 9-imi koraki pomagaš, da {sitename} Raste!',
|
||||
req: 'Koraki',
|
||||
people: 'Pov.',
|
||||
peoplelegend: 'Število \'Povabljenih',
|
||||
},
|
||||
},
|
||||
msg: {
|
||||
myAppDescription: '',
|
||||
keywords_base: '',
|
||||
myDescriz: '',
|
||||
sottoTitoloApp: '',
|
||||
sottoTitoloApp2: '',
|
||||
sottoTitoloApp3: '',
|
||||
sottoTitoloApp4: '',
|
||||
},
|
||||
homepage: {
|
||||
titlecontatti: 'Kontakt',
|
||||
},
|
||||
};
|
||||
|
||||
export default msg_website_si;
|
||||
74
_ALL_SITES/fioredellavita.riso.app/db/static_data.ts
Executable file
@@ -0,0 +1,74 @@
|
||||
import {
|
||||
IListRoutes,
|
||||
ILang,
|
||||
IPreloadImages,
|
||||
ISites,
|
||||
} from '@model'
|
||||
import { func } from '@store/Modules/fieldsTable'
|
||||
|
||||
|
||||
const firstPage = {
|
||||
active: true,
|
||||
order: 5,
|
||||
path: '/',
|
||||
materialIcon: 'home',
|
||||
name: 'pages.home',
|
||||
component: () => import('@src/root/mainview/mainview.vue'),
|
||||
reqauth: false,
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
}
|
||||
|
||||
function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
|
||||
const baseroutes: IListRoutes[] = [
|
||||
/*{
|
||||
active: true,
|
||||
order: 5,
|
||||
path: '/',
|
||||
materialIcon: 'home',
|
||||
name: 'pages.home',
|
||||
component: () => import('@src/root/mainview/mainview.vue'),
|
||||
reqauth: false,
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
order: 20,
|
||||
path: '/events',
|
||||
materialIcon: 'fas fa-bullhorn',
|
||||
name: 'mypages.events',
|
||||
component: () => import('@/root/eventi/eventi.vue'),
|
||||
meta: { requiresAuth: true },
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},*/
|
||||
]
|
||||
|
||||
return baseroutes
|
||||
}
|
||||
|
||||
export function firstimagehome() {
|
||||
|
||||
let img = 'statics/images/background.jpg'
|
||||
return img
|
||||
}
|
||||
|
||||
const preLoadImages: IPreloadImages[] = []
|
||||
|
||||
export const lang_available: ILang[] = []
|
||||
export const arrLangUsed: string[] = []
|
||||
|
||||
export const preloadedimages = []
|
||||
|
||||
export const routes: IListRoutes[] = [firstPage]
|
||||
|
||||
export const static_data = {
|
||||
routes,
|
||||
arrLangUsed,
|
||||
getDynamicPages,
|
||||
lang_available,
|
||||
preLoadImages,
|
||||
preloadedimages,
|
||||
}
|
||||
BIN
_ALL_SITES/fioredellavita.riso.app/favicon.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
_ALL_SITES/fioredellavita.riso.app/images/favicon.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
143
_ALL_SITES/fioredellavita.riso.app/package.json
Executable file
@@ -0,0 +1,143 @@
|
||||
{
|
||||
"name": "fioredellavita",
|
||||
"version": "0.6.1",
|
||||
"description": "Fiore Della Vita",
|
||||
"productName": "Fiore Della Vita",
|
||||
"author": "Paolo Arena",
|
||||
"private": true,
|
||||
"keywords": [],
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"dev": "quasar dev",
|
||||
"build": "quasar build",
|
||||
"buildpwa": "quasar build -m pwa",
|
||||
"buildspa": "quasar build -m spa",
|
||||
"lint": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./",
|
||||
"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 NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m pwa",
|
||||
"spa": "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"
|
||||
},
|
||||
"dependencies": {
|
||||
"@quasar/extras": "^1.16.7",
|
||||
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.16",
|
||||
"@vue-leaflet/vue-leaflet": "^0.9.0",
|
||||
"@vue/compat": "^3.2.47",
|
||||
"@vue/compiler-sfc": "^3.2.47",
|
||||
"@vue/eslint-config-standard": "7.0.0",
|
||||
"@vuelidate/core": "^2.0.2",
|
||||
"@vuelidate/validators": "^2.0.2",
|
||||
"acorn": "^8.8.2",
|
||||
"animate.css": "^4.1.1",
|
||||
"autoprefixer": "^10.4.14",
|
||||
"axios": "^1.3.5",
|
||||
"bcryptjs": "^2.4.3",
|
||||
"chart.js": "3.9.1",
|
||||
"core-js": "^3.30.0",
|
||||
"crypto": "^1.0.1",
|
||||
"date-fns": "^2.29.3",
|
||||
"dotenv": "^16.0.3",
|
||||
"echarts": "5.4.2",
|
||||
"eslint-plugin-quasar": "^1.1.0",
|
||||
"graphql": "^16.6.0",
|
||||
"graphql-tag": "^2.12.6",
|
||||
"gsap": "^3.11.5",
|
||||
"jquery": "^3.6.4",
|
||||
"js-cookie": "^3.0.1",
|
||||
"localforage": "^1.10.0",
|
||||
"lodash": "^4.17.21",
|
||||
"normalize.css": "^8.0.1",
|
||||
"npm": "^9.6.4",
|
||||
"nprogress": "^0.2.0",
|
||||
"pinia": "^2.0.33",
|
||||
"prerender-spa-plugin": "^3.4.0",
|
||||
"quasar": "^2.12.07",
|
||||
"quasar-extras": "^2.0.9",
|
||||
"register-service-worker": "^1.7.2",
|
||||
"typescript-eslint": "^0.0.1-alpha.0",
|
||||
"vee-validate": "^4.8.4",
|
||||
"vue": "^3.2.47",
|
||||
"vue-chart-3": "^3.1.8",
|
||||
"vue-class-component": "^8.0.0-rc.1",
|
||||
"vue-country-code": "^1.1.3",
|
||||
"vue-echarts": "^6.5.4",
|
||||
"vue-i18n": "^9.2.2",
|
||||
"vue-idb": "^0.2.0",
|
||||
"vue-loader": "^17.0.1",
|
||||
"vue-property-decorator": "^10.0.0-rc.3",
|
||||
"vue-router": "^4.1.6",
|
||||
"vue-scroll-reveal": "^1.0.11",
|
||||
"vue-social-sharing": "^4.0.0-alpha4",
|
||||
"vue-svgicon": "^4.0.0-alpha.3",
|
||||
"vue-timeago3": "^2.3.0",
|
||||
"vue2-dragula": "^2.5.5",
|
||||
"vuex": "^4.1.0",
|
||||
"vuex-router-sync": "^6.0.0-rc.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@quasar/app": "^3.3.3",
|
||||
"@types/bcryptjs": "^2.4.2",
|
||||
"@types/dotenv": "^8.2.0",
|
||||
"@types/googlemaps": "^3.43.3",
|
||||
"@types/jest": "^29.5.0",
|
||||
"@types/js-cookie": "^3.0.3",
|
||||
"@types/node": "18.15.11",
|
||||
"@types/nprogress": "^0.2.0",
|
||||
"@types/vue-tel-input": "^2.1.2",
|
||||
"@types/vuelidate": "^0.7.16",
|
||||
"@typescript-eslint/eslint-plugin": "^6.7.3",
|
||||
"@typescript-eslint/parser": "^6.7.2",
|
||||
"eslint": "^8.37.0",
|
||||
"eslint-config-prettier": "^8.8.0",
|
||||
"eslint-plugin-import": "^2.27.5",
|
||||
"eslint-plugin-node": "^11.1.0",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-vue": "^9.10.0",
|
||||
"file-loader": "^6.2.0",
|
||||
"html-webpack-plugin": "^5.5.0",
|
||||
"http-proxy-middleware": "^2.0.6",
|
||||
"jest": "^29.5.0",
|
||||
"json-loader": "^0.5.7",
|
||||
"node-sass": "^9.0.0",
|
||||
"npm-check-updates": "^16.10.7",
|
||||
"optimize-css-assets-webpack-plugin": "^6.0.1",
|
||||
"postcss": "^8.4.21",
|
||||
"postcss-loader": "^7.2.4",
|
||||
"sass-loader": "^13.2.2",
|
||||
"strip-ansi": "=7.0.1",
|
||||
"ts-jest": "^29.1.0",
|
||||
"ts-loader": "^9.4.2",
|
||||
"tslint": "^6.1.3",
|
||||
"tslint-config-standard": "^9.0.0",
|
||||
"tslint-loader": "^3.5.4",
|
||||
"typescript": "^5.2.2",
|
||||
"vue-cli-plugin-element-ui": "^1.1.4",
|
||||
"vueify": "^9.4.1",
|
||||
"webpack": "^5.78.0",
|
||||
"workbox-webpack-plugin": "^6.5.4"
|
||||
},
|
||||
"browser": {
|
||||
"crypto": false
|
||||
},
|
||||
"browserslist": [
|
||||
"last 100 Chrome versions",
|
||||
"last 40 Firefox versions",
|
||||
"last 20 Edge versions",
|
||||
"last 55 Safari versions",
|
||||
"last 90 Android versions",
|
||||
"last 250 ChromeAndroid versions",
|
||||
"last 60 FirefoxAndroid versions",
|
||||
"last 35 iOS versions",
|
||||
"last 10 Opera versions",
|
||||
"> 0.03%",
|
||||
"not dead"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 16.14.0",
|
||||
"npm": ">= 6.14.8",
|
||||
"yarn": ">= 1.21.1"
|
||||
}
|
||||
}
|
||||
417
_ALL_SITES/fioredellavita.riso.app/quasar.conf.js
Executable file
@@ -0,0 +1,417 @@
|
||||
/*
|
||||
* This file runs in a Node context (it's NOT transpiled by Babel), so use only
|
||||
* the ES6 features that are supported by your Node version. https://node.green/
|
||||
*/
|
||||
|
||||
// Configuration for your app
|
||||
// https://v2.quasar.dev/quasar-cli/quasar-conf-js
|
||||
|
||||
/* eslint-env node */
|
||||
/* eslint-disable @typescript-eslint/no-var-requires */
|
||||
/* eslint func-names: 0 */
|
||||
/* eslint global-require: 0 */
|
||||
const { configure } = require('quasar/wrappers');
|
||||
|
||||
const path = require('path')
|
||||
const webpack = require('webpack')
|
||||
const helpers = require('./helpers')
|
||||
const envparser = require('./config/envparser')
|
||||
|
||||
// const ESLintPlugin = require('eslint-webpack-plugin')
|
||||
|
||||
module.exports = configure((ctx) => ({
|
||||
// https://v2.quasar.dev/quasar-cli/supporting-ts
|
||||
supportTS: {
|
||||
tsCheckerConfig: {
|
||||
eslint: {
|
||||
enabled: true,
|
||||
files: './src/**/*.{ts,tsx,jsx,vue}',
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/prefetch-feature
|
||||
// preFetch: true,
|
||||
|
||||
// app boot file (/src/boot)
|
||||
// --> boot files are part of "main.js"
|
||||
// https://v2.quasar.dev/quasar-cli/boot-files
|
||||
// boot: ['vue-i18n', 'vue-meta', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'vue-idb', 'dragula', 'guard'],
|
||||
boot: ['i18n', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'calendar', 'social-sharing', 'timeago'],
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css
|
||||
css: [
|
||||
'app.scss',
|
||||
// '~quasar-ui-qcalendar/src/css/calendar-day.sass'
|
||||
],
|
||||
|
||||
// https://github.com/quasarframework/quasar/tree/dev/extras
|
||||
extras: [
|
||||
// 'ionicons-v4',
|
||||
// 'mdi-v5',
|
||||
// 'eva-icons',
|
||||
// 'themify',
|
||||
// 'line-awesome',
|
||||
'ionicons-v4',
|
||||
// 'mdi-v3',
|
||||
'fontawesome-v5',
|
||||
'roboto-font', // optional, you are not bound to it
|
||||
'material-icons', // optional, you are not bound to it
|
||||
'material-icons-outlined',
|
||||
],
|
||||
|
||||
aliases: {
|
||||
quasar: path.resolve(__dirname, 'node_modules/@quasar/'),
|
||||
src: path.resolve(__dirname, 'src'),
|
||||
statics: path.resolve(__dirname, 'src/statics'),
|
||||
components: path.resolve(__dirname, 'src/components'),
|
||||
views: path.resolve(__dirname, 'src/views/index.ts'),
|
||||
icons: path.resolve(__dirname, 'src/assets/icons'),
|
||||
images: path.resolve(__dirname, 'src/assets/images'),
|
||||
classes: path.resolve(__dirname, 'src/classes/index.ts'),
|
||||
fonts: path.resolve(__dirname, 'src/assets/fonts'),
|
||||
utils: path.resolve(__dirname, 'src/utils/index.ts'),
|
||||
css: path.resolve(__dirname, 'src/styles/variables.scss'),
|
||||
router: path.resolve(__dirname, 'src/router/index.ts'),
|
||||
validators: path.resolve(__dirname, 'src/utils/validators.ts'),
|
||||
methods: path.resolve(__dirname, 'src/utils/methods.ts'),
|
||||
filters: path.resolve(__dirname, 'src/utils/filters.ts'),
|
||||
api: path.resolve(__dirname, 'src/store/Api/index.ts'),
|
||||
paths: path.resolve(__dirname, 'src/store/Api/ApiRoutes.ts'),
|
||||
store: path.resolve(__dirname, 'src/store/index.ts'),
|
||||
modules: path.resolve(__dirname, 'src/store/Modules/index.ts'),
|
||||
model: path.resolve(__dirname, 'src/model/index.ts'),
|
||||
},
|
||||
|
||||
// Full list of options: https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-build
|
||||
build: {
|
||||
env: envparser(),
|
||||
vueRouterMode: 'history',
|
||||
vueCompiler: true,
|
||||
gzip: false, // gzip true
|
||||
analyze: false, // true
|
||||
transpile: true,
|
||||
transpileDependencies: [
|
||||
/quasar-ui-qcalendar[\\/]src/
|
||||
],
|
||||
|
||||
chainWebpack(chain, { isServer, isClient }) {
|
||||
chain.resolve.alias
|
||||
// .set('myalias', path.resolve(__dirname, './src/somefolder'))
|
||||
.set('@', helpers.root('src'))
|
||||
.set('@components', helpers.root('src/components/index.ts'))
|
||||
.set('@boot', helpers.root('src/boot/*'))
|
||||
.set('@costanti', helpers.root('src/store/Modules/costanti.ts'))
|
||||
.set('@views', path.resolve(__dirname, 'src/views/index.ts'))
|
||||
.set('@src', path.resolve(__dirname, 'src'))
|
||||
.set('@css', path.resolve(__dirname, 'src/public/css/variables.scss'))
|
||||
.set('@icons', path.resolve(__dirname, 'src/public/icons/*'))
|
||||
.set('@images', path.resolve(__dirname, 'src/public/images/*'))
|
||||
.set('@classes', path.resolve(__dirname, 'src/classes/index.ts'))
|
||||
.set('@utils', path.resolve(__dirname, 'src/utils/index.ts'))
|
||||
.set('@utils', path.resolve(__dirname, 'src/utils/*'))
|
||||
.set('@router', path.resolve(__dirname, 'src/router/index.ts'))
|
||||
.set('@validators', path.resolve(__dirname, 'src/utils/validators.ts'))
|
||||
.set('@methods', path.resolve(__dirname, 'src/utils/methods.ts'))
|
||||
.set('@api', path.resolve(__dirname, 'src/store/Api/index.ts'))
|
||||
.set('@paths', path.resolve(__dirname, 'src/store/Api/ApiRoutes.ts'))
|
||||
.set('@storemod', path.resolve(__dirname, 'src/store/Modules/*'))
|
||||
.set('@store', path.resolve(__dirname, 'src/store'))
|
||||
.set('@modules', path.resolve(__dirname, 'src/store/Modules/index.ts'))
|
||||
.set('@model', path.resolve(__dirname, 'src/model/index.ts'))
|
||||
},
|
||||
// extractCSS: false,
|
||||
// transpile: false,
|
||||
|
||||
// Add dependencies for transpiling with Babel (Array of string/regex)
|
||||
// (from node_modules, which are by default not transpiled).
|
||||
// Applies only if "transpile" is set to true.
|
||||
// transpileDependencies: [],
|
||||
|
||||
// rtl: true, // https://v2.quasar.dev/options/rtl-support
|
||||
// preloadChunks: true,
|
||||
// showProgress: false,
|
||||
// gzip: true,
|
||||
// analyze: true,
|
||||
|
||||
// Options below are automatically set depending on the env, set them if you want to override
|
||||
// extractCSS: false,
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/handling-webpack
|
||||
// "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain
|
||||
},
|
||||
|
||||
// Full list of options: https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-devServer
|
||||
dev: {
|
||||
env: require('./.env.development'),
|
||||
},
|
||||
devServer: {
|
||||
https: false,
|
||||
port: 8087,
|
||||
open: false, // opens browser window automatically
|
||||
headers: {
|
||||
'Access-Control-Allow-Origin': '*',
|
||||
'Access-Control-Allow-Headers': '*',
|
||||
},
|
||||
},
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-framework
|
||||
framework: {
|
||||
config: {},
|
||||
|
||||
// iconSet: 'material-icons', // Quasar icon set
|
||||
// lang: 'en-US', // Quasar language pack
|
||||
|
||||
// For special cases outside of where the auto-import strategy can have an impact
|
||||
// (like functional components as one of the examples),
|
||||
// you can manually specify Quasar components/directives to be available everywhere:
|
||||
//
|
||||
components: [
|
||||
'QLayout',
|
||||
'QDrawer',
|
||||
'QItemSection',
|
||||
'QHeader',
|
||||
'QFooter',
|
||||
'QPageContainer',
|
||||
'QPage',
|
||||
'QPopupProxy',
|
||||
'QToolbar',
|
||||
'QToolbarTitle',
|
||||
'QBtn',
|
||||
'QBtnDropdown',
|
||||
'QColor',
|
||||
'QIcon',
|
||||
'QList',
|
||||
'QKnob',
|
||||
'QItemLabel',
|
||||
'QItem',
|
||||
'QCard',
|
||||
'QMarkupTable',
|
||||
'QSpace',
|
||||
'QDialog',
|
||||
'QBadge',
|
||||
'QForm',
|
||||
'QCardSection',
|
||||
'QCardActions',
|
||||
'QField',
|
||||
'QInput',
|
||||
'QSelect',
|
||||
'QMenu',
|
||||
'QToggle',
|
||||
'QFab',
|
||||
'QInfiniteScroll',
|
||||
'QAjaxBar',
|
||||
'QChip',
|
||||
'QExpansionItem',
|
||||
'QCheckbox',
|
||||
'QBanner',
|
||||
'QInnerLoading',
|
||||
'QSpinnerGears',
|
||||
'QSpinnerDots',
|
||||
'QDate',
|
||||
'QTime',
|
||||
'QSlideTransition',
|
||||
'QTable',
|
||||
'QTh',
|
||||
'QTr',
|
||||
'QTd',
|
||||
'QLinearProgress',
|
||||
'QSlider',
|
||||
'QPopupEdit',
|
||||
'QCarousel',
|
||||
'QCarouselControl',
|
||||
'QCarouselSlide',
|
||||
'QPageScroller',
|
||||
'QAvatar',
|
||||
'QImg',
|
||||
'QSplitter',
|
||||
'QRating',
|
||||
'QParallax',
|
||||
'QTab',
|
||||
'QTabs',
|
||||
'QTabPanels',
|
||||
'QTabPanel',
|
||||
'QTree',
|
||||
'QSeparator',
|
||||
],
|
||||
directives: [
|
||||
'Ripple',
|
||||
'ClosePopup',
|
||||
],
|
||||
_plugins: [
|
||||
'Meta',
|
||||
'Dialog',
|
||||
'Notify',
|
||||
'Cookies',
|
||||
'Loading',
|
||||
'AppVisibility',
|
||||
],
|
||||
get plugins_1() {
|
||||
return this._plugins;
|
||||
},
|
||||
set plugins_1(value) {
|
||||
this._plugins = value;
|
||||
},
|
||||
get plugins() {
|
||||
return this._plugins;
|
||||
},
|
||||
set plugins(value) {
|
||||
this._plugins = value;
|
||||
},
|
||||
iconSet: 'fontawesome-v5',
|
||||
lang: 'it', // Quasar language
|
||||
},
|
||||
|
||||
animations: 'all', // --- includes all animations
|
||||
// https://v2.quasar.dev/options/animations
|
||||
// animations: [],
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/developing-ssr/configuring-ssr
|
||||
ssr: {
|
||||
pwa: false,
|
||||
|
||||
// manualStoreHydration: true,
|
||||
// manualPostHydrationTrigger: true,
|
||||
|
||||
prodPort: 3000, // The default port that the production server should use
|
||||
// (gets superseded if process.env.PORT is specified at runtime)
|
||||
|
||||
maxAge: 1000 * 60 * 60 * 24 * 30,
|
||||
// Tell browser when a file from the server should expire from cache (in ms)
|
||||
|
||||
chainWebpackWebserver(/* chain */) {
|
||||
//
|
||||
},
|
||||
|
||||
middlewares: [
|
||||
ctx.prod ? 'compression' : '',
|
||||
'render', // keep this as last one
|
||||
],
|
||||
},
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/developing-pwa/configuring-pwa
|
||||
pwa: {
|
||||
workboxPluginMode: 'InjectManifest', // 'GenerateSW' or 'InjectManifest'
|
||||
workboxOptions: {}, // only for GenerateSW
|
||||
extendGenerateSWOptions(cfg) {
|
||||
cfg.skipWaiting = false
|
||||
cfg.clientsClaim = false
|
||||
},
|
||||
// for the custom service worker ONLY (/src-pwa/custom-service-worker.[js|ts])
|
||||
// if using workbox in InjectManifest mode
|
||||
chainWebpackCustomSW(chain) {
|
||||
// chain.plugin('eslint-webpack-plugin')
|
||||
// .use(ESLintPlugin, [{ extensions: ['js'] }])
|
||||
},
|
||||
|
||||
manifest: {
|
||||
name: 'Fiore Della Vita',
|
||||
short_name: 'Fiore Della Vita',
|
||||
description: 'Fiore Della Vita',
|
||||
display: 'standalone',
|
||||
orientation: 'portrait',
|
||||
background_color: '#fff',
|
||||
theme_color: '#027be3',
|
||||
scope: "/",
|
||||
id: "/?homescreen=1",
|
||||
start_url: "/?homescreen=1",
|
||||
icons: [
|
||||
{
|
||||
src: 'images/fv-android-icon-512x512.png',
|
||||
sizes: '512x512',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-android-icon-384x384.png',
|
||||
sizes: '384x384',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-android-icon-192x192.png',
|
||||
sizes: '192x192',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-android-icon-144x144.png',
|
||||
sizes: '144x144',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-android-icon-96x96.png',
|
||||
sizes: '96x96',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-apple-icon-120x120.png',
|
||||
sizes: '120x120',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-apple-icon-144x144.png',
|
||||
sizes: '144x144',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-apple-icon-152x152.png',
|
||||
sizes: '152x152',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: 'images/fv-apple-icon-180x180.png',
|
||||
sizes: '180x180',
|
||||
type: 'image/png',
|
||||
},
|
||||
],
|
||||
related_applications: [{
|
||||
"platform": "webapp",
|
||||
"url": "https://www.riso.app/manifest.json"
|
||||
}]
|
||||
},
|
||||
},
|
||||
|
||||
// Full list of options: https://v2.quasar.dev/quasar-cli/developing-cordova-apps/configuring-cordova
|
||||
cordova: {
|
||||
// noIosLegacyBuildFlag: true, // uncomment only if you know what you are doing
|
||||
},
|
||||
|
||||
// Full list of options: https://v2.quasar.dev/quasar-cli/developing-capacitor-apps/configuring-capacitor
|
||||
capacitor: {
|
||||
hideSplashscreen: true,
|
||||
},
|
||||
|
||||
// Full list of options: https://v2.quasar.dev/quasar-cli/developing-electron-apps/configuring-electron
|
||||
electron: {
|
||||
bundler: 'packager', // 'packager' or 'builder'
|
||||
|
||||
packager: {
|
||||
// https://github.com/electron-userland/electron-packager/blob/master/docs/api.md#options
|
||||
|
||||
// OS X / Mac App Store
|
||||
// appBundleId: '',
|
||||
// appCategoryType: '',
|
||||
// osxSign: '',
|
||||
// protocol: 'myapp://path',
|
||||
|
||||
// Windows only
|
||||
// win32metadata: { ... }
|
||||
},
|
||||
|
||||
builder: {
|
||||
// https://www.electron.build/configuration/configuration
|
||||
|
||||
appId: 'FioreDellaVita',
|
||||
},
|
||||
|
||||
// "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain
|
||||
chainWebpack(/* chain */) {
|
||||
// do something with the Electron main process Webpack cfg
|
||||
// extendWebpackMain also available besides this chainWebpackMain
|
||||
},
|
||||
|
||||
// "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain
|
||||
chainWebpackPreload(/* chain */) {
|
||||
// do something with the Electron main process Webpack cfg
|
||||
// extendWebpackPreload also available besides this chainWebpackPreload
|
||||
},
|
||||
},
|
||||
}))
|
||||
452
_ALL_SITES/fioredellavita.riso.app/root_spec/home_arcadei/home_arcadei.scss
Executable file
@@ -0,0 +1,452 @@
|
||||
|
||||
.testo-banda {
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(#3144f0), to(transparent));
|
||||
//background: linear-gradient(180deg, #3144f0, transparent);
|
||||
//background: rgba(0, 0, 0, .6)
|
||||
}
|
||||
|
||||
$grayshadow: #555;
|
||||
|
||||
$textcol: blue;
|
||||
$textcol_scuro: darkblue;
|
||||
|
||||
p {
|
||||
margin: 0 0 1.25rem;
|
||||
//text-shadow: .125rem .125rem .25rem $grayshadow;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
.mycard {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.landing {
|
||||
}
|
||||
|
||||
.landing_background {
|
||||
background: #000 url(../../../public/images/foto1.jpg) no-repeat 50% fixed;
|
||||
background-size: cover
|
||||
}
|
||||
|
||||
.landing > section {
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-box-pack: center;
|
||||
-ms-flex-pack: center;
|
||||
justify-content: center;
|
||||
//padding: 0 16px
|
||||
}
|
||||
|
||||
.intro {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: stretch;
|
||||
/* flex-flow: row nowrap; */
|
||||
|
||||
padding: 1.25rem 0 1.25rem 0;
|
||||
margin: .125rem;
|
||||
|
||||
* {
|
||||
width: 100%;
|
||||
flex: 1;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
&__associazione {
|
||||
min-width: 350px;
|
||||
}
|
||||
|
||||
&__comeassociarsi {
|
||||
min-width: 350px;
|
||||
}
|
||||
}
|
||||
|
||||
.subtitle {
|
||||
font-weight: 600;
|
||||
text-align: center;
|
||||
letter-spacing: 0.125rem;
|
||||
text-transform: uppercase;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding {
|
||||
padding: 5.62rem 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_testo {
|
||||
padding-top: 1.25rem;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_gallery {
|
||||
padding-top: 3.125rem;
|
||||
padding-bottom: 5.625rem;
|
||||
}
|
||||
|
||||
.landing > section > div {
|
||||
position: relative;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
.maxwidth1200 {
|
||||
max-width: 1200px;
|
||||
}
|
||||
|
||||
.landing__toolbar {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
|
||||
background: linear-gradient(180deg, #000, transparent);
|
||||
padding: 0 !important
|
||||
}
|
||||
|
||||
.landing__toolbar .q-btn {
|
||||
border-radius: 0 0 .315rem .315rem;
|
||||
-ms-flex-item-align: stretch;
|
||||
align-self: stretch
|
||||
}
|
||||
|
||||
.landing__hero {
|
||||
min-height: 50vh
|
||||
}
|
||||
|
||||
.landing__header {
|
||||
height: 18vh
|
||||
}
|
||||
|
||||
.landing__arrow {
|
||||
bottom: 1.5rem;
|
||||
opacity: .4
|
||||
}
|
||||
|
||||
.landing__front {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(15%, rgba(0, 0, 0, .6)));
|
||||
background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .6) 15%)
|
||||
}
|
||||
|
||||
.landing__logo {
|
||||
width: 9.40rem;
|
||||
height: 9.40rem;
|
||||
margin-top: 1.315rem;
|
||||
//-webkit-animation: logo-rotate 240s linear infinite;
|
||||
//animation: logo-rotate 240s linear infinite
|
||||
}
|
||||
|
||||
.landing__features .q-icon {
|
||||
font-size: 4rem
|
||||
}
|
||||
|
||||
h4 {
|
||||
line-height: 1.5;
|
||||
text-shadow: .25rem .25rem .5rem $grayshadow;
|
||||
}
|
||||
|
||||
.landing__features h4, .landing__features h6 {
|
||||
margin: 1rem 0
|
||||
}
|
||||
|
||||
.landing__features p {
|
||||
opacity: .7;
|
||||
font-size: 1rem;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
.landing__footer {
|
||||
//background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, rgba(0, 0, 0, .1)), to(#000));
|
||||
background: linear-gradient(180deg, rgba(0, 0, 0, .8) 95%, #FFF);
|
||||
padding-top: 4.5rem !important;
|
||||
padding-bottom: 4.5rem !important;
|
||||
padding-left: 1.25rem;
|
||||
padding-right: 1.25rem;
|
||||
color: #9f9f9f;
|
||||
}
|
||||
|
||||
.icon_contact:hover {
|
||||
color: blue;
|
||||
border-color: white;
|
||||
border-width: .0625rem;
|
||||
}
|
||||
|
||||
.landing__footer .doc-link {
|
||||
color: $textcol;
|
||||
}
|
||||
|
||||
.landing__footer .doc-link:hover {
|
||||
opacity: .8
|
||||
}
|
||||
|
||||
.landing__swirl-bg {
|
||||
background-repeat: no-repeat !important;
|
||||
background-position: top;
|
||||
background-size: contain !important;
|
||||
background-image: url(../../../public/images/landing_first_section.png) !important
|
||||
}
|
||||
|
||||
.feat-descr {
|
||||
font-size: 1.15rem;
|
||||
}
|
||||
|
||||
.feat-descr:hover {
|
||||
transition: opacity 0.5s ease-in-out;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.q-col-gutter-sm {
|
||||
padding: 3.125rem 3.125rem;
|
||||
//margin-left: -48px
|
||||
}
|
||||
|
||||
body.mobile .landing {
|
||||
//background: unset
|
||||
}
|
||||
|
||||
body.mobile .landing:before {
|
||||
content: "";
|
||||
position: fixed;
|
||||
top: 0;
|
||||
height: 100vh;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: -1;
|
||||
//background: #000 url(../../public/images/cover.jpg) 50%;
|
||||
|
||||
background-size: cover
|
||||
}
|
||||
|
||||
/*
|
||||
@-webkit-keyframes logo-rotate {
|
||||
to {
|
||||
-webkit-transform: rotate(-1turn);
|
||||
transform: rotate(-1turn)
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes logo-rotate {
|
||||
to {
|
||||
-webkit-transform: rotate(-1turn);
|
||||
transform: rotate(-1turn)
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
.home {
|
||||
//background-color: rgb(250, 250, 250);
|
||||
padding: 3.125rem;
|
||||
display: flex;
|
||||
//flex-wrap: nowrap;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.btn-start {
|
||||
margin: 3.125rem;
|
||||
}
|
||||
|
||||
.shadow {
|
||||
//color: white;
|
||||
text-shadow: 0.125rem 0.125rem 0.25rem $grayshadow;
|
||||
}
|
||||
|
||||
.text-h1, h1 {
|
||||
font-size: 3rem;
|
||||
font-weight: bold;
|
||||
line-height: 3rem;
|
||||
letter-spacing: -.01562em;
|
||||
margin-bottom: 8px !important;
|
||||
}
|
||||
|
||||
.text-h2 {
|
||||
font-size: 3.75rem;
|
||||
font-weight: 300;
|
||||
line-height: 3.75rem;
|
||||
letter-spacing: -.00833em;
|
||||
}
|
||||
|
||||
.text-weight-bold {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.text-vers {
|
||||
font-size: 0.75rem;
|
||||
font-weight: 400;
|
||||
line-height: 1.75rem;
|
||||
letter-spacing: .00937em;
|
||||
text-shadow: .25rem .25rem .5rem $grayshadow;
|
||||
}
|
||||
|
||||
.homep-cover-img-1 {
|
||||
background: #000 url(../../../public/images/foto1.jpg) no-repeat 50% fixed;
|
||||
//transition: background-image 1s ease-in-out;
|
||||
}
|
||||
|
||||
.homep-cover-img-2 {
|
||||
background: #000 url(../../../public/images/foto2.jpg) no-repeat 50% fixed;
|
||||
//transition: background-image 1s ease-in-out;
|
||||
}
|
||||
|
||||
.homep-cover-img-3 {
|
||||
background: #000 url(../../../public/images/foto3.jpg) no-repeat 50% fixed;
|
||||
//transition: background-image 1s ease-in-out;
|
||||
}
|
||||
|
||||
.homep-cover-img.hide-filter:before {
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
.landing__footer-icons {
|
||||
font-size: 1.75rem
|
||||
}
|
||||
|
||||
.landing__footer-icons a {
|
||||
margin: 0 .5rem .5rem;
|
||||
text-decoration: none;
|
||||
outline: 0;
|
||||
color: $textcol;
|
||||
transition: color .28s
|
||||
}
|
||||
|
||||
.landing__footer-icons a:hover {
|
||||
color: $textcol_scuro;
|
||||
}
|
||||
|
||||
.doc-img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.mylist {
|
||||
background: #3fdaff;
|
||||
padding-left: 1.25rem;
|
||||
}
|
||||
|
||||
.clgutter {
|
||||
margin-top: 1.25rem;
|
||||
padding: .62rem;
|
||||
}
|
||||
|
||||
.carousel_img_3 {
|
||||
//background-image: url(../../public/images/cibo_sano.jpg);
|
||||
background-size: cover !important;
|
||||
background-position: 50% center !important;
|
||||
background-repeat: no-repeat !important;
|
||||
}
|
||||
|
||||
@media (max-width: 718px) {
|
||||
// PER VERSIONE MOBILE
|
||||
|
||||
.landing__hero {
|
||||
text-align: center
|
||||
}
|
||||
.landing__header {
|
||||
height: 7vh
|
||||
}
|
||||
.clgutter {
|
||||
margin-top: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.landing__hero .text-h1, h1 {
|
||||
font-size: 2rem;
|
||||
line-height: 2.05rem;
|
||||
margin-bottom: 1.25rem
|
||||
}
|
||||
|
||||
.landing > section.padding {
|
||||
padding: 2.5rem 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_testo {
|
||||
padding-top: 1.25rem;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_gallery {
|
||||
padding-top: 3.125rem;
|
||||
padding-bottom: 5.625rem;
|
||||
|
||||
max-width: 800px;
|
||||
}
|
||||
|
||||
.landing > section.padding_gallery > div {
|
||||
padding-top: 3.125rem;
|
||||
padding-bottom: 5.625rem;
|
||||
|
||||
}
|
||||
|
||||
.landing__features h4, .landing__features h6 {
|
||||
margin: 1.25rem 0
|
||||
}
|
||||
|
||||
h4 {
|
||||
line-height: 1.4;
|
||||
text-shadow: 0.25rem 0.25rem 0.5rem $grayshadow;
|
||||
}
|
||||
|
||||
.landing .feature-item {
|
||||
text-align: center;
|
||||
margin-top: 1.25rem;
|
||||
}
|
||||
.landing__hero-content {
|
||||
padding-bottom: 11.25rem;
|
||||
}
|
||||
.landing__hero2-content {
|
||||
padding-bottom: 7.25rem;
|
||||
}
|
||||
.landing__hero-btns {
|
||||
-webkit-box-pack: center;
|
||||
-ms-flex-pack: center;
|
||||
justify-content: center
|
||||
}
|
||||
|
||||
.q-col-gutter-sm {
|
||||
padding: .625rem .315rem;
|
||||
}
|
||||
|
||||
.text-subtitle1 {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
.text-vers {
|
||||
font-size: 0.6rem;
|
||||
}
|
||||
|
||||
.carousel_img_3 {
|
||||
//background-image: url(../../public/images/cibo_sano.jpg);
|
||||
background-size: 620px 620px !important;
|
||||
background-position: 50% top !important;
|
||||
background-repeat: no-repeat !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.custom-caption {
|
||||
text-align: center;
|
||||
padding: .75rem;
|
||||
color: $textcol;
|
||||
background-color: rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
.sfondo-grigio {
|
||||
padding: 1rem;
|
||||
color: $textcol;
|
||||
background-color: rgba(0, 0, 0, .35);
|
||||
}
|
||||
|
||||
.mycontacts {
|
||||
color: gray;
|
||||
letter-spacing: 0.078rem;
|
||||
}
|
||||
|
||||
.mycontacts_title {
|
||||
text-shadow: 0.125rem 0.125rem 0.125rem #555;
|
||||
font-weight: bold;
|
||||
color: #999;
|
||||
letter-spacing: 0.125rem;
|
||||
}
|
||||
|
||||
.mycontacts_text {
|
||||
color: #999;
|
||||
letter-spacing: 0.093rem;
|
||||
}
|
||||
78
_ALL_SITES/fioredellavita.riso.app/root_spec/home_arcadei/home_arcadei.ts
Executable file
@@ -0,0 +1,78 @@
|
||||
import { defineComponent, ref, onMounted, watch, computed } from 'vue'
|
||||
|
||||
import { useGlobalStore } from '@store/globalStore'
|
||||
import { useRoute } from 'vue-router'
|
||||
import { useUserStore } from '@store/UserStore'
|
||||
|
||||
import { Logo } from '../../components/logo'
|
||||
|
||||
import { LandingFooter } from '../../components/LandingFooter'
|
||||
import { CMyPage } from '../../components/CMyPage/index'
|
||||
|
||||
import { tools } from '@src/store/Modules/tools'
|
||||
import { static_data } from '@src/db/static_data'
|
||||
import { toolsext } from '@src/store/Modules/toolsext'
|
||||
import { Screen } from 'quasar'
|
||||
import { CCardCarousel, CEventsCalendar, COpenStreetMap } from '@components'
|
||||
import MixinBase from '@src/mixins/mixin-base'
|
||||
import { firstimagehome } from '@src/db/static_data'
|
||||
import MixinMetaTags from '@/mixins/mixin-metatags'
|
||||
|
||||
export default defineComponent({
|
||||
name: 'home_arcadei',
|
||||
components: { Logo, LandingFooter, CMyPage, CCardCarousel, CEventsCalendar, COpenStreetMap },
|
||||
|
||||
setup() {
|
||||
const animare = ref(0)
|
||||
const slide = ref('first')
|
||||
const slide2 = ref(1)
|
||||
|
||||
const getImmagini = ref([
|
||||
{
|
||||
title: '', subtitle: '',
|
||||
alt: 'Arcadei',
|
||||
img: 'images/arcadei/img1.png'
|
||||
},
|
||||
])
|
||||
|
||||
const userStore = useUserStore()
|
||||
const globalStore = useGlobalStore()
|
||||
|
||||
const { setValDb, getValDb } = MixinBase()
|
||||
const { setmeta, getsrcbyimg } = MixinMetaTags()
|
||||
|
||||
function getheightgallery() {
|
||||
if (tools.isMobile())
|
||||
return '400px'
|
||||
else
|
||||
return '600px'
|
||||
}
|
||||
|
||||
function created() {
|
||||
//
|
||||
}
|
||||
|
||||
function getArrDisciplines() {
|
||||
return globalStore.disciplines.filter((rec: any) => rec.showinhome)
|
||||
}
|
||||
|
||||
created()
|
||||
|
||||
return {
|
||||
tools,
|
||||
toolsext,
|
||||
static_data,
|
||||
animare,
|
||||
slide,
|
||||
slide2,
|
||||
getheightgallery,
|
||||
getArrDisciplines,
|
||||
getImmagini,
|
||||
getValDb,
|
||||
firstimagehome,
|
||||
getsrcbyimg,
|
||||
setmeta,
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
221
_ALL_SITES/fioredellavita.riso.app/root_spec/home_arcadei/home_arcadei.vue
Executable file
@@ -0,0 +1,221 @@
|
||||
<template>
|
||||
<q-page>
|
||||
<CMyPage title="Home">
|
||||
<div class="landing">
|
||||
<section>
|
||||
<div class="landing__hero maxwidth1200 text-white">
|
||||
<q-carousel
|
||||
animated
|
||||
:autoplay="animare"
|
||||
swipeable
|
||||
infinite
|
||||
navigation
|
||||
transition-next="slide-left"
|
||||
transition-prev="slide-right"
|
||||
v-model="slide"
|
||||
:height="getheightgallery()"
|
||||
width="100%"
|
||||
>
|
||||
<q-carousel-slide name="first"
|
||||
:img-src="getsrcbyimg(firstimagehome())">
|
||||
<div class="landing__header"></div>
|
||||
<div class="landing__hero-content row justify-center q-gutter-xs clgutter">
|
||||
<div class="row">
|
||||
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="q-gutter-xs testo-banda clgutter">
|
||||
<h1 class="text-h1 shadow-max">{{tools.getappname()}}</h1>
|
||||
<div class="text-subtitle1 shadow text-italic q-pl-sm">
|
||||
|
||||
</div>
|
||||
<div class="text-subtitle1 shadow-max big text-italic q-pl-sm">
|
||||
|
||||
</div>
|
||||
<div class="text-subtitle2 shadow text-italic q-pl-sm">
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<br>
|
||||
<br>
|
||||
<div v-if="!tools.isLogged()" style="margin: 5px; padding: 5px;" class="home">
|
||||
<br>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="landing__arrow absolute-bottom text-center">
|
||||
<i aria-hidden="true"
|
||||
class="q-icon text-h2 text-white material-icons">expand_more</i>
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
<q-carousel-slide name="second"
|
||||
:img-src="getsrcbyimg('images/background2.jpg')" alt="">
|
||||
<div class="landing__header"></div>
|
||||
<div class="landing__hero2-content row justify-center q-gutter-xs clgutter">
|
||||
<div class="row">
|
||||
<logo></logo>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="q-gutter-xs testo-banda clgutter">
|
||||
<h1 class="text-h1 shadow-max">{{tools.getappname()}}</h1>
|
||||
<h2 class="text-subtitle1 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp')}}
|
||||
</h2>
|
||||
<h2 class="text-subtitle1 shadow-max big text-italic q-pl-sm">
|
||||
<strong>{{$t('msg.sottoTitoloApp2')}}</strong>
|
||||
</h2>
|
||||
<h2 class="text-subtitle2 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp3')}}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="landing__arrow absolute-bottom text-center">
|
||||
<i aria-hidden="true"
|
||||
class="q-icon text-h2 text-white material-icons">expand_more</i>
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
<q-carousel-slide name="third"
|
||||
:img-src="getsrcbyimg('images/background3.jpg')">
|
||||
<div class="landing__header"></div>
|
||||
<div class="landing__hero2-content row justify-center q-gutter-xs clgutter">
|
||||
<div class="row">
|
||||
<logo></logo>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="q-gutter-xs testo-banda clgutter">
|
||||
<div class="text-h1 shadow-max">{{tools.getappname()}}</div>
|
||||
<div class="text-subtitle1 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp')}}
|
||||
</div>
|
||||
<div class="text-subtitle1 shadow-max big text-italic q-pl-sm"><strong>{{$t('msg.sottoTitoloApp2')}}</strong>
|
||||
</div>
|
||||
<div class="text-subtitle2 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp3')}}
|
||||
</div>
|
||||
|
||||
<div class="text-subtitle3 shadow text-italic q-pl-sm ">
|
||||
{{$t('msg.sottoTitoloApp4')}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="landing__arrow absolute-bottom text-center">
|
||||
<!--<i aria-hidden="true"-->
|
||||
<!--class="q-icon text-h2 text-white material-icons">expand_more</i>-->
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
</q-carousel>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="q-pa-md q-gutter-md">
|
||||
<div v-if="isLogged && !isVerified" class="text-verified">{{
|
||||
$t('components.authentication.email_verification.link_sent') }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<CCardCarousel :myarr="getArrDisciplines()">
|
||||
|
||||
</CCardCarousel>
|
||||
|
||||
<CEventsCalendar :mysingleevent="null" :showfirstN="getValDb('SHOW_LAST_EVENTS', false, 3)">
|
||||
|
||||
</CEventsCalendar>
|
||||
|
||||
|
||||
<div v-if="getValDb('VIDEO_HOME', false)" class="row justify-evenly items-center q-gutter-md ">
|
||||
|
||||
<div class="text-center">
|
||||
<h4 class="subtitle text-blue" v-html="getValDb('VIDEO_TITLE', false)"></h4>
|
||||
<div class="">
|
||||
<video :width="tools.getwidthscale(mythis, 320, 800)"
|
||||
:height="tools.getheightbywidth(mythis, 320, 180, 800)" controls>
|
||||
<source :src="getValDb('VIDEO_HOME', false)" type="video/mp4">
|
||||
</video>
|
||||
</div>
|
||||
<!--<q-video src="../../statics/video/Intervista_Cristina_Barattoni.mp4">-->
|
||||
|
||||
<!--</q-video>-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div v-if="getValDb('YT_VIDEO', false)" class="row justify-evenly items-center q-gutter-md ">
|
||||
|
||||
<div class="text-center">
|
||||
<h4 class="subtitle text-blue" v-html="getValDb('YT_TITLE', false)"></h4>
|
||||
<div class="">
|
||||
|
||||
<div class="">
|
||||
<iframe
|
||||
:width="tools.getwidthscale(mythis, getValDb('YT_W', false), 800)"
|
||||
:height="tools.getheightbywidth(mythis, getValDb('YT_W', false), getValDb('YT_H', false), 800)"
|
||||
:src="getValDb('YT_VIDEO', false)"
|
||||
frameborder="0"
|
||||
allowfullscreen
|
||||
></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<!--<q-video src="../../statics/video/Intervista_Cristina_Barattoni.mp4">-->
|
||||
|
||||
<!--</q-video>-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<section :class="`maxwidth padding_gallery `+ ($q.dark.isActive ? `bg-black` : `bg-white`) + ` text-grey-10 text-center`" >
|
||||
|
||||
<q-carousel
|
||||
swipeable
|
||||
animated
|
||||
:autoplay="8000"
|
||||
v-model="slide2"
|
||||
arrows
|
||||
thumbnails
|
||||
infinite
|
||||
height="600">
|
||||
<q-carousel-slide v-for="(rec, index) in getImmagini" :key="index" :name="index"
|
||||
:img-src="rec.img"
|
||||
:alt="rec.alt"
|
||||
class="carousel_slide">
|
||||
<div class="absolute-bottom custom-caption" style="margin-bottom: 70px">
|
||||
<div class="text-h5"><span
|
||||
class="text-h6 text-grey-1 shadow-max">{{index + 1}}. </span><span
|
||||
class="text-h6 text-grey-2 shadow">{{rec.title}}</span></div>
|
||||
<div class="text-subtitle1"><span class="text-grey-4 shadow">{{rec.subtitle}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
</q-carousel>
|
||||
</section>
|
||||
<div v-if="!tools.isMobile()" style="margin: 60px 60px;"></div>
|
||||
|
||||
<COpenStreetMap :imgmap="getValDb('IMGMAP', false)" :urlmap="getValDb('URLMAP', false)" :title="getValDb('MAP_TITLE', false)"
|
||||
:coordinates="getValDb('COORD_MAP_1', false)" :coord_big="getValDb('COORD_MAP_BIG', false)">
|
||||
|
||||
</COpenStreetMap>
|
||||
|
||||
|
||||
<div class="q-ma-md"></div>
|
||||
</div>
|
||||
</CMyPage>
|
||||
</q-page>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./home_arcadei.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import './home_arcadei.scss';
|
||||
</style>
|
||||
446
_ALL_SITES/fioredellavita.riso.app/root_spec/home_tdv/home_tdv.scss
Executable file
@@ -0,0 +1,446 @@
|
||||
|
||||
.testo-banda {
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(#3144f0), to(transparent));
|
||||
//background: linear-gradient(180deg, #3144f0, transparent);
|
||||
//background: rgba(0, 0, 0, .6)
|
||||
}
|
||||
|
||||
$grayshadow: #555;
|
||||
|
||||
$textcol: blue;
|
||||
$textcol_scuro: darkblue;
|
||||
|
||||
p {
|
||||
margin: 0 0 1.25rem;
|
||||
//text-shadow: .125rem .125rem .25rem $grayshadow;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
.mycard {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.landing {
|
||||
}
|
||||
|
||||
.landing_background {
|
||||
background: #000 url(../../../public/images/foto1.jpg) no-repeat 50% fixed;
|
||||
background-size: cover
|
||||
}
|
||||
|
||||
.landing > section {
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-box-pack: center;
|
||||
-ms-flex-pack: center;
|
||||
justify-content: center;
|
||||
//padding: 0 16px
|
||||
}
|
||||
|
||||
.intro {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: stretch;
|
||||
/* flex-flow: row nowrap; */
|
||||
|
||||
padding: 1.25rem 0 1.25rem 0;
|
||||
margin: .125rem;
|
||||
|
||||
* {
|
||||
width: 100%;
|
||||
flex: 1;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
&__associazione {
|
||||
min-width: 350px;
|
||||
}
|
||||
|
||||
&__comeassociarsi {
|
||||
min-width: 350px;
|
||||
}
|
||||
}
|
||||
|
||||
.subtitle {
|
||||
font-weight: 600;
|
||||
text-align: center;
|
||||
letter-spacing: 0.125rem;
|
||||
text-transform: uppercase;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding {
|
||||
padding: 5.62rem 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_testo {
|
||||
padding-top: 1.25rem;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_gallery {
|
||||
padding-top: 3.125rem;
|
||||
padding-bottom: 5.625rem;
|
||||
}
|
||||
|
||||
.landing > section > div {
|
||||
position: relative;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
.maxwidth1200 {
|
||||
max-width: 1200px;
|
||||
}
|
||||
|
||||
.landing__toolbar {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
|
||||
background: linear-gradient(180deg, #000, transparent);
|
||||
padding: 0 !important
|
||||
}
|
||||
|
||||
.landing__toolbar .q-btn {
|
||||
border-radius: 0 0 .315rem .315rem;
|
||||
-ms-flex-item-align: stretch;
|
||||
align-self: stretch
|
||||
}
|
||||
|
||||
.landing__hero {
|
||||
min-height: 50vh
|
||||
}
|
||||
|
||||
.landing__header {
|
||||
height: 18vh
|
||||
}
|
||||
|
||||
.landing__arrow {
|
||||
bottom: 1.5rem;
|
||||
opacity: .4
|
||||
}
|
||||
|
||||
.landing__front {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(15%, rgba(0, 0, 0, .6)));
|
||||
background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .6) 15%)
|
||||
}
|
||||
|
||||
.landing__logo {
|
||||
width: 9.40rem;
|
||||
height: 9.40rem;
|
||||
margin-top: 1.315rem;
|
||||
//-webkit-animation: logo-rotate 240s linear infinite;
|
||||
//animation: logo-rotate 240s linear infinite
|
||||
}
|
||||
|
||||
.landing__features .q-icon {
|
||||
font-size: 4rem
|
||||
}
|
||||
|
||||
h4 {
|
||||
line-height: 1.5;
|
||||
text-shadow: .25rem .25rem .5rem $grayshadow;
|
||||
}
|
||||
|
||||
.landing__features h4, .landing__features h6 {
|
||||
margin: 1rem 0
|
||||
}
|
||||
|
||||
.landing__features p {
|
||||
opacity: .7;
|
||||
font-size: 1rem;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
.landing__footer {
|
||||
//background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, rgba(0, 0, 0, .1)), to(#000));
|
||||
background: linear-gradient(180deg, rgba(0, 0, 0, .8) 95%, #FFF);
|
||||
padding-top: 4.5rem !important;
|
||||
padding-bottom: 4.5rem !important;
|
||||
padding-left: 1.25rem;
|
||||
padding-right: 1.25rem;
|
||||
color: #9f9f9f;
|
||||
}
|
||||
|
||||
.icon_contact:hover {
|
||||
color: blue;
|
||||
border-color: white;
|
||||
border-width: .0625rem;
|
||||
}
|
||||
|
||||
.landing__footer .doc-link {
|
||||
color: $textcol;
|
||||
}
|
||||
|
||||
.landing__footer .doc-link:hover {
|
||||
opacity: .8
|
||||
}
|
||||
|
||||
.landing__swirl-bg {
|
||||
background-repeat: no-repeat !important;
|
||||
background-position: top;
|
||||
background-size: contain !important;
|
||||
background-image: url(../../../public/images/landing_first_section.png) !important
|
||||
}
|
||||
|
||||
.feat-descr {
|
||||
font-size: 1.15rem;
|
||||
}
|
||||
|
||||
.feat-descr:hover {
|
||||
transition: opacity 0.5s ease-in-out;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.q-col-gutter-sm {
|
||||
padding: 3.125rem 3.125rem;
|
||||
//margin-left: -48px
|
||||
}
|
||||
|
||||
body.mobile .landing {
|
||||
//background: unset
|
||||
}
|
||||
|
||||
body.mobile .landing:before {
|
||||
content: "";
|
||||
position: fixed;
|
||||
top: 0;
|
||||
height: 100vh;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: -1;
|
||||
//background: #000 url(../../public/images/cover.jpg) 50%;
|
||||
|
||||
background-size: cover
|
||||
}
|
||||
|
||||
/*
|
||||
@-webkit-keyframes logo-rotate {
|
||||
to {
|
||||
-webkit-transform: rotate(-1turn);
|
||||
transform: rotate(-1turn)
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes logo-rotate {
|
||||
to {
|
||||
-webkit-transform: rotate(-1turn);
|
||||
transform: rotate(-1turn)
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
.home {
|
||||
//background-color: rgb(250, 250, 250);
|
||||
padding: 3.125rem;
|
||||
display: flex;
|
||||
//flex-wrap: nowrap;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.btn-start {
|
||||
margin: 3.125rem;
|
||||
}
|
||||
|
||||
.shadow {
|
||||
//color: white;
|
||||
text-shadow: 0.125rem 0.125rem 0.25rem $grayshadow;
|
||||
}
|
||||
|
||||
.text-h1, h1 {
|
||||
font-size: 3rem;
|
||||
font-weight: bold;
|
||||
line-height: 3rem;
|
||||
letter-spacing: -.01562em;
|
||||
margin-bottom: 8px !important;
|
||||
}
|
||||
|
||||
.text-h2 {
|
||||
font-size: 3.75rem;
|
||||
font-weight: 300;
|
||||
line-height: 3.75rem;
|
||||
letter-spacing: -.00833em;
|
||||
}
|
||||
|
||||
.text-weight-bold {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.text-vers {
|
||||
font-size: 0.75rem;
|
||||
font-weight: 400;
|
||||
line-height: 1.75rem;
|
||||
letter-spacing: .00937em;
|
||||
text-shadow: .25rem .25rem .5rem $grayshadow;
|
||||
}
|
||||
|
||||
.homep-cover-img-1 {
|
||||
background: #000 url(../../../public/images/foto1.jpg) no-repeat 50% fixed;
|
||||
//transition: background-image 1s ease-in-out;
|
||||
}
|
||||
|
||||
.homep-cover-img-2 {
|
||||
background: #000 url(../../../public/images/foto2.jpg) no-repeat 50% fixed;
|
||||
//transition: background-image 1s ease-in-out;
|
||||
}
|
||||
|
||||
.homep-cover-img-3 {
|
||||
background: #000 url(../../../public/images/foto3.jpg) no-repeat 50% fixed;
|
||||
//transition: background-image 1s ease-in-out;
|
||||
}
|
||||
|
||||
.homep-cover-img.hide-filter:before {
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
.landing__footer-icons {
|
||||
font-size: 1.75rem
|
||||
}
|
||||
|
||||
.landing__footer-icons a {
|
||||
margin: 0 .5rem .5rem;
|
||||
text-decoration: none;
|
||||
outline: 0;
|
||||
color: $textcol;
|
||||
transition: color .28s
|
||||
}
|
||||
|
||||
.landing__footer-icons a:hover {
|
||||
color: $textcol_scuro;
|
||||
}
|
||||
|
||||
.doc-img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.mylist {
|
||||
background: #3fdaff;
|
||||
padding-left: 1.25rem;
|
||||
}
|
||||
|
||||
.clgutter {
|
||||
margin-top: 1.25rem;
|
||||
padding: .62rem;
|
||||
}
|
||||
|
||||
.carousel_img_3 {
|
||||
//background-image: url(../../public/images/cibo_sano.jpg);
|
||||
background-size: cover !important;
|
||||
background-position: 50% center !important;
|
||||
background-repeat: no-repeat !important;
|
||||
}
|
||||
|
||||
@media (max-width: 718px) {
|
||||
// PER VERSIONE MOBILE
|
||||
|
||||
.landing__hero {
|
||||
text-align: center
|
||||
}
|
||||
.landing__header {
|
||||
height: 7vh
|
||||
}
|
||||
.clgutter {
|
||||
margin-top: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.landing__hero .text-h1, h1 {
|
||||
font-size: 2rem;
|
||||
line-height: 2.05rem;
|
||||
margin-bottom: 1.25rem
|
||||
}
|
||||
|
||||
.landing > section.padding {
|
||||
padding: 2.5rem 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_testo {
|
||||
padding-top: 1.25rem;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.landing > section.padding_gallery {
|
||||
padding-top: 3.125rem;
|
||||
padding-bottom: 5.625rem;
|
||||
|
||||
max-width: 800px;
|
||||
}
|
||||
|
||||
.landing > section.padding_gallery > div {
|
||||
padding-top: 3.125rem;
|
||||
padding-bottom: 5.625rem;
|
||||
|
||||
}
|
||||
|
||||
.landing__features h4, .landing__features h6 {
|
||||
margin: 1.25rem 0
|
||||
}
|
||||
|
||||
h4 {
|
||||
line-height: 1.4;
|
||||
text-shadow: 0.25rem 0.25rem 0.5rem $grayshadow;
|
||||
}
|
||||
|
||||
.landing .feature-item {
|
||||
text-align: center;
|
||||
margin-top: 1.25rem;
|
||||
}
|
||||
.landing__hero-content {
|
||||
padding-bottom: 11.25rem;
|
||||
}
|
||||
.landing__hero2-content {
|
||||
padding-bottom: 7.25rem;
|
||||
}
|
||||
.landing__hero-btns {
|
||||
-webkit-box-pack: center;
|
||||
-ms-flex-pack: center;
|
||||
justify-content: center
|
||||
}
|
||||
|
||||
.q-col-gutter-sm {
|
||||
padding: .625rem .315rem;
|
||||
}
|
||||
|
||||
.text-subtitle1 {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
.text-vers {
|
||||
font-size: 0.6rem;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
.custom-caption {
|
||||
text-align: center;
|
||||
padding: .75rem;
|
||||
color: $textcol;
|
||||
background-color: rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
.sfondo-grigio {
|
||||
padding: 1rem;
|
||||
color: $textcol;
|
||||
background-color: rgba(0, 0, 0, .35);
|
||||
}
|
||||
|
||||
.mycontacts {
|
||||
color: gray;
|
||||
letter-spacing: 0.078rem;
|
||||
}
|
||||
|
||||
.mycontacts_title {
|
||||
text-shadow: 0.125rem 0.125rem 0.125rem #555;
|
||||
font-weight: bold;
|
||||
color: #999;
|
||||
letter-spacing: 0.125rem;
|
||||
}
|
||||
|
||||
.mycontacts_text {
|
||||
color: #999;
|
||||
letter-spacing: 0.093rem;
|
||||
}
|
||||
78
_ALL_SITES/fioredellavita.riso.app/root_spec/home_tdv/home_tdv.ts
Executable file
@@ -0,0 +1,78 @@
|
||||
import { defineComponent, ref, onMounted, watch, computed } from 'vue'
|
||||
|
||||
import { useGlobalStore } from '@store/globalStore'
|
||||
import { useRoute } from 'vue-router'
|
||||
import { useUserStore } from '@store/UserStore'
|
||||
|
||||
import { Logo } from '../../components/logo'
|
||||
|
||||
import { LandingFooter } from '../../components/LandingFooter'
|
||||
import { CMyPage } from '../../components/CMyPage/index'
|
||||
|
||||
import { tools } from '@src/store/Modules/tools'
|
||||
import { static_data } from '@src/db/static_data'
|
||||
import { toolsext } from '@src/store/Modules/toolsext'
|
||||
import { Screen } from 'quasar'
|
||||
import { CCardCarousel, CEventsCalendar, COpenStreetMap } from '@components'
|
||||
import MixinBase from '@src/mixins/mixin-base'
|
||||
import { firstimagehome } from '@src/db/static_data'
|
||||
import MixinMetaTags from '@/mixins/mixin-metatags'
|
||||
|
||||
export default defineComponent({
|
||||
name: 'Home_tdv',
|
||||
components: { Logo, LandingFooter, CMyPage, CCardCarousel, CEventsCalendar, COpenStreetMap },
|
||||
|
||||
setup() {
|
||||
const animare = ref(0)
|
||||
const slide = ref('first')
|
||||
const slide2 = ref(1)
|
||||
|
||||
const getImmagini = ref([
|
||||
{
|
||||
title: '', subtitle: '',
|
||||
alt: 'Elisa e Cristina insieme',
|
||||
img: '../../statics/images/eventi_esterni/IMG_6035.jpg'
|
||||
},
|
||||
])
|
||||
|
||||
const userStore = useUserStore()
|
||||
const globalStore = useGlobalStore()
|
||||
|
||||
const { setValDb, getValDb } = MixinBase()
|
||||
const { setmeta, getsrcbyimg } = MixinMetaTags()
|
||||
|
||||
function getheightgallery() {
|
||||
if (tools.isMobile())
|
||||
return '400px'
|
||||
else
|
||||
return '600px'
|
||||
}
|
||||
|
||||
function created() {
|
||||
//
|
||||
}
|
||||
|
||||
function getArrDisciplines() {
|
||||
return globalStore.disciplines.filter((rec: any) => rec.showinhome)
|
||||
}
|
||||
|
||||
created()
|
||||
|
||||
return {
|
||||
tools,
|
||||
toolsext,
|
||||
static_data,
|
||||
animare,
|
||||
slide,
|
||||
slide2,
|
||||
getheightgallery,
|
||||
getArrDisciplines,
|
||||
getImmagini,
|
||||
getValDb,
|
||||
firstimagehome,
|
||||
getsrcbyimg,
|
||||
setmeta,
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
220
_ALL_SITES/fioredellavita.riso.app/root_spec/home_tdv/home_tdv.vue
Executable file
@@ -0,0 +1,220 @@
|
||||
<template>
|
||||
<q-page>
|
||||
<CMyPage title="Home">
|
||||
<div class="landing">
|
||||
<section>
|
||||
<div class="landing__hero maxwidth1200 text-white">
|
||||
<q-carousel
|
||||
animated
|
||||
:autoplay="animare"
|
||||
swipeable
|
||||
infinite
|
||||
navigation
|
||||
transition-next="slide-left"
|
||||
transition-prev="slide-right"
|
||||
v-model="slide"
|
||||
:height="getheightgallery()"
|
||||
width="100%"
|
||||
>
|
||||
<q-carousel-slide name="first"
|
||||
:img-src="getsrcbyimg(firstimagehome())">
|
||||
<div class="landing__header"></div>
|
||||
<div class="landing__hero-content row justify-center q-gutter-xs clgutter">
|
||||
<div class="row">
|
||||
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="q-gutter-xs testo-banda clgutter">
|
||||
<h1 class="text-h1 shadow-max">{{tools.getappname()}}</h1>
|
||||
<div class="text-subtitle1 shadow text-italic q-pl-sm">
|
||||
|
||||
</div>
|
||||
<div class="text-subtitle1 shadow-max big text-italic q-pl-sm">
|
||||
|
||||
</div>
|
||||
<div class="text-subtitle2 shadow text-italic q-pl-sm">
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<br>
|
||||
<br>
|
||||
<div v-if="!tools.isLogged()" style="margin: 5px; padding: 5px;" class="home">
|
||||
<br>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="landing__arrow absolute-bottom text-center">
|
||||
<i aria-hidden="true"
|
||||
class="q-icon text-h2 text-white material-icons">expand_more</i>
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
<q-carousel-slide name="second"
|
||||
:img-src="getsrcbyimg('images/background2.jpg')" alt="">
|
||||
<div class="landing__header"></div>
|
||||
<div class="landing__hero2-content row justify-center q-gutter-xs clgutter">
|
||||
<div class="row">
|
||||
<logo></logo>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="q-gutter-xs testo-banda clgutter">
|
||||
<h1 class="text-h1 shadow-max">{{tools.getappname()}}</h1>
|
||||
<h2 class="text-subtitle1 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp')}}
|
||||
</h2>
|
||||
<h2 class="text-subtitle1 shadow-max big text-italic q-pl-sm">
|
||||
<strong>{{$t('msg.sottoTitoloApp2')}}</strong>
|
||||
</h2>
|
||||
<h2 class="text-subtitle2 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp3')}}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="landing__arrow absolute-bottom text-center">
|
||||
<i aria-hidden="true"
|
||||
class="q-icon text-h2 text-white material-icons">expand_more</i>
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
<q-carousel-slide name="third"
|
||||
:img-src="getsrcbyimg('images/background3.jpg')">
|
||||
<div class="landing__header"></div>
|
||||
<div class="landing__hero2-content row justify-center q-gutter-xs clgutter">
|
||||
<div class="row">
|
||||
<logo></logo>
|
||||
</div>
|
||||
<div class="flex justify-end">
|
||||
<div class="q-gutter-xs testo-banda clgutter">
|
||||
<div class="text-h1 shadow-max">{{tools.getappname()}}</div>
|
||||
<div class="text-subtitle1 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp')}}
|
||||
</div>
|
||||
<div class="text-subtitle1 shadow-max big text-italic q-pl-sm"><strong>{{$t('msg.sottoTitoloApp2')}}</strong>
|
||||
</div>
|
||||
<div class="text-subtitle2 shadow text-italic q-pl-sm">
|
||||
{{$t('msg.sottoTitoloApp3')}}
|
||||
</div>
|
||||
|
||||
<div class="text-subtitle3 shadow text-italic q-pl-sm ">
|
||||
{{$t('msg.sottoTitoloApp4')}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="landing__arrow absolute-bottom text-center">
|
||||
<!--<i aria-hidden="true"-->
|
||||
<!--class="q-icon text-h2 text-white material-icons">expand_more</i>-->
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
</q-carousel>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="q-pa-md q-gutter-md">
|
||||
<div v-if="isLogged && !isVerified" class="text-verified">{{
|
||||
$t('components.authentication.email_verification.link_sent') }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<CCardCarousel :myarr="getArrDisciplines()">
|
||||
|
||||
</CCardCarousel>
|
||||
|
||||
<CEventsCalendar :mysingleevent="null" :showfirstN="getValDb('SHOW_LAST_EVENTS', false, 3)">
|
||||
|
||||
</CEventsCalendar>
|
||||
|
||||
|
||||
<div v-if="getValDb('VIDEO_HOME', false)" class="row justify-evenly items-center q-gutter-md ">
|
||||
|
||||
<div class="text-center">
|
||||
<h4 class="subtitle text-blue" v-html="getValDb('VIDEO_TITLE', false)"></h4>
|
||||
<div class="">
|
||||
<video :width="tools.getwidthscale(mythis, 320, 800)"
|
||||
:height="tools.getheightbywidth(mythis, 320, 180, 800)" controls>
|
||||
<source :src="getValDb('VIDEO_HOME', false)" type="video/mp4">
|
||||
</video>
|
||||
</div>
|
||||
<!--<q-video src="../../statics/video/Intervista_Cristina_Barattoni.mp4">-->
|
||||
|
||||
<!--</q-video>-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div v-if="getValDb('YT_VIDEO', false)" class="row justify-evenly items-center q-gutter-md ">
|
||||
|
||||
<div class="text-center">
|
||||
<h4 class="subtitle text-blue" v-html="getValDb('YT_TITLE', false)"></h4>
|
||||
<div class="">
|
||||
|
||||
<div class="">
|
||||
<iframe
|
||||
:width="tools.getwidthscale(mythis, getValDb('YT_W', false), 800)"
|
||||
:height="tools.getheightbywidth(mythis, getValDb('YT_W', false), getValDb('YT_H', false), 800)"
|
||||
:src="getValDb('YT_VIDEO', false)"
|
||||
frameborder="0"
|
||||
allowfullscreen
|
||||
></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<!--<q-video src="../../statics/video/Intervista_Cristina_Barattoni.mp4">-->
|
||||
|
||||
<!--</q-video>-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<section class="maxwidth padding_gallery bg-white text-grey-10 text-center" >
|
||||
|
||||
<q-carousel
|
||||
swipeable
|
||||
animated
|
||||
:autoplay="8000"
|
||||
v-model="slide2"
|
||||
arrows
|
||||
thumbnails
|
||||
infinite
|
||||
:height="tools.heightgallery()">
|
||||
<q-carousel-slide v-for="(rec, index) in getImmagini" :key="index" :name="index"
|
||||
:img-src="rec.img"
|
||||
:alt="rec.alt"
|
||||
class="carousel_slide">
|
||||
<div class="absolute-bottom custom-caption" style="margin-bottom: 70px">
|
||||
<div class="text-h5"><span
|
||||
class="text-h6 text-grey-1 shadow-max">{{index + 1}}. </span><span
|
||||
class="text-h6 text-grey-2 shadow">{{rec.title}}</span></div>
|
||||
<div class="text-subtitle1"><span class="text-grey-4 shadow">{{rec.subtitle}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</q-carousel-slide>
|
||||
</q-carousel>
|
||||
</section>
|
||||
<div v-if="!tools.isMobile()" style="margin: 60px 60px;"></div>
|
||||
|
||||
<COpenStreetMap :imgmap="getValDb('IMGMAP', false)" :urlmap="getValDb('URLMAP', false)" :title="getValDb('MAP_TITLE', false)"
|
||||
:coordinates="getValDb('COORD_MAP_1', false)" :coord_big="getValDb('COORD_MAP_BIG', false)">
|
||||
|
||||
</COpenStreetMap>
|
||||
|
||||
<div class="q-ma-md"></div>
|
||||
</div>
|
||||
</CMyPage>
|
||||
</q-page>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./home_tdv.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import './home_tdv.scss';
|
||||
</style>
|
||||
@@ -1,4 +1,4 @@
|
||||
APP_VERSION="0.6.1"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="13"
|
||||
DIRECTORY_LOCAL="newfreeplanet"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
APP_VERSION="0.6.1"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="13"
|
||||
DIRECTORY_LOCAL=newfreeplanet
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
APP_VERSION="0.5.28"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="16"
|
||||
APP_ID="13"
|
||||
DIRECTORY_LOCAL=newfreeplanet
|
||||
DIRECTORY_SERVER=test.freeplanet_serverside
|
||||
SERVERDIR_WEBSITE="test.kolibrilab.it"
|
||||
SERVERDIR_WEBSITE="test.riso.app"
|
||||
SERVERPW_WEBSITE="pwdadmin@1AOK"
|
||||
APP_URL="https://test.kolibrilab.it"
|
||||
APP_URL="https://test.riso.app"
|
||||
URL_FACEBOOK=""
|
||||
PROVA_PAOLO=""
|
||||
LANG_DEFAULT="it"
|
||||
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
|
||||
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
|
||||
MONGODB_HOST="https://test.freeplanet.app:3001"
|
||||
LOGO_REG='kolibrilab-logo-full.png'
|
||||
LOGO_REG='riso-logo-full.png'
|
||||
TEST_NAME=""
|
||||
TEST_SURNAME=""
|
||||
TEST_EMAIL=""
|
||||
|
||||
@@ -31,6 +31,7 @@ const msg_website_it = {
|
||||
mygood2: 'mygood2',
|
||||
fundraising: 'Sostieni il Progetto',
|
||||
notifs: 'Configura le Notifiche',
|
||||
unsubscribe: 'Disiscriviti',
|
||||
test: 'Test',
|
||||
projects: 'Progetti',
|
||||
report: 'Report Ore',
|
||||
@@ -51,6 +52,8 @@ const msg_website_it = {
|
||||
presentazione2: 'Presentazione',
|
||||
invita: 'Invita Persone',
|
||||
SignUp: 'Modulo di Registrazione:',
|
||||
SignUpCollettivo: 'Reg. Collettiva:',
|
||||
SignUpCollettivo2: 'Registrazione Collettiva:',
|
||||
need_Telegram: 'Per poter utilizzare la Piattaforma occorre avere <a href="https://play.google.com/store/apps/details?id=org.telegram.messenger" target="_blank">Telegram</a> installato<br>',
|
||||
Registrazione_Con_Bot: '1) Copia questo username cliccandoci sopra:',
|
||||
SignUpIscrizione: 'Diventa Socio CNM',
|
||||
@@ -59,6 +62,9 @@ const msg_website_it = {
|
||||
SignUp3: 'Reg',
|
||||
SignUp4: 'Reg',
|
||||
SignUp5: 'Reg',
|
||||
SignUp6: 'Registrati',
|
||||
SignUp7: 'Registra',
|
||||
SignUp11: 'Registra',
|
||||
SignUpBot: 'Registrati con Telegram',
|
||||
SignIn: 'Login',
|
||||
status: 'Statistiche',
|
||||
@@ -91,27 +97,6 @@ const msg_website_it = {
|
||||
projectsShared: 'Condivisi da me',
|
||||
myprojects: 'Privati',
|
||||
favproj: 'Favoriti',
|
||||
statusreg: {
|
||||
reg: 'Partecipanti',
|
||||
verifieds: 'Verificati',
|
||||
online_today: 'On Line Oggi',
|
||||
autorizzati: 'Autorizzati',
|
||||
autorizzare: 'In attesa di Abilitazione',
|
||||
passeggeri: 'Passeggeri Navi',
|
||||
giainlista: 'Gia in Lista',
|
||||
newreg: 'Registrati',
|
||||
onlineusers: 'OnLine',
|
||||
diffusori: 'Diffusori',
|
||||
nationality: 'Nazionalità',
|
||||
nationality_born: 'Nazione di Nascita',
|
||||
verified: 'Verificata',
|
||||
nonverified: 'Non Verificata',
|
||||
req7: 'Con 5 passi entri nella lista d\'Imbarco',
|
||||
req9: 'Con 7 passi aiuti {sitename} a Crescere!',
|
||||
req: 'Passi',
|
||||
people: 'Inv.',
|
||||
peoplelegend: 'Numero d\'Invitati',
|
||||
},
|
||||
admin_ecommerce: 'ECommerce',
|
||||
ecommerce: 'Prodotti',
|
||||
ecommerce_menu: 'ECommerce1',
|
||||
@@ -207,27 +192,16 @@ const msg_website_it = {
|
||||
+ '<li>👥 Aiutando a creare Gruppi Territoriali nella vostra città, impegnandosi a realizzare progetti per il Bene Comune, in onore ai principi Amorevoli e di condivisione.</li>'
|
||||
+ '<li>🌱 Sostenendo le persone attorno a voi, e rispettando la nostra vera Casa: Madre Natura e Tutti gli Esseri Viventi. ❤️</li>'
|
||||
+ '<li>👨🏻💻 Con una <strong>piccola donazione</strong> per le spese dei Server, manutenzione e per i continui sviluppi e miglioramenti</li></ul>' +
|
||||
'1) Tramite <strong>Paypal</strong>:<br>' +
|
||||
'<div style="font-size: 1.5rem; background-color: white; color: blue; border: solid 2px #f00; margin: 10px; padding: 10px; border-radius: 10px; " ' +
|
||||
'class="row justify-around">' +
|
||||
'<span><a href="https://paypal.me/paoloarena/1" target="_blank">1€</a></span>' +
|
||||
'<span><a href="https://paypal.me/paoloarena/2" target="_blank">2€</a></span>' +
|
||||
'<span><a href="https://paypal.me/paoloarena/5" target="_blank">5€</a></span>' +
|
||||
'<span><a href="https://paypal.me/paoloarena/10" target="_blank">10€</a></span>' +
|
||||
'<span><a href="https://paypal.me/paoloarena" target="_blank">scegli</a></span>' +
|
||||
'</div><em>clicca sull\'importo per fare una <strong>donazione</strong> </em><br>' +
|
||||
'1) Tramite <strong><a href="https://paypal.me/paoloarena" target="_blank">Paypal</a></strong>:<br>' +
|
||||
'<br>2) Tramite <strong>Satispay</strong>: <a href="https://www.satispay.com/app/match/link/money-box/S6Y-SVN--62712D42-35B0-4BB9-8511-410C2AB8CD45" target="_blank">Clicca qui</a><br>' +
|
||||
'<div style="font-size: 1rem; background-color: white; color: blue; border: solid 2px #f00; margin: 5px; padding: 5px; border-radius: 10px; " ' +
|
||||
'class="row justify-around">' +
|
||||
'Se ancora non hai Satispay <a href="https://www.satispay.com/promo/PAOLOARENA4">Richiedila cliccando qui</a></br>' +
|
||||
'E\' consigliata se hai un conto bancario come alternativa alla costosa carta di credito/debito</br>' +
|
||||
'👉🏻 <strong>Registrandoti entrambi riceviamo un Bonus di 5 €</strong></br>' +
|
||||
'</div>' +
|
||||
'<br>3) Tramite <strong>Bonifico Bancario</strong>:<br>' +
|
||||
'(Scrivi a Surya (<a href="mailto:surya@riso.app">surya@riso.app</a>) per ricevere le coordinate</br>' +
|
||||
'(Scrivi a Surya (<a href="https://t.me/surya1977">@surya1977</a>) per le coordinate</br>' +
|
||||
'' +
|
||||
'4) In alternativa scegli tu una forma di scambio da donare a Paolo (per scrivergli su Telegram: <a href="https://t.me/surya1977" target="_blank">Surya Paolo</a>)<br />' +
|
||||
'<span style="color: red; font-size: 2rem;">❤</span> Sono graditi messaggi sia di suggerimenti che di apprezzamenti.<br>' +
|
||||
'4) In alternativa scegli tu una forma di Dono <br />' +
|
||||
'Grazie Mille per l\'Aiuto ed il Supporto' +
|
||||
'<br>',
|
||||
},
|
||||
@@ -240,7 +214,7 @@ const msg_website_it = {
|
||||
free: {
|
||||
title: 'Gratuita, Open Source e Niente Pubblicità',
|
||||
descr: 'Questa App <strong>non è in vendita</strong>, non ha scopi commerciali, quindi <strong>non ha prezzo</strong> e nessun dato contenuto in esso verrà mai venduto, in quanto appartiene a <strong>Tutti Noi</strong> ed a nessuno in particolare.<br>Chiunque potrá utilizzarla e beneficiarne da essa.<br>' +
|
||||
'<em>Progetto Open Source su <a href="https://github.com/paoloar77/newfreeplanet" target="_blank">GitHub</a>.</em><br><br>'
|
||||
'<em>Progetto Open Source su <a href="https://gitlab.com/surya89" target="_blank">GitLab</a>.</em><br><br>'
|
||||
+ '<strong>Grazie a Tutti per il sostegno</strong>. ',
|
||||
},
|
||||
titlecontatti: 'Contatti',
|
||||
|
||||
@@ -101,6 +101,17 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},
|
||||
{
|
||||
active: site.confpages && site.confpages.enableCircuits,
|
||||
order: 16,
|
||||
path: '/circuits',
|
||||
materialIcon: 'fas fa-coins',
|
||||
name: 'mypages.circuits',
|
||||
component: () => import('@/views/user/mycircuits/mycircuits.vue'),
|
||||
meta: { requiresAuth: true },
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
order: 20,
|
||||
@@ -112,17 +123,6 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
order: 100,
|
||||
path: '/presentazione',
|
||||
materialIcon: 'fas fa-info',
|
||||
name: 'pages.presentazione',
|
||||
component: () => import('@src/root/presentazione/presentazione.vue'),
|
||||
reqauth: false,
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
order: 120,
|
||||
@@ -150,7 +150,7 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
order: 130,
|
||||
path: '/friends',
|
||||
materialIcon: 'fas fa-user-friends',
|
||||
name: 'mypages.friends',
|
||||
name: 'mypages.iscritti',
|
||||
component: () => import('@/views/user/myfriends/myfriends.vue'),
|
||||
meta: { requiresAuth: true },
|
||||
inmenu: true,
|
||||
@@ -165,18 +165,7 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
component: () => import('@/views/user/mygroups/mygroups.vue'),
|
||||
meta: { requiresAuth: true },
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
},
|
||||
{
|
||||
active: site.confpages && site.confpages.enableCircuits,
|
||||
order: 133,
|
||||
path: '/circuits',
|
||||
materialIcon: 'fas fa-coins',
|
||||
name: 'mypages.circuits',
|
||||
component: () => import('@/views/user/mycircuits/mycircuits.vue'),
|
||||
meta: { requiresAuth: true },
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
infooter: false,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
@@ -199,6 +188,14 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
inmenu: false,
|
||||
infooter: false,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
path: '/separator',
|
||||
name: 'separator',
|
||||
order: 140,
|
||||
isseparator: true,
|
||||
inmenu: true,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
order: 130,
|
||||
@@ -250,8 +247,8 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
materialIcon: 'fas fa-hand-holding-heart',
|
||||
name: 'pages.fundraising',
|
||||
component: () => import('@src/root/fundraising/fundraising.vue'),
|
||||
inmenu: true,
|
||||
infooter: true,
|
||||
inmenu: false,
|
||||
infooter: false,
|
||||
},
|
||||
{
|
||||
active: true,
|
||||
@@ -261,8 +258,8 @@ function getDynamicPages(site: ISites): IListRoutes[] {
|
||||
name: 'ris.calendario_eventi_riso',
|
||||
component: () => import('@/root/calendarioeventi/calendarioeventi.vue'),
|
||||
extraclass: 'isCalendar',
|
||||
inmenu: true,
|
||||
infooter: true
|
||||
inmenu: false,
|
||||
infooter: false
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "riso",
|
||||
"version": "0.5.3",
|
||||
"version": "0.6.1",
|
||||
"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": "Paolo Arena",
|
||||
@@ -22,48 +22,48 @@
|
||||
"generate-sw": "workbox generateSW workbox-config.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"@quasar/extras": "^1.15.6",
|
||||
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.13",
|
||||
"@vue-leaflet/vue-leaflet": "^0.6.1",
|
||||
"@vue/compat": "^3.2.45",
|
||||
"@vue/compiler-sfc": "^3.2.45",
|
||||
"@quasar/extras": "^1.16.7",
|
||||
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.16",
|
||||
"@vue-leaflet/vue-leaflet": "^0.9.0",
|
||||
"@vue/compat": "^3.2.47",
|
||||
"@vue/compiler-sfc": "^3.2.47",
|
||||
"@vue/eslint-config-standard": "7.0.0",
|
||||
"@vuelidate/core": "^2.0.0",
|
||||
"@vuelidate/validators": "^2.0.0",
|
||||
"acorn": "^8.8.1",
|
||||
"@vuelidate/core": "^2.0.2",
|
||||
"@vuelidate/validators": "^2.0.2",
|
||||
"acorn": "^8.8.2",
|
||||
"animate.css": "^4.1.1",
|
||||
"autoprefixer": "^10.4.13",
|
||||
"axios": "^1.2.0",
|
||||
"autoprefixer": "^10.4.14",
|
||||
"axios": "^1.3.5",
|
||||
"bcryptjs": "^2.4.3",
|
||||
"chart.js": "^3.9.1",
|
||||
"core-js": "^3.26.1",
|
||||
"chart.js": "3.9.1",
|
||||
"core-js": "^3.30.0",
|
||||
"crypto": "^1.0.1",
|
||||
"date-fns": "^2.29.3",
|
||||
"dotenv": "^16.0.3",
|
||||
"echarts": "^5.3.3",
|
||||
"echarts": "5.4.2",
|
||||
"eslint-plugin-quasar": "^1.1.0",
|
||||
"eslint-plugin-standard": "^5.0.0",
|
||||
"graphql": "^16.6.0",
|
||||
"graphql-tag": "^2.12.6",
|
||||
"gsap": "^3.11.3",
|
||||
"jquery": "^3.6.1",
|
||||
"gsap": "^3.11.5",
|
||||
"jquery": "^3.6.4",
|
||||
"js-cookie": "^3.0.1",
|
||||
"localforage": "^1.10.0",
|
||||
"lodash": "^4.17.21",
|
||||
"normalize.css": "^8.0.1",
|
||||
"npm": "^9.1.2",
|
||||
"npm": "^9.6.4",
|
||||
"nprogress": "^0.2.0",
|
||||
"pinia": "^2.0.27",
|
||||
"pinia": "^2.0.33",
|
||||
"prerender-spa-plugin": "^3.4.0",
|
||||
"quasar": "^2.10.2",
|
||||
"quasar": "^2.12.07",
|
||||
"quasar-extras": "^2.0.9",
|
||||
"register-service-worker": "^1.7.2",
|
||||
"vee-validate": "^4.7.3",
|
||||
"vue": "^3.2.45",
|
||||
"typescript-eslint": "^0.0.1-alpha.0",
|
||||
"vee-validate": "^4.8.4",
|
||||
"vue": "^3.2.47",
|
||||
"vue-chart-3": "^3.1.8",
|
||||
"vue-class-component": "^8.0.0-rc.1",
|
||||
"vue-country-code": "^1.1.3",
|
||||
"vue-echarts": "^6.2.3",
|
||||
"vue-echarts": "^6.5.4",
|
||||
"vue-i18n": "^9.2.2",
|
||||
"vue-idb": "^0.2.0",
|
||||
"vue-loader": "^17.0.1",
|
||||
@@ -72,6 +72,7 @@
|
||||
"vue-scroll-reveal": "^1.0.11",
|
||||
"vue-social-sharing": "^4.0.0-alpha4",
|
||||
"vue-svgicon": "^4.0.0-alpha.3",
|
||||
"vue-timeago3": "^2.3.0",
|
||||
"vue2-dragula": "^2.5.5",
|
||||
"vuex": "^4.1.0",
|
||||
"vuex-router-sync": "^6.0.0-rc.1"
|
||||
@@ -81,56 +82,58 @@
|
||||
"@types/bcryptjs": "^2.4.2",
|
||||
"@types/dotenv": "^8.2.0",
|
||||
"@types/googlemaps": "^3.43.3",
|
||||
"@types/jest": "^29.2.3",
|
||||
"@types/js-cookie": "^3.0.2",
|
||||
"@types/node": "18.11.9",
|
||||
"@types/jest": "^29.5.0",
|
||||
"@types/js-cookie": "^3.0.3",
|
||||
"@types/node": "18.15.11",
|
||||
"@types/nprogress": "^0.2.0",
|
||||
"@types/vue-tel-input": "^2.1.2",
|
||||
"@types/vuelidate": "^0.7.15",
|
||||
"@typescript-eslint/eslint-plugin": "^5.45.0",
|
||||
"@typescript-eslint/parser": "^5.45.0",
|
||||
"eslint": "^8.28.0",
|
||||
"eslint-config-prettier": "^8.5.0",
|
||||
"eslint-plugin-import": "^2.26.0",
|
||||
"@types/vuelidate": "^0.7.16",
|
||||
"@typescript-eslint/eslint-plugin": "^6.7.3",
|
||||
"@typescript-eslint/parser": "^6.7.2",
|
||||
"eslint": "^8.37.0",
|
||||
"eslint-config-prettier": "^8.8.0",
|
||||
"eslint-plugin-import": "^2.27.5",
|
||||
"eslint-plugin-node": "^11.1.0",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-vue": "^9.8.0",
|
||||
"eslint-plugin-vue": "^9.10.0",
|
||||
"file-loader": "^6.2.0",
|
||||
"html-webpack-plugin": "^5.5.0",
|
||||
"http-proxy-middleware": "^2.0.6",
|
||||
"jest": "^29.3.1",
|
||||
"jest": "^29.5.0",
|
||||
"json-loader": "^0.5.7",
|
||||
"node-sass": "7.0.1",
|
||||
"npm-check-updates": "^16.4.3",
|
||||
"node-sass": "^9.0.0",
|
||||
"npm-check-updates": "^16.10.7",
|
||||
"optimize-css-assets-webpack-plugin": "^6.0.1",
|
||||
"postcss": "^8.4.19",
|
||||
"postcss-loader": "^7.0.2",
|
||||
"sass-loader": "^13.2.0",
|
||||
"postcss": "^8.4.21",
|
||||
"postcss-loader": "^7.2.4",
|
||||
"sass-loader": "^13.2.2",
|
||||
"strip-ansi": "=7.0.1",
|
||||
"ts-jest": "^29.0.3",
|
||||
"ts-loader": "^9.4.1",
|
||||
"ts-jest": "^29.1.0",
|
||||
"ts-loader": "^9.4.2",
|
||||
"tslint": "^6.1.3",
|
||||
"tslint-config-standard": "^9.0.0",
|
||||
"tslint-loader": "^3.5.4",
|
||||
"typescript": "^4.9.3",
|
||||
"typescript": "^5.2.2",
|
||||
"vue-cli-plugin-element-ui": "^1.1.4",
|
||||
"vueify": "^9.4.1",
|
||||
"webpack": "^5.75.0",
|
||||
"webpack": "^5.78.0",
|
||||
"workbox-webpack-plugin": "^6.5.4"
|
||||
},
|
||||
"browser": {
|
||||
"crypto": false
|
||||
},
|
||||
"browserslist": [
|
||||
"last 20 Chrome versions",
|
||||
"last 20 Firefox versions",
|
||||
"last 4 Edge versions",
|
||||
"last 20 Safari versions",
|
||||
"last 20 Android versions",
|
||||
"last 20 ChromeAndroid versions",
|
||||
"last 20 FirefoxAndroid versions",
|
||||
"last 10 iOS versions",
|
||||
"last 8 Opera versions"
|
||||
"last 100 Chrome versions",
|
||||
"last 40 Firefox versions",
|
||||
"last 20 Edge versions",
|
||||
"last 55 Safari versions",
|
||||
"last 90 Android versions",
|
||||
"last 250 ChromeAndroid versions",
|
||||
"last 60 FirefoxAndroid versions",
|
||||
"last 35 iOS versions",
|
||||
"last 10 Opera versions",
|
||||
"> 0.03%",
|
||||
"not dead"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 16.14.0",
|
||||
|
||||
@@ -37,7 +37,7 @@ module.exports = configure((ctx) => ({
|
||||
// --> boot files are part of "main.js"
|
||||
// https://v2.quasar.dev/quasar-cli/boot-files
|
||||
// boot: ['vue-i18n', 'vue-meta', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'vue-idb', 'dragula', 'guard'],
|
||||
boot: ['i18n', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'calendar', 'social-sharing'],
|
||||
boot: ['i18n', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'calendar', 'social-sharing', 'timeago'],
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css
|
||||
css: [
|
||||
@@ -97,7 +97,7 @@ module.exports = configure((ctx) => ({
|
||||
|
||||
chainWebpack(chain, { isServer, isClient }) {
|
||||
chain.resolve.alias
|
||||
// .set('myalias', path.resolve(__dirname, './src/somefolder'))
|
||||
// .set('myalias', path.resolve(__dirname, './src/somefolder'))
|
||||
.set('@', helpers.root('src'))
|
||||
.set('@components', helpers.root('src/components/index.ts'))
|
||||
.set('@boot', helpers.root('src/boot/*'))
|
||||
@@ -238,8 +238,7 @@ module.exports = configure((ctx) => ({
|
||||
'Ripple',
|
||||
'ClosePopup',
|
||||
],
|
||||
// Quasar plugins
|
||||
plugins: [
|
||||
_plugins: [
|
||||
'Meta',
|
||||
'Dialog',
|
||||
'Notify',
|
||||
@@ -247,13 +246,25 @@ module.exports = configure((ctx) => ({
|
||||
'Loading',
|
||||
'AppVisibility',
|
||||
],
|
||||
get plugins_1() {
|
||||
return this._plugins;
|
||||
},
|
||||
set plugins_1(value) {
|
||||
this._plugins = value;
|
||||
},
|
||||
get plugins() {
|
||||
return this._plugins;
|
||||
},
|
||||
set plugins(value) {
|
||||
this._plugins = value;
|
||||
},
|
||||
iconSet: 'fontawesome-v5',
|
||||
lang: 'it', // Quasar language
|
||||
},
|
||||
|
||||
// animations: 'all', // --- includes all animations
|
||||
animations: 'all', // --- includes all animations
|
||||
// https://v2.quasar.dev/options/animations
|
||||
animations: [],
|
||||
// animations: [],
|
||||
|
||||
// https://v2.quasar.dev/quasar-cli/developing-ssr/configuring-ssr
|
||||
ssr: {
|
||||
@@ -282,7 +293,7 @@ module.exports = configure((ctx) => ({
|
||||
pwa: {
|
||||
workboxPluginMode: 'InjectManifest', // 'GenerateSW' or 'InjectManifest'
|
||||
workboxOptions: {}, // only for GenerateSW
|
||||
extendGenerateSWOptions (cfg) {
|
||||
extendGenerateSWOptions(cfg) {
|
||||
cfg.skipWaiting = false
|
||||
cfg.clientsClaim = false
|
||||
},
|
||||
@@ -299,8 +310,11 @@ module.exports = configure((ctx) => ({
|
||||
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.',
|
||||
display: 'standalone',
|
||||
orientation: 'portrait',
|
||||
background_color: '#ffffff',
|
||||
background_color: '#fff',
|
||||
theme_color: '#027be3',
|
||||
scope: "/",
|
||||
id: "/?homescreen=1",
|
||||
start_url: "/?homescreen=1",
|
||||
icons: [
|
||||
{
|
||||
src: 'images/riso-android-icon-512x512.png',
|
||||
@@ -348,6 +362,10 @@ module.exports = configure((ctx) => ({
|
||||
type: 'image/png',
|
||||
},
|
||||
],
|
||||
related_applications: [{
|
||||
"platform": "webapp",
|
||||
"url": "https://www.riso.app/manifest.json"
|
||||
}]
|
||||
},
|
||||
},
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
APP_VERSION="0.6.1"
|
||||
APP_VERSION="1.0.20"
|
||||
SERVICE_WORKER_FILE="service-worker.js"
|
||||
APP_ID="14"
|
||||
DIRECTORY_LOCAL="newfreeplanet"
|
||||
|
||||
@@ -15,6 +15,7 @@ const baseConfig = {
|
||||
filename: '[nametranslate].js',
|
||||
publicPath: '/',
|
||||
path: path.resolve(__dirname, 'dist'),
|
||||
chunkFormat: 'commonjs' // or 'module' as needed
|
||||
},
|
||||
resolve: {
|
||||
extensions: [
|
||||
|
||||
@@ -18,7 +18,7 @@ sleep 1
|
||||
npm run buildpwa
|
||||
|
||||
echo "Sincronizzazione $SERVERDIR_WEBSITE in remoto..."
|
||||
rsync -e 'ssh -p 5522' -a --exclude 'upload' dist/pwa/ root@risosrv:/home/$SERVERDIR_WEBSITE
|
||||
rsync -e 'ssh -p 5522' -a dist/pwa/ root@risosrv:/home/$SERVERDIR_WEBSITE
|
||||
|
||||
cp .env.prod.bak .env.production
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ if [[ $risposta == "Y" || $risposta == "y" ]]; then
|
||||
echo "Sincronizzazione in remoto..."
|
||||
|
||||
echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..."
|
||||
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a dist/spa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
|
||||
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a --exclude 'upload' dist/spa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
|
||||
echo "Finito $SERVERDIR_WEBSITE "
|
||||
|
||||
fi
|
||||
|
||||
@@ -19,7 +19,7 @@ sleep 1
|
||||
npm run buildspa
|
||||
|
||||
echo "Sincronizzazione $SERVERDIR_WEBSITE in remoto..."
|
||||
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a dist/spa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
|
||||
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a --exclude 'upload' dist/spa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
|
||||
|
||||
cp .env.prod.bak .env.production
|
||||
|
||||
|
||||
26
inizia_fioredellavita.riso.app.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
site=fioredellavita.riso.app
|
||||
|
||||
if [ -d "__freeplanet.app" ]; then
|
||||
rmdir __freeplanet.app
|
||||
fi
|
||||
|
||||
if [ -d "__riso.app" ]; then
|
||||
rmdir __riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__fioredellavita.riso.app" ]; then
|
||||
rmdir __fioredellavita.riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__popolodelnuovomondo.app" ]; then
|
||||
rmdir __popolodelnuovomondo.app
|
||||
fi
|
||||
|
||||
if [ -d "__terradellavisione.app" ]; then
|
||||
rmdir __terradellavisione.app
|
||||
fi
|
||||
|
||||
|
||||
source __inizia.sh
|
||||
@@ -18,6 +18,10 @@ if [ -d "__riso.app" ]; then
|
||||
rmdir __riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__fioredellavita.riso.app" ]; then
|
||||
rmdir __fioredellavita.riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__popolodelnuovomondo.app" ]; then
|
||||
rmdir __popolodelnuovomondo.app
|
||||
fi
|
||||
|
||||
26
inizia_piuchebuono.app.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
site=piuchebuono.app
|
||||
|
||||
if [ -d "__freeplanet.app" ]; then
|
||||
rmdir __freeplanet.app
|
||||
fi
|
||||
|
||||
if [ -d "__riso.app" ]; then
|
||||
rmdir __riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__fioredellavita.riso.app" ]; then
|
||||
rmdir __fioredellavita.riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__popolodelnuovomondo.app" ]; then
|
||||
rmdir __popolodelnuovomondo.app
|
||||
fi
|
||||
|
||||
if [ -d "__terradellavisione.app" ]; then
|
||||
rmdir __terradellavisione.app
|
||||
fi
|
||||
|
||||
|
||||
source __inizia.sh
|
||||
@@ -6,6 +6,10 @@ if [ -d "__freeplanet.app" ]; then
|
||||
rmdir __freeplanet.app
|
||||
fi
|
||||
|
||||
if [ -d "__fioredellavita.riso.app" ]; then
|
||||
rmdir __fioredellavita.riso.app
|
||||
fi
|
||||
|
||||
if [ -d "__riso.app" ]; then
|
||||
rmdir __riso.app
|
||||
fi
|
||||
|
||||
2
now.txt
@@ -1 +1 @@
|
||||
TERMINA DI LAVORARE SU arcadei.it: (Sovrascrivo !)
|
||||
TERMINA DI LAVORARE SU fioredellavita.riso.app: (Sovrascrivo !)
|
||||
|
||||
143
package copy_nuovo.json
Executable file
@@ -0,0 +1,143 @@
|
||||
{
|
||||
"name": "riso",
|
||||
"version": "0.6.1",
|
||||
"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": "Paolo Arena",
|
||||
"private": true,
|
||||
"keywords": [],
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"dev": "quasar dev",
|
||||
"build": "quasar build",
|
||||
"buildpwa": "quasar build -m pwa",
|
||||
"buildspa": "quasar build -m spa",
|
||||
"lint": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./",
|
||||
"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 NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m pwa",
|
||||
"spa": "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"
|
||||
},
|
||||
"dependencies": {
|
||||
"@quasar/extras": "^1.16.7",
|
||||
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.16",
|
||||
"@vue-leaflet/vue-leaflet": "^0.10.1",
|
||||
"@vue/compat": "^3.3.4",
|
||||
"@vue/compiler-sfc": "^3.3.4",
|
||||
"@vue/eslint-config-standard": "7.0.0",
|
||||
"@vuelidate/core": "^2.0.3",
|
||||
"@vuelidate/validators": "^2.0.4",
|
||||
"acorn": "^8.10.0",
|
||||
"animate.css": "^4.1.1",
|
||||
"autoprefixer": "^10.4.16",
|
||||
"axios": "^1.5.1",
|
||||
"bcryptjs": "^2.4.3",
|
||||
"chart.js": "3.9.1",
|
||||
"core-js": "^3.32.2",
|
||||
"crypto": "^1.0.1",
|
||||
"date-fns": "^2.30.0",
|
||||
"dotenv": "^16.3.1",
|
||||
"echarts": "5.4.3",
|
||||
"eslint-plugin-quasar": "^1.1.0",
|
||||
"eslint-plugin-standard": "^5.0.0",
|
||||
"graphql": "^16.8.1",
|
||||
"graphql-tag": "^2.12.6",
|
||||
"gsap": "^3.12.2",
|
||||
"jquery": "^3.7.1",
|
||||
"js-cookie": "^3.0.5",
|
||||
"localforage": "^1.10.0",
|
||||
"lodash": "^4.17.21",
|
||||
"normalize.css": "^8.0.1",
|
||||
"npm": "^10.1.0",
|
||||
"nprogress": "^0.2.0",
|
||||
"pinia": "^2.1.6",
|
||||
"prerender-spa-plugin": "^3.4.0",
|
||||
"quasar": "^2.12.7",
|
||||
"quasar-extras": "^2.0.9",
|
||||
"register-service-worker": "^1.7.2",
|
||||
"vee-validate": "^4.11.7",
|
||||
"vue": "^3.3.4",
|
||||
"vue-chart-3": "^3.1.8",
|
||||
"vue-class-component": "^8.0.0-rc.1",
|
||||
"vue-country-code": "^1.1.3",
|
||||
"vue-echarts": "^6.6.1",
|
||||
"vue-i18n": "^9.4.1",
|
||||
"vue-idb": "^0.2.0",
|
||||
"vue-loader": "^17.2.2",
|
||||
"vue-property-decorator": "^10.0.0-rc.3",
|
||||
"vue-router": "^4.2.5",
|
||||
"vue-scroll-reveal": "^2.1.0",
|
||||
"vue-social-sharing": "^4.0.0-alpha4",
|
||||
"vue-svgicon": "^4.0.0-alpha.3",
|
||||
"vue-timeago3": "^2.3.1",
|
||||
"vue2-dragula": "^2.5.5",
|
||||
"vuex": "^4.1.0",
|
||||
"vuex-router-sync": "^6.0.0-rc.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@quasar/app": "^3.3.3",
|
||||
"@types/bcryptjs": "^2.4.4",
|
||||
"@types/dotenv": "^8.2.0",
|
||||
"@types/google.maps": "^1.0.0",
|
||||
"@types/jest": "^29.5.5",
|
||||
"@types/js-cookie": "^3.0.4",
|
||||
"@types/node": "20.7.1",
|
||||
"@types/nprogress": "^0.2.1",
|
||||
"@types/vue-tel-input": "^2.1.3",
|
||||
"@types/vuelidate": "^0.7.19",
|
||||
"@typescript-eslint/eslint-plugin": "^6.7.3",
|
||||
"@typescript-eslint/parser": "^6.7.3",
|
||||
"eslint": "^8.50.0",
|
||||
"eslint-config-prettier": "^9.0.0",
|
||||
"eslint-plugin-import": "^2.28.1",
|
||||
"eslint-plugin-node": "^11.1.0",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-vue": "^9.17.0",
|
||||
"file-loader": "^6.2.0",
|
||||
"html-webpack-plugin": "^5.5.3",
|
||||
"http-proxy-middleware": "^2.0.6",
|
||||
"jest": "^29.7.0",
|
||||
"json-loader": "^0.5.7",
|
||||
"node-sass": "7.0.0",
|
||||
"npm-check-updates": "^16.14.4",
|
||||
"optimize-css-assets-webpack-plugin": "^6.0.1",
|
||||
"postcss": "^8.4.30",
|
||||
"postcss-loader": "^7.3.3",
|
||||
"sass-loader": "^13.3.2",
|
||||
"strip-ansi": "=7.1.0",
|
||||
"ts-jest": "^29.1.1",
|
||||
"ts-loader": "^9.4.4",
|
||||
"tslint": "^6.1.3",
|
||||
"tslint-config-standard": "^9.0.0",
|
||||
"tslint-loader": "^3.5.4",
|
||||
"typescript": "^5.2.2",
|
||||
"vue-cli-plugin-element-ui": "^1.1.4",
|
||||
"vueify": "^9.4.1",
|
||||
"webpack": "^5.78.0",
|
||||
"workbox-webpack-plugin": "^6.5.4"
|
||||
},
|
||||
"browser": {
|
||||
"crypto": false
|
||||
},
|
||||
"browserslist": [
|
||||
"last 80 Chrome versions",
|
||||
"last 40 Firefox versions",
|
||||
"last 20 Edge versions",
|
||||
"last 55 Safari versions",
|
||||
"last 90 Android versions",
|
||||
"last 250 ChromeAndroid versions",
|
||||
"last 60 FirefoxAndroid versions",
|
||||
"last 30 iOS versions",
|
||||
"last 10 Opera versions",
|
||||
"> 0.03%",
|
||||
"not dead"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18.18.0",
|
||||
"npm": ">= 6.14.8",
|
||||
"yarn": ">= 1.21.1"
|
||||
}
|
||||
}
|
||||
28
package.json
@@ -22,7 +22,7 @@
|
||||
"generate-sw": "workbox generateSW workbox-config.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"@quasar/extras": "^1.16.2",
|
||||
"@quasar/extras": "^1.16.7",
|
||||
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.16",
|
||||
"@vue-leaflet/vue-leaflet": "^0.9.0",
|
||||
"@vue/compat": "^3.2.47",
|
||||
@@ -42,7 +42,6 @@
|
||||
"dotenv": "^16.0.3",
|
||||
"echarts": "5.4.2",
|
||||
"eslint-plugin-quasar": "^1.1.0",
|
||||
"eslint-plugin-standard": "^5.0.0",
|
||||
"graphql": "^16.6.0",
|
||||
"graphql-tag": "^2.12.6",
|
||||
"gsap": "^3.11.5",
|
||||
@@ -55,9 +54,10 @@
|
||||
"nprogress": "^0.2.0",
|
||||
"pinia": "^2.0.33",
|
||||
"prerender-spa-plugin": "^3.4.0",
|
||||
"quasar": "^2.11.10",
|
||||
"quasar": "^2.12.07",
|
||||
"quasar-extras": "^2.0.9",
|
||||
"register-service-worker": "^1.7.2",
|
||||
"typescript-eslint": "^0.0.1-alpha.0",
|
||||
"vee-validate": "^4.8.4",
|
||||
"vue": "^3.2.47",
|
||||
"vue-chart-3": "^3.1.8",
|
||||
@@ -88,8 +88,8 @@
|
||||
"@types/nprogress": "^0.2.0",
|
||||
"@types/vue-tel-input": "^2.1.2",
|
||||
"@types/vuelidate": "^0.7.16",
|
||||
"@typescript-eslint/eslint-plugin": "^5.57.1",
|
||||
"@typescript-eslint/parser": "^5.57.1",
|
||||
"@typescript-eslint/eslint-plugin": "^6.7.3",
|
||||
"@typescript-eslint/parser": "^6.7.2",
|
||||
"eslint": "^8.37.0",
|
||||
"eslint-config-prettier": "^8.8.0",
|
||||
"eslint-plugin-import": "^2.27.5",
|
||||
@@ -101,7 +101,7 @@
|
||||
"http-proxy-middleware": "^2.0.6",
|
||||
"jest": "^29.5.0",
|
||||
"json-loader": "^0.5.7",
|
||||
"node-sass": "7.0.0",
|
||||
"node-sass": "^9.0.0",
|
||||
"npm-check-updates": "^16.10.7",
|
||||
"optimize-css-assets-webpack-plugin": "^6.0.1",
|
||||
"postcss": "^8.4.21",
|
||||
@@ -113,7 +113,7 @@
|
||||
"tslint": "^6.1.3",
|
||||
"tslint-config-standard": "^9.0.0",
|
||||
"tslint-loader": "^3.5.4",
|
||||
"typescript": "^5.0.3",
|
||||
"typescript": "^5.2.2",
|
||||
"vue-cli-plugin-element-ui": "^1.1.4",
|
||||
"vueify": "^9.4.1",
|
||||
"webpack": "^5.78.0",
|
||||
@@ -123,8 +123,18 @@
|
||||
"crypto": false
|
||||
},
|
||||
"browserslist": [
|
||||
"> 0.05%",
|
||||
"not dead"
|
||||
"last 80 Chrome versions",
|
||||
"last 40 Firefox versions",
|
||||
"last 10 Edge versions",
|
||||
"last 45 Safari versions",
|
||||
"last 80 Android versions",
|
||||
"last 120 ChromeAndroid versions",
|
||||
"last 30 FirefoxAndroid versions",
|
||||
"last 20 iOS versions",
|
||||
"last 10 Opera versions",
|
||||
"> 0.03%",
|
||||
"not dead",
|
||||
"fully supports es6-module"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 16.14.0",
|
||||
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 138 KiB |
|
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 5.8 KiB |
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 185 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 42 KiB |
BIN
public/images/riso-apple-icon.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
@@ -1 +0,0 @@
|
||||
/Users/suryapaolo/backups/upload
|
||||
@@ -5,7 +5,7 @@ source ./.env.test
|
||||
cp .env.test .env.production
|
||||
|
||||
echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..."
|
||||
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a dist/spa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
|
||||
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a --exclude 'upload' dist/spa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
|
||||
echo "Finito $SERVERDIR_WEBSITE"
|
||||
|
||||
cp .env.prod.bak .env.production
|
||||
|
||||
@@ -18,7 +18,7 @@ import { CacheableResponsePlugin } from 'workbox-cacheable-response'
|
||||
import { ExpirationPlugin } from 'workbox-expiration'
|
||||
|
||||
console.log(
|
||||
' [ VER-0.6.1 ] _---------________------ PAO: this is my custom service worker')
|
||||
' [ VER-0.5.4 ] _---------________------ PAO: this is my custom service worker')
|
||||
|
||||
importScripts('js/idb.js')
|
||||
importScripts('js/storage.js')
|
||||
@@ -36,7 +36,7 @@ let port = 3000
|
||||
if (self.location.hostname.startsWith('test')) {
|
||||
port = 3001
|
||||
}
|
||||
console.log('SW- app ver 0.6.1')
|
||||
console.log('SW- app ver 0.5.4')
|
||||
|
||||
const cfgenv = {
|
||||
serverweb: `${self.location.protocol}//${self.location.hostname}:${port}`,
|
||||
|
||||
@@ -15,6 +15,24 @@ export const shared_consts = {
|
||||
color: 'green',
|
||||
},
|
||||
},
|
||||
LIMIT_NOTIF_FOR_USER: 200,
|
||||
|
||||
CallFunz: {
|
||||
SOSTITUISCI: 345,
|
||||
AGGIUNGI_NUOVO_IMBARCO: 380,
|
||||
CANCELLA_IMBARCO: 385,
|
||||
DAMMI_PRIMO_UTENTE_LIBERO: 390,
|
||||
GET_VALBYTABLE: 400,
|
||||
SET_VALBYTABLE: 410,
|
||||
ZOOM_GIA_PARTECIPATO: 510,
|
||||
REGISTRATION: 6,
|
||||
RICHIESTA_GRUPPO: 10,
|
||||
RICHIESTA_AMICIZIA: 15,
|
||||
RICHIESTA_HANDSHAKE: 16,
|
||||
RICHIESTA_CIRCUIT: 20,
|
||||
RICHIESTA_FIDO: 25,
|
||||
ENTRA_RIS_ITALIA: 30,
|
||||
},
|
||||
|
||||
ELEMTYPE: {
|
||||
TITLE: 5,
|
||||
@@ -57,6 +75,7 @@ export const shared_consts = {
|
||||
BTN_LOGIN: 260,
|
||||
FOOTER: 270,
|
||||
PROFILETUTORIAL: 280,
|
||||
VISUVIDEOPROMOANDPDF: 290
|
||||
},
|
||||
|
||||
QUERYTYPE_MYGROUP: 1,
|
||||
@@ -133,6 +152,7 @@ export const shared_consts = {
|
||||
CIRCUITCMD: {
|
||||
REQ: 2000,
|
||||
SET: 2001,
|
||||
SETFIDO: 2005,
|
||||
REMOVE_FROM_MYLIST: 2144,
|
||||
REFUSE_REQ: 2145,
|
||||
CANCEL_REQ: 2146,
|
||||
@@ -170,14 +190,16 @@ export const shared_consts = {
|
||||
TABLES_MYHOSPS: 'myhosps',
|
||||
TABLES_MYGOODS: 'mygoods',
|
||||
TABLES_MYEVENTS: 'myevents',
|
||||
TABLES_CIRCUITS: 'circuits',
|
||||
TABLES_MYGROUPS: 'mygroups',
|
||||
|
||||
MYTABS: [{id: 0, table: 'none' },
|
||||
{id: 1, table: 'myskills'},
|
||||
{id: 2, table: 'mybachecas' },
|
||||
{id: 3, table: 'myhosps'} ,
|
||||
{id: 4, table: 'mygoods'},
|
||||
{id: 5, table: 'myevents'}
|
||||
],
|
||||
MYTABS: [{ id: 0, table: 'none' },
|
||||
{ id: 1, table: 'myskills' },
|
||||
{ id: 2, table: 'mybachecas' },
|
||||
{ id: 3, table: 'myhosps' },
|
||||
{ id: 4, table: 'mygoods' },
|
||||
{ id: 5, table: 'myevents' }
|
||||
],
|
||||
|
||||
TABLES_ENABLE_GETREC_BYID: ['mybachecas', 'myhosps'],
|
||||
|
||||
@@ -187,7 +209,7 @@ export const shared_consts = {
|
||||
TABLES_WITH_FILTER_FIELD: ['caldate'],
|
||||
TABLES_WITH_SPECIAL_FILTER: ['pub_to_share'],
|
||||
COL_WITH_FILTER_GTE: ['numMaxPeopleHosp'],
|
||||
TABLES_WITH_DATE: ['mybachecas', 'myhosps'],
|
||||
TABLES_WITH_DATE: ['mybachecas', 'myhosps'], // 'mybachecas'
|
||||
TABLES_WITH_SORTING: ['mybachecas', 'myhosps'],
|
||||
TABLES_REC_ID: ['skills', 'goods', 'subskills', 'myskills', 'mybachecas', 'myhosps', 'mygoods'],
|
||||
TABLES_FAVORITE_BOOKMARK: ['myskills', 'mygoods', 'mybachecas', 'myhosps'],
|
||||
@@ -201,11 +223,12 @@ export const shared_consts = {
|
||||
TABLES_SHOW_ADTYPE: ['myskills', 'mygoods'],
|
||||
|
||||
TABLES_VISU_LISTA_USER: ['myskills', 'mybachecas', 'myhosps', 'mygoods', 'users'],
|
||||
TABLES_FIELDS_DESCR_AND_CITY_AND_USER: ['myskills', 'mybachecas', 'myhosps', 'mygoods'],
|
||||
|
||||
TABLES_ORDER_DATE_UPDATED: ['myskills', 'myhosps', 'mygoods'],
|
||||
TABLES_ORDER_DESCR: ['mygroups'],
|
||||
|
||||
TABLES_VISU_IMG: ['myskills', 'mybachecas', 'myhosps', 'mygoods', 'mygroups'],
|
||||
TABLES_VISU_IMG: ['myskills', 'myhosps', 'mygoods', 'mygroups'],
|
||||
TABLES_DIRECTORY_A_PARTE: ['mygroups'],
|
||||
TABLES_WITH_ADMINS: ['mygroups', 'circuits'],
|
||||
TABLES_DIRECTORY_SINGLE_IMG: ['circuits'],
|
||||
@@ -215,6 +238,11 @@ export const shared_consts = {
|
||||
VISIB_ONLY_MANAGER: 2,
|
||||
VISIB_ONLY_ADMIN: 4,
|
||||
|
||||
CIRCUIT_CFG: {
|
||||
MULT_FIDO_USER: 2.0,
|
||||
MULT_FIDO_GROUP: 2.0,
|
||||
},
|
||||
|
||||
Visibility_Group: {
|
||||
PRIVATE: 1,
|
||||
HIDDEN: 2,
|
||||
@@ -226,6 +254,8 @@ export const shared_consts = {
|
||||
BOTTYPE_LINK: 2,
|
||||
BOTTYPE_TEXT: 3,
|
||||
BOTTYPE_MENU: 4,
|
||||
BOTTYPE_MARKDOWN: 5,
|
||||
BOTTYPE_BOTTONI_INLINE: 6,
|
||||
|
||||
CashType: {
|
||||
None: 0,
|
||||
@@ -263,6 +293,14 @@ export const shared_consts = {
|
||||
value: 4, // BOTTYPE_MENU
|
||||
label: 'Menu',
|
||||
},
|
||||
{
|
||||
value: 5,
|
||||
label: 'MarkDown',
|
||||
},
|
||||
{
|
||||
value: 6,
|
||||
label: 'Bottoni InLine',
|
||||
},
|
||||
],
|
||||
|
||||
Shippings: [
|
||||
@@ -644,6 +682,10 @@ export const shared_consts = {
|
||||
value: 'ONL',
|
||||
label: 'On Line',
|
||||
},
|
||||
{
|
||||
value: 'ITA',
|
||||
label: 'Italia',
|
||||
},
|
||||
],
|
||||
|
||||
Lang: [
|
||||
@@ -960,6 +1002,14 @@ export const shared_consts = {
|
||||
10,
|
||||
],
|
||||
|
||||
REACTIONS_FIELD:
|
||||
{
|
||||
numseen: 1,
|
||||
numbook: 1,
|
||||
numfav: 1,
|
||||
numattend: 1,
|
||||
},
|
||||
|
||||
OrderStatusStr: [
|
||||
{
|
||||
label: 'Nessuno',
|
||||
@@ -999,6 +1049,9 @@ export const shared_consts = {
|
||||
Notif_Reg_Bot_ToManagers: 1,
|
||||
Notif_Reg_Push_Admin: 2,
|
||||
Need_Aportador_On_DataReg_To_Verify_Reg: 4,
|
||||
AskInvitantesulBot: 8,
|
||||
AskUsernameSulBot: 16,
|
||||
registerUserWithBot: 32,
|
||||
},
|
||||
|
||||
MsgTeleg: {
|
||||
@@ -1023,6 +1076,7 @@ export const shared_consts = {
|
||||
NEW_ADV_MY_GROUPS: 8,
|
||||
NEW_ADV_MY_RIS_CIRCUIT: 16,
|
||||
NEW_ADV_SECTOR: 32,
|
||||
NEW_ADV_YOUR_PROVINCE: 64,
|
||||
},
|
||||
|
||||
StatusNotifs: {
|
||||
@@ -1066,10 +1120,13 @@ export const shared_consts = {
|
||||
TYPEDIR_BACHECA: 1,
|
||||
ID_BACHECA_NEW_GOOD: 1,
|
||||
ID_BACHECA_NEW_SERVICE: 2,
|
||||
ID_BACHECA_NEW_HOSP: 4,
|
||||
|
||||
TYPEDIR_EVENTS: 2,
|
||||
ID_EVENTS_NEW_REC: 1,
|
||||
ID_EVENTS_REMOVE_REC: 2,
|
||||
ID_EVENTS_ATTEND: 4,
|
||||
ID_EVENTS_SEND_MSG: 8,
|
||||
|
||||
TYPEDIR_FRIENDS: 3,
|
||||
ID_FRIENDS_NEW_REC: 1,
|
||||
@@ -1106,6 +1163,7 @@ export const shared_consts = {
|
||||
ID_CIRCUIT_SENDCOINSREQ_SENT: 4096,
|
||||
ID_CIRCUIT_COINS_ACCEPTED_SENT: 8192,
|
||||
ID_CIRCUIT_COINS_REFUSED_SENT: 16384,
|
||||
ID_CIRCUIT_SETFIDO: 32768,
|
||||
|
||||
TYPEDIR_BOOKING: 6,
|
||||
|
||||
@@ -1115,6 +1173,9 @@ export const shared_consts = {
|
||||
TYPEDIR_HANDSHAKE: 10,
|
||||
ID_HANDSHAKE_ACCEPTED: 2,
|
||||
|
||||
TYPEDIR_FAVORITE: 11,
|
||||
ID_FAVORITE_ADDED: 1,
|
||||
|
||||
TYPEDIR_TEST: 444,
|
||||
ID_TEST_NEW_REC: 1,
|
||||
},
|
||||
@@ -1148,6 +1209,22 @@ export const shared_consts = {
|
||||
{
|
||||
value: 2, // ID_BACHECA_NEW_SERVICE
|
||||
labeltrans: 'notifsid.bacheca_new_service',
|
||||
},
|
||||
{
|
||||
value: 4, // ID_BACHECA_NEW_HOSP
|
||||
labeltrans: 'notifsid.bacheca_new_hosp',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
value: 11, //
|
||||
labeltrans: 'typenotifs.favorite',
|
||||
descr: 'typenotifs.favorite_descr',
|
||||
icon: 'far fa-heart',
|
||||
list: [
|
||||
{
|
||||
value: 1, // ID_FAVORITE_ADDED
|
||||
labeltrans: 'notifsid.favorite_new',
|
||||
}
|
||||
],
|
||||
},
|
||||
@@ -1160,6 +1237,10 @@ export const shared_consts = {
|
||||
{
|
||||
value: 1, // ID_EVENTS_NEW_REC
|
||||
labeltrans: 'notifsid.events_new',
|
||||
},
|
||||
{
|
||||
value: 4, // ID_EVENTS_ATTEND
|
||||
labeltrans: 'notifsid.attend_new',
|
||||
}
|
||||
],
|
||||
},
|
||||
@@ -1215,6 +1296,11 @@ export const shared_consts = {
|
||||
labeltrans: 'notifs.warn_city',
|
||||
directory: 1,
|
||||
},*/
|
||||
{
|
||||
value: 64, // NEW_ADV_YOUR_PROVINCE
|
||||
labeltrans: 'notifs.warn_your_province',
|
||||
directory: 1,
|
||||
},
|
||||
{
|
||||
value: 2, // NEW_ADV_PROVINCE
|
||||
labeltrans: 'notifs.warn_province',
|
||||
@@ -1241,10 +1327,15 @@ export const shared_consts = {
|
||||
directory: 1,
|
||||
},
|
||||
{
|
||||
value: 1, //
|
||||
value: 1, // ID_EVENTS_NEW_REC
|
||||
labeltrans: 'notifs.new_event',
|
||||
directory: 2,
|
||||
},
|
||||
{
|
||||
value: 4, // ID_EVENTS_ATTEND
|
||||
labeltrans: 'notifs.new_attend',
|
||||
directory: 2,
|
||||
},
|
||||
{
|
||||
value: 1, //
|
||||
labeltrans: 'notifs.new_friends',
|
||||
@@ -1260,6 +1351,11 @@ export const shared_consts = {
|
||||
labeltrans: 'notifsid.circuits_new',
|
||||
directory: 5,
|
||||
},
|
||||
{
|
||||
value: 1, //
|
||||
labeltrans: 'notifsid.favorite_new',
|
||||
directory: 11,
|
||||
},
|
||||
],
|
||||
|
||||
CIRCUIT_STATUS: {
|
||||
@@ -1417,6 +1513,10 @@ export const shared_consts = {
|
||||
value: 270,
|
||||
label: 'Footer',
|
||||
},
|
||||
{
|
||||
value: 280,
|
||||
label: 'Visu Promo and PDF',
|
||||
},
|
||||
{
|
||||
value: 40,
|
||||
label: 'Separatore',
|
||||
@@ -1542,6 +1642,11 @@ export const shared_consts = {
|
||||
UP_LEFT: 5,
|
||||
},
|
||||
|
||||
TABLETYPE: {
|
||||
DefaultCal: 0,
|
||||
MyBachecas: 1,
|
||||
},
|
||||
|
||||
getStatusStr(status: number) {
|
||||
const trovatorec = this.OrderStatusStr.find((rec) => rec.value === status)
|
||||
return (trovatorec) ? trovatorec.label : ''
|
||||
@@ -1556,7 +1661,149 @@ export const shared_consts = {
|
||||
return ['_id', 'username', 'group', 'email', 'name', 'surname', 'perm', 'date_reg', 'verified_email', 'notask_verif', 'verified_by_aportador', 'trust_modified', 'img', 'ipaddr', 'lasttimeonline', 'profile', 'news_on']
|
||||
},
|
||||
|
||||
getProjectForAll(proj_add: string) {
|
||||
getProjectByTable(table: string, proj_add?: any) {
|
||||
let proj = {}
|
||||
if (table === this.TABLES_MYGOODS) {
|
||||
proj = {
|
||||
'recGood': 1,
|
||||
'sectorGood': 1,
|
||||
'idSectorGood': 1,
|
||||
'idGood': 1,
|
||||
'idShipping': 1,
|
||||
'idStatusGood': 1,
|
||||
groupname: 1,
|
||||
//**ADDFIELD_MYGOOD
|
||||
}
|
||||
|
||||
} else if (table === this.TABLES_MYGROUPS) {
|
||||
proj = {
|
||||
groupname: 1,
|
||||
title: 1,
|
||||
descr: 1,
|
||||
img: 1,
|
||||
visibility: 1,
|
||||
admins: 1,
|
||||
idCatGrp: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
photos: 1,
|
||||
idCity: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
link_telegram: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
sector: 1,
|
||||
recCatGrp: 1,
|
||||
}
|
||||
} else if (table === this.TABLES_CIRCUITS) {
|
||||
proj = {
|
||||
_id: 1,
|
||||
groupnameId: 1,
|
||||
path: 1,
|
||||
name: 1,
|
||||
strProv: 1,
|
||||
subname: 1,
|
||||
longdescr: 1,
|
||||
regulation: 1,
|
||||
numMembers: 1,
|
||||
totCircolante: 1,
|
||||
totTransato: 1,
|
||||
systemUserId: 1,
|
||||
createdBy: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
nome_valuta: 1,
|
||||
fido_scoperto_default: 1,
|
||||
deperimento: 1,
|
||||
showAlways: 1,
|
||||
status: 1,
|
||||
transactionsEnabled: 1,
|
||||
qta_max_default: 1,
|
||||
fido_scoperto_default_grp: 1,
|
||||
qta_max_default_grp: 1,
|
||||
valuta_per_euro: 1,
|
||||
symbol: 1,
|
||||
idCity: 1,
|
||||
pub_to_share: 1,
|
||||
visibility: 1,
|
||||
color: 1,
|
||||
abbrev: 1,
|
||||
data_costituz: 1,
|
||||
photos: 1,
|
||||
admins: 1,
|
||||
req_users: 1,
|
||||
refused_users: 1,
|
||||
'mycities': 1,
|
||||
//**ADDFIELD_CIRCUITS
|
||||
}
|
||||
} else if (table === this.TABLES_MYSKILLS) {
|
||||
proj = {
|
||||
recSkill: 1,
|
||||
sector: 1,
|
||||
idSector: 1,
|
||||
idSkill: 1,
|
||||
myskill: 1,
|
||||
idStatusSkill: 1,
|
||||
idContribType: 1,
|
||||
numLevel: 1,
|
||||
adType: 1,
|
||||
photos: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
groupname: 1,
|
||||
//**ADDFIELD_MYSKILL
|
||||
}
|
||||
|
||||
} else if (table === this.TABLES_MYHOSPS) {
|
||||
proj = {
|
||||
visibile: 1,
|
||||
typeHosp: 1,
|
||||
numMaxPeopleHosp: 1,
|
||||
accomodation: 1,
|
||||
preferences: 1,
|
||||
idContribType: 1,
|
||||
photos: 1,
|
||||
idCity: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
link_maplocation: 1,
|
||||
groupname: 1,
|
||||
}
|
||||
|
||||
} else if (table === this.TABLES_MYBACHECAS) {
|
||||
proj = {
|
||||
recSkill: 1,
|
||||
sector: 1,
|
||||
idSector: 1,
|
||||
idSkill: 1,
|
||||
// 'idSubSkill': 1,
|
||||
idStatusSkill: 1,
|
||||
idContribType: 1,
|
||||
dateTimeStart: 1,
|
||||
dateTimeEnd: 1,
|
||||
website: 1,
|
||||
organisedBy: 1,
|
||||
contact_phone: 1,
|
||||
contact_telegram: 1,
|
||||
address: 1,
|
||||
min_partecip: 1,
|
||||
max_partecip: 1,
|
||||
contribstr: 1,
|
||||
link_maplocation: 1,
|
||||
groupname: 1,
|
||||
//**ADDFIELD_MYBACHECAS
|
||||
}
|
||||
}
|
||||
|
||||
if (proj_add)
|
||||
proj = Object.assign({}, proj, proj_add);
|
||||
|
||||
return proj;
|
||||
},
|
||||
|
||||
getProjectForAll(proj_add: any, table?: string) {
|
||||
|
||||
let proj = {
|
||||
idContribType: 1,
|
||||
idCity: 1,
|
||||
@@ -1574,23 +1821,61 @@ export const shared_consts = {
|
||||
lasttimeonline: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
lang: 1,
|
||||
'profile.img': 1,
|
||||
'profile.mygroups': 1,
|
||||
'profile.mycircuits': 1,
|
||||
'profile.qualifica': 1,
|
||||
'profile.resid_province': 1,
|
||||
'profile.resid_card': 1,
|
||||
'profile.username_telegram': 1,
|
||||
'profile.favorite': 1,
|
||||
'profile.bookmark': 1,
|
||||
'profile.attend': 1,
|
||||
'profile.seen': 1,
|
||||
'mygrp.groupname': 1,
|
||||
'mygrp.title': 1,
|
||||
'mygrp.photos': 1,
|
||||
reported: 1,
|
||||
date_report: 1,
|
||||
username_who_report: 1,
|
||||
namecomplete: 1,
|
||||
date_reg: 1,
|
||||
};
|
||||
|
||||
if (proj_add)
|
||||
proj = Object.assign({}, proj, proj_add);
|
||||
|
||||
proj = {...proj, ...this.REACTIONS_FIELD};
|
||||
|
||||
if (table) {
|
||||
let proj_add3 = this.getProjectByTable(table);
|
||||
proj = Object.assign({}, proj, proj_add3);
|
||||
}
|
||||
|
||||
return proj;
|
||||
},
|
||||
|
||||
getDirectoryByTable(table: string, barre?: boolean) {
|
||||
let add = '';
|
||||
if (barre)
|
||||
add = '/';
|
||||
|
||||
if (table === 'myskills') {
|
||||
return add + 'myservice' + add
|
||||
} else if (table === 'mybachecas') {
|
||||
return add + 'mypage' + add
|
||||
} else if (table === 'myhosps') {
|
||||
return add + 'myhosps' + add
|
||||
} else if (table === 'mygoods') {
|
||||
return add + 'mygood' + add
|
||||
} else if (table === 'mygroups') {
|
||||
return add + 'grp' + add
|
||||
} else if (table === 'circuits') {
|
||||
return add + 'circuit' + add
|
||||
}
|
||||
|
||||
return ''
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ export default defineComponent({
|
||||
title: String,
|
||||
mylist: {
|
||||
type: [Array, String, undefined, null] as PropType<IAccomodation[] | string | undefined | null>,
|
||||
required: false,
|
||||
required: true,
|
||||
},
|
||||
},
|
||||
emits: ['showandsave'],
|
||||
@@ -68,7 +68,7 @@ export default defineComponent({
|
||||
})
|
||||
|
||||
function created() {
|
||||
console.log('created CAccomodation', props.mylist)
|
||||
// console.log('created CAccomodation', props.mylist)
|
||||
if (isValid(props.mylist)) {
|
||||
// @ts-ignore
|
||||
let myarr: any = props.mylist
|
||||
|
||||
@@ -100,6 +100,7 @@ export default defineComponent({
|
||||
const serverData: any = ref([])
|
||||
const numRecLoaded = ref(0)
|
||||
const changetable = ref(false)
|
||||
const filtri = ref(false)
|
||||
const searchList = ref([] as ISearchList[])
|
||||
|
||||
const actual = ''
|
||||
@@ -349,6 +350,7 @@ export default defineComponent({
|
||||
createNewRecordDialog,
|
||||
toHome,
|
||||
iconsel,
|
||||
filtri,
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
:class="$q.screen.lt.sm ? `` : `q-pa-xs`"
|
||||
v-if="isfinishLoading && mycolumns"
|
||||
>
|
||||
<q-layout view="hHh lpR fFf" :class="`shadow-2 rounded-borders `">
|
||||
<div :class="`shadow-2 rounded-borders`">
|
||||
<div>
|
||||
<div v-if="prop_search || canEdit" class="q-my-xs text-right">
|
||||
<q-btn
|
||||
@@ -15,218 +15,230 @@
|
||||
></q-btn>
|
||||
</div>
|
||||
<q-slide-transition>
|
||||
<div class="row no-wrap shadow-1">
|
||||
<q-header elevated reveal>
|
||||
<q-toolbar class="glossy" style="">
|
||||
<div v-if="$q.screen.gt.xs" class="col-1">
|
||||
<q-avatar @click="toHome" class="imglink">
|
||||
<img
|
||||
:src="tools.getimglogo()"
|
||||
height="27"
|
||||
alt="Immagine Logo"
|
||||
/>
|
||||
</q-avatar>
|
||||
</div>
|
||||
<div class="col-4">
|
||||
<q-select
|
||||
v-model="tablesel"
|
||||
:options="optionsMainCards"
|
||||
dark
|
||||
emit-value
|
||||
borderless
|
||||
map-options
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
@update:model-value="gotoPageSel"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon :name="iconsel" />
|
||||
</template>
|
||||
<template v-slot:option="scope">
|
||||
<q-item v-bind="scope.itemProps">
|
||||
<q-item-section avatar>
|
||||
<q-icon :name="scope.opt.icon" />
|
||||
</q-item-section>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ scope.opt.label }}</q-item-label>
|
||||
<!--<q-item-label caption>{{
|
||||
<div class="row no-wrap shadow-1" style="height: 40px;">
|
||||
<div v-if="$q.screen.gt.xs" class="col-1">
|
||||
<q-avatar @click="toHome" class="imglink">
|
||||
<img
|
||||
:src="tools.getimglogo()"
|
||||
height="27"
|
||||
alt="Immagine Logo"
|
||||
/>
|
||||
</q-avatar>
|
||||
</div>
|
||||
<div class="col-4">
|
||||
<q-select
|
||||
dense
|
||||
v-model="tablesel"
|
||||
:options="optionsMainCards"
|
||||
emit-value
|
||||
borderless
|
||||
class="text-blue"
|
||||
map-options
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
@update:model-value="gotoPageSel"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon :name="iconsel" />
|
||||
</template>
|
||||
<template v-slot:option="scope">
|
||||
<q-item v-bind="scope.itemProps">
|
||||
<q-item-section avatar>
|
||||
<q-icon :name="scope.opt.icon" />
|
||||
</q-item-section>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ scope.opt.label }}</q-item-label>
|
||||
<!--<q-item-label caption>{{
|
||||
scope.opt.description
|
||||
}}</q-item-label>-->
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</template>
|
||||
</q-select>
|
||||
</div>
|
||||
<q-space />
|
||||
<!--<q-btn
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</template>
|
||||
</q-select>
|
||||
</div>
|
||||
|
||||
<!--<q-btn
|
||||
size="sm"
|
||||
class="col-1 q-mx-xs"
|
||||
icon="fas fa-plus"
|
||||
@click="createNewRecordDialog"
|
||||
>
|
||||
</q-btn>-->
|
||||
<div
|
||||
class="col"
|
||||
v-for="(item, index) in searchList"
|
||||
:key="index"
|
||||
>
|
||||
<CMySelect
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
v-if="
|
||||
item.type === costanti.FieldType.select ||
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
"
|
||||
:label="
|
||||
item.value && item.value._id > 0
|
||||
? undefined
|
||||
: labelcombo(item)
|
||||
"
|
||||
v-model:value="item.value"
|
||||
@update:value="searchval(item.value, item.table)"
|
||||
:addall="item.addall"
|
||||
:addnone="item.addnone"
|
||||
:addlast="true"
|
||||
:tablesel="
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
? item.tablesel
|
||||
: ''
|
||||
"
|
||||
:pickup="item.type === costanti.FieldType.select_by_server"
|
||||
label-color="white"
|
||||
myclass="comboselector"
|
||||
color="primary"
|
||||
dark
|
||||
:dense="true"
|
||||
:icon_alternative="item.icon"
|
||||
:optval="fieldsTable.getKeyByTable(item.table)"
|
||||
:optlab="fieldsTable.getLabelByTable(item.table)"
|
||||
:options="valoriopt(item, false)"
|
||||
:filter="item.filter"
|
||||
:filter_extra="item.filter_extra"
|
||||
style="font-size: 0.8rem !important"
|
||||
:useinput="
|
||||
item.useinput &&
|
||||
item.type !== costanti.FieldType.select_by_server
|
||||
"
|
||||
<q-btn v-if="false" color="green" label="Filtra la ricerca">
|
||||
<q-popup-proxy>
|
||||
<q-banner class="bg-brown text-white">
|
||||
<div
|
||||
class="col"
|
||||
v-for="(item, index) in searchList"
|
||||
:key="index"
|
||||
>
|
||||
</CMySelect>
|
||||
<CMySelect
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
v-if="
|
||||
item.type === costanti.FieldType.select ||
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
"
|
||||
:label="
|
||||
item.value && item.value._id > 0
|
||||
? undefined
|
||||
: labelcombo(item)
|
||||
"
|
||||
v-model:value="item.value"
|
||||
@update:value="searchval(item.value, item.table)"
|
||||
:addall="item.addall"
|
||||
:addnone="item.addnone"
|
||||
:addlast="true"
|
||||
:tablesel="
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
? item.tablesel
|
||||
: ''
|
||||
"
|
||||
:pickup="
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
"
|
||||
:label-color="$q.dark.isActive ? 'white' : 'black'"
|
||||
myclass="comboselector"
|
||||
color="primary"
|
||||
dark
|
||||
:dense="true"
|
||||
:icon_alternative="item.icon"
|
||||
:optval="fieldsTable.getKeyByTable(item.table)"
|
||||
:optlab="fieldsTable.getLabelByTable(item.table)"
|
||||
:options="valoriopt(item, false)"
|
||||
:filter="item.filter"
|
||||
:filter_extra="item.filter_extra"
|
||||
style="font-size: 0.8rem !important"
|
||||
:useinput="
|
||||
item.useinput &&
|
||||
item.type !== costanti.FieldType.select_by_server
|
||||
"
|
||||
>
|
||||
</CMySelect>
|
||||
|
||||
<!--<div v-if="item.type === costanti.FieldType.multiselect_by_server">
|
||||
<!--<div v-if="item.type === costanti.FieldType.multiselect_by_server">
|
||||
item: {{ item}}
|
||||
</div>-->
|
||||
|
||||
<CMySelect
|
||||
v-if="
|
||||
item.type === costanti.FieldType.multiselect_by_server
|
||||
"
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
:multiselect_by_server="true"
|
||||
:label="labelcombo(item)"
|
||||
v-model:arrvalue="item.arrvalue"
|
||||
@update:arrvalue="searchval(item.arrvalue, item.table)"
|
||||
:addall="item.addall"
|
||||
:addnone="item.addnone"
|
||||
dark
|
||||
:addlast="true"
|
||||
:tablesel="item.tablesel"
|
||||
:pickup="true"
|
||||
:param1="item.param1"
|
||||
label-color="primary"
|
||||
class="comboselector"
|
||||
color="primary"
|
||||
:icon_alternative="item.icon"
|
||||
:optval="fieldsTable.getKeyByTable(item.table)"
|
||||
:optlab="fieldsTable.getLabelByTable(item.table)"
|
||||
:filter="item.filter"
|
||||
:filter_extra="item.filter_extra"
|
||||
:options="valoriopt(item, false)"
|
||||
:useinput="true"
|
||||
>
|
||||
</CMySelect>
|
||||
|
||||
<q-select
|
||||
v-if="item.type === costanti.FieldType.multiselect"
|
||||
v-model="item.arrvalue"
|
||||
label-color="primary"
|
||||
:label="labelcombo(item)"
|
||||
@update:model-value="searchval(item.arrvalue, item.table)"
|
||||
rounded
|
||||
dark
|
||||
dense
|
||||
outlined
|
||||
multiple
|
||||
options-dense
|
||||
emit-value
|
||||
map-options
|
||||
:useinput="item.useinput"
|
||||
:options="valoriopt(item, item.addall, item.addnone)"
|
||||
:filter="item.filter"
|
||||
class="comboselector"
|
||||
:option-value="fieldsTable.getKeyByTable(item.table)"
|
||||
>
|
||||
<template v-if="item.icon" v-slot:prepend>
|
||||
<q-icon :name="item.icon" />
|
||||
</template>
|
||||
<template
|
||||
v-if="item.arrvalue.length >= 1"
|
||||
v-slot:selected-item="scope"
|
||||
<CMySelect
|
||||
v-if="
|
||||
item.type === costanti.FieldType.multiselect_by_server
|
||||
"
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
:multiselect_by_server="true"
|
||||
:label="labelcombo(item)"
|
||||
v-model:arrvalue="item.arrvalue"
|
||||
@update:arrvalue="searchval(item.arrvalue, item.table)"
|
||||
:addall="item.addall"
|
||||
:addnone="item.addnone"
|
||||
dark
|
||||
:addlast="true"
|
||||
:tablesel="item.tablesel"
|
||||
:pickup="true"
|
||||
:param1="item.param1"
|
||||
label-color="primary"
|
||||
class="comboselector"
|
||||
color="primary"
|
||||
:icon_alternative="item.icon"
|
||||
:optval="fieldsTable.getKeyByTable(item.table)"
|
||||
:optlab="fieldsTable.getLabelByTable(item.table)"
|
||||
:filter="item.filter"
|
||||
:filter_extra="item.filter_extra"
|
||||
:options="valoriopt(item, false)"
|
||||
:useinput="true"
|
||||
>
|
||||
<div
|
||||
v-if="
|
||||
scope.opt[fieldsTable.getLabelByTable(item.table)] ||
|
||||
(scope.opt && checkIfShowRec(scope.opt))
|
||||
"
|
||||
</CMySelect>
|
||||
|
||||
<q-select
|
||||
v-if="item.type === costanti.FieldType.multiselect"
|
||||
v-model="item.arrvalue"
|
||||
label-color="primary"
|
||||
:label="labelcombo(item)"
|
||||
@update:model-value="searchval(item.arrvalue, item.table)"
|
||||
rounded
|
||||
dark
|
||||
dense
|
||||
outlined
|
||||
multiple
|
||||
options-dense
|
||||
emit-value
|
||||
map-options
|
||||
:useinput="item.useinput"
|
||||
:options="valoriopt(item, item.addall, item.addnone)"
|
||||
:filter="item.filter"
|
||||
class="comboselector"
|
||||
:option-value="fieldsTable.getKeyByTable(item.table)"
|
||||
>
|
||||
<template v-if="item.icon" v-slot:prepend>
|
||||
<q-icon :name="item.icon" />
|
||||
</template>
|
||||
<template
|
||||
v-if="item.arrvalue.length >= 1"
|
||||
v-slot:selected-item="scope"
|
||||
>
|
||||
<q-chip
|
||||
removable
|
||||
dense
|
||||
@remove="scope.removeAtIndex(scope.index)"
|
||||
v-if="checkIfShowRec(scope.opt)"
|
||||
color="white"
|
||||
text-color="mycol"
|
||||
class="q-my-none q-ml-xs q-mr-none"
|
||||
>
|
||||
<q-avatar
|
||||
color="primary"
|
||||
text-color="white"
|
||||
:icon="item.icon"
|
||||
size="12px"
|
||||
/>
|
||||
{{
|
||||
<div
|
||||
v-if="
|
||||
scope.opt[
|
||||
fieldsTable.getLabelByTable(item.table)
|
||||
] || scope.opt
|
||||
}}
|
||||
</q-chip>
|
||||
</div>
|
||||
</template>
|
||||
<template
|
||||
v-slot:option="{ itemProps, opt, selected, toggleOption }"
|
||||
>
|
||||
<q-item v-bind="itemProps">
|
||||
<q-item-section>
|
||||
<q-item-label>{{
|
||||
opt[fieldsTable.getLabelByTable(item.table)]
|
||||
}}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-toggle
|
||||
:model-value="selected"
|
||||
@update:model-value="toggleOption(opt)"
|
||||
/>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</template>
|
||||
</q-select>
|
||||
</div>
|
||||
</q-toolbar>
|
||||
</q-header>
|
||||
] ||
|
||||
(scope.opt && checkIfShowRec(scope.opt))
|
||||
"
|
||||
>
|
||||
<q-chip
|
||||
removable
|
||||
dense
|
||||
@remove="scope.removeAtIndex(scope.index)"
|
||||
v-if="checkIfShowRec(scope.opt)"
|
||||
:color="$q.dark.isActive ? 'white' : 'black'"
|
||||
text-color="mycol"
|
||||
class="q-my-none q-ml-xs q-mr-none"
|
||||
>
|
||||
<q-avatar
|
||||
color="primary"
|
||||
:text-color="$q.dark.isActive ? 'white' : 'black'"
|
||||
:icon="item.icon"
|
||||
size="12px"
|
||||
/>
|
||||
{{
|
||||
scope.opt[
|
||||
fieldsTable.getLabelByTable(item.table)
|
||||
] || scope.opt
|
||||
}}
|
||||
</q-chip>
|
||||
</div>
|
||||
</template>
|
||||
<template
|
||||
v-slot:option="{
|
||||
itemProps,
|
||||
opt,
|
||||
selected,
|
||||
toggleOption,
|
||||
}"
|
||||
>
|
||||
<q-item v-bind="itemProps">
|
||||
<q-item-section>
|
||||
<q-item-label>{{
|
||||
opt[fieldsTable.getLabelByTable(item.table)]
|
||||
}}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-toggle
|
||||
:model-value="selected"
|
||||
@update:model-value="toggleOption(opt)"
|
||||
/>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</template>
|
||||
</q-select>
|
||||
</div>
|
||||
</q-banner>
|
||||
</q-popup-proxy>
|
||||
</q-btn>
|
||||
</div>
|
||||
</q-slide-transition>
|
||||
</div>
|
||||
<div class="q-my-md">
|
||||
<div class="q-my-xs">
|
||||
<slot />
|
||||
</div>
|
||||
</q-layout>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts" src="./CBarSelection.ts">
|
||||
|
||||
@@ -17,7 +17,8 @@ export default defineComponent({
|
||||
props: {
|
||||
discipline: {
|
||||
Type: Object as PropType<IDiscipline>,
|
||||
required: true,
|
||||
required: false,
|
||||
default: {}
|
||||
},
|
||||
directory: {
|
||||
type: String,
|
||||
@@ -54,7 +55,7 @@ export default defineComponent({
|
||||
return calendarStore.eventlist.find((myevent: IEvents) => (myevent.typol === typol) && (new Date(myevent.dateTimeEnd!) >= datenow))
|
||||
}
|
||||
|
||||
function disciplinechanged(myrec: IDiscipline | any) {
|
||||
function disciplinechanged(myrec: IDiscipline) {
|
||||
nextlesson.value = getNextLesson(myrec.typol_code)
|
||||
// console.log('nextlesson', this.nextlesson)
|
||||
}
|
||||
@@ -73,7 +74,8 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function created() {
|
||||
disciplinechanged(props.discipline)
|
||||
if (tools.isObject(props.discipline))
|
||||
disciplinechanged(props.discipline)
|
||||
}
|
||||
|
||||
created()
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<div class="absolute-bottom text-spacetrans">
|
||||
<q-btn rounded :to="discipline.linkpage">
|
||||
<div class="text-h5 disc__title shadow-max">{{ discipline.label }}</div>
|
||||
</q-btn>
|
||||
</q-btn>
|
||||
</div>
|
||||
</q-img>
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<span> homescreen: {{ homescreen }} </span>
|
||||
</div>
|
||||
<div v-if="finishLoading" class="row justify-center">
|
||||
<div v-if="!isAppRunning" class="q-ma-sm">
|
||||
<div v-if="!isAppRunning">
|
||||
<!-- App not running -->
|
||||
|
||||
<q-btn
|
||||
|
||||
42
src/components/CCheckCircuitsEnabled/CCheckCircuitsEnabled.scss
Executable file
@@ -0,0 +1,42 @@
|
||||
.text-cls{
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.my-text {
|
||||
font-size: 1rem;
|
||||
font-weight: bold;
|
||||
line-height: 1.5rem;
|
||||
letter-spacing: 0.0125em;
|
||||
}
|
||||
|
||||
.my-text_3 {
|
||||
font-size: 1rem;
|
||||
font-weight: bold;
|
||||
line-height: 1.5rem;
|
||||
letter-spacing: 0.0125em;
|
||||
}
|
||||
|
||||
.my-text-small {
|
||||
font-size: 1rem;
|
||||
line-height: 1rem;
|
||||
letter-spacing: 0.0125em;
|
||||
}
|
||||
|
||||
.mybox_3 {
|
||||
min-width: 100px;
|
||||
min-height: 100px;
|
||||
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.mybox {
|
||||
min-width: 112px;
|
||||
min-height: 112px;
|
||||
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.mybox_small {
|
||||
min-width: 110px;
|
||||
width: 100%;
|
||||
}
|
||||
60
src/components/CCheckCircuitsEnabled/CCheckCircuitsEnabled.ts
Executable file
@@ -0,0 +1,60 @@
|
||||
import { defineComponent, ref, computed, PropType, toRef, onMounted } from 'vue'
|
||||
import { useUserStore } from '@store/UserStore'
|
||||
import { useCircuitStore } from '@store/CircuitStore'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { useGlobalStore } from '@store/globalStore'
|
||||
import { useI18n } from '@/boot/i18n'
|
||||
import { tools } from '@store/Modules/tools'
|
||||
import { IAccount, ICircuit, IMyGroup, IOperators, ISendCoin, ISpecialField, IUserFields } from '../../model'
|
||||
import { useQuasar } from 'quasar'
|
||||
|
||||
export default defineComponent({
|
||||
name: 'CCheckCircuitsEnabled',
|
||||
components: {},
|
||||
props: {
|
||||
to_user: {
|
||||
type: Object as PropType<IUserFields>,
|
||||
required: false,
|
||||
default: null
|
||||
},
|
||||
to_group: {
|
||||
type: Object as PropType<IMyGroup>,
|
||||
required: false,
|
||||
default: null,
|
||||
},
|
||||
to_contocom: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
},
|
||||
setup(props, { emit }) {
|
||||
const $q = useQuasar()
|
||||
const { t } = useI18n()
|
||||
const userStore = useUserStore()
|
||||
const circuitStore = useCircuitStore()
|
||||
const $router = useRouter()
|
||||
const globalStore = useGlobalStore()
|
||||
|
||||
const non_hai_circuito_nazionale = ref(false)
|
||||
const destin_non_ha_circuito_naz = ref(false)
|
||||
|
||||
function load() {
|
||||
non_hai_circuito_nazionale.value = !circuitStore.sonoDentroAlCircuitoNazionale()
|
||||
destin_non_ha_circuito_naz.value = !circuitStore.EDentroAlCircuitoNazionale(props.to_user)
|
||||
if (userStore.getMyCircuitsInCommonByUser(props.to_user).length > 0) {
|
||||
destin_non_ha_circuito_naz.value = false
|
||||
}
|
||||
}
|
||||
|
||||
onMounted(load)
|
||||
|
||||
return {
|
||||
userStore,
|
||||
tools,
|
||||
non_hai_circuito_nazionale,
|
||||
destin_non_ha_circuito_naz,
|
||||
$q,
|
||||
}
|
||||
}
|
||||
})
|
||||
49
src/components/CCheckCircuitsEnabled/CCheckCircuitsEnabled.vue
Executable file
@@ -0,0 +1,49 @@
|
||||
<template>
|
||||
<div class="q-ma-xs q-pa-xs row">
|
||||
<div v-if="non_hai_circuito_nazionale" class="q-py-sm">
|
||||
<q-banner rounded class="bg-red text-white" style="text-align: center">
|
||||
{{ $t('circuit.non_hai_circuito_nazionale') }}
|
||||
<br />
|
||||
</q-banner>
|
||||
|
||||
<div class="text-center">
|
||||
<q-btn
|
||||
glossy
|
||||
size="md"
|
||||
:label="$t('circuit.ask_italia')"
|
||||
icon="fas fa-key"
|
||||
color="green"
|
||||
text-color="white"
|
||||
rounded
|
||||
:to="tools.updateLink('/circuit/ris_italia')"
|
||||
></q-btn>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="destin_non_ha_circuito_naz" class="q-py-sm">
|
||||
<q-banner rounded class="bg-red text-white" style="text-align: center">
|
||||
{{ $t('circuit.destin_non_ha_circuito_naz') }}
|
||||
<br />
|
||||
</q-banner>
|
||||
|
||||
<div class="text-center">
|
||||
<q-btn
|
||||
glossy
|
||||
size="md"
|
||||
:label="$t('circuit.invia_msg_dest', {name: to_user.username})"
|
||||
icon="fas fa-paper-plane"
|
||||
color="blue"
|
||||
text-color="white"
|
||||
rounded
|
||||
@click="tools.SendMsgRisItalia($q, to_user.username)"
|
||||
></q-btn>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./CCheckCircuitsEnabled.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import './CCheckCircuitsEnabled.scss';
|
||||
</style>
|
||||
1
src/components/CCheckCircuitsEnabled/index.ts
Executable file
@@ -0,0 +1 @@
|
||||
export {default as CCheckCircuitsEnabled} from './CCheckCircuitsEnabled.vue'
|
||||
@@ -33,6 +33,7 @@ export default defineComponent({
|
||||
costanti,
|
||||
static_data,
|
||||
site,
|
||||
t,
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,56 +1,7 @@
|
||||
<template>
|
||||
<div v-if="showalways || (!showalways && !tools.isLogged())">
|
||||
<div class="q-pa-md q-gutter-sm">
|
||||
<div id="logo" class="text-center">
|
||||
<q-img
|
||||
id="logoimg"
|
||||
:src="tools.getimglogo()"
|
||||
class="q-my-sm"
|
||||
alt="logo APP"
|
||||
style="height: 100px; width: 100px"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<q-banner
|
||||
v-if="site.confpages.videoPromo"
|
||||
rounded
|
||||
dense
|
||||
size="lg"
|
||||
class="bg-grey-3 shadow-5 q-my-sm"
|
||||
color="primary q-title"
|
||||
style="text-align: center"
|
||||
>
|
||||
<div class="mybanner bg-blue text-white">Video di Presentazione:</div>
|
||||
<br />
|
||||
<q-video :src="site.confpages.videoPromo" :ratio="16 / 9"> </q-video>
|
||||
</q-banner>
|
||||
|
||||
<q-banner
|
||||
v-if="site.confpages.PDFPromo"
|
||||
rounded
|
||||
dense
|
||||
size="lg"
|
||||
class="bg-grey-3 shadow-5 q-my-sm"
|
||||
color="primary q-title"
|
||||
style="text-align: center"
|
||||
>
|
||||
<div class="mybanner bg-blue text-white">PDF Presentazione RISO:</div>
|
||||
<br />
|
||||
<template v-slot:action>
|
||||
<q-btn
|
||||
type="a"
|
||||
rounded
|
||||
icon="fab fa-telegram"
|
||||
color="primary"
|
||||
:href="site.confpages.PDFPromo"
|
||||
target="_blank"
|
||||
label="Scarica PDF"
|
||||
>
|
||||
</q-btn>
|
||||
</template>
|
||||
</q-banner>
|
||||
|
||||
<div class="text-h6 text-center">
|
||||
<div class=" text-center">
|
||||
<transition-group
|
||||
name="fade"
|
||||
mode="out-in"
|
||||
@@ -61,30 +12,33 @@
|
||||
<q-banner
|
||||
:key="1"
|
||||
rounded
|
||||
dense
|
||||
size="lg"
|
||||
class="shadow-5 q-my-sm"
|
||||
class="text-white bg-red"
|
||||
color="primary q-title"
|
||||
style="text-align: center"
|
||||
>
|
||||
<template v-slot:avatar>
|
||||
<q-icon :key="2" name="signal_wifi_off" color="primary" />
|
||||
<q-icon :key="2" name="fas fa-sign-in-alt" color="white" />
|
||||
</template>
|
||||
<div class="mybanner" :key="3">
|
||||
Accedi per Unirti alla RETE e al Circuito di scambio RIS
|
||||
<div :key="3">
|
||||
Accedi con le tue credenziali per utilizzare la APP e per unirti
|
||||
al Circuito di scambio RIS del tuo territorio
|
||||
</div>
|
||||
<template v-slot:action>
|
||||
<q-btn
|
||||
rounded
|
||||
icon="fas fa-user"
|
||||
color="primary"
|
||||
@click="tools.openrighttoolbar()"
|
||||
>{{ $t('login.enter') }}
|
||||
</q-btn>
|
||||
<CRegistration />
|
||||
<div>
|
||||
<q-btn
|
||||
flat
|
||||
color="white"
|
||||
@click="tools.openrighttoolbar()"
|
||||
>{{ $t('login.enter') }}
|
||||
</q-btn>
|
||||
</div>
|
||||
|
||||
<!--<CRegistration />-->
|
||||
</template>
|
||||
</q-banner>
|
||||
</transition-group>
|
||||
<q-separator inset />
|
||||
<br>
|
||||
<q-banner
|
||||
rounded
|
||||
dense
|
||||
|
||||
@@ -19,6 +19,11 @@ export default defineComponent({
|
||||
showBtnActivities: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
},
|
||||
sendRIS: {
|
||||
type: Number,
|
||||
required: false,
|
||||
default: 0,
|
||||
}
|
||||
},
|
||||
components: { CLabel, CSendCoins },
|
||||
@@ -59,6 +64,16 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
function clickOpenSendCoin() {
|
||||
if (!userStore.my.profile.resid_province) {
|
||||
// showProvinceToSelect.value = true
|
||||
} else {
|
||||
showsendCoinTo.value = true
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
return {
|
||||
tools,
|
||||
userStore,
|
||||
@@ -68,6 +83,7 @@ export default defineComponent({
|
||||
getLinkWebSite,
|
||||
myusername,
|
||||
showingtooltip,
|
||||
clickOpenSendCoin,
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
@@ -1,7 +1,36 @@
|
||||
<template>
|
||||
|
||||
<div class="row justify-evenly items-center q-pa-sm q-ma-sm">
|
||||
<div class="q-ma-sx">
|
||||
<div >
|
||||
<q-btn
|
||||
v-if="
|
||||
userStore.showButtonSendCoin(myuser) &&
|
||||
(myuser.username !== userStore.my.username ||
|
||||
userStore.hoContiCollettiviDaAmministrare() ||
|
||||
userStore.hoContiComunitariDaAmministrare())
|
||||
"
|
||||
icon="fas fa-coins"
|
||||
color="green"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('circuit.sendcoins')"
|
||||
@click="clickOpenSendCoin"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
<div
|
||||
v-if="showBtnActivities"
|
||||
|
||||
>
|
||||
<q-btn
|
||||
icon="fas fa-house-user"
|
||||
size="md"
|
||||
color="orange"
|
||||
:label="$t('profile.myactivities')"
|
||||
:to="`/attivita/` + myuser.username"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
<div class="q-ma-sm">
|
||||
<q-btn
|
||||
v-if="getLinkUserTelegram()"
|
||||
icon="fab fa-telegram"
|
||||
@@ -9,7 +38,7 @@
|
||||
:type="tools.isUserOk() ? 'a' : 'btn'"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('msgs.telegrammsg')"
|
||||
:label="$t('dialog.contact')"
|
||||
:href="tools.isUserOk() ? getLinkUserTelegram() : null"
|
||||
@click="!tools.isUserOk() ? (showingtooltip = !showingtooltip) : false"
|
||||
target="__blank"
|
||||
@@ -39,78 +68,12 @@
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
<div class="q-ma-sx">
|
||||
<q-btn
|
||||
v-if="
|
||||
userStore.getMyCircuitsInCommonByUser(myuser).length > 0 &&
|
||||
((myuser.username !== userStore.my.username) || userStore.hoContiCollettiviDaAmministrare() || userStore.hoContiComunitariDaAmministrare())
|
||||
"
|
||||
icon="fas fa-coins"
|
||||
color="green"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('circuit.sendcoins')"
|
||||
@click="showsendCoinTo = true"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
<div v-if="myuser._id" class="q-ma-sx">
|
||||
<q-btn
|
||||
v-if="getLinkWebSite()"
|
||||
icon="fas fa-globe"
|
||||
color="blue"
|
||||
type="a"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('reg.website')"
|
||||
:href="tools.isUserOk() ? getLinkWebSite() : null"
|
||||
@click="!tools.isUserOk() ? (showingtooltip = !showingtooltip) : false"
|
||||
target="__blank"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
<div class="myrow justify-evenly items-center q-pa-sm q-ma-sm">
|
||||
<div v-if="myuser._id" class="col-12">
|
||||
<q-btn
|
||||
v-if="myuser.username === myusername()"
|
||||
icon="fas fa-link"
|
||||
color="blue"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('reg.link_reg_and_msg')"
|
||||
@click="
|
||||
tools.sendMsgTelegramCmd(
|
||||
$q,
|
||||
$t,
|
||||
shared_consts.MsgTeleg.SHARE_MSGREG,
|
||||
true
|
||||
);
|
||||
"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
<div
|
||||
v-if="showBtnActivities"
|
||||
class="col-md-6 col-sm-6 q-ma-xs col-xs-12 text-center"
|
||||
>
|
||||
<q-btn
|
||||
icon="fas fa-house-user"
|
||||
size="md"
|
||||
color="orange"
|
||||
:label="$t('profile.myactivities')"
|
||||
:to="`/attivita/` + myuser.username"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
<q-tooltip v-if="showingtooltip" class="bg-red text-body2 text-bold" :offset="[10, 10]" v-model="showingtooltip"
|
||||
>Per contattare la persona:<br />Entra ed Accedi a RISO</q-tooltip
|
||||
>
|
||||
</div>
|
||||
<div v-if="showsendCoinTo">
|
||||
<div v-if="showsendCoinTo || sendRIS > 0">
|
||||
<CSendCoins
|
||||
:showprop="showsendCoinTo"
|
||||
:to_user="myuser"
|
||||
:sendRIS="sendRIS"
|
||||
@close="showsendCoinTo = false"
|
||||
>
|
||||
</CSendCoins>
|
||||
|
||||
@@ -30,6 +30,11 @@ export default defineComponent({
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
strfido: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
required: false,
|
||||
@@ -80,6 +85,7 @@ export default defineComponent({
|
||||
const { t } = useI18n()
|
||||
|
||||
const showingtooltip = ref(false)
|
||||
const showinghouse = ref(false)
|
||||
|
||||
function created() {
|
||||
// created
|
||||
@@ -89,6 +95,7 @@ export default defineComponent({
|
||||
|
||||
return {
|
||||
showingtooltip,
|
||||
showinghouse,
|
||||
t,
|
||||
tools,
|
||||
costanti,
|
||||
|
||||
@@ -16,6 +16,13 @@
|
||||
>{{ symbol }}</em
|
||||
></span
|
||||
>
|
||||
<div v-if="myrecparam && myrecparam.fidoConcesso > 0 && !paramTypeAccount">
|
||||
<q-icon
|
||||
:color="myrecparam.fidoConcesso > 0 ? 'blue' : 'grey'"
|
||||
name="fas fa-house-user"
|
||||
class="vertical-baseline q-ml-xs"
|
||||
/>
|
||||
</div>
|
||||
</q-chip>
|
||||
</div>
|
||||
<div v-else>
|
||||
@@ -61,7 +68,6 @@
|
||||
:color="modelValue > 0 ? `green` : `red`"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<!--<img src="https://cdn.quasar.dev/logo-v2/svg/logo.svg">-->
|
||||
<q-btn
|
||||
v-if="tips && !small"
|
||||
icon="fas fa-info"
|
||||
@@ -80,6 +86,9 @@
|
||||
<q-tooltip :offset="[10, 10]" v-model="showingtooltip">{{
|
||||
tips
|
||||
}}</q-tooltip>
|
||||
<q-tooltip :offset="[10, 10]" v-model="showinghouse">{{
|
||||
strfido
|
||||
}}</q-tooltip>
|
||||
</div>
|
||||
</template>
|
||||
<template v-slot:append>
|
||||
@@ -99,6 +108,17 @@
|
||||
@click="$emit('changedParamValue', true)"
|
||||
></q-btn>
|
||||
</div>
|
||||
<q-btn
|
||||
v-if="myrecparam && myrecparam.fidoConcesso >= 0 && !paramTypeAccount"
|
||||
icon="fas fa-house-user"
|
||||
class="q-ml-sm"
|
||||
:color="myrecparam.fidoConcesso > 0 ? 'primary' : 'grey'"
|
||||
text-color="white"
|
||||
round
|
||||
size="sm"
|
||||
@click="showinghouse = !showinghouse"
|
||||
>
|
||||
</q-btn>
|
||||
</template>
|
||||
</q-field>
|
||||
</div>
|
||||
|
||||
@@ -68,6 +68,8 @@ export default defineComponent({
|
||||
const showDateTimeScroller = ref(false)
|
||||
const saveit = ref(false)
|
||||
const myvalue = ref('')
|
||||
const mydate = ref(false)
|
||||
const mytime = ref(false)
|
||||
const valueprec = ref('')
|
||||
// const myvalueDate = toRef(props, 'valueDate')
|
||||
|
||||
@@ -88,6 +90,8 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function Closing() {
|
||||
mydate.value = false
|
||||
mytime.value = false
|
||||
// console.log('Closing')
|
||||
if (!saveit.value) {
|
||||
if (myvalue.value !== valueprec.value) {
|
||||
@@ -143,6 +147,16 @@ export default defineComponent({
|
||||
emit('savetoclose', myvalue.value, valueprec.value)
|
||||
}
|
||||
|
||||
function replacevalue() {
|
||||
// console.log('changeval', newval, 'value=', value, 'myvalue=', myvalue)
|
||||
if (valueprec.value) {
|
||||
emit('update:value', valueprec.value)
|
||||
saveit.value = true
|
||||
showDateTimeScroller.value = false
|
||||
emit('savetoclose', valueprec.value, valueprec.value)
|
||||
}
|
||||
}
|
||||
|
||||
function mystyle() {
|
||||
if (props.label !== '')
|
||||
return ''
|
||||
@@ -172,6 +186,10 @@ export default defineComponent({
|
||||
getclass,
|
||||
myvalue,
|
||||
showDateTimeScroller,
|
||||
replacevalue,
|
||||
mydate,
|
||||
mytime,
|
||||
tools,
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
@@ -27,33 +27,106 @@
|
||||
color="blue-6"
|
||||
:bg-color="bgcolor"
|
||||
debounce="500"
|
||||
:input-class="getclass()">
|
||||
|
||||
:input-class="getclass()"
|
||||
>
|
||||
<template v-slot:control>
|
||||
<div style="">
|
||||
<div class="self-center full-width no-outline" :style="mystyle()" tabindex="0">
|
||||
<div
|
||||
class="self-center full-width no-outline"
|
||||
:style="mystyle()"
|
||||
tabindex="0"
|
||||
>
|
||||
{{ getstrDate(myvalue) }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template v-slot:append>
|
||||
<q-icon v-if="canEdit" name="event" class="cursor-pointer">
|
||||
<q-popup-proxy transition-show="flip-up" v-model="showDateTimeScroller" @before-show="Opening" @before-hide="Closing">
|
||||
|
||||
<div class="q-gutter-md row items-start">
|
||||
<q-btn
|
||||
dense
|
||||
color="primary"
|
||||
v-if="canEdit"
|
||||
icon="fas fa-calendar-day"
|
||||
class="cursor-pointer"
|
||||
@click="mydate = !mydate"
|
||||
>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
dense
|
||||
color="primary"
|
||||
v-if="canEdit"
|
||||
icon="fas fa-clock"
|
||||
class="cursor-pointer"
|
||||
@click="mytime = !mytime"
|
||||
>
|
||||
</q-btn>
|
||||
<q-popup-proxy
|
||||
v-if="mydate"
|
||||
transition-show="flip-up"
|
||||
v-model="showDateTimeScroller"
|
||||
@before-show="Opening"
|
||||
@before-hide="Closing"
|
||||
>
|
||||
<q-card class="justify-center">
|
||||
<div class="q-gutter-md justify-center">
|
||||
<q-date
|
||||
v-model="myvalue" mask="YYYY-MM-DD HH:mm" color="purple"
|
||||
v-model="myvalue"
|
||||
mask="YYYY-MM-DD HH:mm"
|
||||
color="purple"
|
||||
@update:model-value="changeval"
|
||||
@close="() => { savetoclose(); }"
|
||||
/>
|
||||
<q-time
|
||||
v-model="myvalue" mask="YYYY-MM-DD HH:mm" color="purple"
|
||||
@update:model-value="changeval"
|
||||
@close="() => { savetoclose(); }"
|
||||
@close="
|
||||
() => {
|
||||
savetoclose();
|
||||
}
|
||||
"
|
||||
/>
|
||||
<div class="row justify-center">
|
||||
<q-btn
|
||||
:label="$t('dialog.cancel')"
|
||||
@click="replacevalue"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
:label="'Imposta a ' + tools.getstrDateLong(myvalue)"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
></q-btn>
|
||||
</div>
|
||||
</div>
|
||||
</q-popup-proxy>
|
||||
</q-icon>
|
||||
</q-card>
|
||||
</q-popup-proxy>
|
||||
<q-popup-proxy
|
||||
v-if="mytime"
|
||||
transition-show="flip-up"
|
||||
v-model="showDateTimeScroller"
|
||||
@before-show="Opening"
|
||||
@before-hide="Closing"
|
||||
>
|
||||
<q-card class="justify-center">
|
||||
<div class="q-gutter-md justify-center">
|
||||
<q-time
|
||||
v-model="myvalue"
|
||||
mask="YYYY-MM-DD HH:mm"
|
||||
color="purple"
|
||||
@update:model-value="changeval"
|
||||
@close="
|
||||
() => {
|
||||
savetoclose();
|
||||
}
|
||||
"
|
||||
/>
|
||||
<div class="row justify-center">
|
||||
<q-btn
|
||||
:label="$t('dialog.cancel')"
|
||||
@click="replacevalue"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
:label="'Imposta a ' + tools.getstrTime(myvalue)"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
></q-btn>
|
||||
</div>
|
||||
</div>
|
||||
</q-card>
|
||||
</q-popup-proxy>
|
||||
</template>
|
||||
</q-field>
|
||||
</div>
|
||||
|
||||
@@ -27,6 +27,7 @@ import { useMessageStore } from '@store/MessageStore'
|
||||
import { static_data } from '@/db/static_data'
|
||||
import { lists } from '@store/Modules/lists'
|
||||
import translate from '@/globalroutines/util'
|
||||
import { shared_consts } from '@src/common/shared_vuejs'
|
||||
|
||||
export default defineComponent({
|
||||
name: 'CEventsCalendar',
|
||||
@@ -82,8 +83,10 @@ export default defineComponent({
|
||||
|
||||
const formbookEventDefault = ref(<IBookedEvent>{
|
||||
userId: '',
|
||||
username: '',
|
||||
msgbooking: '',
|
||||
infoevent: '',
|
||||
tableType: shared_consts.TABLETYPE.DefaultCal,
|
||||
numpeople: 1,
|
||||
numpeopleLunch: 0,
|
||||
numpeopleDinner: 0,
|
||||
@@ -94,14 +97,8 @@ export default defineComponent({
|
||||
})
|
||||
|
||||
const formAskForDefault = ref(<IMessage>{
|
||||
dest: {
|
||||
idapp: process.env.APP_ID,
|
||||
username: ''
|
||||
},
|
||||
origin: {
|
||||
idapp: process.env.APP_ID,
|
||||
username: ''
|
||||
},
|
||||
dest: '',
|
||||
origin: '',
|
||||
message: ''
|
||||
})
|
||||
|
||||
@@ -151,15 +148,9 @@ export default defineComponent({
|
||||
})
|
||||
const bookEventForm = ref({ ...formbookEventDefault.value })
|
||||
const askInfoForm = ref(<IMessage>{
|
||||
dest: {
|
||||
idapp: process.env.APP_ID,
|
||||
username: ''
|
||||
},
|
||||
origin: {
|
||||
idapp: process.env.APP_ID,
|
||||
username: ''
|
||||
},
|
||||
message: ''
|
||||
dest: '',
|
||||
origin: '',
|
||||
message: '',
|
||||
})
|
||||
const displayEvent = ref(false)
|
||||
const myevent = ref({})
|
||||
@@ -402,6 +393,8 @@ export default defineComponent({
|
||||
myevent.value = eventparam
|
||||
|
||||
askInfoForm.value = {
|
||||
origin: '',
|
||||
dest: '',
|
||||
message: ''
|
||||
}
|
||||
|
||||
@@ -610,7 +603,7 @@ export default defineComponent({
|
||||
|
||||
function EditBookEvent(myevent: IEvents) {
|
||||
|
||||
const bookedevent: any = calendarStore.findEventBooked(myevent, false)
|
||||
const bookedevent: any = calendarStore.findEventBooked(myevent._id, false)
|
||||
|
||||
console.log('bookedevent', bookedevent)
|
||||
|
||||
@@ -639,10 +632,8 @@ export default defineComponent({
|
||||
event_id: myevent._id,
|
||||
infoevent: tools.gettextevent(myevent)
|
||||
},
|
||||
dest: {
|
||||
idapp: process.env.APP_ID,
|
||||
username: myevent.teacher
|
||||
},
|
||||
origin: userStore.my.username,
|
||||
dest: myevent.teacher!,
|
||||
message: askInfoForm.value.message
|
||||
}
|
||||
|
||||
@@ -668,6 +659,8 @@ export default defineComponent({
|
||||
const data: IBookedEvent = {
|
||||
userId: userStore.my._id,
|
||||
id_bookedevent: myevent._id,
|
||||
username: bookEventForm.value.username,
|
||||
tableType: shared_consts.TABLETYPE.DefaultCal,
|
||||
numpeople: bookEventForm.value.numpeople,
|
||||
numpeopleLunch: bookEventForm.value.numpeopleLunch,
|
||||
numpeopleDinner: bookEventForm.value.numpeopleDinner,
|
||||
|
||||
@@ -81,7 +81,6 @@ export default defineComponent({
|
||||
const myoptions = ref(<any>[])
|
||||
|
||||
|
||||
|
||||
const col = ref(<IColGridTable>{})
|
||||
|
||||
/*
|
||||
@@ -142,11 +141,13 @@ export default defineComponent({
|
||||
|
||||
const mypagination = computed(() => {
|
||||
if (props.table === toolsext.TABMYBACHECAS)
|
||||
return { sortBy: 'dateTimeStart', descending: false, page: 1, rowsNumber: 20, rowsPerPage: 20 }
|
||||
return { sortBy: 'dateTimeStart', descending: false, page: 1, rowsNumber: 0, rowsPerPage: 10 }
|
||||
else if (props.table === toolsext.TABMYGROUPS)
|
||||
return { sortBy: 'date_created', descending: true, page: 1, rowsNumber: 0, rowsPerPage: 10 }
|
||||
else if (props.table === toolsext.TABMOVEMENTS)
|
||||
return { sortBy: 'transactionDate', descending: true, page: 1, rowsNumber: 20, rowsPerPage: 20 }
|
||||
return { sortBy: 'transactionDate', descending: true, page: 1, rowsNumber: 0, rowsPerPage: 20 }
|
||||
else if (props.table === toolsext.TABCIRCUITS)
|
||||
return { sortBy: 'numMembers', descending: true, page: 1, rowsNumber: 20, rowsPerPage: 20 }
|
||||
return { sortBy: 'numMembers', descending: true, page: 1, rowsNumber: 0, rowsPerPage: 20 }
|
||||
else if (props.table === toolsext.TABUSER)
|
||||
return userStore.getMypaginationMembers()
|
||||
else if (shared_consts.TABLES_ORDER_DATE_UPDATED.includes(props.table))
|
||||
@@ -154,7 +155,7 @@ export default defineComponent({
|
||||
else if (shared_consts.TABLES_ORDER_DESCR.includes(props.table))
|
||||
return { sortBy: 'desc', descending: false, page: 1, rowsNumber: 0, rowsPerPage: 10 }
|
||||
|
||||
return { sortBy: 'date_created', descending: true, page: 1, rowsNumber: 20, rowsPerPage: 20 }
|
||||
return { sortBy: 'date_created', descending: true, page: 1, rowsNumber: 0, rowsPerPage: 10 }
|
||||
})
|
||||
|
||||
const searchList = computed(() => {
|
||||
@@ -327,18 +328,6 @@ export default defineComponent({
|
||||
|
||||
|
||||
searchList_Servizi.value = [
|
||||
{
|
||||
label: 'Stato',
|
||||
table: 'statusSkills',
|
||||
key: 'idStatusSkill',
|
||||
value: 0,
|
||||
arrvalue: tools.getCookie(tools.COOK_SEARCH + 'statusSkills', []),
|
||||
type: costanti.FieldType.multiselect,
|
||||
filter: null,
|
||||
useinput: false,
|
||||
icon: 'mood',
|
||||
filteradv: true,
|
||||
},
|
||||
{
|
||||
label: 'Regione',
|
||||
table: 'regions',
|
||||
@@ -378,7 +367,7 @@ export default defineComponent({
|
||||
// param1: shared_consts.PARAM_SHOW_PROVINCE,
|
||||
tablesel: 'cities',
|
||||
},
|
||||
{
|
||||
/*{
|
||||
label: 'Visibilità',
|
||||
table: 'pub_to_share',
|
||||
key: 'pub_to_share',
|
||||
@@ -388,18 +377,7 @@ export default defineComponent({
|
||||
arrvalue: [],
|
||||
useinput: false,
|
||||
filter: null,
|
||||
},
|
||||
{
|
||||
label: 'Offro/Cerco',
|
||||
table: 'adtypes',
|
||||
key: 'adType',
|
||||
value: tools.getCookie(tools.COOK_SEARCH + 'adtypes', costanti.FILTER_TUTTI, true),
|
||||
arrvalue: [],
|
||||
addall: true,
|
||||
type: costanti.FieldType.select,
|
||||
filter: null,
|
||||
useinput: false,
|
||||
},
|
||||
},*/
|
||||
{
|
||||
label: 'Settore',
|
||||
table: toolsext.TABSECTORS,
|
||||
@@ -424,6 +402,17 @@ export default defineComponent({
|
||||
showcount: true,
|
||||
useinput: false,
|
||||
},
|
||||
{
|
||||
label: 'Offro/Cerco',
|
||||
table: 'adtypes',
|
||||
key: 'adType',
|
||||
value: tools.getCookie(tools.COOK_SEARCH + 'adtypes', costanti.FILTER_TUTTI, true),
|
||||
arrvalue: [],
|
||||
addall: true,
|
||||
type: costanti.FieldType.select,
|
||||
filter: null,
|
||||
useinput: false,
|
||||
},
|
||||
/*{
|
||||
label: 'Specializzazione',
|
||||
table: 'subskills',
|
||||
@@ -457,6 +446,18 @@ export default defineComponent({
|
||||
|
||||
|
||||
*/
|
||||
{
|
||||
label: 'Stato',
|
||||
table: 'statusSkills',
|
||||
key: 'idStatusSkill',
|
||||
value: 0,
|
||||
arrvalue: tools.getCookie(tools.COOK_SEARCH + 'statusSkills', []),
|
||||
type: costanti.FieldType.multiselect,
|
||||
filter: null,
|
||||
useinput: false,
|
||||
icon: 'mood',
|
||||
filteradv: true,
|
||||
},
|
||||
{
|
||||
label: 'In cambio di',
|
||||
table: 'contribtypes',
|
||||
@@ -491,7 +492,7 @@ export default defineComponent({
|
||||
]
|
||||
|
||||
searchList_Events.value = [
|
||||
{
|
||||
/*{
|
||||
label: 'Stato',
|
||||
table: 'statusSkills',
|
||||
key: 'idStatusSkill',
|
||||
@@ -502,7 +503,7 @@ export default defineComponent({
|
||||
useinput: false,
|
||||
icon: 'mood',
|
||||
filteradv: false,
|
||||
},
|
||||
},*/
|
||||
{
|
||||
label: 'Regione',
|
||||
table: 'regions',
|
||||
@@ -541,7 +542,7 @@ export default defineComponent({
|
||||
// param1: shared_consts.PARAM_SHOW_PROVINCE,
|
||||
tablesel: 'cities',
|
||||
},
|
||||
{
|
||||
/*{
|
||||
label: 'Visiblità',
|
||||
table: 'pub_to_share',
|
||||
key: 'pub_to_share',
|
||||
@@ -552,7 +553,7 @@ export default defineComponent({
|
||||
useinput: true,
|
||||
filter: null,
|
||||
tablesel: 'pub_to_share',
|
||||
},
|
||||
},*/
|
||||
{
|
||||
label: 'Data Inizio',
|
||||
table: 'caldate',
|
||||
@@ -737,7 +738,7 @@ export default defineComponent({
|
||||
// param1: shared_consts.PARAM_SHOW_PROVINCE,
|
||||
tablesel: 'cities',
|
||||
},
|
||||
{
|
||||
/*{
|
||||
label: 'Visiblità',
|
||||
table: 'pub_to_share',
|
||||
key: 'pub_to_share',
|
||||
@@ -748,18 +749,7 @@ export default defineComponent({
|
||||
useinput: true,
|
||||
filter: null,
|
||||
tablesel: 'pub_to_share',
|
||||
},
|
||||
{
|
||||
label: 'Offro/Cerco',
|
||||
table: 'adtypes',
|
||||
key: 'adType',
|
||||
value: tools.getCookie(tools.COOK_SEARCH + 'adtypes', costanti.FILTER_TUTTI, true),
|
||||
arrvalue: [],
|
||||
addall: true,
|
||||
type: costanti.FieldType.select,
|
||||
filter: null,
|
||||
useinput: false,
|
||||
},
|
||||
},*/
|
||||
{
|
||||
label: 'Settore',
|
||||
table: 'sectorgoods',
|
||||
@@ -784,6 +774,17 @@ export default defineComponent({
|
||||
showcount: true,
|
||||
useinput: false,
|
||||
},
|
||||
{
|
||||
label: 'Offro/Cerco',
|
||||
table: 'adtypes',
|
||||
key: 'adType',
|
||||
value: tools.getCookie(tools.COOK_SEARCH + 'adtypes', costanti.FILTER_TUTTI, true),
|
||||
arrvalue: [],
|
||||
addall: true,
|
||||
type: costanti.FieldType.select,
|
||||
filter: null,
|
||||
useinput: false,
|
||||
},
|
||||
/*
|
||||
{
|
||||
label: 'Consegna',
|
||||
@@ -952,18 +953,6 @@ export default defineComponent({
|
||||
tablesel: 'cities',
|
||||
icon: 'fas fa-map-marker-alt',
|
||||
},
|
||||
{
|
||||
label: 'Visiblità',
|
||||
table: 'visibilGroup',
|
||||
key: 'visibility',
|
||||
type: costanti.FieldType.multiselect,
|
||||
value: tools.getCookie(tools.COOK_SEARCH + 'visibility', costanti.FILTER_TUTTI),
|
||||
addall: true,
|
||||
arrvalue: [],
|
||||
useinput: true,
|
||||
filter: null,
|
||||
tablesel: 'visibility',
|
||||
},
|
||||
{
|
||||
label: 'Categorie',
|
||||
table: 'catgrps',
|
||||
@@ -976,436 +965,24 @@ export default defineComponent({
|
||||
useinput: false,
|
||||
icon: 'engineering',
|
||||
},
|
||||
{
|
||||
label: 'Visiblità',
|
||||
table: 'visibilGroup',
|
||||
key: 'visibility',
|
||||
type: costanti.FieldType.multiselect,
|
||||
value: tools.getCookie(tools.COOK_SEARCH + 'visibility', costanti.FILTER_TUTTI),
|
||||
addall: true,
|
||||
arrvalue: [],
|
||||
useinput: true,
|
||||
filter: null,
|
||||
tablesel: 'visibility',
|
||||
},
|
||||
]
|
||||
|
||||
filtercustom.value = []
|
||||
}
|
||||
|
||||
|
||||
function extraparams() {
|
||||
if (props.table === toolsext.TABMYGROUPS) {
|
||||
|
||||
let lk_tab = 'mygroups'
|
||||
let lk_LF = 'userId'
|
||||
let lk_FF = '_id'
|
||||
let lk_as = 'group'
|
||||
let af_objId_tab = 'myId'
|
||||
|
||||
return {
|
||||
lookup1: {
|
||||
lk_tab,
|
||||
lk_LF,
|
||||
lk_FF,
|
||||
lk_as,
|
||||
af_objId_tab,
|
||||
lk_proj: {
|
||||
groupname: 1,
|
||||
title: 1,
|
||||
descr: 1,
|
||||
img: 1,
|
||||
visibility: 1,
|
||||
admins: 1,
|
||||
idCatGrp: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
photos: 1,
|
||||
idCity: 1,
|
||||
note: 1,
|
||||
link_telegram: 1,
|
||||
website: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
sector: 1,
|
||||
}
|
||||
},
|
||||
lookup2: {
|
||||
lk_tab: 'catgrps',
|
||||
lk_LF: 'idCatGrp',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'recCatGrp',
|
||||
lk_proj: {
|
||||
groupname: 1,
|
||||
title: 1,
|
||||
descr: 1,
|
||||
img: 1,
|
||||
visibility: 1,
|
||||
admins: 1,
|
||||
idCatGrp: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
photos: 1,
|
||||
idCity: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
link_telegram: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
sector: 1,
|
||||
recCatGrp: 1,
|
||||
|
||||
}
|
||||
},
|
||||
lookup3: {
|
||||
lk_tab: 'cities',
|
||||
lk_LF: 'idCity',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'comune',
|
||||
lk_proj: {
|
||||
groupname: 1,
|
||||
title: 1,
|
||||
descr: 1,
|
||||
img: 1,
|
||||
idCatGrp: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
visibility: 1,
|
||||
admins: 1,
|
||||
photos: 1,
|
||||
idCity: 1,
|
||||
note: 1,
|
||||
//**ADDFIELD_MYGROUPS
|
||||
website: 1,
|
||||
link_telegram: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
recCatGrp: 1,
|
||||
}
|
||||
},
|
||||
lookup5: {
|
||||
lk_tab: 'cities',
|
||||
lk_LF: 'idCity',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'mycities',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
}
|
||||
|
||||
} else if (props.table === toolsext.TABCIRCUITS) {
|
||||
|
||||
let lk_tab = 'cities'
|
||||
let lk_LF = 'idCity'
|
||||
let lk_FF = '_id'
|
||||
let lk_as = 'mycities'
|
||||
let af_objId_tab = ''
|
||||
|
||||
return {
|
||||
lookup1: {
|
||||
lk_tab,
|
||||
lk_LF,
|
||||
lk_FF,
|
||||
lk_as,
|
||||
af_objId_tab,
|
||||
lk_proj: {
|
||||
_id: 1,
|
||||
groupnameId: 1,
|
||||
path: 1,
|
||||
name: 1,
|
||||
strProv: 1,
|
||||
subname: 1,
|
||||
longdescr: 1,
|
||||
regulation: 1,
|
||||
numMembers: 1,
|
||||
totCircolante: 1,
|
||||
totTransato: 1,
|
||||
systemUserId: 1,
|
||||
createdBy: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
nome_valuta: 1,
|
||||
fido_scoperto_default: 1,
|
||||
deperimento: 1,
|
||||
status: 1,
|
||||
transactionsEnabled: 1,
|
||||
qta_max_default: 1,
|
||||
fido_scoperto_default_grp: 1,
|
||||
qta_max_default_grp: 1,
|
||||
valuta_per_euro: 1,
|
||||
symbol: 1,
|
||||
idCity: 1,
|
||||
pub_to_share: 1,
|
||||
visibility: 1,
|
||||
color: 1,
|
||||
abbrev: 1,
|
||||
data_costituz: 1,
|
||||
photos: 1,
|
||||
admins: 1,
|
||||
req_users: 1,
|
||||
refused_users: 1,
|
||||
'mycities': 1,
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
} else if (props.table === toolsext.TABMYGOODS) {
|
||||
return {
|
||||
lookup1: {
|
||||
lk_tab: 'users',
|
||||
lk_LF: 'userId',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'user',
|
||||
af_objId_tab: 'myId',
|
||||
},
|
||||
lookup2: {
|
||||
lk_tab: 'goods',
|
||||
lk_LF: 'idGood',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'recGood',
|
||||
af_objId_tab: '',
|
||||
lk_proj: {
|
||||
recGood: 1,
|
||||
sectorGood: 1,
|
||||
idSectorGood: 1,
|
||||
idGood: 1,
|
||||
mygood: 1,
|
||||
idStatusSkill: 1,
|
||||
idContribType: 1,
|
||||
'profile.username_telegram': 1,
|
||||
'profile.favorite': 1,
|
||||
'profile.bookmark': 1,
|
||||
idCity: 1,
|
||||
pub_to_share: 1,
|
||||
numLevel: 1,
|
||||
adType: 1,
|
||||
photos: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
//**ADDFIELD_MYSKILL
|
||||
descr: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
userId: 1,
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
lasttimeonline: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
'profile.img': 1,
|
||||
'profile.mygroups': 1,
|
||||
'profile.qualifica': 1,
|
||||
'profile.resid_province': 1,
|
||||
reported: 1,
|
||||
date_report: 1,
|
||||
username_who_report: 1,
|
||||
}
|
||||
},
|
||||
lookup3: {
|
||||
lk_tab: 'sectorgoods',
|
||||
// lk_LF: 'recGood.idSectorGood',
|
||||
lk_LF: 'idSectorGood',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'sectorGood',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
lookup5: {
|
||||
lk_tab: 'cities',
|
||||
lk_LF: 'idCity',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'mycities',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
}
|
||||
} else if (props.table === toolsext.TABMYBACHECAS) {
|
||||
return {
|
||||
// Servizi
|
||||
lookup1: {
|
||||
lk_tab: 'users',
|
||||
lk_LF: 'userId',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'user',
|
||||
af_objId_tab: 'myId',
|
||||
},
|
||||
lookup2: {
|
||||
lk_tab: 'skills',
|
||||
lk_LF: 'idSkill',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'recSkill',
|
||||
af_objId_tab: '',
|
||||
lk_proj: {
|
||||
recSkill: 1,
|
||||
sector: 1,
|
||||
idSector: 1,
|
||||
idSkill: 1,
|
||||
// idSubSkill: 1,
|
||||
myskill: 1,
|
||||
idStatusSkill: 1,
|
||||
idContribType: 1,
|
||||
'profile.username_telegram': 1,
|
||||
'profile.favorite': 1,
|
||||
'profile.bookmark': 1,
|
||||
idCity: 1,
|
||||
pub_to_share: 1,
|
||||
dateTimeStart: 1,
|
||||
dateTimeEnd: 1,
|
||||
numLevel: 1,
|
||||
adType: 1,
|
||||
photos: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
//**ADDFIELD_MYSKILL
|
||||
descr: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
userId: 1,
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
lasttimeonline: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
'profile.img': 1,
|
||||
'profile.mygroups': 1,
|
||||
'profile.qualifica': 1,
|
||||
'profile.resid_province': 1,
|
||||
reported: 1,
|
||||
date_report: 1,
|
||||
username_who_report: 1,
|
||||
}
|
||||
},
|
||||
lookup3: {
|
||||
lk_tab: toolsext.TABSECTORS,
|
||||
// lk_LF: 'recSkill.idSector',
|
||||
lk_LF: 'idSector',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'sector',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
lookup5: {
|
||||
lk_tab: 'cities',
|
||||
lk_LF: 'idCity',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'mycities',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
}
|
||||
|
||||
} else if (props.table === toolsext.TABMYHOSPS) {
|
||||
let obj2: any = {}
|
||||
|
||||
if (myrecfiltertoggle.value === tools.FILTER_ALL) {
|
||||
obj2['visibile'] = true
|
||||
}
|
||||
|
||||
return {
|
||||
// Servizi
|
||||
filtersearch2: [obj2],
|
||||
lookup1: {
|
||||
lk_tab: 'users',
|
||||
lk_LF: 'userId',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'user',
|
||||
af_objId_tab: 'myId',
|
||||
},
|
||||
lookup2: {
|
||||
lk_tab: 'cities',
|
||||
lk_LF: 'idCity',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'mycities',
|
||||
af_objId_tab: '',
|
||||
lk_proj: {
|
||||
visibile: 1,
|
||||
typeHosp: 1,
|
||||
numMaxPeopleHosp: 1,
|
||||
accomodation: 1,
|
||||
preferences: 1,
|
||||
idContribType: 1,
|
||||
'profile.username_telegram': 1,
|
||||
'profile.favorite': 1,
|
||||
'profile.bookmark': 1,
|
||||
photos: 1,
|
||||
idCity: 1,
|
||||
pub_to_share: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
link_maplocation: 1,
|
||||
descr: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
userId: 1,
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
lasttimeonline: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
'profile.img': 1,
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
} else {
|
||||
return {
|
||||
// Servizi
|
||||
lookup1: {
|
||||
lk_tab: 'users',
|
||||
lk_LF: 'userId',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'user',
|
||||
af_objId_tab: 'myId',
|
||||
},
|
||||
lookup2: {
|
||||
lk_tab: 'skills',
|
||||
lk_LF: 'idSkill',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'recSkill',
|
||||
af_objId_tab: '',
|
||||
lk_proj: {
|
||||
recSkill: 1,
|
||||
sector: 1,
|
||||
idSector: 1,
|
||||
idSkill: 1,
|
||||
// idSubSkill: 1,
|
||||
myskill: 1,
|
||||
idStatusSkill: 1,
|
||||
idContribType: 1,
|
||||
'profile.username_telegram': 1,
|
||||
'profile.favorite': 1,
|
||||
'profile.bookmark': 1,
|
||||
idCity: 1,
|
||||
pub_to_share: 1,
|
||||
numLevel: 1,
|
||||
adType: 1,
|
||||
photos: 1,
|
||||
note: 1,
|
||||
website: 1,
|
||||
//**ADDFIELD_MYSKILL
|
||||
descr: 1,
|
||||
date_created: 1,
|
||||
date_updated: 1,
|
||||
userId: 1,
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
lasttimeonline: 1,
|
||||
comune: 1,
|
||||
mycities: 1,
|
||||
'profile.img': 1,
|
||||
'profile.mygroups': 1,
|
||||
'profile.qualifica': 1,
|
||||
'profile.resid_province': 1,
|
||||
reported: 1,
|
||||
date_report: 1,
|
||||
username_who_report: 1,
|
||||
}
|
||||
},
|
||||
lookup3: {
|
||||
lk_tab: toolsext.TABSECTORS,
|
||||
// lk_LF: 'recSkill.idSector',
|
||||
lk_LF: 'idSector',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'sector',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
lookup5: {
|
||||
lk_tab: 'cities',
|
||||
lk_LF: 'idCity',
|
||||
lk_FF: '_id',
|
||||
lk_as: 'mycities',
|
||||
af_objId_tab: '',
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function mySortFieldsAvailable() {
|
||||
if (props.table === toolsext.TABUSER) {
|
||||
@@ -1415,22 +992,6 @@ export default defineComponent({
|
||||
return []
|
||||
}
|
||||
|
||||
function getdefaultnewrec(): any {
|
||||
if (props.table === toolsext.TABMYSKILLS) {
|
||||
return tools.getdefaultnewrec_MySkill()
|
||||
} else if (props.table === toolsext.TABMYBACHECAS) {
|
||||
return tools.getdefaultnewrec_MyBacheca()
|
||||
} else if (props.table === toolsext.TABMYHOSPS) {
|
||||
return tools.getdefaultnewrec_MyHosp()
|
||||
} else if (props.table === toolsext.TABMYGOODS) {
|
||||
return tools.getdefaultnewrec_MyGoods()
|
||||
} else if (props.table === toolsext.TABMYGROUPS) {
|
||||
return tools.getdefaultnewrec_MyGroup()
|
||||
} else if (props.table === toolsext.TABCIRCUITS) {
|
||||
return tools.getdefaultnewrec_Circuit()
|
||||
}
|
||||
return null
|
||||
}
|
||||
|
||||
|
||||
function doSearch() {
|
||||
@@ -1443,7 +1004,6 @@ export default defineComponent({
|
||||
t,
|
||||
tools,
|
||||
costanti,
|
||||
extraparams,
|
||||
arrfilterand,
|
||||
filtercustom,
|
||||
searchList,
|
||||
@@ -1456,7 +1016,6 @@ export default defineComponent({
|
||||
col_tabfooter,
|
||||
col,
|
||||
toolsext,
|
||||
getdefaultnewrec,
|
||||
mypagination,
|
||||
noMsgRecord,
|
||||
showType,
|
||||
|
||||
@@ -55,11 +55,11 @@
|
||||
:arrfilters="arrfilterand"
|
||||
:filtercustom="filtercustom"
|
||||
:prop_searchList="searchList"
|
||||
:defaultnewrec="getdefaultnewrec"
|
||||
:defaultnewrec="tools.getdefaultnewrec(table)"
|
||||
labelBtnAddRow="NONE"
|
||||
:prop_SortFieldsAvailable="mySortFieldsAvailable"
|
||||
:labelBtnAddExtra="noButtAdd ? `` : ``"
|
||||
:extraparams="extraparams()"
|
||||
:labelBtnAddExtra="noButtAdd ? `` : (ind >= 0) ? `Aggiungi ` + costanti.MAINCARDS[ind].strsingolo : ''"
|
||||
:extraparams="tools.extraparams(table, {myrecfiltertoggle})"
|
||||
>
|
||||
</CGridTableRec>
|
||||
</div>
|
||||
|
||||
@@ -116,7 +116,7 @@ export default defineComponent({
|
||||
function getlistimages() {
|
||||
if (gallerylist.value)
|
||||
// return gallerylist.value.slice().sort((a: any, b: any) => a.order! - b.order!)
|
||||
return gallerylist.value
|
||||
return gallerylist.value.filter(filename => !filename)
|
||||
else
|
||||
return null
|
||||
}
|
||||
|
||||
@@ -116,7 +116,7 @@
|
||||
<div v-if="edit" class="q-gutter-sm " style="max-height: 200px; width: 208px;">
|
||||
<q-uploader
|
||||
label="Aggiungi Immagine"
|
||||
accept="image/jpeg, image/jpg, image/png, .pdf"
|
||||
accept="image/*"
|
||||
:url="getUrl()"
|
||||
:headers="tools.getheaders()"
|
||||
:max-file-size="3000000"
|
||||
@@ -234,7 +234,7 @@
|
||||
<div class="q-gutter-sm " style="max-height: 200px; width: 208px;">
|
||||
<q-uploader
|
||||
label="Aggiungi Immagine"
|
||||
accept="image/jpeg, image/jpg, image/png, .pdf"
|
||||
accept="image/*"
|
||||
:url="getUrl()"
|
||||
:headers="tools.getheaders()"
|
||||
:max-file-size="40000000"
|
||||
|
||||
@@ -20,6 +20,7 @@ import { lists } from '@store/Modules/lists'
|
||||
import { IParamsQuery } from 'model'
|
||||
import { CMyPopupEdit } from '../CMyPopupEdit'
|
||||
import { CMyFriends } from '../CMyFriends'
|
||||
import { CNotifSettings } from '../CNotifSettings'
|
||||
import { CMyUser } from '../CMyUser'
|
||||
import { CMyGroups } from '../CMyGroups'
|
||||
import { CMyFieldDb } from '../CMyFieldDb'
|
||||
@@ -36,7 +37,6 @@ import { costanti } from '@costanti'
|
||||
import translate from '@/globalroutines/util'
|
||||
import { toolsext } from '@store/Modules/toolsext'
|
||||
import { CMyCardPopup } from '@/components/CMyCardPopup'
|
||||
import { CMyCardGood } from '@/components/CMyCardGood'
|
||||
import { CMyCardService } from '@/components/CMyCardService'
|
||||
import { CMyCardGrpPopup } from '@/components/CMyCardGrpPopup'
|
||||
import { CMyCardCircuitPopup } from '@/components/CMyCardCircuitPopup'
|
||||
@@ -49,13 +49,18 @@ export default defineComponent({
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
subtitle: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
prop_mytable: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
prop_mycolumns: {
|
||||
type: Object as PropType<[]>,
|
||||
type: Object as PropType<any[]>,
|
||||
required: false,
|
||||
default: null,
|
||||
},
|
||||
@@ -284,12 +289,17 @@ export default defineComponent({
|
||||
type: String,
|
||||
required: false,
|
||||
default: 'elementi trovati',
|
||||
}
|
||||
},
|
||||
groupname: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
},
|
||||
components: {
|
||||
CMyPopupEdit, CTitleBanner, CMyFieldDb, CMySelect, CMyFriends, CMyGroups,
|
||||
CMyUser, CMyRecCard, CMyCardPopup, CMyRecGrpCard, CMyCardGrpPopup, CMyCardCircuitPopup,
|
||||
CMyRecCircuitCard, CMyCardService, CMyCardGood
|
||||
CMyRecCircuitCard, CMyCardService, CNotifSettings
|
||||
},
|
||||
setup(props, { emit }) {
|
||||
const $q = useQuasar()
|
||||
@@ -298,9 +308,12 @@ export default defineComponent({
|
||||
const globalStore = useGlobalStore()
|
||||
const isfinishLoading = computed(() => globalStore.finishLoading)
|
||||
|
||||
const pagination = ref({ sortBy: 'desc', descending: false, page: 1, rowsNumber: 10, rowsPerPage: 10 } as IPagination)
|
||||
const pagination = ref({ sortBy: 'desc', descending: false, page: 1, rowsNumber: 0, rowsPerPage: 10 } as IPagination)
|
||||
|
||||
const addRow = ref('Aggiungi')
|
||||
const actmonth = ref('')
|
||||
const drawmonth = ref(true)
|
||||
|
||||
|
||||
const newRecordBool = ref(false)
|
||||
const newRecordBoolOld = ref(false)
|
||||
@@ -308,17 +321,23 @@ export default defineComponent({
|
||||
const newRecord: any = ref({})
|
||||
const recSaved: any = ref({})
|
||||
const recModif: any = ref({})
|
||||
const showInnerDialog: any = ref(false)
|
||||
|
||||
const mytable = ref('')
|
||||
const mytitle = ref('')
|
||||
const mycolumns = ref([])
|
||||
const mycolumns = ref([] as any[])
|
||||
const colkey = ref('')
|
||||
const search = ref('')
|
||||
|
||||
const tablesel = ref('')
|
||||
const showSpin = ref(false)
|
||||
const showNotification = ref(false)
|
||||
|
||||
// const withdate = computed(() => shared_consts.TABLES_WITH_DATE.includes(tablesel.value))
|
||||
const withdate = ref(false)
|
||||
|
||||
const loading = ref(false)
|
||||
const alreadymounting = ref(false)
|
||||
const editOn = computed({
|
||||
get: () => globalStore.editOn,
|
||||
set: val => {
|
||||
@@ -336,13 +355,13 @@ export default defineComponent({
|
||||
|
||||
const myinfscroll = ref(null)
|
||||
|
||||
const serverData: any = ref([])
|
||||
const serverData: any = ref([] as any[])
|
||||
const numRecLoaded = ref(0)
|
||||
const spinner_visible = ref(false)
|
||||
const changetable = ref(false)
|
||||
const searchList = ref([] as ISearchList[])
|
||||
|
||||
const actual = ''
|
||||
const actual = ref(<any>'')
|
||||
|
||||
let idsel = ''
|
||||
const colsel = ref({ name: '', field: '', sortable: false } as IColGridTable | null)
|
||||
@@ -351,7 +370,7 @@ export default defineComponent({
|
||||
const separator = 'horizontal'
|
||||
const myfilter = ref('')
|
||||
const myfilterand: any = ref([])
|
||||
let rowsel: any = {}
|
||||
const rowsel: any = ref({})
|
||||
const dark = true
|
||||
const canEdit = ref(false)
|
||||
|
||||
@@ -379,10 +398,18 @@ export default defineComponent({
|
||||
const ordinam_desc = ref(false)
|
||||
|
||||
|
||||
const valoriopt = computed(() => (item: any, addall: boolean, addnone: boolean) => {
|
||||
const getNumRecFromQuery = computed(() => () => {
|
||||
return serverData.value.length
|
||||
})
|
||||
const valoriopt = computed(() => (item: any, addall?: boolean, addnone?: boolean) => {
|
||||
// console.log('valoriopt', item.table)
|
||||
return globalStore.getTableJoinByName(item.table, addall, addnone, item.filter)
|
||||
})
|
||||
const lengthopt = computed(() => (item: any, addall: boolean, addnone?: boolean) => {
|
||||
// console.log('valoriopt', item.table)
|
||||
const valori = globalStore.getTableJoinByName(item.table, addall, addnone, item.filter)
|
||||
return (valori ? valori.length : 0)
|
||||
})
|
||||
|
||||
const labelcombo = computed(() => (item: any) => {
|
||||
let lab = item.label
|
||||
@@ -441,7 +468,7 @@ export default defineComponent({
|
||||
|
||||
watch(() => ordinam.value, (to: any, from: any) => {
|
||||
if (pagination.value.sortBy !== ordinam.value) {
|
||||
tools.setCookie('s_ordinam_' + props.prop_mytable, ordinam.value)
|
||||
tools.setCookie('s_ordinamnew_' + props.prop_mytable, ordinam.value)
|
||||
// pagination.value.sortBy = getObjSort(ordinam.value, ordinam_desc.value)
|
||||
// refresh()
|
||||
}
|
||||
@@ -629,6 +656,9 @@ export default defineComponent({
|
||||
if ((field === 'date_reg') || (field === 'numMembers')) {
|
||||
return -1;
|
||||
}
|
||||
if (field === 'namecomplete') {
|
||||
return 1;
|
||||
}
|
||||
|
||||
return precorder ? precorder : 1;
|
||||
}
|
||||
@@ -636,10 +666,11 @@ export default defineComponent({
|
||||
function getObjSort(sortBy: any, descending: any) {
|
||||
let myobj: any = {}
|
||||
if (tools.isObject(sortBy)) {
|
||||
// console.log('sortBy', sortBy)
|
||||
return sortBy
|
||||
} else if (sortBy) {
|
||||
sortBy = sortBy + ''
|
||||
descending = descending + ''
|
||||
// descending = descending + ''
|
||||
let arrsort = (sortBy && sortBy.indexOf(',') > 0) ? sortBy.split(',') : [];
|
||||
let arrdescending = (descending && descending.lenght > 1 && descending.indexOf(',') > 0) ? descending.split(',') : [];
|
||||
if (arrsort.length > 0) {
|
||||
@@ -653,6 +684,7 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
console.log('myobj', myobj)
|
||||
return myobj
|
||||
}
|
||||
|
||||
@@ -1039,7 +1071,7 @@ export default defineComponent({
|
||||
pagination.value.rowsPerPage = rowsPerPage
|
||||
//pagination.value.sortBy = getObjSort(sortBy, descending)
|
||||
pagination.value.sortBy = sortBy
|
||||
ordinam.value = sortBy
|
||||
// ordinam.value = sortBy
|
||||
ordinam_desc.value = descending
|
||||
pagination.value.descending = descending
|
||||
|
||||
@@ -1058,6 +1090,8 @@ export default defineComponent({
|
||||
const myfilternow = myfilter.value
|
||||
const myfilterandnow = myfilterand.value
|
||||
|
||||
// console.log('onUpdateData')
|
||||
|
||||
if (ordinam.value) {
|
||||
sortBy = ordinam.value
|
||||
descending = ordinam_desc.value
|
||||
@@ -1068,12 +1102,14 @@ export default defineComponent({
|
||||
savefilter()
|
||||
|
||||
if (!mytable.value) {
|
||||
// console.log(' startsearch.value', startsearch.value)
|
||||
startsearch.value = false
|
||||
if (myinfscroll.value) {
|
||||
// @ts-ignore
|
||||
myinfscroll.value.resume()
|
||||
}
|
||||
done()
|
||||
alreadymounting.value = true
|
||||
return
|
||||
}
|
||||
|
||||
@@ -1085,6 +1121,9 @@ export default defineComponent({
|
||||
const endRow = startRow + fetchCount
|
||||
// console.log('startRow', startRow, 'endRow', endRow, 'rowsNumber', pagination.value.rowsNumber)
|
||||
|
||||
startsearch.value = true
|
||||
|
||||
// console.log(' TRUE: startsearch.value', startsearch.value)
|
||||
|
||||
if ((startRow < pagination.value.rowsNumber) || clickbuttsearch.value) {
|
||||
|
||||
@@ -1116,7 +1155,7 @@ export default defineComponent({
|
||||
pagination.value.page = page
|
||||
pagination.value.rowsPerPage = rowsPerPage
|
||||
pagination.value.sortBy = getObjSort(sortBy, descending)
|
||||
ordinam.value = sortBy
|
||||
// ordinam.value = sortBy
|
||||
ordinam_desc.value = descending
|
||||
pagination.value.descending = descending
|
||||
|
||||
@@ -1126,6 +1165,8 @@ export default defineComponent({
|
||||
changetable.value = false
|
||||
startsearch.value = false
|
||||
|
||||
// console.log(' FINE- startsearch.value', startsearch.value)
|
||||
|
||||
if (myinfscroll.value) {
|
||||
// @ts-ignore
|
||||
myinfscroll.value.resume()
|
||||
@@ -1133,6 +1174,8 @@ export default defineComponent({
|
||||
|
||||
// console.log(' ...DONE ')
|
||||
done(pagination.value.rowsNumber === 0 ? true : false)
|
||||
|
||||
alreadymounting.value = true
|
||||
})
|
||||
} else {
|
||||
startsearch.value = false
|
||||
@@ -1144,7 +1187,6 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function refresh_arr() {
|
||||
const myarr = [...serverData.value]
|
||||
serverData.value = []
|
||||
@@ -1160,7 +1202,7 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function refresh_infscroll(done: any) {
|
||||
// console.log('refresh_infscroll')
|
||||
// console.log('refresh_infscroll', 'pag', pagination.value.rowsNumber, 'done', done)
|
||||
rowclicksel.value = null
|
||||
|
||||
onUpdateData(0,
|
||||
@@ -1223,7 +1265,7 @@ export default defineComponent({
|
||||
myvertical.value === costanti.VISUTABLE_SCHEDA_USER ||
|
||||
(props.showType === costanti.SHOW_USERINFO))) {
|
||||
|
||||
console.log('REFRR - updateTables.value', newval)
|
||||
// console.log('REFRR - updateTables.value', newval)
|
||||
refresh()
|
||||
|
||||
userStore.updateTables = false
|
||||
@@ -1272,7 +1314,7 @@ export default defineComponent({
|
||||
console.log('newRecord', newRecord)
|
||||
}
|
||||
}
|
||||
rowsel = item
|
||||
rowsel.value = item
|
||||
idsel = item._id
|
||||
colsel.value = col
|
||||
}
|
||||
@@ -1282,11 +1324,11 @@ export default defineComponent({
|
||||
// console.table(serverData)
|
||||
if (colsel.value) {
|
||||
if (colsel.value.subfield !== '') {
|
||||
if (rowsel[colsel.value.field!] === undefined)
|
||||
rowsel[colsel.value.field!] = {}
|
||||
rowsel[colsel.value.field!][colsel.value.subfield!] = valPrec
|
||||
if (rowsel.value[colsel.value.field!] === undefined)
|
||||
rowsel.value[colsel.value.field!] = {}
|
||||
rowsel.value[colsel.value.field!][colsel.value.subfield!] = valPrec
|
||||
} else {
|
||||
rowsel[colsel.value.field!] = valPrec
|
||||
rowsel.value[colsel.value.field!] = valPrec
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1306,8 +1348,8 @@ export default defineComponent({
|
||||
|
||||
|
||||
function showandsel(row: any, col: any, newval: any, valinitial: any) {
|
||||
// console.log('showandsel CGridTable', row, col, newval)
|
||||
rowsel = row
|
||||
console.log('showandsel CGridTable', row, col, newval)
|
||||
rowsel.value = row
|
||||
colsel.value = col
|
||||
idsel = row._id
|
||||
SaveValue(newval, valinitial)
|
||||
@@ -1333,7 +1375,7 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function SaveValue(newVal: any, valinitial: any) {
|
||||
// console.log('SaveValue', newVal)
|
||||
console.log('SaveValue', newVal)
|
||||
// console.log('rowsel', rowsel, 'colsel', colsel.value)
|
||||
let myfield = ''
|
||||
let subf = ''
|
||||
@@ -1342,15 +1384,19 @@ export default defineComponent({
|
||||
subf = colsel.value.subfield!
|
||||
}
|
||||
|
||||
let myrec = rowsel.value
|
||||
if (newRecordBool.value)
|
||||
myrec = newRecord.value
|
||||
|
||||
if (myfield) {
|
||||
if (colsel.value) {
|
||||
// Update value in table memory
|
||||
if (subf !== '') {
|
||||
if (rowsel[myfield] === undefined)
|
||||
rowsel[myfield] = {}
|
||||
rowsel[myfield][subf] = newVal
|
||||
if (myrec[myfield] === undefined)
|
||||
myrec[myfield] = {}
|
||||
myrec[myfield][subf] = newVal
|
||||
} else {
|
||||
rowsel[myfield] = newVal
|
||||
myrec[myfield] = newVal
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1372,13 +1418,8 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
// if (colsel.value)
|
||||
// console.log(' -> rowsel[myfield]', rowsel[myfield])
|
||||
|
||||
valPrec = valinitial
|
||||
|
||||
// console.log('rowsel FINALE', rowsel)
|
||||
|
||||
saveFieldValue(mydata)
|
||||
}
|
||||
}
|
||||
@@ -1429,7 +1470,9 @@ export default defineComponent({
|
||||
// @ts-ignore
|
||||
if (props.defaultnewrec) {
|
||||
// @ts-ignore
|
||||
newRecord.value = props.defaultnewrec()
|
||||
newRecord.value = props.defaultnewrec
|
||||
} else {
|
||||
newRecord.value = tools.getdefaultnewrec(mytable.value, { groupname: props.groupname })
|
||||
}
|
||||
if (!newRecord.value) {
|
||||
newRecord.value = {}
|
||||
@@ -1482,12 +1525,13 @@ export default defineComponent({
|
||||
myvertical.value = props.vertical
|
||||
// myvertical.value = tools.getCookie('myv_' + props.prop_mytable, props.vertical)
|
||||
|
||||
showfilter.value = tools.getCookie('s_adv', '0') !== '0'
|
||||
showfilter.value = props.prop_showfilter || (tools.getCookie('s_adv', '0') !== '0')
|
||||
}
|
||||
|
||||
function mounted() {
|
||||
searchList.value = props.prop_searchList
|
||||
|
||||
|
||||
// console.log('GridTable mounted', tablesel.value)
|
||||
|
||||
// console.log('props.filtercustom', props.filtercustom)
|
||||
@@ -1512,17 +1556,18 @@ export default defineComponent({
|
||||
if (!shared_consts.TABLES_ORDER_DATE_UPDATED.includes(tablesel.value) &&
|
||||
!shared_consts.TABLES_ORDER_DESCR.includes(tablesel.value)) {
|
||||
console.log('get cookie)')
|
||||
let v1 = tools.getCookie('s_ordinam_' + tablesel.value, null)
|
||||
let v1 = tools.getCookie('s_ordinamnew_' + tablesel.value, null)
|
||||
if (v1)
|
||||
ordinam.value = v1
|
||||
let v2 = tools.getCookie('s_ordinam_des_' + tablesel.value, null)
|
||||
let v2 = tools.getCookie('s_ordinamnew_des_' + tablesel.value, null)
|
||||
if (v2)
|
||||
ordinam_desc.value = v2
|
||||
}
|
||||
|
||||
// console.log('2) tablesel', tablesel.value)
|
||||
|
||||
changeTable(tablesel.value)
|
||||
changeTable(tablesel.value, true)
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1670,7 +1715,7 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
function changeTable(mysel: any) {
|
||||
function changeTable(mysel: any, mounted: boolean) {
|
||||
// console.log('changeTable', tablesel.value)
|
||||
changetable.value = true
|
||||
if (tablesel.value === undefined || tablesel.value === '')
|
||||
@@ -1844,9 +1889,11 @@ export default defineComponent({
|
||||
|
||||
const showmsg = true
|
||||
|
||||
let myrec = recModif.value
|
||||
let myrec = null
|
||||
if (newrec) {
|
||||
myrec = newRecord.value
|
||||
myrec = { ...newRecord.value }
|
||||
} else {
|
||||
myrec = { ...recModif.value }
|
||||
}
|
||||
|
||||
// mycolumns.value.forEach((col: IColGridTable) => {
|
||||
@@ -2087,6 +2134,14 @@ export default defineComponent({
|
||||
function cmdExt(cmd: any, id: any, val2: any) {
|
||||
console.log('cmd', cmd)
|
||||
|
||||
if (cmd === costanti.CMD_CLONE) {
|
||||
const myarr = serverData.value.find((rec: any) => rec._id === id)
|
||||
newRecord.value = myarr
|
||||
newRecord.value._id = 0
|
||||
newRecordBool.value = true
|
||||
return true;
|
||||
}
|
||||
|
||||
if (cmd === costanti.CMD_SHOW_PAGE) {
|
||||
visupagedialog.value = true
|
||||
myrecdialog.value = id
|
||||
@@ -2101,6 +2156,8 @@ export default defineComponent({
|
||||
action = lists.MenuAction.DELETE_RECTABLE
|
||||
} else if (cmd === costanti.CMD_MODIFY) {
|
||||
action = lists.MenuAction.CAN_EDIT_TABLE
|
||||
} else if (cmd === costanti.CMD_DUPLICATE) {
|
||||
action = lists.MenuAction.DUPLICATE_RECTABLE
|
||||
}
|
||||
|
||||
|
||||
@@ -2130,9 +2187,10 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function onLoadScroll(index: number, done: any) {
|
||||
|
||||
if (index > 1) {
|
||||
// console.log('onLoadScroll', index, 'RECLOAD', numRecLoaded.value, 'ROWS: ', pagination.value.rowsNumber)
|
||||
if (numRecLoaded.value < pagination.value.rowsNumber || (pagination.value.rowsNumber <= 0 && clickbuttsearch.value)) {
|
||||
// console.log('onLoadScroll', index, 'RECLOAD', numRecLoaded.value, 'ROWS: ', pagination.value.rowsNumber, 'PAGE: ', pagination.value.page)
|
||||
if ((numRecLoaded.value < pagination.value.rowsNumber || (pagination.value.rowsNumber <= 0 && clickbuttsearch.value))) {
|
||||
if (pagination.value.rowsNumber === 0) {
|
||||
pagination.value.page = 0
|
||||
}
|
||||
@@ -2143,6 +2201,7 @@ export default defineComponent({
|
||||
done(true)
|
||||
}
|
||||
} else {
|
||||
// console.log('DONE .....................')
|
||||
done()
|
||||
}
|
||||
}
|
||||
@@ -2207,10 +2266,38 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
function showNotification() {
|
||||
$router.push('/notifs')
|
||||
function update_col(col: string, value: string) {
|
||||
// console.log('update_col', col, value)
|
||||
|
||||
if (col) {
|
||||
if (newRecordBool.value) {
|
||||
newRecord.value[col] = value
|
||||
} else {
|
||||
recModif.value[col] = value
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function setShowMonth(row: any, index: number) {
|
||||
if (actmonth.value !== tools.getstrMonth(row.dateTimeStart)) {
|
||||
actmonth.value = tools.getstrMonth(row.dateTimeStart)
|
||||
drawmonth.value = true
|
||||
} else {
|
||||
drawmonth.value = false
|
||||
}
|
||||
|
||||
return drawmonth.value
|
||||
}
|
||||
|
||||
function ifShowMonth() {
|
||||
return drawmonth.value
|
||||
}
|
||||
|
||||
/*function showNotification() {
|
||||
$router.push('/notifs')
|
||||
} */
|
||||
|
||||
created()
|
||||
mounted()
|
||||
|
||||
@@ -2311,6 +2398,17 @@ export default defineComponent({
|
||||
ordinam,
|
||||
ordinam_desc,
|
||||
getNumFilterSelected,
|
||||
rowsel,
|
||||
showInnerDialog,
|
||||
lengthopt,
|
||||
update_col,
|
||||
startsearch,
|
||||
getNumRecFromQuery,
|
||||
actmonth,
|
||||
alreadymounting,
|
||||
withdate,
|
||||
setShowMonth,
|
||||
ifShowMonth,
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
color="primary"
|
||||
class="centermydiv q-mb-sm"
|
||||
:label="labelBtnAddExtra"
|
||||
:disable="loading"
|
||||
:disable="startsearch"
|
||||
icon="fas fa-plus"
|
||||
@click="createNewRecord"
|
||||
>
|
||||
@@ -66,19 +66,27 @@
|
||||
<q-spinner-tail size="2em" color="primary" />
|
||||
</q-inner-loading>
|
||||
|
||||
<CTitleBanner
|
||||
v-if="subtitle"
|
||||
:title="subtitle"
|
||||
bgcolor="bg-blue"
|
||||
clcolor="text-white"
|
||||
>
|
||||
</CTitleBanner>
|
||||
|
||||
<div v-if="shared_consts.VERTIC_SHOW_GRID.includes(myvertical)">
|
||||
<div v-if="(prop_search || canEdit) && finder" class="q-my-xs text-right">
|
||||
<!--<q-btn
|
||||
size="sm"
|
||||
dense
|
||||
icon="fas fa-filter"
|
||||
:label="$t('grid.showfilters')"
|
||||
:label="t('grid.showfilters')"
|
||||
@click="showfilter = !showfilter"
|
||||
></q-btn>
|
||||
-->
|
||||
</div>
|
||||
<q-slide-transition>
|
||||
<div v-show="showfilter || prop_showfilter">
|
||||
<div v-show="showfilter">
|
||||
<div
|
||||
v-show="searchList"
|
||||
:class="$q.screen.lt.sm ? `` : `row` + ` text-blue `"
|
||||
@@ -87,8 +95,9 @@
|
||||
<CMySelect
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
v-if="
|
||||
item.type === costanti.FieldType.select ||
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
(item.type === costanti.FieldType.select ||
|
||||
item.type === costanti.FieldType.select_by_server) &&
|
||||
lengthopt(item, false, false) > 1
|
||||
"
|
||||
:label="labelcombo(item)"
|
||||
v-model:value="item.value"
|
||||
@@ -107,7 +116,7 @@
|
||||
:icon_alternative="item.icon"
|
||||
:optval="fieldsTable.getKeyByTable(item.table)"
|
||||
:optlab="fieldsTable.getLabelByTable(item.table)"
|
||||
:options="valoriopt(item, false)"
|
||||
:options="valoriopt(item, false, false)"
|
||||
:filter="item.filter"
|
||||
:filter_extra="item.filter_extra"
|
||||
:useinput="
|
||||
@@ -122,7 +131,10 @@
|
||||
</div>-->
|
||||
|
||||
<CMySelect
|
||||
v-if="item.type === costanti.FieldType.multiselect_by_server"
|
||||
v-if="
|
||||
item.type === costanti.FieldType.multiselect_by_server &&
|
||||
lengthopt(item, false) > 1
|
||||
"
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
:multiselect_by_server="true"
|
||||
:label="labelcombo(item)"
|
||||
@@ -225,10 +237,34 @@
|
||||
</div>
|
||||
</q-slide-transition>
|
||||
|
||||
<div
|
||||
v-if="prop_search || canEdit"
|
||||
class="row justify-center vertical-middle"
|
||||
>
|
||||
<div v-if="prop_search || canEdit">
|
||||
<div
|
||||
v-if="searchList && finder"
|
||||
class="row justify-evenly q-mb-sm q-mx-sm"
|
||||
>
|
||||
<q-btn
|
||||
dense
|
||||
:label="!showfilter ? 'Apri Filtri' : 'Chiudi Filtri'"
|
||||
color="positive"
|
||||
icon="fas fa-filter"
|
||||
@click="showfilter = !showfilter"
|
||||
><q-badge
|
||||
v-if="getNumFilterSelected()"
|
||||
color="red"
|
||||
floating
|
||||
transparent
|
||||
>
|
||||
{{ getNumFilterSelected() }}
|
||||
</q-badge>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
dense
|
||||
color="orange"
|
||||
icon="fas fa-bell"
|
||||
label="Notifiche"
|
||||
@click="showNotification = !showNotification"
|
||||
></q-btn>
|
||||
</div>
|
||||
<div v-if="prop_search" class="q-mr-sm full-width">
|
||||
<q-input
|
||||
v-model="search"
|
||||
@@ -237,27 +273,14 @@
|
||||
type="search"
|
||||
debounce="500"
|
||||
:hint="hint"
|
||||
:error-message="noresultLabel"
|
||||
:error="getNumRecFromQuery() === 0 && !startsearch"
|
||||
label="Cerca"
|
||||
v-on:keyup.enter="doSearch"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="search" />
|
||||
</template>
|
||||
<template v-if="searchList && finder" v-slot:before>
|
||||
<q-btn
|
||||
dense
|
||||
color="positive"
|
||||
icon="fas fa-filter"
|
||||
@click="showfilter = !showfilter"
|
||||
><q-badge v-if="getNumFilterSelected()" color="red" floating transparent> {{ getNumFilterSelected() }} </q-badge>
|
||||
</q-btn>
|
||||
|
||||
<q-btn
|
||||
dense
|
||||
color="orange"
|
||||
icon="fas fa-bell"
|
||||
@click="showNotification"
|
||||
></q-btn>
|
||||
<q-spinner-oval v-if="startsearch" color="primary" size="1em" />
|
||||
<q-icon v-else name="search" />
|
||||
</template>
|
||||
<template v-slot:after>
|
||||
<q-select
|
||||
@@ -301,7 +324,7 @@
|
||||
multiple
|
||||
dense
|
||||
options-dense
|
||||
:display-value="$t('grid.columns')"
|
||||
:display-value="t('grid.columns')"
|
||||
emit-value
|
||||
map-options
|
||||
:options="mycolumns"
|
||||
@@ -311,11 +334,13 @@
|
||||
</q-select>
|
||||
</div>
|
||||
|
||||
<div v-if="pagination.rowsNumber === 1 && prop_search">
|
||||
{{ pagination.rowsNumber }} elemento trovato
|
||||
</div>
|
||||
<div v-if="pagination.rowsNumber > 1 && prop_search">
|
||||
{{ pagination.rowsNumber }} {{ labelElemFind }}
|
||||
<div class="q-ma-sm">
|
||||
<div v-if="pagination.rowsNumber === 1 && prop_search">
|
||||
{{ pagination.rowsNumber }} elemento trovato
|
||||
</div>
|
||||
<div v-if="pagination.rowsNumber > 1 && prop_search">
|
||||
{{ pagination.rowsNumber }} {{ labelElemFind }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="choose_visutype && $q.screen.gt.xs" class="">
|
||||
@@ -336,7 +361,11 @@
|
||||
</div>
|
||||
<q-infinite-scroll
|
||||
ref="myinfscroll"
|
||||
v-if="shared_consts.VERTIC_SHOW_GRID.includes(myvertical) && !loading"
|
||||
v-if="
|
||||
shared_consts.VERTIC_SHOW_GRID.includes(myvertical) &&
|
||||
!loading &&
|
||||
alreadymounting
|
||||
"
|
||||
:initial-index="0"
|
||||
@load="onLoadScroll"
|
||||
:offset="350"
|
||||
@@ -356,7 +385,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-for="(row, index) in serverData" :key="index">
|
||||
<div v-for="(row, indexrow) in serverData" :key="indexrow">
|
||||
<div
|
||||
v-if="
|
||||
showType === costanti.SHOW_MYCARD ||
|
||||
@@ -366,22 +395,16 @@
|
||||
shared_consts.TABLES_VISU_CMYSRECCARD.includes(tablesel))
|
||||
"
|
||||
>
|
||||
<div v-if="row && shared_consts.TABLES_WITH_DATE.includes(tablesel)">
|
||||
<div
|
||||
v-if="
|
||||
row.dateTimeStart &&
|
||||
tools.getstrVeryShortDate(row.dateTimeStart) !== actual
|
||||
"
|
||||
class="actualdate"
|
||||
>
|
||||
<span style="display: none">{{
|
||||
(actual = tools.getstrVeryShortDate(row.dateTimeStart))
|
||||
}}</span>
|
||||
<q-chip
|
||||
class="text-center shadow-5 glossy bg-orange"
|
||||
icon="fas fa-calendar-day"
|
||||
>{{ tools.getstrDateLong(row.dateTimeStart) }}</q-chip
|
||||
>
|
||||
<div v-if="row && withdate">
|
||||
<div v-if="setShowMonth(row, indexrow)">
|
||||
<div>
|
||||
<div v-if="row.dateTimeStart">
|
||||
<strong>{{ tools.getstrMonth(row.dateTimeStart) }}</strong>
|
||||
</div>
|
||||
<div>
|
||||
<q-separator />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -431,6 +454,7 @@
|
||||
? tools.getLabelFooterByRow(row, col_footer, tablesel)
|
||||
: ''
|
||||
"
|
||||
@showInnerDialog="showInnerDialog"
|
||||
>
|
||||
</CMyUser>
|
||||
|
||||
@@ -526,13 +550,15 @@
|
||||
</div>
|
||||
</div>
|
||||
<template v-slot:loading>
|
||||
<div v-if="!hidetitleIfEmpty" class="text-center">
|
||||
<div class="row justify-center q-my-md">
|
||||
<q-spinner-dots color="primary" size="40px" />
|
||||
</div>
|
||||
</template>
|
||||
</q-infinite-scroll>
|
||||
<q-table
|
||||
v-else
|
||||
v-else-if="
|
||||
!shared_consts.VERTIC_SHOW_GRID.includes(myvertical) && !loading
|
||||
"
|
||||
:grid="shared_consts.VERTIC_SHOW_GRID.includes(myvertical)"
|
||||
:grid-header="
|
||||
shared_consts.VERTIC_SHOW_GRID.includes(myvertical) &&
|
||||
@@ -548,7 +574,7 @@
|
||||
@request="onRequest"
|
||||
virtual-scroll
|
||||
:row-key="colkey"
|
||||
:loading="loading"
|
||||
:loading="startsearch"
|
||||
@selection="selectionclick"
|
||||
binary-state-sort
|
||||
:visible-columns="colVisib"
|
||||
@@ -609,15 +635,6 @@
|
||||
>
|
||||
<span style="display: none">{{ (actual = null) }}</span>
|
||||
|
||||
<q-btn
|
||||
v-if="enableExport"
|
||||
color="primary"
|
||||
icon-right="archive"
|
||||
:label="t('export.csv')"
|
||||
no-caps
|
||||
@click="exportTable"
|
||||
/>
|
||||
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="tablesList"
|
||||
@@ -632,6 +649,15 @@
|
||||
>
|
||||
</q-select>
|
||||
|
||||
<q-btn
|
||||
v-if="enableExport"
|
||||
color="primary"
|
||||
icon-right="archive"
|
||||
:label="t('export.csv')"
|
||||
no-caps
|
||||
@click="exportTable"
|
||||
/>
|
||||
|
||||
<div class="row">
|
||||
<q-toggle
|
||||
v-for="(filt, index) of arrfilters"
|
||||
@@ -812,6 +838,8 @@
|
||||
type="search"
|
||||
debounce="500"
|
||||
:hint="hint"
|
||||
:error-message="noresultLabel"
|
||||
:error="getNumRecFromQuery() === 0 && !startsearch"
|
||||
label="Cerca"
|
||||
v-on:keyup.enter="doSearch"
|
||||
>
|
||||
@@ -844,7 +872,7 @@
|
||||
multiple
|
||||
dense
|
||||
options-dense
|
||||
:display-value="$t('grid.columns')"
|
||||
:display-value="t('grid.columns')"
|
||||
emit-value
|
||||
map-options
|
||||
:options="mycolumns"
|
||||
@@ -1070,7 +1098,7 @@
|
||||
</template>
|
||||
</q-table>
|
||||
|
||||
<q-page-sticky
|
||||
<!--<q-page-sticky
|
||||
v-if="mytable && butt_modif_new && !hidetitleIfEmpty"
|
||||
position="bottom-right"
|
||||
:offset="[18, 68]"
|
||||
@@ -1083,15 +1111,13 @@
|
||||
color="primary"
|
||||
@click="createNewRecordDialog"
|
||||
/>
|
||||
</q-page-sticky>
|
||||
</q-page-sticky>-->
|
||||
|
||||
<q-dialog
|
||||
v-model="visupagedialog"
|
||||
@hide="hidewindow"
|
||||
class="q-ma-sm"
|
||||
:maximized="$q.screen.lt.sm"
|
||||
>
|
||||
|
||||
<CMyCardGrpPopup
|
||||
v-if="mytable === toolsext.TABMYGROUPS"
|
||||
:table="mytable"
|
||||
@@ -1104,8 +1130,17 @@
|
||||
:prop_myrec="myrecdialog"
|
||||
>
|
||||
</CMyCardCircuitPopup>
|
||||
<CMyCardService v-else-if="shared_consts.TABLES_FAVORITE_BOOKMARK.includes(mytable)"
|
||||
:table="mytable" :prop_myrec="myrecdialog">
|
||||
<!--<CMyCardService
|
||||
v-else-if="shared_consts.TABLES_FAVORITE_BOOKMARK.includes(mytable)"
|
||||
:table="mytable"
|
||||
:idRec="myrecdialog._id"
|
||||
>
|
||||
</CMyCardService>-->
|
||||
<CMyCardService
|
||||
v-else-if="shared_consts.TABLES_FAVORITE_BOOKMARK.includes(mytable)"
|
||||
:table="mytable"
|
||||
:prop_myrec="myrecdialog"
|
||||
>
|
||||
</CMyCardService>
|
||||
<CMyCardPopup v-else :table="mytable" :prop_myrec="myrecdialog">
|
||||
</CMyCardPopup>
|
||||
@@ -1158,6 +1193,7 @@
|
||||
@show="selItem(rowclicksel, mycol)"
|
||||
@showandsave="showandsel"
|
||||
@annulla="annulla"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
@@ -1173,11 +1209,10 @@
|
||||
>
|
||||
<q-card class="dialog_card">
|
||||
<q-bar dense class="bg-primary text-white">
|
||||
Nuovo {{ mytitle }}:
|
||||
Aggiungi {{ mytitle }}:
|
||||
<q-space />
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-bar>
|
||||
|
||||
<q-card-section class="inset-shadow">
|
||||
<div
|
||||
:class="$q.screen.lt.sm ? `` : `row` + ` text-blue `"
|
||||
@@ -1217,6 +1252,7 @@
|
||||
@save="SaveValue"
|
||||
@show="selItem(newRecord, col)"
|
||||
@showandsave="showandsel"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
@@ -1225,13 +1261,13 @@
|
||||
</q-card-section>
|
||||
<q-card-actions align="center">
|
||||
<q-btn
|
||||
:label="$t('dialog.save')"
|
||||
:label="t('dialog.insert')"
|
||||
color="primary"
|
||||
@click="saveNewRecord"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
flat
|
||||
:label="$t('dialog.cancel')"
|
||||
:label="t('dialog.cancel')"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
@click="annulla"
|
||||
@@ -1299,13 +1335,13 @@
|
||||
</q-card-section>
|
||||
<q-card-actions align="center">
|
||||
<q-btn
|
||||
:label="$t('dialog.save')"
|
||||
:label="t('dialog.save')"
|
||||
color="primary"
|
||||
@click="saveNewRecord"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
flat
|
||||
:label="$t('dialog.cancel')"
|
||||
:label="t('dialog.cancel')"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
@click="annulla"
|
||||
@@ -1355,6 +1391,7 @@
|
||||
@save="SaveValue"
|
||||
@show="selItem(recModif, col, true)"
|
||||
@showandsave="showandsel"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
@@ -1363,13 +1400,13 @@
|
||||
</q-card-section>
|
||||
<q-card-actions align="center">
|
||||
<q-btn
|
||||
:label="$t('dialog.ok')"
|
||||
:label="t('dialog.ok')"
|
||||
color="primary"
|
||||
@click="saverecModif"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
flat
|
||||
:label="$t('dialog.cancel')"
|
||||
:label="t('dialog.cancel')"
|
||||
color="primary"
|
||||
@click="cancelrecModif"
|
||||
></q-btn>
|
||||
@@ -1378,7 +1415,20 @@
|
||||
</q-dialog>
|
||||
<span v-if="!hidetitleIfEmpty"> <br /></span>
|
||||
</div>
|
||||
<q-dialog v-model="showNotification" :maximized="$q.screen.lt.sm">
|
||||
<q-card class="dialog_card">
|
||||
<q-toolbar class="bg-primary text-white">
|
||||
<q-toolbar-title> Notifiche </q-toolbar-title>
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-toolbar>
|
||||
|
||||
<q-card-section class="inset-shadow">
|
||||
<CNotifSettings> </CNotifSettings>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./CGridTableRec.ts">
|
||||
</script>
|
||||
|
||||
|
||||
48
src/components/CGridTableUser/CGridTableUser.scss
Executable file
@@ -0,0 +1,48 @@
|
||||
.colmodif {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.coldate {
|
||||
max-width: 250px;
|
||||
min-width: 200px;
|
||||
}
|
||||
|
||||
.tdclass, .trclass{
|
||||
min-height: 20px !important;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.q-table td {
|
||||
padding-left: 1px;
|
||||
padding-right: 2px;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
&__title {
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
.q-table {
|
||||
&__col {
|
||||
font-size: 1rem;
|
||||
color: gray;
|
||||
}
|
||||
}
|
||||
|
||||
.newrec_fields{
|
||||
display: flex;
|
||||
padding: 2px;
|
||||
margin: 2px;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.riduci_pad {
|
||||
min-height: 30px;
|
||||
padding: 4px 8px !important;
|
||||
}
|
||||
|
||||
|
||||
.q-table__top{
|
||||
padding-top: 0 !important;
|
||||
}
|
||||
2360
src/components/CGridTableUser/CGridTableUser.ts
Executable file
520
src/components/CGridTableUser/CGridTableUser.vue
Executable file
@@ -0,0 +1,520 @@
|
||||
<template>
|
||||
<div v-if="tools.isDebugOn()"></div>
|
||||
<div :class="$q.screen.lt.sm ? `` : `q-pa-xs`" v-if="isfinishLoading">
|
||||
<q-infinite-scroll
|
||||
ref="myinfscroll"
|
||||
:initial-index="0"
|
||||
@load="onLoadScroll"
|
||||
:offset="350"
|
||||
debounce="300"
|
||||
>
|
||||
<div v-if="showHeaderCol">
|
||||
<div
|
||||
v-for="col in mycolumns"
|
||||
:key="col.name"
|
||||
class="text-italic text-weight-bold"
|
||||
>
|
||||
<span
|
||||
v-if="col && showColCheck(col, tools.TIPOVIS_SHOW_RECORD, true)"
|
||||
>
|
||||
{{ col.label }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-for="(row, index) in serverData" :key="index">
|
||||
<div
|
||||
v-if="
|
||||
showType === costanti.SHOW_MYCARD ||
|
||||
(myvertical !== costanti.VISUTABLE_USER_TABGROUP &&
|
||||
myvertical !== costanti.VISUTABLE_USER_TABCIRCUIT &&
|
||||
myvertical === costanti.VISUTABLE_LISTA &&
|
||||
shared_consts.TABLES_VISU_CMYSRECCARD.includes(tablesel))
|
||||
"
|
||||
>
|
||||
<div v-if="row && shared_consts.TABLES_WITH_DATE.includes(tablesel)">
|
||||
<div
|
||||
v-if="
|
||||
actmonth !== tools.getstrMonth(row.dateTimeStart) ||
|
||||
!actmonth ||
|
||||
index === 0
|
||||
"
|
||||
>
|
||||
<span style="display: none">{{
|
||||
(actmonth = tools.getstrMonth(row.dateTimeStart))
|
||||
}}</span>
|
||||
<div class="">
|
||||
<div>
|
||||
<strong>{{ tools.getstrMonth(row.dateTimeStart) }}</strong>
|
||||
</div>
|
||||
<div>
|
||||
<q-separator />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div
|
||||
v-if="
|
||||
false &&
|
||||
((row.dateTimeStart &&
|
||||
tools.getstrVeryShortDate(row.dateTimeStart) !== actual) ||
|
||||
index === 0)
|
||||
"
|
||||
class="actualdate"
|
||||
>
|
||||
<span style="display: none">{{
|
||||
(actual = tools.getstrVeryShortDate(row.dateTimeStart))
|
||||
}}</span>
|
||||
<q-chip
|
||||
class="text-center shadow-5 glossy bg-orange"
|
||||
icon="fas fa-calendar-day"
|
||||
>{{ tools.getstrDateLong(row.dateTimeStart) }}</q-chip
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<CMyRecGrpCard
|
||||
v-if="tablesel === toolsext.TABMYGROUPS"
|
||||
:table="tablesel"
|
||||
:prop_myrec="row"
|
||||
@cmdext="cmdExt"
|
||||
>
|
||||
</CMyRecGrpCard>
|
||||
<CMyRecCard
|
||||
v-else
|
||||
:table="tablesel"
|
||||
:prop_myrec="row"
|
||||
@cmdext="cmdExt"
|
||||
:editOn="editOn"
|
||||
:margin_right="margin_right"
|
||||
>
|
||||
</CMyRecCard>
|
||||
</div>
|
||||
<div
|
||||
v-else-if="
|
||||
(showType === costanti.SHOW_USERINFO &&
|
||||
myvertical !== costanti.VISUTABLE_SCHEDA_USER) ||
|
||||
(myvertical === 2 &&
|
||||
shared_consts.TABLES_VISU_LISTA_USER.includes(tablesel))
|
||||
"
|
||||
class="fill-all-width"
|
||||
>
|
||||
<div>
|
||||
<CMyUser
|
||||
:notsetcmd="true"
|
||||
:mycontact="row"
|
||||
:visu="visufind"
|
||||
:groupname="extrafield"
|
||||
:circuitname="circuitname"
|
||||
:labelextra="col_title ? row[col_title] : ''"
|
||||
:labelFooter="
|
||||
col_footer
|
||||
? tools.getLabelFooterByRow(row, col_footer, tablesel)
|
||||
: ''
|
||||
"
|
||||
@showInnerDialog="showInnerDialog"
|
||||
>
|
||||
</CMyUser>
|
||||
|
||||
<q-separator></q-separator>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
v-else-if="
|
||||
(showType === costanti.SHOW_GROUPINFO &&
|
||||
myvertical !== costanti.VISUTABLE_SCHEDA_GROUP) ||
|
||||
(myvertical === 2 && tablesel === 'mygroups') ||
|
||||
myvertical === costanti.VISUTABLE_GROUP_CIRCUIT
|
||||
"
|
||||
class="fill-all-width"
|
||||
>
|
||||
<div>
|
||||
<CMyGroups
|
||||
v-model="filtergrp"
|
||||
:circuitname="circuitname"
|
||||
:finder="false"
|
||||
:mygrp="row"
|
||||
:visu="visufind ? visufind : costanti.FIND_GROUP"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
v-else-if="
|
||||
showType === costanti.SHOW_MOVEMENTS && tablesel === 'movements'
|
||||
"
|
||||
>
|
||||
<div class="q-pa-xs row items-start q-gutter-xs">
|
||||
<q-card class="my-card text-black">
|
||||
<q-toolbar class="bg-primary text-white" style="min-height: 30px">
|
||||
<q-toolbar-title>
|
||||
<span class="q-ma-sm">
|
||||
<q-icon
|
||||
v-if="tools.isEntrataByRecMov(row)"
|
||||
name="fas fa-box-tissue"
|
||||
color="green"
|
||||
></q-icon>
|
||||
<q-icon
|
||||
v-else
|
||||
name="fas fa-share-square"
|
||||
color="red"
|
||||
></q-icon>
|
||||
</span>
|
||||
{{
|
||||
tools.isEntrataByRecMov(row)
|
||||
? t('movement.movin')
|
||||
: t('movement.movout')
|
||||
}}
|
||||
</q-toolbar-title>
|
||||
</q-toolbar>
|
||||
<q-card-section>
|
||||
<div v-for="col in mycolumns" :key="col.name">
|
||||
<div
|
||||
v-if="
|
||||
showColCheck(col, tools.TIPOVIS_SHOW_RECORD, true, 1, row)
|
||||
"
|
||||
:class="
|
||||
!col.extrafield ||
|
||||
(col.extrafield &&
|
||||
(col.tipovisu !== costanti.TipoVisu.LINK ||
|
||||
(col.tipovisu === costanti.TipoVisu.LINK &&
|
||||
userStore.getImgByProfile(row, true, col))))
|
||||
? `tdclass`
|
||||
: ``
|
||||
"
|
||||
>
|
||||
<div :class="getclrow(row)">
|
||||
<CMyPopupEdit
|
||||
:table="mytable"
|
||||
:canEdit="false"
|
||||
:canModify="false"
|
||||
:disable="false"
|
||||
:mycol="col"
|
||||
:row="row"
|
||||
:field="col.field"
|
||||
:visulabel="true"
|
||||
:subfield="col.subfield"
|
||||
minuteinterval="1"
|
||||
@save="SaveValue"
|
||||
@show="selItem(row, col)"
|
||||
@showandsave="showandsel"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<template v-slot:loading>
|
||||
<div v-if="!hidetitleIfEmpty" class="text-center">
|
||||
<q-spinner-dots color="primary" size="40px" />
|
||||
</div>
|
||||
</template>
|
||||
</q-infinite-scroll>
|
||||
|
||||
<q-page-sticky
|
||||
v-if="mytable && butt_modif_new && !hidetitleIfEmpty"
|
||||
position="bottom-right"
|
||||
:offset="[18, 68]"
|
||||
>
|
||||
<q-btn
|
||||
fab
|
||||
glossy
|
||||
class="semi-transparent"
|
||||
icon="add"
|
||||
color="primary"
|
||||
@click="createNewRecordDialog"
|
||||
/>
|
||||
</q-page-sticky>
|
||||
|
||||
<div v-if="rowclicksel">
|
||||
<CTitleBanner title="Record:"></CTitleBanner>
|
||||
|
||||
<div
|
||||
class="q-ma-xs q-pa-xs text-center rounded-borders q-list--bordered"
|
||||
v-for="mycol in mycolumns"
|
||||
:key="mycol.name"
|
||||
>
|
||||
<div v-if="showColCheck(mycol, tools.TIPOVIS_SHOW_RECORD, false)">
|
||||
<div class="row items-center justify-center q-gutter-md q-ma-xs">
|
||||
<div class="q-ma-xs">
|
||||
<q-field
|
||||
rounded
|
||||
outlined
|
||||
:bg-color="$q.dark.isActive ? '' : 'orange-3'"
|
||||
dense
|
||||
>
|
||||
<template v-slot:control>
|
||||
<div class="self-center full-width no-outline" tabindex="0">
|
||||
{{ mycol.label }}
|
||||
</div>
|
||||
</template>
|
||||
</q-field>
|
||||
</div>
|
||||
<div
|
||||
class="q-ma-sm q-pa-sm colmodif col-grow popupedit"
|
||||
@click="colclicksel = mycol"
|
||||
>
|
||||
<CMyPopupEdit
|
||||
:table="mytable"
|
||||
:canEdit="true"
|
||||
:canModify="
|
||||
tools.canModifyThisRec(rowclicksel, tablesel) || editOn
|
||||
"
|
||||
:disable="disabilita()"
|
||||
:isInModif="mycol.isInModif"
|
||||
view="field"
|
||||
:mycol="mycol"
|
||||
:showall="true"
|
||||
:row="rowclicksel"
|
||||
:tablesel="mycol.tablesel"
|
||||
:field="mycol.field"
|
||||
:subfield="mycol.subfield"
|
||||
@save="SaveValdb"
|
||||
@show="selItem(rowclicksel, mycol)"
|
||||
@showandsave="showandsel"
|
||||
@annulla="annulla"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<q-dialog
|
||||
v-model="newRecordBool"
|
||||
@hide="hidewindow"
|
||||
:maximized="$q.screen.lt.sm"
|
||||
permanent
|
||||
>
|
||||
<q-card class="dialog_card">
|
||||
<q-bar dense class="bg-primary text-white">
|
||||
Aggiungi {{ mytitle }}:
|
||||
<q-space />
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-bar>
|
||||
<q-card-section class="inset-shadow">
|
||||
<div
|
||||
:class="$q.screen.lt.sm ? `` : `row` + ` text-blue `"
|
||||
v-for="col in mycolumns"
|
||||
:key="col.name"
|
||||
>
|
||||
<!--<div class="text-center q-my-xs" v-if="(col.fieldtype === costanti.FieldType.separator)">
|
||||
<q-btn color="primary" size="md" dense :icon="!showfilteradv ? 'fas fa-arrow-down' : 'fas fa-arrow-up'"
|
||||
label="Campi Avanzati" @click="showfilteradv = !showfilteradv"></q-btn>
|
||||
</div>-->
|
||||
<div
|
||||
v-if="
|
||||
showColCheck(
|
||||
col,
|
||||
tools.TIPOVIS_NEW_RECORD,
|
||||
true,
|
||||
0,
|
||||
newRecord
|
||||
) && col.foredit
|
||||
"
|
||||
>
|
||||
<div class="">
|
||||
<CMyPopupEdit
|
||||
:table="mytable"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:mycol="col"
|
||||
v-model:row="newRecord"
|
||||
:field="col.field"
|
||||
:subfield="col.subfield"
|
||||
:tablesel="col.tablesel"
|
||||
:value_extra="getValueExtra(col, newRecord)"
|
||||
:isInModif="true"
|
||||
minuteinterval="1"
|
||||
:visulabel="true"
|
||||
:insertMode="true"
|
||||
@save="SaveValue"
|
||||
@show="selItem(newRecord, col)"
|
||||
@showandsave="showandsel"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
<q-card-actions align="center">
|
||||
<q-btn
|
||||
:label="$t('dialog.insert')"
|
||||
color="primary"
|
||||
@click="saveNewRecord"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
flat
|
||||
:label="$t('dialog.cancel')"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
@click="annulla"
|
||||
></q-btn>
|
||||
</q-card-actions>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
<q-dialog
|
||||
v-model="newRecordBoolOld"
|
||||
@hide="hidewindow"
|
||||
:maximized="$q.screen.lt.sm"
|
||||
permanent
|
||||
>
|
||||
<q-card class="dialog_card">
|
||||
<q-bar dense class="bg-primary text-white">
|
||||
Nuovo {{ mytitle }}:
|
||||
<q-space />
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-bar>
|
||||
|
||||
<q-card-section class="inset-shadow">
|
||||
<div
|
||||
:class="$q.screen.lt.sm ? `` : `row` + ` text-blue `"
|
||||
v-for="col in mycolumns"
|
||||
:key="col.name"
|
||||
>
|
||||
<!--<div class="text-center q-my-xs" v-if="(col.fieldtype === costanti.FieldType.separator)">
|
||||
<q-btn color="primary" size="md" dense :icon="!showfilteradv ? 'fas fa-arrow-down' : 'fas fa-arrow-up'"
|
||||
label="Campi Avanzati" @click="showfilteradv = !showfilteradv"></q-btn>
|
||||
</div>-->
|
||||
<div
|
||||
v-if="
|
||||
showColCheck(
|
||||
col,
|
||||
tools.TIPOVIS_NEW_RECORD,
|
||||
true,
|
||||
0,
|
||||
newRecord
|
||||
) && col.foredit
|
||||
"
|
||||
>
|
||||
<div class="">
|
||||
<CMyPopupEdit
|
||||
:table="mytable"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:mycol="col"
|
||||
v-model:row="newRecord"
|
||||
:field="col.field"
|
||||
:subfield="col.subfield"
|
||||
:tablesel="col.tablesel"
|
||||
:value_extra="getValueExtra(col, newRecord)"
|
||||
:isInModif="true"
|
||||
minuteinterval="1"
|
||||
:visulabel="true"
|
||||
:insertMode="true"
|
||||
@save="SaveValue"
|
||||
@show="selItem(newRecord, col)"
|
||||
@showandsave="showandsel"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
<q-card-actions align="center">
|
||||
<q-btn
|
||||
:label="$t('dialog.save')"
|
||||
color="primary"
|
||||
@click="saveNewRecord"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
flat
|
||||
:label="$t('dialog.cancel')"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
@click="annulla"
|
||||
></q-btn>
|
||||
</q-card-actions>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
<q-dialog
|
||||
v-model="editRecordBool"
|
||||
@hide="hidewindow"
|
||||
:maximized="$q.screen.lt.sm"
|
||||
>
|
||||
<q-card class="dialog_card">
|
||||
<q-bar dense class="bg-primary text-white">
|
||||
<span class="ellipsis">{{ recModif[col_title] }}</span>
|
||||
<q-space />
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-bar>
|
||||
<q-card-section class="inset-shadow">
|
||||
<div v-for="col in mycolumns" :key="col.name">
|
||||
<!--<div class="text-center q-my-xs" v-if="(col.fieldtype === costanti.FieldType.separator)">
|
||||
<q-btn color="primary" size="md" dense :icon="!showfilteradv ? 'fas fa-arrow-down' : 'fas fa-arrow-up'"
|
||||
label="Campi Avanzati" @click="showfilteradv = !showfilteradv"></q-btn>
|
||||
</div>-->
|
||||
<div
|
||||
v-if="
|
||||
showColCheck(col, tools.TIPOVIS_EDIT_RECORD, false) &&
|
||||
col.foredit
|
||||
"
|
||||
class="tdclass"
|
||||
>
|
||||
<div>
|
||||
<CMyPopupEdit
|
||||
:table="mytable"
|
||||
:canEdit="true"
|
||||
:canModify="
|
||||
tools.canModifyThisRec(recModif, tablesel) || editOn
|
||||
"
|
||||
:tablesel="col.tablesel"
|
||||
:mycol="col"
|
||||
:isInModif="true"
|
||||
v-model:row="recModif"
|
||||
:field="col.field"
|
||||
:subfield="col.subfield"
|
||||
:value_extra="getValueExtra(col, recModif)"
|
||||
minuteinterval="1"
|
||||
@save="SaveValue"
|
||||
@show="selItem(recModif, col, true)"
|
||||
@showandsave="showandsel"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
<q-card-actions align="center">
|
||||
<q-btn
|
||||
:label="$t('dialog.ok')"
|
||||
color="primary"
|
||||
@click="saverecModif"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
flat
|
||||
:label="$t('dialog.cancel')"
|
||||
color="primary"
|
||||
@click="cancelrecModif"
|
||||
></q-btn>
|
||||
</q-card-actions>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
<span v-if="!hidetitleIfEmpty"> <br /></span>
|
||||
</div>
|
||||
<q-dialog v-model="showNotification" :maximized="$q.screen.lt.sm">
|
||||
<q-card class="dialog_card">
|
||||
<q-toolbar class="bg-primary text-white">
|
||||
<q-toolbar-title> Notifiche </q-toolbar-title>
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-toolbar>
|
||||
|
||||
<q-card-section class="inset-shadow">
|
||||
<CNotifSettings> </CNotifSettings>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./CGridTableUser.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import './CGridTableUser.scss';
|
||||
</style>
|
||||
1
src/components/CGridTableUser/index.ts
Executable file
@@ -0,0 +1 @@
|
||||
export {default as CGridTableUser} from './CGridTableUser.vue'
|
||||
@@ -11,7 +11,7 @@
|
||||
:arrfilters="myarrfilterand"
|
||||
:filterdef="myfilterdef"
|
||||
:prop_codeId="todoId"
|
||||
:defaultnewrec="getdefaultnewrec"
|
||||
:defaultnewrec="getdefaultnewrec()"
|
||||
:extraparams="extraparams()"
|
||||
labeladd="Aggiungi Ora">
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@ export default defineComponent({
|
||||
const circuitStore = useCircuitStore()
|
||||
|
||||
const table = ref(toolsext.TABMYGROUPS)
|
||||
const loadSaldo = ref(false)
|
||||
|
||||
const circuit = ref(<ICircuit | null | undefined>null)
|
||||
|
||||
@@ -95,6 +96,22 @@ export default defineComponent({
|
||||
|
||||
}
|
||||
|
||||
function loadAccount() {
|
||||
// console.log('loadAccount')
|
||||
// Group
|
||||
const grp = userStore.getGroupByGroupname(props.grp.groupname)
|
||||
if (grp)
|
||||
myaccount.value = grp.account
|
||||
}
|
||||
|
||||
|
||||
async function aggiornaSaldo() {
|
||||
loadSaldo.value = true
|
||||
await circuitStore.aggiornaSaldo(circuit.value!._id, props.grp ? props.grp.groupname : '');
|
||||
loadAccount()
|
||||
loadSaldo.value = false
|
||||
}
|
||||
|
||||
onMounted(mounted)
|
||||
|
||||
return {
|
||||
@@ -112,6 +129,8 @@ export default defineComponent({
|
||||
t,
|
||||
myaccount,
|
||||
save,
|
||||
aggiornaSaldo,
|
||||
loadSaldo,
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
@@ -16,6 +16,23 @@
|
||||
>
|
||||
</CSaldo>
|
||||
|
||||
<div class="text-center">
|
||||
<div class="text-center">
|
||||
<q-spinner v-if="loadSaldo" color="primary" size="3em" :thickness="2" />
|
||||
</div>
|
||||
<q-btn
|
||||
v-if="myaccount && !loadSaldo && (grp ? tools.iAmAdminGroup(grp.groupname) : tools.iAmAdminCircuit(circuit.name))"
|
||||
outline
|
||||
rounded
|
||||
dense
|
||||
color="green"
|
||||
icon="fas fa-redo"
|
||||
:label="t('movement.updatewallet')"
|
||||
@click="aggiornaSaldo()"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
|
||||
<q-card-section>
|
||||
<div v-if="myaccount.date_created" class="container">
|
||||
<q-icon name="fas fa-lightbulb" class="iconcirc"></q-icon>
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
<template>
|
||||
<div v-if="tools.isUserOk()">
|
||||
|
||||
|
||||
<div
|
||||
class="row q-ma-sm shadow justify-center"
|
||||
style="border-radius: 4px; border: 1px solid rgba(0, 0, 0, 0.12)"
|
||||
|
||||
@@ -24,7 +24,7 @@ import { useI18n } from '@/boot/i18n'
|
||||
import { toolsext } from '@store/Modules/toolsext'
|
||||
import { useQuasar } from 'quasar'
|
||||
import { costanti } from '@costanti'
|
||||
import { IBookmark, ICircuit, IFavorite, IMyCircuit, IMyGroup, IUserFields } from 'model'
|
||||
import { IBookmark, IReaction, ICircuit, IFavorite, IMyCircuit, IMyGroup, IUserFields } from 'model'
|
||||
import { shared_consts } from '@/common/shared_vuejs'
|
||||
import { static_data } from '@/db/static_data'
|
||||
import { fieldsTable } from '@store/Modules/fieldsTable'
|
||||
@@ -91,7 +91,7 @@ export default defineComponent({
|
||||
// Carica il profilo di quest'utente
|
||||
if (username.value) {
|
||||
await userStore.loadUserProfile({ username: username.value, idnotif: idnotif.value }).then((ris) => {
|
||||
// console.log('loadUserProfile = ', ris)
|
||||
console.log('loadUserProfile = ', ris)
|
||||
myuser.value = ris
|
||||
if (myuser.value) {
|
||||
filtroutente.value = [{ userId: myuser.value._id }]
|
||||
@@ -183,19 +183,19 @@ export default defineComponent({
|
||||
|
||||
function filtrofavorite(table: string) {
|
||||
const tab = tools.getNumTabByTable(table)
|
||||
if (myuser.value && myuser.value.profile.favorite) {
|
||||
let arrfav = myuser.value.profile.favorite.filter((rec: IBookmark) => rec.tab === tab)
|
||||
if (myuser.value && myuser.value.profile.reaction) {
|
||||
let arrfav = myuser.value.profile.reaction.filter((rec: IReaction) => rec.tab === tab && (rec.fav! === true))
|
||||
if (arrfav)
|
||||
return myuser.value.profile.favorite ? [{ _id: { $in: arrfav.map((rec: any) => rec.id) } }] : []
|
||||
return myuser.value.profile.reaction ? [{ _id: { $in: arrfav.map((rec: any) => rec.idrec) } }] : []
|
||||
}
|
||||
return []
|
||||
}
|
||||
function filtrobookmark(table: string) {
|
||||
const tab = tools.getNumTabByTable(table)
|
||||
if (myuser.value && myuser.value.profile.bookmark) {
|
||||
let arrfav = myuser.value.profile.bookmark.filter((rec: IBookmark) => rec.tab === tab)
|
||||
if (myuser.value && myuser.value.profile.reaction) {
|
||||
let arrfav = myuser.value.profile.reaction.filter((rec: IReaction) => rec.tab === tab && rec.book === true);
|
||||
if (arrfav)
|
||||
return myuser.value.profile.bookmark ? [{ _id: { $in: arrfav.map((rec: any) => rec.id) } }] : []
|
||||
return myuser.value.profile.reaction ? [{ _id: { $in: arrfav.map((rec: any) => rec.idrec) } }] : []
|
||||
}
|
||||
return []
|
||||
}
|
||||
|
||||